summaryrefslogtreecommitdiff
path: root/.localrepo/highlight-indent-guides-20241229.2012.tar
blob: 0e4cae52f13a13e2b8b5dbc720aede3a2e9f34ff (plain)
ofshex dumpascii
0000 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 32 30 32 34 31 32 32 39 highlight-indent-guides-20241229
0020 2e 32 30 31 32 2f 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .2012/..........................
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 35 35 30 37 00 20 35 00 00 00 0000000.00000000000.015507..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 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 32 30 32 34 31 32 32 39 highlight-indent-guides-20241229
0220 2e 32 30 31 32 2f 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 70 6b .2012/highlight-indent-guides-pk
0240 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 00 00 g.el............................
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 32 34 00 30 30 30 30 30 30 30 30 30 30 30 00 30 32 33 33 31 37 00 20 30 00 00 00 0000724.00000000000.023317..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 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 22 20 22 32 age."highlight-indent-guides"."2
0460 30 32 34 31 32 32 39 2e 32 30 31 32 22 0a 20 20 22 4d 69 6e 6f 72 20 6d 6f 64 65 20 74 6f 20 68 0241229.2012"..."Minor.mode.to.h
0480 69 67 68 6c 69 67 68 74 20 69 6e 64 65 6e 74 61 74 69 6f 6e 2e 22 0a 20 20 27 28 28 65 6d 61 63 ighlight.indentation."...'((emac
04a0 73 20 22 32 36 2e 31 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 s."26.1"))...:url."https://githu
04c0 62 2e 63 6f 6d 2f 44 61 72 74 68 46 65 6e 6e 65 63 2f 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 b.com/DarthFennec/highlight-inde
04e0 6e 74 2d 67 75 69 64 65 73 22 0a 20 20 3a 63 6f 6d 6d 69 74 20 22 33 32 30 35 61 62 65 32 37 32 nt-guides"...:commit."3205abe272
0500 31 30 35 33 34 31 36 65 33 35 34 61 31 66 66 35 33 39 34 37 64 64 31 32 32 61 36 39 34 31 22 0a 1053416e354a1ff53947dd122a6941".
0520 20 20 3a 72 65 76 64 65 73 63 20 22 33 32 30 35 61 62 65 32 37 32 31 30 22 0a 20 20 3a 6b 65 79 ..:revdesc."3205abe27210"...:key
0540 77 6f 72 64 73 20 27 28 22 63 6f 6e 76 65 6e 69 65 6e 63 65 22 29 0a 20 20 3a 61 75 74 68 6f 72 words.'("convenience")...:author
0560 73 20 27 28 28 22 44 61 72 74 68 46 65 6e 6e 65 63 22 20 2e 20 22 64 61 72 74 68 66 65 6e 6e 65 s.'(("DarthFennec"..."darthfenne
0580 63 40 64 65 72 70 79 6d 61 69 6c 2e 6f 72 67 22 29 29 0a 20 20 3a 6d 61 69 6e 74 61 69 6e 65 72 c@derpymail.org"))...:maintainer
05a0 73 20 27 28 28 22 44 61 72 74 68 46 65 6e 6e 65 63 22 20 2e 20 22 64 61 72 74 68 66 65 6e 6e 65 s.'(("DarthFennec"..."darthfenne
05c0 63 40 64 65 72 70 79 6d 61 69 6c 2e 6f 72 67 22 29 29 29 0a 00 00 00 00 00 00 00 00 00 00 00 00 c@derpymail.org"))).............
05e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0600 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 32 30 32 34 31 32 32 39 highlight-indent-guides-20241229
0620 2e 32 30 31 32 2f 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2e 65 6c .2012/highlight-indent-guides.el
0640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0660 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
0680 30 31 34 31 30 33 35 00 30 30 30 30 30 30 30 30 30 30 30 00 30 32 32 35 34 31 00 20 30 00 00 00 0141035.00000000000.022541..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 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2e 65 6c 20 2d ;;;.highlight-indent-guides.el.-
0820 2d 2d 20 4d 69 6e 6f 72 20 6d 6f 64 65 20 74 6f 20 68 69 67 68 6c 69 67 68 74 20 69 6e 64 65 6e --.Minor.mode.to.highlight.inden
0840 74 61 74 69 6f 6e 20 20 2d 2a 2d 20 6c 65 78 69 63 61 6c 2d 62 69 6e 64 69 6e 67 3a 20 74 3b 20 tation..-*-.lexical-binding:.t;.
0860 2d 2a 2d 0a 3b 3b 0a 3b 3b 20 43 6f 70 79 72 69 67 68 74 20 28 63 29 20 32 30 31 35 20 44 61 72 -*-.;;.;;.Copyright.(c).2015.Dar
0880 74 68 46 65 6e 6e 65 63 0a 3b 3b 0a 3b 3b 20 50 65 72 6d 69 73 73 69 6f 6e 20 69 73 20 68 65 72 thFennec.;;.;;.Permission.is.her
08a0 65 62 79 20 67 72 61 6e 74 65 64 2c 20 66 72 65 65 20 6f 66 20 63 68 61 72 67 65 2c 20 74 6f 20 eby.granted,.free.of.charge,.to.
08c0 61 6e 79 20 70 65 72 73 6f 6e 20 6f 62 74 61 69 6e 69 6e 67 20 61 20 63 6f 70 79 0a 3b 3b 20 6f any.person.obtaining.a.copy.;;.o
08e0 66 20 74 68 69 73 20 73 6f 66 74 77 61 72 65 20 61 6e 64 20 61 73 73 6f 63 69 61 74 65 64 20 64 f.this.software.and.associated.d
0900 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 66 69 6c 65 73 20 28 74 68 65 20 22 53 6f 66 74 77 61 72 ocumentation.files.(the."Softwar
0920 65 22 29 2c 20 74 6f 20 64 65 61 6c 0a 3b 3b 20 69 6e 20 74 68 65 20 53 6f 66 74 77 61 72 65 20 e"),.to.deal.;;.in.the.Software.
0940 77 69 74 68 6f 75 74 20 72 65 73 74 72 69 63 74 69 6f 6e 2c 20 69 6e 63 6c 75 64 69 6e 67 20 77 without.restriction,.including.w
0960 69 74 68 6f 75 74 20 6c 69 6d 69 74 61 74 69 6f 6e 20 74 68 65 20 72 69 67 68 74 73 0a 3b 3b 20 ithout.limitation.the.rights.;;.
0980 74 6f 20 75 73 65 2c 20 63 6f 70 79 2c 20 6d 6f 64 69 66 79 2c 20 6d 65 72 67 65 2c 20 70 75 62 to.use,.copy,.modify,.merge,.pub
09a0 6c 69 73 68 2c 20 64 69 73 74 72 69 62 75 74 65 2c 20 73 75 62 6c 69 63 65 6e 73 65 2c 20 61 6e lish,.distribute,.sublicense,.an
09c0 64 2f 6f 72 20 73 65 6c 6c 0a 3b 3b 20 63 6f 70 69 65 73 20 6f 66 20 74 68 65 20 53 6f 66 74 77 d/or.sell.;;.copies.of.the.Softw
09e0 61 72 65 2c 20 61 6e 64 20 74 6f 20 70 65 72 6d 69 74 20 70 65 72 73 6f 6e 73 20 74 6f 20 77 68 are,.and.to.permit.persons.to.wh
0a00 6f 6d 20 74 68 65 20 53 6f 66 74 77 61 72 65 20 69 73 0a 3b 3b 20 66 75 72 6e 69 73 68 65 64 20 om.the.Software.is.;;.furnished.
0a20 74 6f 20 64 6f 20 73 6f 2c 20 73 75 62 6a 65 63 74 20 74 6f 20 74 68 65 20 66 6f 6c 6c 6f 77 69 to.do.so,.subject.to.the.followi
0a40 6e 67 20 63 6f 6e 64 69 74 69 6f 6e 73 3a 0a 3b 3b 0a 3b 3b 20 54 68 65 20 61 62 6f 76 65 20 63 ng.conditions:.;;.;;.The.above.c
0a60 6f 70 79 72 69 67 68 74 20 6e 6f 74 69 63 65 20 61 6e 64 20 74 68 69 73 20 70 65 72 6d 69 73 73 opyright.notice.and.this.permiss
0a80 69 6f 6e 20 6e 6f 74 69 63 65 20 73 68 61 6c 6c 20 62 65 20 69 6e 63 6c 75 64 65 64 20 69 6e 0a ion.notice.shall.be.included.in.
0aa0 3b 3b 20 61 6c 6c 20 63 6f 70 69 65 73 20 6f 72 20 73 75 62 73 74 61 6e 74 69 61 6c 20 70 6f 72 ;;.all.copies.or.substantial.por
0ac0 74 69 6f 6e 73 20 6f 66 20 74 68 65 20 53 6f 66 74 77 61 72 65 2e 0a 3b 3b 0a 3b 3b 20 54 48 45 tions.of.the.Software..;;.;;.THE
0ae0 20 53 4f 46 54 57 41 52 45 20 49 53 20 50 52 4f 56 49 44 45 44 20 22 41 53 20 49 53 22 2c 20 57 .SOFTWARE.IS.PROVIDED."AS.IS",.W
0b00 49 54 48 4f 55 54 20 57 41 52 52 41 4e 54 59 20 4f 46 20 41 4e 59 20 4b 49 4e 44 2c 20 45 58 50 ITHOUT.WARRANTY.OF.ANY.KIND,.EXP
0b20 52 45 53 53 20 4f 52 0a 3b 3b 20 49 4d 50 4c 49 45 44 2c 20 49 4e 43 4c 55 44 49 4e 47 20 42 55 RESS.OR.;;.IMPLIED,.INCLUDING.BU
0b40 54 20 4e 4f 54 20 4c 49 4d 49 54 45 44 20 54 4f 20 54 48 45 20 57 41 52 52 41 4e 54 49 45 53 20 T.NOT.LIMITED.TO.THE.WARRANTIES.
0b60 4f 46 20 4d 45 52 43 48 41 4e 54 41 42 49 4c 49 54 59 2c 0a 3b 3b 20 46 49 54 4e 45 53 53 20 46 OF.MERCHANTABILITY,.;;.FITNESS.F
0b80 4f 52 20 41 20 50 41 52 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 20 41 4e 44 20 4e 4f 4e 49 OR.A.PARTICULAR.PURPOSE.AND.NONI
0ba0 4e 46 52 49 4e 47 45 4d 45 4e 54 2e 20 49 4e 20 4e 4f 20 45 56 45 4e 54 20 53 48 41 4c 4c 20 54 NFRINGEMENT..IN.NO.EVENT.SHALL.T
0bc0 48 45 0a 3b 3b 20 41 55 54 48 4f 52 53 20 4f 52 20 43 4f 50 59 52 49 47 48 54 20 48 4f 4c 44 45 HE.;;.AUTHORS.OR.COPYRIGHT.HOLDE
0be0 52 53 20 42 45 20 4c 49 41 42 4c 45 20 46 4f 52 20 41 4e 59 20 43 4c 41 49 4d 2c 20 44 41 4d 41 RS.BE.LIABLE.FOR.ANY.CLAIM,.DAMA
0c00 47 45 53 20 4f 52 20 4f 54 48 45 52 0a 3b 3b 20 4c 49 41 42 49 4c 49 54 59 2c 20 57 48 45 54 48 GES.OR.OTHER.;;.LIABILITY,.WHETH
0c20 45 52 20 49 4e 20 41 4e 20 41 43 54 49 4f 4e 20 4f 46 20 43 4f 4e 54 52 41 43 54 2c 20 54 4f 52 ER.IN.AN.ACTION.OF.CONTRACT,.TOR
0c40 54 20 4f 52 20 4f 54 48 45 52 57 49 53 45 2c 20 41 52 49 53 49 4e 47 20 46 52 4f 4d 2c 0a 3b 3b T.OR.OTHERWISE,.ARISING.FROM,.;;
0c60 20 4f 55 54 20 4f 46 20 4f 52 20 49 4e 20 43 4f 4e 4e 45 43 54 49 4f 4e 20 57 49 54 48 20 54 48 .OUT.OF.OR.IN.CONNECTION.WITH.TH
0c80 45 20 53 4f 46 54 57 41 52 45 20 4f 52 20 54 48 45 20 55 53 45 20 4f 52 20 4f 54 48 45 52 20 44 E.SOFTWARE.OR.THE.USE.OR.OTHER.D
0ca0 45 41 4c 49 4e 47 53 20 49 4e 20 54 48 45 0a 3b 3b 20 53 4f 46 54 57 41 52 45 2e 0a 3b 3b 0a 3b EALINGS.IN.THE.;;.SOFTWARE..;;.;
0cc0 3b 20 41 75 74 68 6f 72 3a 20 44 61 72 74 68 46 65 6e 6e 65 63 20 3c 64 61 72 74 68 66 65 6e 6e ;.Author:.DarthFennec.<darthfenn
0ce0 65 63 40 64 65 72 70 79 6d 61 69 6c 2e 6f 72 67 3e 0a 3b 3b 20 50 61 63 6b 61 67 65 2d 56 65 72 ec@derpymail.org>.;;.Package-Ver
0d00 73 69 6f 6e 3a 20 32 30 32 34 31 32 32 39 2e 32 30 31 32 0a 3b 3b 20 50 61 63 6b 61 67 65 2d 52 sion:.20241229.2012.;;.Package-R
0d20 65 76 69 73 69 6f 6e 3a 20 33 32 30 35 61 62 65 32 37 32 31 30 0a 3b 3b 20 50 61 63 6b 61 67 65 evision:.3205abe27210.;;.Package
0d40 2d 52 65 71 75 69 72 65 73 3a 20 28 28 65 6d 61 63 73 20 22 32 36 2e 31 22 29 29 0a 3b 3b 20 55 -Requires:.((emacs."26.1")).;;.U
0d60 52 4c 3a 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 44 61 72 74 68 46 65 6e 6e RL:.https://github.com/DarthFenn
0d80 65 63 2f 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 0a 3b 3b 20 4b 65 ec/highlight-indent-guides.;;.Ke
0da0 79 77 6f 72 64 73 3a 20 63 6f 6e 76 65 6e 69 65 6e 63 65 0a 0a 3b 3b 3b 20 43 6f 6d 6d 65 6e 74 ywords:.convenience..;;;.Comment
0dc0 61 72 79 3a 0a 3b 3b 20 54 68 69 73 20 6d 69 6e 6f 72 20 6d 6f 64 65 20 68 69 67 68 6c 69 67 68 ary:.;;.This.minor.mode.highligh
0de0 74 73 20 69 6e 64 65 6e 74 61 74 69 6f 6e 20 6c 65 76 65 6c 73 20 76 69 61 20 66 6f 6e 74 2d 6c ts.indentation.levels.via.font-l
0e00 6f 63 6b 2e 20 20 49 6e 64 65 6e 74 20 77 69 64 74 68 73 0a 3b 3b 20 61 72 65 20 64 79 6e 61 6d ock...Indent.widths.;;.are.dynam
0e20 69 63 61 6c 6c 79 20 64 69 73 63 6f 76 65 72 65 64 2c 20 77 68 69 63 68 20 6d 65 61 6e 73 20 74 ically.discovered,.which.means.t
0e40 68 69 73 20 63 6f 72 72 65 63 74 6c 79 20 68 69 67 68 6c 69 67 68 74 73 20 69 6e 20 61 6e 79 0a his.correctly.highlights.in.any.
0e60 3b 3b 20 6d 6f 64 65 2c 20 72 65 67 61 72 64 6c 65 73 73 20 6f 66 20 69 6e 64 65 6e 74 20 77 69 ;;.mode,.regardless.of.indent.wi
0e80 64 74 68 2c 20 65 76 65 6e 20 69 6e 20 6c 61 6e 67 75 61 67 65 73 20 77 69 74 68 20 6e 6f 6e 2d dth,.even.in.languages.with.non-
0ea0 75 6e 69 66 6f 72 6d 0a 3b 3b 20 69 6e 64 65 6e 74 61 74 69 6f 6e 20 73 75 63 68 20 61 73 20 48 uniform.;;.indentation.such.as.H
0ec0 61 73 6b 65 6c 6c 2e 20 20 54 68 69 73 20 6d 6f 64 65 20 77 6f 72 6b 73 20 70 72 6f 70 65 72 6c askell...This.mode.works.properl
0ee0 79 20 61 72 6f 75 6e 64 20 68 61 72 64 20 74 61 62 73 20 61 6e 64 0a 3b 3b 20 6d 69 78 65 64 20 y.around.hard.tabs.and.;;.mixed.
0f00 69 6e 64 65 6e 74 61 74 69 6f 6e 2c 20 61 6e 64 20 69 74 20 62 65 68 61 76 65 73 20 77 65 6c 6c indentation,.and.it.behaves.well
0f20 20 69 6e 20 6c 61 72 67 65 20 62 75 66 66 65 72 73 2e 0a 3b 3b 0a 3b 3b 20 54 6f 20 69 6e 73 74 .in.large.buffers..;;.;;.To.inst
0f40 61 6c 6c 2c 20 70 75 74 20 74 68 69 73 20 66 69 6c 65 20 69 6e 20 79 6f 75 72 20 6c 6f 61 64 2d all,.put.this.file.in.your.load-
0f60 70 61 74 68 2c 20 61 6e 64 20 64 6f 0a 3b 3b 20 4d 2d 78 20 68 69 67 68 6c 69 67 68 74 2d 69 6e path,.and.do.;;.M-x.highlight-in
0f80 64 65 6e 74 2d 67 75 69 64 65 73 2d 6d 6f 64 65 20 74 6f 20 65 6e 61 62 6c 65 20 69 74 2e 20 20 dent-guides-mode.to.enable.it...
0fa0 54 6f 20 65 6e 61 62 6c 65 20 69 74 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 69 6e 0a 3b 3b To.enable.it.automatically.in.;;
0fc0 20 6d 6f 73 74 20 70 72 6f 67 72 61 6d 6d 69 6e 67 20 6d 6f 64 65 73 2c 20 75 73 65 20 74 68 65 .most.programming.modes,.use.the
0fe0 20 66 6f 6c 6c 6f 77 69 6e 67 3a 0a 3b 3b 0a 3b 3b 20 20 20 28 61 64 64 2d 68 6f 6f 6b 20 27 70 .following:.;;.;;...(add-hook.'p
1000 72 6f 67 2d 6d 6f 64 65 2d 68 6f 6f 6b 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d rog-mode-hook.'highlight-indent-
1020 67 75 69 64 65 73 2d 6d 6f 64 65 29 0a 3b 3b 0a 3b 3b 20 54 6f 20 73 65 74 20 74 68 65 20 64 69 guides-mode).;;.;;.To.set.the.di
1040 73 70 6c 61 79 20 6d 65 74 68 6f 64 2c 20 75 73 65 3a 0a 3b 3b 0a 3b 3b 20 20 20 28 73 65 74 71 splay.method,.use:.;;.;;...(setq
1060 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 6d 65 74 68 6f 64 20 .highlight-indent-guides-method.
1080 4d 45 54 48 4f 44 29 0a 3b 3b 0a 3b 3b 20 57 68 65 72 65 20 4d 45 54 48 4f 44 20 69 73 20 65 69 METHOD).;;.;;.Where.METHOD.is.ei
10a0 74 68 65 72 20 27 66 69 6c 6c 2c 20 27 63 6f 6c 75 6d 6e 2c 20 27 63 68 61 72 61 63 74 65 72 2c ther.'fill,.'column,.'character,
10c0 20 6f 72 20 27 62 69 74 6d 61 70 2e 0a 3b 3b 0a 3b 3b 20 54 6f 20 63 68 61 6e 67 65 20 74 68 65 .or.'bitmap..;;.;;.To.change.the
10e0 20 63 68 61 72 61 63 74 65 72 20 75 73 65 64 20 66 6f 72 20 64 72 61 77 69 6e 67 20 67 75 69 64 .character.used.for.drawing.guid
1100 65 20 6c 69 6e 65 73 20 77 69 74 68 20 74 68 65 20 27 63 68 61 72 61 63 74 65 72 0a 3b 3b 20 6d e.lines.with.the.'character.;;.m
1120 65 74 68 6f 64 2c 20 75 73 65 3a 0a 3b 3b 0a 3b 3b 20 20 20 28 73 65 74 71 20 68 69 67 68 6c 69 ethod,.use:.;;.;;...(setq.highli
1140 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 63 68 61 72 61 63 74 65 72 20 3f 63 68 29 ght-indent-guides-character.?ch)
1160 0a 3b 3b 0a 3b 3b 20 42 79 20 64 65 66 61 75 6c 74 2c 20 74 68 69 73 20 6d 6f 64 65 20 61 75 74 .;;.;;.By.default,.this.mode.aut
1180 6f 6d 61 74 69 63 61 6c 6c 79 20 69 6e 73 70 65 63 74 73 20 79 6f 75 72 20 74 68 65 6d 65 20 61 omatically.inspects.your.theme.a
11a0 6e 64 20 63 68 6f 6f 73 65 73 0a 3b 3b 20 61 70 70 72 6f 70 72 69 61 74 65 20 63 6f 6c 6f 72 73 nd.chooses.;;.appropriate.colors
11c0 20 66 6f 72 20 68 69 67 68 6c 69 67 68 74 69 6e 67 2e 20 20 54 6f 20 74 77 65 61 6b 20 74 68 65 .for.highlighting...To.tweak.the
11e0 20 73 75 62 74 6c 65 74 79 20 6f 66 20 74 68 65 73 65 20 63 6f 6c 6f 72 73 2c 0a 3b 3b 20 75 73 .subtlety.of.these.colors,.;;.us
1200 65 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 28 61 6c 6c 20 76 61 6c 75 65 73 20 61 72 65 20 e.the.following.(all.values.are.
1220 70 65 72 63 65 6e 74 61 67 65 73 29 3a 0a 3b 3b 0a 3b 3b 20 20 20 28 73 65 74 71 20 68 69 67 68 percentages):.;;.;;...(setq.high
1240 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 61 75 74 6f 2d 6f 64 64 2d 66 61 63 light-indent-guides-auto-odd-fac
1260 65 2d 70 65 72 63 20 31 35 29 0a 3b 3b 20 20 20 28 73 65 74 71 20 68 69 67 68 6c 69 67 68 74 2d e-perc.15).;;...(setq.highlight-
1280 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 61 75 74 6f 2d 65 76 65 6e 2d 66 61 63 65 2d 70 65 72 indent-guides-auto-even-face-per
12a0 63 20 31 35 29 0a 3b 3b 20 20 20 28 73 65 74 71 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e c.15).;;...(setq.highlight-inden
12c0 74 2d 67 75 69 64 65 73 2d 61 75 74 6f 2d 63 68 61 72 61 63 74 65 72 2d 66 61 63 65 2d 70 65 72 t-guides-auto-character-face-per
12e0 63 20 32 30 29 0a 3b 3b 0a 3b 3b 20 4f 72 2c 20 74 6f 20 6d 61 6e 75 61 6c 6c 79 20 73 65 74 20 c.20).;;.;;.Or,.to.manually.set.
1300 74 68 65 20 63 6f 6c 6f 72 73 20 75 73 65 64 20 66 6f 72 20 68 69 67 68 6c 69 67 68 74 69 6e 67 the.colors.used.for.highlighting
1320 2c 20 75 73 65 3a 0a 3b 3b 0a 3b 3b 20 20 20 28 73 65 74 71 20 68 69 67 68 6c 69 67 68 74 2d 69 ,.use:.;;.;;...(setq.highlight-i
1340 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 61 75 74 6f 2d 65 6e 61 62 6c 65 64 20 6e 69 6c 29 0a 3b ndent-guides-auto-enabled.nil).;
1360 3b 0a 3b 3b 20 20 20 28 73 65 74 2d 66 61 63 65 2d 62 61 63 6b 67 72 6f 75 6e 64 20 27 68 69 67 ;.;;...(set-face-background.'hig
1380 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 6f 64 64 2d 66 61 63 65 20 22 63 hlight-indent-guides-odd-face."c
13a0 6f 6c 6f 72 22 29 0a 3b 3b 20 20 20 28 73 65 74 2d 66 61 63 65 2d 62 61 63 6b 67 72 6f 75 6e 64 olor").;;...(set-face-background
13c0 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 65 76 65 6e 2d 66 .'highlight-indent-guides-even-f
13e0 61 63 65 20 22 63 6f 6c 6f 72 22 29 0a 3b 3b 20 20 20 28 73 65 74 2d 66 61 63 65 2d 66 6f 72 65 ace."color").;;...(set-face-fore
1400 67 72 6f 75 6e 64 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d ground.'highlight-indent-guides-
1420 63 68 61 72 61 63 74 65 72 2d 66 61 63 65 20 22 63 6f 6c 6f 72 22 29 0a 0a 3b 3b 3b 20 43 6f 64 character-face."color")..;;;.Cod
1440 65 3a 0a 0a 28 72 65 71 75 69 72 65 20 27 63 6f 6c 6f 72 29 0a 0a 28 64 65 66 67 72 6f 75 70 20 e:..(require.'color)..(defgroup.
1460 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 20 6e 69 6c 0a 20 20 22 49 highlight-indent-guides.nil..."I
1480 6e 64 65 6e 74 61 74 69 6f 6e 20 68 69 67 68 6c 69 67 68 74 69 6e 67 2e 22 0a 20 20 3a 67 72 6f ndentation.highlighting."...:gro
14a0 75 70 20 27 66 61 63 65 73 29 0a 0a 28 64 65 66 66 61 63 65 20 68 69 67 68 6c 69 67 68 74 2d 69 up.'faces)..(defface.highlight-i
14c0 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 6f 64 64 2d 66 61 63 65 20 27 28 28 74 20 6e 69 6c 29 29 ndent-guides-odd-face.'((t.nil))
14e0 0a 20 20 22 46 61 63 65 20 74 6f 20 68 69 67 68 6c 69 67 68 74 20 6f 64 64 20 69 6e 64 65 6e 74 ..."Face.to.highlight.odd.indent
1500 20 6c 65 76 65 6c 73 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e .levels."...:group.'highlight-in
1520 64 65 6e 74 2d 67 75 69 64 65 73 29 0a 0a 28 64 65 66 66 61 63 65 20 68 69 67 68 6c 69 67 68 74 dent-guides)..(defface.highlight
1540 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 65 76 65 6e 2d 66 61 63 65 20 27 28 28 74 20 6e 69 -indent-guides-even-face.'((t.ni
1560 6c 29 29 0a 20 20 22 46 61 63 65 20 74 6f 20 68 69 67 68 6c 69 67 68 74 20 65 76 65 6e 20 69 6e l))..."Face.to.highlight.even.in
1580 64 65 6e 74 20 6c 65 76 65 6c 73 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 68 69 67 68 6c 69 67 68 dent.levels."...:group.'highligh
15a0 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 29 0a 0a 28 64 65 66 66 61 63 65 20 68 69 67 68 6c t-indent-guides)..(defface.highl
15c0 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 63 68 61 72 61 63 74 65 72 2d 66 61 63 ight-indent-guides-character-fac
15e0 65 20 27 28 28 74 20 6e 69 6c 29 29 0a 20 20 22 46 61 63 65 20 74 6f 20 68 69 67 68 6c 69 67 68 e.'((t.nil))..."Face.to.highligh
1600 74 20 67 75 69 64 65 20 6c 69 6e 65 20 63 68 61 72 61 63 74 65 72 73 20 61 6e 64 20 62 69 74 6d t.guide.line.characters.and.bitm
1620 61 70 73 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 aps."...:group.'highlight-indent
1640 2d 67 75 69 64 65 73 29 0a 0a 28 64 65 66 66 61 63 65 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 -guides)..(defface.highlight-ind
1660 65 6e 74 2d 67 75 69 64 65 73 2d 74 6f 70 2d 6f 64 64 2d 66 61 63 65 20 27 28 28 74 20 6e 69 6c ent-guides-top-odd-face.'((t.nil
1680 29 29 0a 20 20 22 46 61 63 65 20 74 6f 20 68 69 67 68 6c 69 67 68 74 20 6f 64 64 20 69 6e 64 65 ))..."Face.to.highlight.odd.inde
16a0 6e 74 20 6c 65 76 65 6c 73 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 68 69 67 68 6c 69 67 68 74 2d nt.levels."...:group.'highlight-
16c0 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 29 0a 0a 28 64 65 66 66 61 63 65 20 68 69 67 68 6c 69 67 indent-guides)..(defface.highlig
16e0 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 74 6f 70 2d 65 76 65 6e 2d 66 61 63 65 20 27 ht-indent-guides-top-even-face.'
1700 28 28 74 20 6e 69 6c 29 29 0a 20 20 22 46 61 63 65 20 74 6f 20 68 69 67 68 6c 69 67 68 74 20 65 ((t.nil))..."Face.to.highlight.e
1720 76 65 6e 20 69 6e 64 65 6e 74 20 6c 65 76 65 6c 73 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 68 69 ven.indent.levels."...:group.'hi
1740 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 29 0a 0a 28 64 65 66 66 61 63 65 ghlight-indent-guides)..(defface
1760 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 74 6f 70 2d 63 68 61 .highlight-indent-guides-top-cha
1780 72 61 63 74 65 72 2d 66 61 63 65 20 27 28 28 74 20 6e 69 6c 29 29 0a 20 20 22 46 61 63 65 20 74 racter-face.'((t.nil))..."Face.t
17a0 6f 20 68 69 67 68 6c 69 67 68 74 20 67 75 69 64 65 20 6c 69 6e 65 20 63 68 61 72 61 63 74 65 72 o.highlight.guide.line.character
17c0 73 20 61 6e 64 20 62 69 74 6d 61 70 73 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 68 69 67 68 6c 69 s.and.bitmaps."...:group.'highli
17e0 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 29 0a 0a 28 64 65 66 66 61 63 65 20 68 69 67 ght-indent-guides)..(defface.hig
1800 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 73 74 61 63 6b 2d 6f 64 64 2d 66 hlight-indent-guides-stack-odd-f
1820 61 63 65 20 27 28 28 74 20 6e 69 6c 29 29 0a 20 20 22 46 61 63 65 20 74 6f 20 68 69 67 68 6c 69 ace.'((t.nil))..."Face.to.highli
1840 67 68 74 20 6f 64 64 20 69 6e 64 65 6e 74 20 6c 65 76 65 6c 73 2e 22 0a 20 20 3a 67 72 6f 75 70 ght.odd.indent.levels."...:group
1860 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 29 0a 0a 28 64 65 66 .'highlight-indent-guides)..(def
1880 66 61 63 65 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 73 74 61 face.highlight-indent-guides-sta
18a0 63 6b 2d 65 76 65 6e 2d 66 61 63 65 20 27 28 28 74 20 6e 69 6c 29 29 0a 20 20 22 46 61 63 65 20 ck-even-face.'((t.nil))..."Face.
18c0 74 6f 20 68 69 67 68 6c 69 67 68 74 20 65 76 65 6e 20 69 6e 64 65 6e 74 20 6c 65 76 65 6c 73 2e to.highlight.even.indent.levels.
18e0 22 0a 20 20 3a 67 72 6f 75 70 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 "...:group.'highlight-indent-gui
1900 64 65 73 29 0a 0a 28 64 65 66 66 61 63 65 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d des)..(defface.highlight-indent-
1920 67 75 69 64 65 73 2d 73 74 61 63 6b 2d 63 68 61 72 61 63 74 65 72 2d 66 61 63 65 20 27 28 28 74 guides-stack-character-face.'((t
1940 20 6e 69 6c 29 29 0a 20 20 22 46 61 63 65 20 74 6f 20 68 69 67 68 6c 69 67 68 74 20 67 75 69 64 .nil))..."Face.to.highlight.guid
1960 65 20 6c 69 6e 65 20 63 68 61 72 61 63 74 65 72 73 20 61 6e 64 20 62 69 74 6d 61 70 73 2e 22 0a e.line.characters.and.bitmaps.".
1980 20 20 3a 67 72 6f 75 70 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 ..:group.'highlight-indent-guide
19a0 73 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d s)..(defcustom.highlight-indent-
19c0 67 75 69 64 65 73 2d 63 68 61 72 61 63 74 65 72 20 3f 5c 78 32 35 30 32 0a 20 20 22 43 68 61 72 guides-character.?\x2502..."Char
19e0 61 63 74 65 72 20 74 6f 20 75 73 65 20 74 6f 20 64 69 73 70 6c 61 79 20 67 75 69 64 65 20 6c 69 acter.to.use.to.display.guide.li
1a00 6e 65 73 2e 22 0a 20 20 3a 74 79 70 65 20 27 63 68 61 72 61 63 74 65 72 0a 20 20 3a 67 72 6f 75 nes."...:type.'character...:grou
1a20 70 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 29 0a 0a 28 64 65 p.'highlight-indent-guides)..(de
1a40 66 63 75 73 74 6f 6d 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d fcustom.highlight-indent-guides-
1a60 6d 65 74 68 6f 64 20 27 66 69 6c 6c 0a 20 20 22 4d 65 74 68 6f 64 20 74 6f 20 75 73 65 20 77 68 method.'fill..."Method.to.use.wh
1a80 65 6e 20 64 69 73 70 6c 61 79 69 6e 67 20 69 6e 64 65 6e 74 20 67 75 69 64 65 73 2e 0a 54 68 69 en.displaying.indent.guides..Thi
1aa0 73 20 63 61 6e 20 62 65 20 60 66 69 6c 6c 27 2c 20 60 63 6f 6c 75 6d 6e 27 2c 20 60 63 68 61 72 s.can.be.`fill',.`column',.`char
1ac0 61 63 74 65 72 27 2c 20 6f 72 20 60 62 69 74 6d 61 70 27 2e 22 0a 20 20 3a 74 79 70 65 20 27 28 acter',.or.`bitmap'."...:type.'(
1ae0 63 68 6f 69 63 65 20 28 63 6f 6e 73 74 20 66 69 6c 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 choice.(const.fill).............
1b00 20 20 20 20 20 28 63 6f 6e 73 74 20 63 6f 6c 75 6d 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 .....(const.column).............
1b20 20 20 20 20 20 28 63 6f 6e 73 74 20 63 68 61 72 61 63 74 65 72 29 0a 20 20 20 20 20 20 20 20 20 .....(const.character)..........
1b40 20 20 20 20 20 20 20 20 28 63 6f 6e 73 74 20 62 69 74 6d 61 70 29 29 0a 20 20 3a 67 72 6f 75 70 ........(const.bitmap))...:group
1b60 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 29 0a 0a 28 64 65 66 .'highlight-indent-guides)..(def
1b80 63 75 73 74 6f 6d 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 72 custom.highlight-indent-guides-r
1ba0 65 73 70 6f 6e 73 69 76 65 20 6e 69 6c 0a 20 20 22 57 68 65 74 68 65 72 20 72 65 73 70 6f 6e 73 esponsive.nil..."Whether.respons
1bc0 69 76 65 20 68 69 67 68 6c 69 67 68 74 73 20 73 68 6f 75 6c 64 20 62 65 20 75 73 65 64 2e 0a 54 ive.highlights.should.be.used..T
1be0 68 69 73 20 61 6c 6c 6f 77 73 20 64 69 66 66 65 72 65 6e 74 20 68 69 67 68 6c 69 67 68 74 20 63 his.allows.different.highlight.c
1c00 6f 6c 6f 72 73 20 74 6f 20 62 65 20 75 73 65 64 20 69 6e 20 72 65 73 70 6f 6e 73 65 20 74 6f 20 olors.to.be.used.in.response.to.
1c20 74 68 65 20 6c 6f 63 61 74 69 6f 6e 20 6f 66 0a 74 68 65 20 70 6f 69 6e 74 2e 20 20 49 66 20 74 the.location.of.the.point...If.t
1c40 68 69 73 20 69 73 20 6e 69 6c 2c 20 6e 6f 20 72 65 73 70 6f 6e 73 69 76 65 20 68 69 67 68 6c 69 his.is.nil,.no.responsive.highli
1c60 67 68 74 69 6e 67 20 69 73 20 75 73 65 64 2e 20 20 49 66 20 74 68 69 73 20 69 73 0a 60 74 6f 70 ghting.is.used...If.this.is.`top
1c80 27 2c 20 74 68 65 20 69 6e 64 65 6e 74 20 6c 65 76 65 6c 20 6f 66 20 74 68 65 20 63 75 72 72 65 ',.the.indent.level.of.the.curre
1ca0 6e 74 20 6c 69 6e 65 20 69 73 20 63 6f 6c 6f 72 65 64 20 64 69 73 74 69 6e 63 74 6c 79 2e 20 20 nt.line.is.colored.distinctly...
1cc0 49 66 20 74 68 69 73 20 69 73 0a 60 73 74 61 63 6b 27 2c 20 74 68 72 65 65 20 63 6f 6c 6f 72 61 If.this.is.`stack',.three.colora
1ce0 74 69 6f 6e 73 20 61 72 65 20 75 73 65 64 3a 20 6f 6e 65 20 66 6f 72 20 74 68 65 20 63 75 72 72 tions.are.used:.one.for.the.curr
1d00 65 6e 74 20 69 6e 64 65 6e 74 20 6c 65 76 65 6c 20 28 61 73 20 77 69 74 68 0a 60 74 6f 70 27 29 ent.indent.level.(as.with.`top')
1d20 2c 20 6f 6e 65 20 66 6f 72 20 61 6c 6c 20 70 61 72 65 6e 74 20 6c 65 76 65 6c 73 20 6f 66 20 74 ,.one.for.all.parent.levels.of.t
1d40 68 65 20 63 75 72 72 65 6e 74 20 69 6e 64 65 6e 74 20 6c 65 76 65 6c 2c 20 61 6e 64 20 6f 6e 65 he.current.indent.level,.and.one
1d60 20 66 6f 72 20 61 6c 6c 0a 6f 74 68 65 72 20 6c 65 76 65 6c 73 2e 22 0a 20 20 3a 74 79 70 65 20 .for.all.other.levels."...:type.
1d80 27 28 63 68 6f 69 63 65 20 28 63 6f 6e 73 74 20 6e 69 6c 29 20 28 63 6f 6e 73 74 20 74 6f 70 29 '(choice.(const.nil).(const.top)
1da0 20 28 63 6f 6e 73 74 20 73 74 61 63 6b 29 29 0a 20 20 3a 67 72 6f 75 70 20 27 68 69 67 68 6c 69 .(const.stack))...:group.'highli
1dc0 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 68 ght-indent-guides)..(defcustom.h
1de0 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 61 75 74 6f 2d 65 6e 61 62 ighlight-indent-guides-auto-enab
1e00 6c 65 64 20 74 0a 20 20 22 57 68 65 74 68 65 72 20 74 6f 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c led.t..."Whether.to.automaticall
1e20 79 20 63 61 6c 63 75 6c 61 74 65 20 66 61 63 65 73 2e 0a 49 66 20 74 68 69 73 20 69 73 20 65 6e y.calculate.faces..If.this.is.en
1e40 61 62 6c 65 64 2c 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 20 77 abled,.highlight-indent-guides.w
1e60 69 6c 6c 20 75 73 65 20 74 68 65 20 63 75 72 72 65 6e 74 20 74 68 65 6d 65 27 73 0a 62 61 63 6b ill.use.the.current.theme's.back
1e80 67 72 6f 75 6e 64 20 63 6f 6c 6f 72 20 74 6f 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 63 61 ground.color.to.automatically.ca
1ea0 6c 63 75 6c 61 74 65 20 72 65 61 73 6f 6e 61 62 6c 65 20 69 6e 64 65 6e 74 20 67 75 69 64 65 20 lculate.reasonable.indent.guide.
1ec0 63 6f 6c 6f 72 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 colors."...:type.'boolean...:gro
1ee0 75 70 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 29 0a 0a 28 64 up.'highlight-indent-guides)..(d
1f00 65 66 63 75 73 74 6f 6d 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 efcustom.highlight-indent-guides
1f20 2d 73 75 70 70 72 65 73 73 2d 61 75 74 6f 2d 65 72 72 6f 72 20 6e 69 6c 0a 20 20 22 57 68 65 74 -suppress-auto-error.nil..."Whet
1f40 68 65 72 20 74 6f 20 73 75 70 70 72 65 73 73 20 74 68 65 20 65 72 72 6f 72 20 74 68 61 74 20 73 her.to.suppress.the.error.that.s
1f60 6f 6d 65 74 69 6d 65 73 20 70 72 69 6e 74 73 20 77 68 65 6e 20 63 61 6c 63 75 6c 61 74 69 6e 67 ometimes.prints.when.calculating
1f80 20 66 61 63 65 73 2e 0a 57 68 65 6e 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 63 61 6c 63 75 .faces..When.automatically.calcu
1fa0 6c 61 74 69 6e 67 20 66 61 63 65 73 2c 20 73 6f 6d 65 74 69 6d 65 73 20 74 68 65 72 65 20 77 69 lating.faces,.sometimes.there.wi
1fc0 6c 6c 20 62 65 20 61 6e 20 65 72 72 6f 72 20 74 68 61 74 0a 5c 22 60 64 65 66 61 75 6c 74 27 20 ll.be.an.error.that.\"`default'.
1fe0 66 61 63 65 20 69 73 20 6e 6f 74 20 73 65 74 20 70 72 6f 70 65 72 6c 79 5c 22 2e 20 20 49 66 20 face.is.not.set.properly\"...If.
2000 74 68 69 73 20 66 6c 61 67 20 69 73 20 65 6e 61 62 6c 65 64 2c 0a 68 69 67 68 6c 69 67 68 74 2d this.flag.is.enabled,.highlight-
2020 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 20 77 69 6c 6c 20 6e 6f 74 20 70 72 69 6e 74 20 74 68 69 indent-guides.will.not.print.thi
2040 73 20 65 72 72 6f 72 2e 20 20 54 68 69 73 20 63 61 6e 20 62 65 20 68 65 6c 70 66 75 6c 20 69 6e s.error...This.can.be.helpful.in
2060 0a 73 69 74 75 61 74 69 6f 6e 73 20 77 68 65 72 65 20 66 61 63 65 73 20 61 72 65 20 63 61 6c 63 .situations.where.faces.are.calc
2080 75 6c 61 74 65 64 20 63 6f 72 72 65 63 74 6c 79 2c 20 62 75 74 20 74 68 65 20 65 72 72 6f 72 20 ulated.correctly,.but.the.error.
20a0 69 73 20 70 72 69 6e 74 65 64 0a 61 6e 79 77 61 79 2c 20 77 68 69 63 68 20 63 61 6e 20 62 65 20 is.printed.anyway,.which.can.be.
20c0 61 6e 6e 6f 79 69 6e 67 2e 22 0a 20 20 3a 74 79 70 65 20 27 62 6f 6f 6c 65 61 6e 0a 20 20 3a 67 annoying."...:type.'boolean...:g
20e0 72 6f 75 70 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 29 0a 0a roup.'highlight-indent-guides)..
2100 28 64 65 66 63 75 73 74 6f 6d 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 (defcustom.highlight-indent-guid
2120 65 73 2d 68 69 67 68 6c 69 67 68 74 65 72 2d 66 75 6e 63 74 69 6f 6e 0a 20 20 27 68 69 67 68 6c es-highlighter-function...'highl
2140 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 68 69 67 68 6c 69 67 68 74 65 72 2d ight-indent-guides--highlighter-
2160 64 65 66 61 75 6c 74 0a 20 20 22 44 65 74 65 72 6d 69 6e 65 20 74 68 65 20 63 6f 72 72 65 63 74 default..."Determine.the.correct
2180 20 66 61 63 65 20 74 6f 20 75 73 65 20 66 6f 72 20 61 20 67 69 76 65 6e 20 69 6e 64 65 6e 74 61 .face.to.use.for.a.given.indenta
21a0 74 69 6f 6e 20 6c 65 76 65 6c 2e 0a 43 75 73 74 6f 6d 69 7a 61 62 6c 65 20 66 75 6e 63 74 69 6f tion.level..Customizable.functio
21c0 6e 20 77 68 69 63 68 20 61 70 70 6c 69 65 73 20 66 61 63 65 73 20 74 6f 20 69 6e 64 65 6e 74 61 n.which.applies.faces.to.indenta
21e0 74 69 6f 6e 2e 20 20 54 68 65 20 66 75 6e 63 74 69 6f 6e 20 69 73 0a 63 61 6c 6c 65 64 20 6f 6e tion...The.function.is.called.on
2200 63 65 20 70 65 72 20 69 6e 64 65 6e 74 61 74 69 6f 6e 20 63 68 61 72 61 63 74 65 72 2c 20 61 6e ce.per.indentation.character,.an
2220 64 20 74 61 6b 65 73 20 74 68 72 65 65 20 70 61 72 61 6d 65 74 65 72 73 3a 20 4c 45 56 45 4c 20 d.takes.three.parameters:.LEVEL.
2240 69 73 20 74 68 65 0a 69 6e 64 65 6e 74 61 74 69 6f 6e 20 6c 65 76 65 6c 20 6f 66 20 74 68 65 20 is.the.indentation.level.of.the.
2260 63 68 61 72 61 63 74 65 72 2c 20 77 69 74 68 20 30 20 62 65 69 6e 67 20 74 68 65 20 6f 75 74 65 character,.with.0.being.the.oute
2280 72 6d 6f 73 74 20 6c 65 76 65 6c 2e 0a 52 45 53 50 4f 4e 53 49 56 45 20 69 73 20 65 69 74 68 65 rmost.level..RESPONSIVE.is.eithe
22a0 72 20 6e 69 6c 2c 20 60 74 6f 70 27 2c 20 6f 72 20 60 73 74 61 63 6b 27 2c 20 64 65 70 65 6e 64 r.nil,.`top',.or.`stack',.depend
22c0 69 6e 67 20 6f 6e 20 77 68 69 63 68 20 72 65 73 70 6f 6e 73 69 76 65 20 63 6c 61 73 73 0a 74 68 ing.on.which.responsive.class.th
22e0 65 20 63 68 61 72 61 63 74 65 72 20 66 61 6c 6c 73 20 69 6e 74 6f 2e 20 20 44 49 53 50 4c 41 59 e.character.falls.into...DISPLAY
2300 20 69 73 20 74 68 65 20 63 75 72 72 65 6e 74 20 64 69 73 70 6c 61 79 20 6d 65 74 68 6f 64 20 73 .is.the.current.display.method.s
2320 65 74 74 69 6e 67 2c 20 77 68 69 63 68 0a 63 61 6e 20 62 65 20 60 66 69 6c 6c 27 2c 20 60 63 6f etting,.which.can.be.`fill',.`co
2340 6c 75 6d 6e 27 2c 20 6f 72 20 60 63 68 61 72 61 63 74 65 72 27 2e 20 20 54 68 65 20 72 65 74 75 lumn',.or.`character'...The.retu
2360 72 6e 20 76 61 6c 75 65 20 69 73 20 65 69 74 68 65 72 20 74 68 65 20 66 61 63 65 20 74 6f 0a 61 rn.value.is.either.the.face.to.a
2380 70 70 6c 79 20 74 6f 20 74 68 65 20 67 75 69 64 65 20 63 68 61 72 61 63 74 65 72 2c 20 6f 72 20 pply.to.the.guide.character,.or.
23a0 6e 69 6c 20 69 66 20 74 68 65 20 67 75 69 64 65 20 73 68 6f 75 6c 64 20 6e 6f 74 20 62 65 20 64 nil.if.the.guide.should.not.be.d
23c0 69 73 70 6c 61 79 65 64 20 61 74 0a 61 6c 6c 2e 20 20 54 68 65 20 72 65 73 75 6c 74 73 20 6f 66 isplayed.at.all...The.results.of
23e0 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 61 72 65 20 63 61 63 68 65 64 20 70 65 72 20 69 6e .this.function.are.cached.per.in
2400 64 65 6e 74 61 74 69 6f 6e 20 63 68 61 72 61 63 74 65 72 2c 20 73 6f 20 74 68 65 0a 66 75 6e 63 dentation.character,.so.the.func
2420 74 69 6f 6e 20 73 68 6f 75 6c 64 20 63 6f 6e 73 69 73 74 65 6e 74 6c 79 20 72 65 74 75 72 6e 20 tion.should.consistently.return.
2440 74 68 65 20 73 61 6d 65 20 6f 75 74 70 75 74 20 67 69 76 65 6e 20 74 68 65 20 73 61 6d 65 20 69 the.same.output.given.the.same.i
2460 6e 70 75 74 2e 22 0a 20 20 3a 74 79 70 65 20 27 66 75 6e 63 74 69 6f 6e 0a 20 20 3a 67 72 6f 75 nput."...:type.'function...:grou
2480 70 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 29 0a 0a 28 64 65 p.'highlight-indent-guides)..(de
24a0 66 63 75 73 74 6f 6d 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d fcustom.highlight-indent-guides-
24c0 62 69 74 6d 61 70 2d 66 75 6e 63 74 69 6f 6e 0a 20 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 bitmap-function...'highlight-ind
24e0 65 6e 74 2d 67 75 69 64 65 73 2d 2d 62 69 74 6d 61 70 2d 64 6f 74 73 0a 20 20 22 44 65 74 65 72 ent-guides--bitmap-dots..."Deter
2500 6d 69 6e 65 20 74 68 65 20 73 68 61 70 65 20 6f 66 20 74 68 65 20 69 6e 64 65 6e 74 20 67 75 69 mine.the.shape.of.the.indent.gui
2520 64 65 20 62 69 74 6d 61 70 2e 0a 43 75 73 74 6f 6d 69 7a 61 62 6c 65 20 66 75 6e 63 74 69 6f 6e de.bitmap..Customizable.function
2540 20 77 68 69 63 68 20 60 64 72 61 77 73 27 20 74 68 65 20 69 6e 64 65 6e 74 20 67 75 69 64 65 20 .which.`draws'.the.indent.guide.
2560 62 69 74 6d 61 70 2e 20 20 54 68 65 20 66 75 6e 63 74 69 6f 6e 20 69 73 0a 63 61 6c 6c 65 64 20 bitmap...The.function.is.called.
2580 6f 6e 63 65 20 70 65 72 20 69 6e 64 65 6e 74 61 74 69 6f 6e 20 63 68 61 72 61 63 74 65 72 2c 20 once.per.indentation.character,.
25a0 61 6e 64 20 74 61 6b 65 73 20 74 68 72 65 65 20 70 61 72 61 6d 65 74 65 72 73 3a 20 57 49 44 54 and.takes.three.parameters:.WIDT
25c0 48 20 61 6e 64 0a 48 45 49 47 48 54 20 61 72 65 20 74 68 65 20 70 69 78 65 6c 20 77 69 64 74 68 H.and.HEIGHT.are.the.pixel.width
25e0 20 61 6e 64 20 68 65 69 67 68 74 20 6f 66 20 74 68 65 20 63 68 61 72 61 63 74 65 72 2c 20 61 6e .and.height.of.the.character,.an
2600 64 20 43 52 45 50 20 69 73 20 74 68 65 0a 63 68 61 72 61 63 74 65 72 20 74 68 61 74 20 73 68 6f d.CREP.is.the.character.that.sho
2620 75 6c 64 20 62 65 20 75 73 65 64 20 74 6f 20 72 65 70 72 65 73 65 6e 74 20 61 20 63 6f 6c 6f 72 uld.be.used.to.represent.a.color
2640 65 64 20 70 69 78 65 6c 2e 20 20 54 68 65 20 72 65 74 75 72 6e 20 76 61 6c 75 65 20 69 73 0a 61 ed.pixel...The.return.value.is.a
2660 20 6c 69 73 74 20 6f 66 20 73 74 72 69 6e 67 73 2c 20 77 69 74 68 20 65 61 63 68 20 73 74 72 69 .list.of.strings,.with.each.stri
2680 6e 67 20 72 65 70 72 65 73 65 6e 74 69 6e 67 20 61 20 72 6f 77 20 6f 66 20 70 69 78 65 6c 73 2e ng.representing.a.row.of.pixels.
26a0 20 20 54 68 65 20 6c 69 73 74 0a 73 68 6f 75 6c 64 20 62 65 20 48 45 49 47 48 54 20 69 6e 20 73 ..The.list.should.be.HEIGHT.in.s
26c0 69 7a 65 2c 20 61 6e 64 20 65 61 63 68 20 73 74 72 69 6e 67 20 69 6e 20 74 68 65 20 6c 69 73 74 ize,.and.each.string.in.the.list
26e0 20 73 68 6f 75 6c 64 20 62 65 20 57 49 44 54 48 20 69 6e 20 73 69 7a 65 2e 0a 45 61 63 68 20 63 .should.be.WIDTH.in.size..Each.c
2700 68 61 72 61 63 74 65 72 20 72 65 70 72 65 73 65 6e 74 73 20 61 20 70 69 78 65 6c 2c 20 61 6e 64 haracter.represents.a.pixel,.and
2720 20 73 68 6f 75 6c 64 20 62 65 20 43 52 45 50 20 69 66 20 74 68 65 20 70 69 78 65 6c 20 69 73 20 .should.be.CREP.if.the.pixel.is.
2740 63 6f 6c 6f 72 65 64 2c 0a 61 6e 64 20 5a 52 45 50 20 69 66 20 69 74 20 69 73 6e 27 74 20 63 6f colored,.and.ZREP.if.it.isn't.co
2760 6c 6f 72 65 64 2e 22 0a 20 20 3a 74 79 70 65 20 27 66 75 6e 63 74 69 6f 6e 0a 20 20 3a 67 72 6f lored."...:type.'function...:gro
2780 75 70 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 29 0a 0a 28 64 up.'highlight-indent-guides)..(d
27a0 65 66 63 75 73 74 6f 6d 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 efcustom.highlight-indent-guides
27c0 2d 61 75 74 6f 2d 6f 64 64 2d 66 61 63 65 2d 70 65 72 63 20 35 0a 20 20 22 43 6f 6c 6f 72 20 61 -auto-odd-face-perc.5..."Color.a
27e0 64 6a 75 73 74 6d 65 6e 74 20 70 65 72 63 65 6e 74 61 67 65 20 66 6f 72 20 68 69 67 68 6c 69 67 djustment.percentage.for.highlig
2800 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 6f 64 64 2d 66 61 63 65 2e 0a 54 68 69 73 20 ht-indent-guides-odd-face..This.
2820 69 73 20 75 73 65 64 20 74 6f 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 63 61 6c 63 75 6c 61 is.used.to.automatically.calcula
2840 74 65 20 74 68 65 20 69 6e 64 65 6e 74 20 67 75 69 64 65 20 66 61 63 65 73 20 66 72 6f 6d 20 74 te.the.indent.guide.faces.from.t
2860 68 65 0a 62 61 63 6b 67 72 6f 75 6e 64 20 63 6f 6c 6f 72 2e 22 0a 20 20 3a 74 79 70 65 20 27 6e he.background.color."...:type.'n
2880 75 6d 62 65 72 0a 20 20 3a 67 72 6f 75 70 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 umber...:group.'highlight-indent
28a0 2d 67 75 69 64 65 73 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 68 69 67 68 6c 69 67 68 74 2d 69 -guides)..(defcustom.highlight-i
28c0 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 61 75 74 6f 2d 65 76 65 6e 2d 66 61 63 65 2d 70 65 72 63 ndent-guides-auto-even-face-perc
28e0 20 31 30 0a 20 20 22 43 6f 6c 6f 72 20 61 64 6a 75 73 74 6d 65 6e 74 20 70 65 72 63 65 6e 74 61 .10..."Color.adjustment.percenta
2900 67 65 20 66 6f 72 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 65 ge.for.highlight-indent-guides-e
2920 76 65 6e 2d 66 61 63 65 2e 0a 54 68 69 73 20 69 73 20 75 73 65 64 20 74 6f 20 61 75 74 6f 6d 61 ven-face..This.is.used.to.automa
2940 74 69 63 61 6c 6c 79 20 63 61 6c 63 75 6c 61 74 65 20 74 68 65 20 69 6e 64 65 6e 74 20 67 75 69 tically.calculate.the.indent.gui
2960 64 65 20 66 61 63 65 73 20 66 72 6f 6d 20 74 68 65 0a 62 61 63 6b 67 72 6f 75 6e 64 20 63 6f 6c de.faces.from.the.background.col
2980 6f 72 2e 22 0a 20 20 3a 74 79 70 65 20 27 6e 75 6d 62 65 72 0a 20 20 3a 67 72 6f 75 70 20 27 68 or."...:type.'number...:group.'h
29a0 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 29 0a 0a 28 64 65 66 63 75 73 ighlight-indent-guides)..(defcus
29c0 74 6f 6d 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 61 75 74 6f tom.highlight-indent-guides-auto
29e0 2d 63 68 61 72 61 63 74 65 72 2d 66 61 63 65 2d 70 65 72 63 20 31 30 0a 20 20 22 43 6f 6c 6f 72 -character-face-perc.10..."Color
2a00 20 61 64 6a 75 73 74 6d 65 6e 74 20 70 65 72 63 65 6e 74 61 67 65 20 66 6f 72 20 68 69 67 68 6c .adjustment.percentage.for.highl
2a20 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 63 68 61 72 61 63 74 65 72 2d 66 61 63 ight-indent-guides-character-fac
2a40 65 2e 0a 54 68 69 73 20 69 73 20 75 73 65 64 20 74 6f 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 e..This.is.used.to.automatically
2a60 20 63 61 6c 63 75 6c 61 74 65 20 74 68 65 20 69 6e 64 65 6e 74 20 67 75 69 64 65 20 66 61 63 65 .calculate.the.indent.guide.face
2a80 73 20 66 72 6f 6d 20 74 68 65 0a 62 61 63 6b 67 72 6f 75 6e 64 20 63 6f 6c 6f 72 2e 22 0a 20 20 s.from.the.background.color."...
2aa0 3a 74 79 70 65 20 27 6e 75 6d 62 65 72 0a 20 20 3a 67 72 6f 75 70 20 27 68 69 67 68 6c 69 67 68 :type.'number...:group.'highligh
2ac0 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 68 69 67 t-indent-guides)..(defcustom.hig
2ae0 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 61 75 74 6f 2d 74 6f 70 2d 6f 64 hlight-indent-guides-auto-top-od
2b00 64 2d 66 61 63 65 2d 70 65 72 63 20 32 35 0a 20 20 22 43 6f 6c 6f 72 20 61 64 6a 75 73 74 6d 65 d-face-perc.25..."Color.adjustme
2b20 6e 74 20 70 65 72 63 65 6e 74 61 67 65 20 66 6f 72 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 nt.percentage.for.highlight-inde
2b40 6e 74 2d 67 75 69 64 65 73 2d 6f 64 64 2d 66 61 63 65 2e 0a 54 68 69 73 20 69 73 20 75 73 65 64 nt-guides-odd-face..This.is.used
2b60 20 74 6f 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 63 61 6c 63 75 6c 61 74 65 20 74 68 65 20 .to.automatically.calculate.the.
2b80 69 6e 64 65 6e 74 20 67 75 69 64 65 20 66 61 63 65 73 20 66 72 6f 6d 20 74 68 65 0a 62 61 63 6b indent.guide.faces.from.the.back
2ba0 67 72 6f 75 6e 64 20 63 6f 6c 6f 72 2e 22 0a 20 20 3a 74 79 70 65 20 27 6e 75 6d 62 65 72 0a 20 ground.color."...:type.'number..
2bc0 20 3a 67 72 6f 75 70 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 .:group.'highlight-indent-guides
2be0 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 )..(defcustom.highlight-indent-g
2c00 75 69 64 65 73 2d 61 75 74 6f 2d 74 6f 70 2d 65 76 65 6e 2d 66 61 63 65 2d 70 65 72 63 20 33 30 uides-auto-top-even-face-perc.30
2c20 0a 20 20 22 43 6f 6c 6f 72 20 61 64 6a 75 73 74 6d 65 6e 74 20 70 65 72 63 65 6e 74 61 67 65 20 ..."Color.adjustment.percentage.
2c40 66 6f 72 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 65 76 65 6e for.highlight-indent-guides-even
2c60 2d 66 61 63 65 2e 0a 54 68 69 73 20 69 73 20 75 73 65 64 20 74 6f 20 61 75 74 6f 6d 61 74 69 63 -face..This.is.used.to.automatic
2c80 61 6c 6c 79 20 63 61 6c 63 75 6c 61 74 65 20 74 68 65 20 69 6e 64 65 6e 74 20 67 75 69 64 65 20 ally.calculate.the.indent.guide.
2ca0 66 61 63 65 73 20 66 72 6f 6d 20 74 68 65 0a 62 61 63 6b 67 72 6f 75 6e 64 20 63 6f 6c 6f 72 2e faces.from.the.background.color.
2cc0 22 0a 20 20 3a 74 79 70 65 20 27 6e 75 6d 62 65 72 0a 20 20 3a 67 72 6f 75 70 20 27 68 69 67 68 "...:type.'number...:group.'high
2ce0 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d light-indent-guides)..(defcustom
2d00 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 61 75 74 6f 2d 74 6f .highlight-indent-guides-auto-to
2d20 70 2d 63 68 61 72 61 63 74 65 72 2d 66 61 63 65 2d 70 65 72 63 20 33 30 0a 20 20 22 43 6f 6c 6f p-character-face-perc.30..."Colo
2d40 72 20 61 64 6a 75 73 74 6d 65 6e 74 20 70 65 72 63 65 6e 74 61 67 65 20 66 6f 72 20 68 69 67 68 r.adjustment.percentage.for.high
2d60 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 63 68 61 72 61 63 74 65 72 2d 66 61 light-indent-guides-character-fa
2d80 63 65 2e 0a 54 68 69 73 20 69 73 20 75 73 65 64 20 74 6f 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c ce..This.is.used.to.automaticall
2da0 79 20 63 61 6c 63 75 6c 61 74 65 20 74 68 65 20 69 6e 64 65 6e 74 20 67 75 69 64 65 20 66 61 63 y.calculate.the.indent.guide.fac
2dc0 65 73 20 66 72 6f 6d 20 74 68 65 0a 62 61 63 6b 67 72 6f 75 6e 64 20 63 6f 6c 6f 72 2e 22 0a 20 es.from.the.background.color."..
2de0 20 3a 74 79 70 65 20 27 6e 75 6d 62 65 72 0a 20 20 3a 67 72 6f 75 70 20 27 68 69 67 68 6c 69 67 .:type.'number...:group.'highlig
2e00 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 68 69 ht-indent-guides)..(defcustom.hi
2e20 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 61 75 74 6f 2d 73 74 61 63 6b ghlight-indent-guides-auto-stack
2e40 2d 6f 64 64 2d 66 61 63 65 2d 70 65 72 63 20 31 35 0a 20 20 22 43 6f 6c 6f 72 20 61 64 6a 75 73 -odd-face-perc.15..."Color.adjus
2e60 74 6d 65 6e 74 20 70 65 72 63 65 6e 74 61 67 65 20 66 6f 72 20 68 69 67 68 6c 69 67 68 74 2d 69 tment.percentage.for.highlight-i
2e80 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 6f 64 64 2d 66 61 63 65 2e 0a 54 68 69 73 20 69 73 20 75 ndent-guides-odd-face..This.is.u
2ea0 73 65 64 20 74 6f 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 63 61 6c 63 75 6c 61 74 65 20 74 sed.to.automatically.calculate.t
2ec0 68 65 20 69 6e 64 65 6e 74 20 67 75 69 64 65 20 66 61 63 65 73 20 66 72 6f 6d 20 74 68 65 0a 62 he.indent.guide.faces.from.the.b
2ee0 61 63 6b 67 72 6f 75 6e 64 20 63 6f 6c 6f 72 2e 22 0a 20 20 3a 74 79 70 65 20 27 6e 75 6d 62 65 ackground.color."...:type.'numbe
2f00 72 0a 20 20 3a 67 72 6f 75 70 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 r...:group.'highlight-indent-gui
2f20 64 65 73 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e des)..(defcustom.highlight-inden
2f40 74 2d 67 75 69 64 65 73 2d 61 75 74 6f 2d 73 74 61 63 6b 2d 65 76 65 6e 2d 66 61 63 65 2d 70 65 t-guides-auto-stack-even-face-pe
2f60 72 63 20 32 30 0a 20 20 22 43 6f 6c 6f 72 20 61 64 6a 75 73 74 6d 65 6e 74 20 70 65 72 63 65 6e rc.20..."Color.adjustment.percen
2f80 74 61 67 65 20 66 6f 72 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 tage.for.highlight-indent-guides
2fa0 2d 65 76 65 6e 2d 66 61 63 65 2e 0a 54 68 69 73 20 69 73 20 75 73 65 64 20 74 6f 20 61 75 74 6f -even-face..This.is.used.to.auto
2fc0 6d 61 74 69 63 61 6c 6c 79 20 63 61 6c 63 75 6c 61 74 65 20 74 68 65 20 69 6e 64 65 6e 74 20 67 matically.calculate.the.indent.g
2fe0 75 69 64 65 20 66 61 63 65 73 20 66 72 6f 6d 20 74 68 65 0a 62 61 63 6b 67 72 6f 75 6e 64 20 63 uide.faces.from.the.background.c
3000 6f 6c 6f 72 2e 22 0a 20 20 3a 74 79 70 65 20 27 6e 75 6d 62 65 72 0a 20 20 3a 67 72 6f 75 70 20 olor."...:type.'number...:group.
3020 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 29 0a 0a 28 64 65 66 63 'highlight-indent-guides)..(defc
3040 75 73 74 6f 6d 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 61 75 ustom.highlight-indent-guides-au
3060 74 6f 2d 73 74 61 63 6b 2d 63 68 61 72 61 63 74 65 72 2d 66 61 63 65 2d 70 65 72 63 20 32 30 0a to-stack-character-face-perc.20.
3080 20 20 22 43 6f 6c 6f 72 20 61 64 6a 75 73 74 6d 65 6e 74 20 70 65 72 63 65 6e 74 61 67 65 20 66 .."Color.adjustment.percentage.f
30a0 6f 72 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 63 68 61 72 61 or.highlight-indent-guides-chara
30c0 63 74 65 72 2d 66 61 63 65 2e 0a 54 68 69 73 20 69 73 20 75 73 65 64 20 74 6f 20 61 75 74 6f 6d cter-face..This.is.used.to.autom
30e0 61 74 69 63 61 6c 6c 79 20 63 61 6c 63 75 6c 61 74 65 20 74 68 65 20 69 6e 64 65 6e 74 20 67 75 atically.calculate.the.indent.gu
3100 69 64 65 20 66 61 63 65 73 20 66 72 6f 6d 20 74 68 65 0a 62 61 63 6b 67 72 6f 75 6e 64 20 63 6f ide.faces.from.the.background.co
3120 6c 6f 72 2e 22 0a 20 20 3a 74 79 70 65 20 27 6e 75 6d 62 65 72 0a 20 20 3a 67 72 6f 75 70 20 27 lor."...:type.'number...:group.'
3140 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 29 0a 0a 28 64 65 66 63 75 highlight-indent-guides)..(defcu
3160 73 74 6f 6d 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 64 65 6c stom.highlight-indent-guides-del
3180 61 79 20 30 2e 31 0a 20 20 22 54 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 73 65 63 6f 6e 64 73 20 ay.0.1..."The.number.of.seconds.
31a0 74 6f 20 77 61 69 74 20 66 6f 72 20 61 6e 20 69 64 6c 65 20 73 74 61 74 65 20 62 65 66 6f 72 65 to.wait.for.an.idle.state.before
31c0 20 72 65 64 72 61 77 69 6e 67 2e 0a 54 68 69 73 20 69 73 20 6f 6e 6c 79 20 75 73 65 66 75 6c 20 .redrawing..This.is.only.useful.
31e0 69 66 20 60 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 72 65 73 70 if.`highlight-indent-guides-resp
3200 6f 6e 73 69 76 65 27 20 69 73 20 6e 6f 74 20 6e 69 6c 2e 22 0a 20 20 3a 74 79 70 65 20 27 6e 75 onsive'.is.not.nil."...:type.'nu
3220 6d 62 65 72 0a 20 20 3a 67 72 6f 75 70 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d mber...:group.'highlight-indent-
3240 67 75 69 64 65 73 29 0a 0a 28 64 65 66 76 61 72 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e guides)..(defvar.highlight-inden
3260 74 2d 67 75 69 64 65 73 2d 2d 69 64 6c 65 2d 74 69 6d 65 72 20 6e 69 6c 0a 20 20 22 54 68 65 20 t-guides--idle-timer.nil..."The.
3280 69 64 6c 65 20 74 69 6d 65 72 20 6f 62 6a 65 63 74 20 66 6f 72 20 72 65 73 70 6f 6e 73 69 76 65 idle.timer.object.for.responsive
32a0 20 6d 6f 64 65 2e 22 29 0a 0a 28 64 65 66 76 61 72 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 .mode.")..(defvar.highlight-inde
32c0 6e 74 2d 67 75 69 64 65 73 2d 2d 6c 69 6e 65 2d 63 61 63 68 65 20 27 28 6e 69 6c 20 6e 69 6c 20 nt-guides--line-cache.'(nil.nil.
32e0 6e 69 6c 29 0a 20 20 22 54 68 65 20 6c 69 6e 65 20 63 61 63 68 65 20 66 6f 72 20 72 65 73 70 6f nil)..."The.line.cache.for.respo
3300 6e 73 69 76 65 20 6d 6f 64 65 2e 22 29 0a 28 6d 61 6b 65 2d 76 61 72 69 61 62 6c 65 2d 62 75 66 nsive.mode.").(make-variable-buf
3320 66 65 72 2d 6c 6f 63 61 6c 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 fer-local.'highlight-indent-guid
3340 65 73 2d 2d 6c 69 6e 65 2d 63 61 63 68 65 29 0a 0a 28 64 65 66 76 61 72 20 68 69 67 68 6c 69 67 es--line-cache)..(defvar.highlig
3360 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 62 69 74 6d 61 70 2d 6d 65 6d 6f 20 28 6d ht-indent-guides--bitmap-memo.(m
3380 61 6b 65 2d 68 61 73 68 2d 74 61 62 6c 65 20 3a 74 65 73 74 20 27 65 71 75 61 6c 29 0a 20 20 22 ake-hash-table.:test.'equal)..."
33a0 54 68 65 20 6d 65 6d 6f 69 7a 61 74 69 6f 6e 20 63 61 63 68 65 20 66 6f 72 20 62 69 74 6d 61 70 The.memoization.cache.for.bitmap
33c0 20 67 75 69 64 65 20 64 61 74 61 2e 22 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 .guide.data.")..;;;###autoload.(
33e0 64 65 66 69 6e 65 2d 6d 69 6e 6f 72 2d 6d 6f 64 65 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 define-minor-mode.highlight-inde
3400 6e 74 2d 67 75 69 64 65 73 2d 6d 6f 64 65 0a 20 20 22 44 69 73 70 6c 61 79 20 69 6e 64 65 6e 74 nt-guides-mode..."Display.indent
3420 20 67 75 69 64 65 73 20 69 6e 20 61 20 62 75 66 66 65 72 2e 22 0a 20 20 3a 6c 69 67 68 74 65 72 .guides.in.a.buffer."...:lighter
3440 22 20 68 2d 69 2d 67 22 0a 20 20 3a 67 72 6f 75 70 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 ".h-i-g"...:group.highlight-inde
3460 6e 74 2d 67 75 69 64 65 73 0a 20 20 28 6c 65 74 20 28 28 66 69 6c 6c 2d 6d 65 74 68 6f 64 2d 6b nt-guides...(let.((fill-method-k
3480 65 79 77 6f 72 64 73 0a 20 20 20 20 20 20 20 20 20 27 28 28 68 69 67 68 6c 69 67 68 74 2d 69 6e eywords..........'((highlight-in
34a0 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 66 69 6c 6c 2d 6b 65 79 77 6f 72 64 2d 6d 61 74 63 68 65 dent-guides--fill-keyword-matche
34c0 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 30 20 28 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e r.............0.(highlight-inden
34e0 74 2d 67 75 69 64 65 73 2d 2d 66 69 6c 6c 2d 68 69 67 68 6c 69 67 68 74 65 72 29 20 74 29 29 29 t-guides--fill-highlighter).t)))
3500 0a 20 20 20 20 20 20 20 20 28 63 6f 6c 75 6d 6e 2d 6d 65 74 68 6f 64 2d 6b 65 79 77 6f 72 64 73 .........(column-method-keywords
3520 0a 20 20 20 20 20 20 20 20 20 27 28 28 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 ..........'((highlight-indent-gu
3540 69 64 65 73 2d 2d 63 6f 6c 75 6d 6e 2d 6b 65 79 77 6f 72 64 2d 6d 61 74 63 68 65 72 0a 20 20 20 ides--column-keyword-matcher....
3560 20 20 20 20 20 20 20 20 20 30 20 28 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 .........0.(highlight-indent-gui
3580 64 65 73 2d 2d 63 6f 6c 75 6d 6e 2d 68 69 67 68 6c 69 67 68 74 65 72 29 20 74 29 29 29 0a 20 20 des--column-highlighter).t)))...
35a0 20 20 20 20 20 20 28 63 68 61 72 61 63 74 65 72 2d 6d 65 74 68 6f 64 2d 6b 65 79 77 6f 72 64 73 ......(character-method-keywords
35c0 0a 20 20 20 20 20 20 20 20 20 27 28 28 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 ..........'((highlight-indent-gu
35e0 69 64 65 73 2d 2d 63 6f 6c 75 6d 6e 2d 6b 65 79 77 6f 72 64 2d 6d 61 74 63 68 65 72 0a 20 20 20 ides--column-keyword-matcher....
3600 20 20 20 20 20 20 20 20 20 30 20 28 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 .........0.(highlight-indent-gui
3620 64 65 73 2d 2d 63 68 61 72 61 63 74 65 72 2d 68 69 67 68 6c 69 67 68 74 65 72 29 20 74 29 29 29 des--character-highlighter).t)))
3640 0a 20 20 20 20 20 20 20 20 28 62 69 74 6d 61 70 2d 6d 65 74 68 6f 64 2d 6b 65 79 77 6f 72 64 73 .........(bitmap-method-keywords
3660 0a 20 20 20 20 20 20 20 20 20 27 28 28 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 ..........'((highlight-indent-gu
3680 69 64 65 73 2d 2d 63 6f 6c 75 6d 6e 2d 6b 65 79 77 6f 72 64 2d 6d 61 74 63 68 65 72 0a 20 20 20 ides--column-keyword-matcher....
36a0 20 20 20 20 20 20 20 20 20 30 20 28 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 .........0.(highlight-indent-gui
36c0 64 65 73 2d 2d 62 69 74 6d 61 70 2d 68 69 67 68 6c 69 67 68 74 65 72 29 20 74 29 29 29 29 0a 20 des--bitmap-highlighter).t))))..
36e0 20 20 20 28 77 68 65 6e 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 ...(when.highlight-indent-guides
3700 2d 2d 69 64 6c 65 2d 74 69 6d 65 72 0a 20 20 20 20 20 20 28 63 61 6e 63 65 6c 2d 74 69 6d 65 72 --idle-timer.......(cancel-timer
3720 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 69 64 6c 65 2d 74 .highlight-indent-guides--idle-t
3740 69 6d 65 72 29 0a 20 20 20 20 20 20 28 73 65 74 71 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 imer).......(setq.highlight-inde
3760 6e 74 2d 67 75 69 64 65 73 2d 2d 69 64 6c 65 2d 74 69 6d 65 72 20 6e 69 6c 29 29 0a 20 20 20 20 nt-guides--idle-timer.nil)).....
3780 28 69 66 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 6d 6f 64 65 (if.highlight-indent-guides-mode
37a0 0a 20 20 20 20 20 20 20 20 28 70 72 6f 67 6e 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 73 65 74 .........(progn...........;;.set
37c0 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 6c 69 6e 65 2d 63 .highlight-indent-guides--line-c
37e0 61 63 68 65 20 73 6f 20 69 74 20 62 65 63 6f 6d 65 73 20 62 75 66 66 65 72 2d 6c 6f 63 61 6c 0a ache.so.it.becomes.buffer-local.
3800 20 20 20 20 20 20 20 20 20 20 3b 3b 20 41 66 74 65 72 20 74 68 69 73 2c 20 77 65 20 63 61 6e 20 ..........;;.After.this,.we.can.
3820 64 65 73 74 72 75 63 74 69 76 65 6c 79 20 6d 6f 64 69 66 79 20 69 74 20 6a 75 73 74 20 66 69 6e destructively.modify.it.just.fin
3840 65 2c 20 61 73 20 65 76 65 72 79 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 62 75 66 66 65 72 20 e,.as.every...........;;.buffer.
3860 68 61 73 20 61 20 75 6e 69 71 75 65 20 6f 62 6a 65 63 74 2e 0a 20 20 20 20 20 20 20 20 20 20 28 has.a.unique.object............(
3880 73 65 74 71 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 6c 69 setq.highlight-indent-guides--li
38a0 6e 65 2d 63 61 63 68 65 20 28 6c 69 73 74 20 6e 69 6c 20 6e 69 6c 20 6e 69 6c 29 29 0a 20 20 20 ne-cache.(list.nil.nil.nil))....
38c0 20 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 28 64 61 65 6d 6f 6e 70 29 20 28 68 69 67 68 6c 69 .......(unless.(daemonp).(highli
38e0 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 61 75 74 6f 2d 73 65 74 2d 66 61 63 65 73 ght-indent-guides-auto-set-faces
3900 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 61 64 64 2d 74 6f 2d 6c 69 73 74 20 27 61 66 74 65 72 ))...........(add-to-list.'after
3920 2d 6d 61 6b 65 2d 66 72 61 6d 65 2d 66 75 6e 63 74 69 6f 6e 73 0a 20 20 20 20 20 20 20 20 20 20 -make-frame-functions...........
3940 20 20 20 20 20 20 20 20 20 20 20 20 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 .............'highlight-indent-g
3960 75 69 64 65 73 2d 2d 61 75 74 6f 2d 73 65 74 2d 66 61 63 65 73 2d 77 69 74 68 2d 66 72 61 6d 65 uides--auto-set-faces-with-frame
3980 29 0a 20 20 20 20 20 20 20 20 20 20 28 61 64 64 2d 74 6f 2d 6c 69 73 74 20 27 66 6f 6e 74 2d 6c )...........(add-to-list.'font-l
39a0 6f 63 6b 2d 65 78 74 72 61 2d 6d 61 6e 61 67 65 64 2d 70 72 6f 70 73 20 27 64 69 73 70 6c 61 79 ock-extra-managed-props.'display
39c0 29 0a 20 20 20 20 20 20 20 20 20 20 28 61 64 64 2d 74 6f 2d 6c 69 73 74 20 27 74 65 78 74 2d 70 )...........(add-to-list.'text-p
39e0 72 6f 70 65 72 74 79 2d 64 65 66 61 75 6c 74 2d 6e 6f 6e 73 74 69 63 6b 79 0a 20 20 20 20 20 20 roperty-default-nonsticky.......
3a00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 20 27 68 69 67 68 6c 69 67 68 .................(cons.'highligh
3a20 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 70 72 6f 70 20 74 29 29 0a 20 20 20 20 20 20 20 t-indent-guides-prop.t))........
3a40 20 20 20 28 73 65 74 71 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 ...(setq.highlight-indent-guides
3a60 2d 2d 69 64 6c 65 2d 74 69 6d 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 72 75 --idle-timer.................(ru
3a80 6e 2d 77 69 74 68 2d 69 64 6c 65 2d 74 69 6d 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 n-with-idle-timer...............
3aa0 20 20 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 64 65 6c 61 79 ...highlight-indent-guides-delay
3ac0 20 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 68 69 67 68 6c 69 67 68 74 2d 69 .t..................'highlight-i
3ae0 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 74 72 79 2d 75 70 64 61 74 65 2d 6c 69 6e 65 2d 63 61 ndent-guides--try-update-line-ca
3b00 63 68 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 66 6f 6e 74 2d 6c 6f 63 6b 2d 61 64 64 2d 6b che))...........(font-lock-add-k
3b20 65 79 77 6f 72 64 73 0a 20 20 20 20 20 20 20 20 20 20 20 6e 69 6c 0a 20 20 20 20 20 20 20 20 20 eywords............nil..........
3b40 20 20 28 70 63 61 73 65 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 ..(pcase.highlight-indent-guides
3b60 2d 6d 65 74 68 6f 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 60 66 69 6c 6c 20 66 69 6c 6c -method..............(`fill.fill
3b80 2d 6d 65 74 68 6f 64 2d 6b 65 79 77 6f 72 64 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 -method-keywords)..............(
3ba0 60 63 6f 6c 75 6d 6e 20 63 6f 6c 75 6d 6e 2d 6d 65 74 68 6f 64 2d 6b 65 79 77 6f 72 64 73 29 0a `column.column-method-keywords).
3bc0 20 20 20 20 20 20 20 20 20 20 20 20 20 28 60 63 68 61 72 61 63 74 65 72 20 63 68 61 72 61 63 74 .............(`character.charact
3be0 65 72 2d 6d 65 74 68 6f 64 2d 6b 65 79 77 6f 72 64 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 er-method-keywords).............
3c00 20 28 60 62 69 74 6d 61 70 20 62 69 74 6d 61 70 2d 6d 65 74 68 6f 64 2d 6b 65 79 77 6f 72 64 73 .(`bitmap.bitmap-method-keywords
3c20 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 74 29 0a 20 20 20 20 20 20 20 20 20 20 28 6a 69 74 2d ))............t)...........(jit-
3c40 6c 6f 63 6b 2d 72 65 67 69 73 74 65 72 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d lock-register.'highlight-indent-
3c60 67 75 69 64 65 73 2d 2d 67 75 69 64 65 2d 72 65 67 69 6f 6e 29 29 0a 20 20 20 20 20 20 28 73 65 guides--guide-region)).......(se
3c80 74 71 20 61 66 74 65 72 2d 6d 61 6b 65 2d 66 72 61 6d 65 2d 66 75 6e 63 74 69 6f 6e 73 0a 20 20 tq.after-make-frame-functions...
3ca0 20 20 20 20 20 20 20 20 20 20 28 64 65 6c 65 74 65 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 ..........(delete.'highlight-ind
3cc0 65 6e 74 2d 67 75 69 64 65 73 2d 2d 61 75 74 6f 2d 73 65 74 2d 66 61 63 65 73 2d 77 69 74 68 2d ent-guides--auto-set-faces-with-
3ce0 66 72 61 6d 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 66 74 65 72 2d frame.....................after-
3d00 6d 61 6b 65 2d 66 72 61 6d 65 2d 66 75 6e 63 74 69 6f 6e 73 29 29 0a 20 20 20 20 20 20 28 66 6f make-frame-functions)).......(fo
3d20 6e 74 2d 6c 6f 63 6b 2d 72 65 6d 6f 76 65 2d 6b 65 79 77 6f 72 64 73 20 6e 69 6c 20 66 69 6c 6c nt-lock-remove-keywords.nil.fill
3d40 2d 6d 65 74 68 6f 64 2d 6b 65 79 77 6f 72 64 73 29 0a 20 20 20 20 20 20 28 66 6f 6e 74 2d 6c 6f -method-keywords).......(font-lo
3d60 63 6b 2d 72 65 6d 6f 76 65 2d 6b 65 79 77 6f 72 64 73 20 6e 69 6c 20 63 6f 6c 75 6d 6e 2d 6d 65 ck-remove-keywords.nil.column-me
3d80 74 68 6f 64 2d 6b 65 79 77 6f 72 64 73 29 0a 20 20 20 20 20 20 28 66 6f 6e 74 2d 6c 6f 63 6b 2d thod-keywords).......(font-lock-
3da0 72 65 6d 6f 76 65 2d 6b 65 79 77 6f 72 64 73 20 6e 69 6c 20 63 68 61 72 61 63 74 65 72 2d 6d 65 remove-keywords.nil.character-me
3dc0 74 68 6f 64 2d 6b 65 79 77 6f 72 64 73 29 0a 20 20 20 20 20 20 28 6a 69 74 2d 6c 6f 63 6b 2d 75 thod-keywords).......(jit-lock-u
3de0 6e 72 65 67 69 73 74 65 72 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 nregister.'highlight-indent-guid
3e00 65 73 2d 2d 67 75 69 64 65 2d 72 65 67 69 6f 6e 29 0a 20 20 20 20 20 20 28 68 69 67 68 6c 69 67 es--guide-region).......(highlig
3e20 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 75 6e 67 75 69 64 65 2d 72 65 67 69 6f 6e ht-indent-guides--unguide-region
3e40 20 28 70 6f 69 6e 74 2d 6d 69 6e 29 20 28 70 6f 69 6e 74 2d 6d 61 78 29 29 0a 20 20 20 20 20 20 .(point-min).(point-max)).......
3e60 28 66 6f 6e 74 2d 6c 6f 63 6b 2d 66 6c 75 73 68 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 68 69 67 (font-lock-flush))))..(defun.hig
3e80 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 74 72 79 2d 6d 65 72 67 65 2d hlight-indent-guides--try-merge-
3ea0 72 61 6e 67 65 73 20 28 26 72 65 73 74 20 61 72 67 73 29 0a 20 20 22 47 69 76 65 6e 20 6d 75 6c ranges.(&rest.args)..."Given.mul
3ec0 74 69 70 6c 65 20 63 68 61 72 61 63 74 65 72 20 70 6f 73 69 74 69 6f 6e 20 72 61 6e 67 65 73 20 tiple.character.position.ranges.
3ee0 28 41 52 47 53 29 2c 20 6d 65 72 67 65 20 77 68 65 72 65 20 70 6f 73 73 69 62 6c 65 2e 0a 57 68 (ARGS),.merge.where.possible..Wh
3f00 65 6e 20 72 61 6e 67 65 73 20 61 72 65 20 63 61 6c 63 75 6c 61 74 65 64 20 73 65 70 61 72 61 74 en.ranges.are.calculated.separat
3f20 65 6c 79 2c 20 74 68 65 72 65 20 69 73 20 61 20 70 6f 73 73 69 62 69 6c 69 74 79 20 6f 66 20 6f ely,.there.is.a.possibility.of.o
3f40 76 65 72 6c 61 70 2c 20 77 68 69 63 68 0a 63 61 6e 20 63 61 75 73 65 20 75 6e 6e 65 63 65 73 73 verlap,.which.can.cause.unnecess
3f60 61 72 79 20 72 65 64 72 61 77 73 2e 20 20 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 6d 65 72 67 ary.redraws...This.function.merg
3f80 65 73 20 6f 76 65 72 6c 61 70 70 69 6e 67 20 72 61 6e 67 65 73 20 74 6f 0a 6d 69 6e 69 6d 69 7a es.overlapping.ranges.to.minimiz
3fa0 65 20 72 65 64 72 61 77 73 2e 22 0a 20 20 28 6c 65 74 20 28 28 72 61 6e 67 65 73 20 28 73 6f 72 e.redraws."...(let.((ranges.(sor
3fc0 74 20 28 64 65 6c 71 20 6e 69 6c 20 61 72 67 73 29 20 28 6c 61 6d 62 64 61 20 28 78 20 79 29 20 t.(delq.nil.args).(lambda.(x.y).
3fe0 28 3e 20 28 63 61 72 20 78 29 20 28 63 61 72 20 79 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 63 (>.(car.x).(car.y))))).........c
4000 75 72 72 20 6e 65 78 74 20 72 65 73 75 6c 74 73 29 0a 20 20 20 20 28 75 6e 6c 65 73 73 20 28 6e urr.next.results).....(unless.(n
4020 75 6c 6c 20 72 61 6e 67 65 73 29 0a 20 20 20 20 20 20 28 73 65 74 71 20 63 75 72 72 20 28 70 6f ull.ranges).......(setq.curr.(po
4040 70 20 72 61 6e 67 65 73 29 29 0a 20 20 20 20 20 20 28 77 68 69 6c 65 20 72 61 6e 67 65 73 0a 20 p.ranges)).......(while.ranges..
4060 20 20 20 20 20 20 20 28 73 65 74 71 20 6e 65 78 74 20 28 70 6f 70 20 72 61 6e 67 65 73 29 29 0a .......(setq.next.(pop.ranges)).
4080 20 20 20 20 20 20 20 20 28 69 66 20 28 3c 3d 20 28 63 61 72 20 63 75 72 72 29 20 28 2b 20 32 20 ........(if.(<=.(car.curr).(+.2.
40a0 28 63 64 72 20 6e 65 78 74 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 63 (cdr.next))).............(setq.c
40c0 75 72 72 20 28 63 6f 6e 73 20 28 63 61 72 20 6e 65 78 74 29 20 28 6d 61 78 20 28 63 64 72 20 63 urr.(cons.(car.next).(max.(cdr.c
40e0 75 72 72 29 20 28 63 64 72 20 6e 65 78 74 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 73 65 urr).(cdr.next))))...........(se
4100 74 71 20 72 65 73 75 6c 74 73 20 28 63 6f 6e 73 20 63 75 72 72 20 72 65 73 75 6c 74 73 29 29 0a tq.results.(cons.curr.results)).
4120 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 63 75 72 72 20 6e 65 78 74 29 29 29 0a 20 20 20 ..........(setq.curr.next)))....
4140 20 20 20 28 73 65 74 71 20 72 65 73 75 6c 74 73 20 28 63 6f 6e 73 20 63 75 72 72 20 72 65 73 75 ...(setq.results.(cons.curr.resu
4160 6c 74 73 29 29 0a 20 20 20 20 20 20 72 65 73 75 6c 74 73 29 29 29 0a 0a 28 64 65 66 75 6e 20 68 lts)).......results)))..(defun.h
4180 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 64 69 73 63 6f 76 65 72 ighlight-indent-guides--discover
41a0 2d 72 61 6e 67 65 73 20 28 73 65 63 74 31 20 73 65 63 74 32 29 0a 20 20 22 47 69 76 65 6e 20 74 -ranges.(sect1.sect2)..."Given.t
41c0 77 6f 20 73 65 63 74 69 6f 6e 73 20 53 45 43 54 31 20 61 6e 64 20 53 45 43 54 32 2c 20 64 69 73 wo.sections.SECT1.and.SECT2,.dis
41e0 63 6f 76 65 72 20 74 68 65 20 72 61 6e 67 65 73 20 77 68 65 72 65 20 74 68 65 79 20 64 69 66 66 cover.the.ranges.where.they.diff
4200 65 72 2e 0a 47 69 76 65 73 20 61 20 6c 69 73 74 20 6f 66 20 74 77 6f 20 72 61 6e 67 65 73 20 74 er..Gives.a.list.of.two.ranges.t
4220 68 61 74 20 73 68 6f 75 6c 64 20 62 65 20 72 65 64 72 61 77 6e 20 77 68 65 6e 20 74 68 65 20 70 hat.should.be.redrawn.when.the.p
4240 6f 69 6e 74 20 6d 6f 76 65 73 20 62 65 74 77 65 65 6e 0a 53 45 43 54 31 20 61 6e 64 20 53 45 43 oint.moves.between.SECT1.and.SEC
4260 54 32 2e 20 20 54 68 69 73 20 69 73 20 74 68 65 20 73 68 61 6c 6c 6f 77 65 73 74 20 69 6e 64 65 T2...This.is.the.shallowest.inde
4280 6e 74 20 6c 65 76 65 6c 20 74 68 61 74 20 69 73 20 6e 6f 74 20 73 68 61 72 65 64 2e 22 0a 20 20 nt.level.that.is.not.shared."...
42a0 28 69 66 20 28 6e 6f 74 20 28 65 71 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 (if.(not.(eq.highlight-indent-gu
42c0 69 64 65 73 2d 72 65 73 70 6f 6e 73 69 76 65 20 27 73 74 61 63 6b 29 29 0a 20 20 20 20 20 20 28 ides-responsive.'stack)).......(
42e0 6c 69 73 74 20 28 63 61 72 20 73 65 63 74 31 29 20 28 63 61 72 20 73 65 63 74 32 29 29 0a 20 20 list.(car.sect1).(car.sect2))...
4300 20 20 28 6c 65 74 20 28 28 72 73 65 63 74 31 20 28 72 65 76 65 72 73 65 20 73 65 63 74 31 29 29 ..(let.((rsect1.(reverse.sect1))
4320 0a 20 20 20 20 20 20 20 20 20 20 28 72 73 65 63 74 32 20 28 72 65 76 65 72 73 65 20 73 65 63 74 ...........(rsect2.(reverse.sect
4340 32 29 29 29 0a 20 20 20 20 20 20 28 63 61 74 63 68 20 27 72 65 74 75 72 6e 0a 20 20 20 20 20 20 2))).......(catch.'return.......
4360 20 20 28 77 68 69 6c 65 20 74 0a 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 61 6e 64 20 28 63 ..(while.t...........(if.(and.(c
4380 64 72 20 72 73 65 63 74 31 29 20 28 63 64 72 20 72 73 65 63 74 32 29 20 28 65 71 20 28 63 61 72 dr.rsect1).(cdr.rsect2).(eq.(car
43a0 20 72 73 65 63 74 31 29 20 28 63 61 72 20 72 73 65 63 74 32 29 29 29 0a 20 20 20 20 20 20 20 20 .rsect1).(car.rsect2))).........
43c0 20 20 20 20 20 20 28 73 65 74 71 20 72 73 65 63 74 31 20 28 63 64 72 20 72 73 65 63 74 31 29 20 ......(setq.rsect1.(cdr.rsect1).
43e0 72 73 65 63 74 32 20 28 63 64 72 20 72 73 65 63 74 32 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 rsect2.(cdr.rsect2))............
4400 20 28 74 68 72 6f 77 20 27 72 65 74 75 72 6e 20 28 6c 69 73 74 20 28 63 61 72 20 72 73 65 63 74 .(throw.'return.(list.(car.rsect
4420 31 29 20 28 63 61 72 20 72 73 65 63 74 32 29 29 29 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 1).(car.rsect2)))))))))..(defun.
4440 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 75 70 64 61 74 65 2d highlight-indent-guides--update-
4460 6c 69 6e 65 2d 63 61 63 68 65 20 28 29 0a 20 20 22 55 70 64 61 74 65 20 74 68 65 20 6c 69 6e 65 line-cache.()..."Update.the.line
4480 20 63 61 63 68 65 2e 0a 54 68 65 20 6c 69 6e 65 20 63 61 63 68 65 20 74 72 61 63 6b 73 20 74 68 .cache..The.line.cache.tracks.th
44a0 65 20 63 75 72 72 65 6e 74 20 6c 69 6e 65 20 64 61 74 61 20 74 6f 20 6d 61 6b 65 20 69 74 20 65 e.current.line.data.to.make.it.e
44c0 61 73 79 20 66 6f 72 20 74 68 65 20 64 72 61 77 69 6e 67 0a 66 75 6e 63 74 69 6f 6e 73 20 74 6f asy.for.the.drawing.functions.to
44e0 20 71 75 69 63 6b 6c 79 20 61 63 63 65 73 73 20 74 68 65 20 6e 65 65 64 65 64 20 63 6f 6e 74 65 .quickly.access.the.needed.conte
4500 78 74 20 64 61 74 61 20 66 6f 72 20 72 65 73 70 6f 6e 73 69 76 65 20 6d 6f 64 65 2e 20 20 54 68 xt.data.for.responsive.mode...Th
4520 69 73 0a 66 75 6e 63 74 69 6f 6e 20 69 73 20 63 61 6c 6c 65 64 20 77 68 65 6e 65 76 65 72 20 74 is.function.is.called.whenever.t
4540 68 65 20 63 75 72 72 65 6e 74 20 6c 69 6e 65 20 64 61 74 61 20 63 68 61 6e 67 65 73 2e 22 0a 20 he.current.line.data.changes."..
4560 20 28 6c 65 74 20 28 28 68 69 67 70 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 .(let.((higp.'highlight-indent-g
4580 75 69 64 65 73 2d 70 72 6f 70 29 29 0a 20 20 20 20 28 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e uides-prop)).....(save-excursion
45a0 0a 20 20 20 20 20 20 28 62 65 67 69 6e 6e 69 6e 67 2d 6f 66 2d 6c 69 6e 65 29 0a 20 20 20 20 20 .......(beginning-of-line)......
45c0 20 28 77 68 69 6c 65 20 28 61 6e 64 20 28 6e 6f 74 20 28 65 6f 62 70 29 29 0a 20 20 20 20 20 20 .(while.(and.(not.(eobp)).......
45e0 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 20 28 6c 65 74 20 28 28 73 20 28 73 79 6e 74 61 78 ............(or.(let.((s.(syntax
4600 2d 70 70 73 73 29 29 29 20 28 6f 72 20 28 6e 74 68 20 33 20 73 29 20 28 6e 74 68 20 34 20 73 29 -ppss))).(or.(nth.3.s).(nth.4.s)
4620 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 28 6c 6f 6f 6b 69 6e )).......................(lookin
4640 67 2d 61 74 20 22 5b 5b 3a 73 70 61 63 65 3a 5d 5d 2a 24 22 29 29 29 0a 20 20 20 20 20 20 20 20 g-at."[[:space:]]*$"))).........
4660 28 66 6f 72 77 61 72 64 2d 6c 69 6e 65 29 29 0a 20 20 20 20 20 20 28 62 61 63 6b 2d 74 6f 2d 69 (forward-line)).......(back-to-i
4680 6e 64 65 6e 74 61 74 69 6f 6e 29 0a 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 28 62 6f 6c 70 29 ndentation).......(unless.(bolp)
46a0 20 28 6e 74 68 20 35 20 28 67 65 74 2d 74 65 78 74 2d 70 72 6f 70 65 72 74 79 20 28 31 2d 20 28 .(nth.5.(get-text-property.(1-.(
46c0 70 6f 69 6e 74 29 29 20 68 69 67 70 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 68 69 67 68 6c point)).higp))))))..(defun.highl
46e0 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 74 72 79 2d 75 70 64 61 74 65 2d 6c ight-indent-guides--try-update-l
4700 69 6e 65 2d 63 61 63 68 65 20 28 29 0a 20 20 22 55 70 64 61 74 65 20 74 68 65 20 6c 69 6e 65 20 ine-cache.()..."Update.the.line.
4720 63 61 63 68 65 2c 20 69 66 20 6e 65 63 65 73 73 61 72 79 2e 0a 54 68 69 73 20 66 75 6e 63 74 69 cache,.if.necessary..This.functi
4740 6f 6e 20 69 73 20 63 61 6c 6c 65 64 20 77 68 65 6e 65 76 65 72 20 74 68 65 20 70 6f 69 6e 74 20 on.is.called.whenever.the.point.
4760 6d 6f 76 65 73 20 69 6e 20 61 20 77 61 79 20 74 68 61 74 20 6d 69 67 68 74 20 63 68 61 6e 67 65 moves.in.a.way.that.might.change
4780 20 74 68 65 0a 6c 69 6e 65 20 63 61 63 68 65 2e 20 20 49 74 20 6f 6e 6c 79 20 75 70 64 61 74 65 .the.line.cache...It.only.update
47a0 73 20 74 68 65 20 63 61 63 68 65 20 77 68 65 6e 20 61 62 73 6f 6c 75 74 65 6c 79 20 6e 65 63 65 s.the.cache.when.absolutely.nece
47c0 73 73 61 72 79 2e 22 0a 20 20 28 77 68 65 6e 20 28 61 6e 64 20 68 69 67 68 6c 69 67 68 74 2d 69 ssary."...(when.(and.highlight-i
47e0 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 72 65 73 70 6f 6e 73 69 76 65 0a 20 20 20 20 20 20 20 20 ndent-guides-responsive.........
4800 20 20 20 20 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 6d 6f 64 .....highlight-indent-guides-mod
4820 65 29 0a 20 20 20 20 28 6c 65 74 20 28 28 63 61 63 68 65 64 2d 70 74 20 28 63 61 72 20 68 69 67 e).....(let.((cached-pt.(car.hig
4840 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 6c 69 6e 65 2d 63 61 63 68 65 hlight-indent-guides--line-cache
4860 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 63 61 63 68 65 64 2d 6c 6e 20 28 6e 74 68 20 31 20 68 ))...........(cached-ln.(nth.1.h
4880 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 6c 69 6e 65 2d 63 61 63 ighlight-indent-guides--line-cac
48a0 68 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 63 61 63 68 65 64 2d 64 74 20 28 6e 74 68 20 32 he))...........(cached-dt.(nth.2
48c0 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 6c 69 6e 65 2d 63 .highlight-indent-guides--line-c
48e0 61 63 68 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 70 74 20 28 70 6f 69 6e 74 29 29 0a 20 20 ache))...........(pt.(point))...
4900 20 20 20 20 20 20 20 20 6c 6e 20 64 74 20 72 6e 67 29 0a 20 20 20 20 20 20 28 63 61 74 63 68 20 ........ln.dt.rng).......(catch.
4920 27 6e 6f 63 68 61 6e 67 65 0a 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 65 71 20 70 74 20 63 'nochange.........(when.(eq.pt.c
4940 61 63 68 65 64 2d 70 74 29 20 28 74 68 72 6f 77 20 27 6e 6f 63 68 61 6e 67 65 20 6e 69 6c 29 29 ached-pt).(throw.'nochange.nil))
4960 0a 20 20 20 20 20 20 20 20 28 73 65 74 63 61 72 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e .........(setcar.highlight-inden
4980 74 2d 67 75 69 64 65 73 2d 2d 6c 69 6e 65 2d 63 61 63 68 65 20 70 74 29 0a 20 20 20 20 20 20 20 t-guides--line-cache.pt)........
49a0 20 28 73 65 74 71 20 6c 6e 20 28 6c 69 6e 65 2d 6e 75 6d 62 65 72 2d 61 74 2d 70 6f 73 29 29 0a .(setq.ln.(line-number-at-pos)).
49c0 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 65 71 20 6c 6e 20 63 61 63 68 65 64 2d 6c 6e 29 20 ........(when.(eq.ln.cached-ln).
49e0 28 74 68 72 6f 77 20 27 6e 6f 63 68 61 6e 67 65 20 6e 69 6c 29 29 0a 20 20 20 20 20 20 20 20 28 (throw.'nochange.nil)).........(
4a00 73 65 74 63 61 72 20 28 63 64 72 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 setcar.(cdr.highlight-indent-gui
4a20 64 65 73 2d 2d 6c 69 6e 65 2d 63 61 63 68 65 29 20 6c 6e 29 0a 20 20 20 20 20 20 20 20 28 73 65 des--line-cache).ln).........(se
4a40 74 71 20 64 74 20 28 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d tq.dt.(highlight-indent-guides--
4a60 75 70 64 61 74 65 2d 6c 69 6e 65 2d 63 61 63 68 65 29 29 0a 20 20 20 20 20 20 20 20 28 77 68 65 update-line-cache)).........(whe
4a80 6e 20 28 65 71 75 61 6c 20 64 74 20 63 61 63 68 65 64 2d 64 74 29 20 28 74 68 72 6f 77 20 27 6e n.(equal.dt.cached-dt).(throw.'n
4aa0 6f 63 68 61 6e 67 65 20 6e 69 6c 29 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 63 61 72 20 28 63 ochange.nil)).........(setcar.(c
4ac0 64 64 72 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 6c 69 6e ddr.highlight-indent-guides--lin
4ae0 65 2d 63 61 63 68 65 29 20 64 74 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 71 20 72 6e 67 20 28 e-cache).dt).........(setq.rng.(
4b00 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 64 69 73 63 6f 76 65 highlight-indent-guides--discove
4b20 72 2d 72 61 6e 67 65 73 20 64 74 20 63 61 63 68 65 64 2d 64 74 29 29 0a 20 20 20 20 20 20 20 20 r-ranges.dt.cached-dt)).........
4b40 28 64 6f 6c 69 73 74 20 28 72 61 6e 67 65 20 28 61 70 70 6c 79 20 27 68 69 67 68 6c 69 67 68 74 (dolist.(range.(apply.'highlight
4b60 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 74 72 79 2d 6d 65 72 67 65 2d 72 61 6e 67 65 73 -indent-guides--try-merge-ranges
4b80 20 72 6e 67 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 .rng))...........(highlight-inde
4ba0 6e 74 2d 67 75 69 64 65 73 2d 2d 6f 76 65 72 64 72 61 77 20 28 63 61 72 20 72 61 6e 67 65 29 20 nt-guides--overdraw.(car.range).
4bc0 28 63 64 72 20 72 61 6e 67 65 29 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 68 69 67 68 6c 69 (cdr.range)))))))..(defun.highli
4be0 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 69 73 63 64 72 20 28 73 75 62 20 73 75 ght-indent-guides--iscdr.(sub.su
4c00 70 29 0a 20 20 22 43 61 6c 63 75 6c 61 74 65 20 77 68 65 74 68 65 72 20 53 55 42 20 69 73 20 61 p)..."Calculate.whether.SUB.is.a
4c20 20 63 64 72 20 6f 66 20 53 55 50 2e 22 0a 20 20 28 69 66 20 28 6e 75 6c 6c 20 73 75 62 29 20 74 .cdr.of.SUP."...(if.(null.sub).t
4c40 0a 20 20 20 20 28 77 68 69 6c 65 20 28 61 6e 64 20 73 75 70 20 28 6e 6f 74 20 28 65 71 20 73 75 .....(while.(and.sup.(not.(eq.su
4c60 62 20 73 75 70 29 29 29 20 28 73 65 74 71 20 73 75 70 20 28 63 64 72 20 73 75 70 29 29 29 0a 20 b.sup))).(setq.sup.(cdr.sup)))..
4c80 20 20 20 28 65 71 20 73 75 62 20 73 75 70 29 29 29 0a 0a 28 64 65 66 75 6e 20 68 69 67 68 6c 69 ...(eq.sub.sup)))..(defun.highli
4ca0 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 63 61 6c 63 2d 67 75 69 64 65 73 20 28 ght-indent-guides--calc-guides.(
4cc0 70 72 65 76 2d 67 75 69 64 65 73 29 0a 20 20 22 43 61 6c 63 75 6c 61 74 65 20 74 68 65 20 69 6e prev-guides)..."Calculate.the.in
4ce0 64 65 6e 74 20 67 75 69 64 65 73 20 66 6f 72 20 61 20 6c 69 6e 65 2e 0a 50 52 45 56 2d 47 55 49 dent.guides.for.a.line..PREV-GUI
4d00 44 45 53 20 61 72 65 20 74 68 65 20 70 72 65 76 69 6f 75 73 20 6c 69 6e 65 27 73 20 69 6e 64 65 DES.are.the.previous.line's.inde
4d20 6e 74 20 67 75 69 64 65 73 2c 20 61 6e 64 20 49 4e 44 45 4e 54 20 69 73 20 74 68 69 73 20 6c 69 nt.guides,.and.INDENT.is.this.li
4d40 6e 65 27 73 0a 69 6e 64 65 6e 74 20 77 69 64 74 68 2e 22 0a 20 20 28 6c 65 74 20 28 28 69 6e 64 ne's.indent.width."...(let.((ind
4d60 65 6e 74 20 28 63 75 72 72 65 6e 74 2d 69 6e 64 65 6e 74 61 74 69 6f 6e 29 29 0a 20 20 20 20 20 ent.(current-indentation))......
4d80 20 20 20 28 67 75 69 64 65 73 20 28 63 61 72 20 70 72 65 76 2d 67 75 69 64 65 73 29 29 0a 20 20 ...(guides.(car.prev-guides))...
4da0 20 20 20 20 20 20 28 73 65 63 74 69 6f 6e 73 20 28 63 64 72 20 70 72 65 76 2d 67 75 69 64 65 73 ......(sections.(cdr.prev-guides
4dc0 29 29 0a 20 20 20 20 20 20 20 20 6f 6c 64 73 65 63 74 69 6f 6e 73 29 0a 20 20 20 20 28 77 68 69 )).........oldsections).....(whi
4de0 6c 65 20 28 61 6e 64 20 67 75 69 64 65 73 20 28 3c 20 69 6e 64 65 6e 74 20 28 63 61 72 20 67 75 le.(and.guides.(<.indent.(car.gu
4e00 69 64 65 73 29 29 29 0a 20 20 20 20 20 20 28 73 65 74 2d 6d 61 72 6b 65 72 20 28 63 64 61 72 20 ides))).......(set-marker.(cdar.
4e20 73 65 63 74 69 6f 6e 73 29 20 28 6c 69 6e 65 2d 65 6e 64 2d 70 6f 73 69 74 69 6f 6e 20 30 29 29 sections).(line-end-position.0))
4e40 0a 20 20 20 20 20 20 28 73 65 74 71 20 6f 6c 64 73 65 63 74 69 6f 6e 73 20 73 65 63 74 69 6f 6e .......(setq.oldsections.section
4e60 73 29 0a 20 20 20 20 20 20 28 73 65 74 71 20 73 65 63 74 69 6f 6e 73 20 28 63 64 72 20 73 65 63 s).......(setq.sections.(cdr.sec
4e80 74 69 6f 6e 73 29 29 0a 20 20 20 20 20 20 28 73 65 74 71 20 67 75 69 64 65 73 20 28 63 64 72 20 tions)).......(setq.guides.(cdr.
4ea0 67 75 69 64 65 73 29 29 29 0a 20 20 20 20 28 77 68 65 6e 20 28 61 6e 64 20 28 3c 20 30 20 69 6e guides))).....(when.(and.(<.0.in
4ec0 64 65 6e 74 29 20 28 6f 72 20 28 6e 75 6c 6c 20 67 75 69 64 65 73 29 20 28 3e 20 69 6e 64 65 6e dent).(or.(null.guides).(>.inden
4ee0 74 20 28 63 61 72 20 67 75 69 64 65 73 29 29 29 29 0a 20 20 20 20 20 20 28 69 66 20 6f 6c 64 73 t.(car.guides)))).......(if.olds
4f00 65 63 74 69 6f 6e 73 20 28 73 65 74 71 20 73 65 63 74 69 6f 6e 73 20 6f 6c 64 73 65 63 74 69 6f ections.(setq.sections.oldsectio
4f20 6e 73 29 0a 20 20 20 20 20 20 20 20 28 6c 65 74 2a 20 28 28 6c 62 70 20 28 6c 69 6e 65 2d 62 65 ns).........(let*.((lbp.(line-be
4f40 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 20 20 20 20 ginning-position))..............
4f60 20 20 28 62 65 67 6d 61 72 6b 20 28 63 6f 70 79 2d 6d 61 72 6b 65 72 20 6c 62 70 29 29 20 28 65 ..(begmark.(copy-marker.lbp)).(e
4f80 6e 64 6d 61 72 6b 20 28 63 6f 70 79 2d 6d 61 72 6b 65 72 20 6c 62 70 29 29 29 0a 20 20 20 20 20 ndmark.(copy-marker.lbp)))......
4fa0 20 20 20 20 20 28 73 65 74 71 20 73 65 63 74 69 6f 6e 73 20 28 63 6f 6e 73 20 28 63 6f 6e 73 20 .....(setq.sections.(cons.(cons.
4fc0 62 65 67 6d 61 72 6b 20 65 6e 64 6d 61 72 6b 29 20 73 65 63 74 69 6f 6e 73 29 29 29 29 0a 20 20 begmark.endmark).sections))))...
4fe0 20 20 20 20 28 73 65 74 71 20 67 75 69 64 65 73 20 28 63 6f 6e 73 20 69 6e 64 65 6e 74 20 67 75 ....(setq.guides.(cons.indent.gu
5000 69 64 65 73 29 29 29 0a 20 20 20 20 28 63 6f 6e 73 20 67 75 69 64 65 73 20 73 65 63 74 69 6f 6e ides))).....(cons.guides.section
5020 73 29 29 29 0a 0a 28 64 65 66 75 6e 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 s)))..(defun.highlight-indent-gu
5040 69 64 65 73 2d 2d 67 65 74 2d 67 75 69 64 65 73 20 28 29 0a 20 20 22 45 78 74 72 61 63 74 20 74 ides--get-guides.()..."Extract.t
5060 68 65 20 69 6e 64 65 6e 74 20 67 75 69 64 65 73 20 66 72 6f 6d 20 61 20 6c 69 6e 65 2c 20 62 79 he.indent.guides.from.a.line,.by
5080 20 72 65 61 64 69 6e 67 20 74 68 65 20 74 65 78 74 20 70 72 6f 70 65 72 74 69 65 73 2e 22 0a 20 .reading.the.text.properties."..
50a0 20 28 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e 0a 20 20 20 20 28 63 61 74 63 68 20 27 69 6e 76 .(save-excursion.....(catch.'inv
50c0 61 6c 69 64 0a 20 20 20 20 20 20 28 6c 65 74 20 28 70 72 6f 70 20 66 61 63 65 20 73 65 67 20 73 alid.......(let.(prop.face.seg.s
50e0 65 63 74 20 6e 66 61 63 65 20 6e 73 65 67 20 6e 73 65 63 74 20 67 75 69 64 65 73 20 66 73 74 29 ect.nface.nseg.nsect.guides.fst)
5100 0a 20 20 20 20 20 20 20 20 28 77 68 69 6c 65 20 28 6c 6f 6f 6b 69 6e 67 2d 61 74 20 22 5b 5b 3a .........(while.(looking-at."[[:
5120 73 70 61 63 65 3a 5d 5d 22 29 0a 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 70 72 6f 70 20 space:]]")...........(setq.prop.
5140 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 68 69 67 68 (get-text-property.(point).'high
5160 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 70 72 6f 70 29 29 0a 20 20 20 20 20 light-indent-guides-prop))......
5180 20 20 20 20 20 28 73 65 74 71 20 6e 66 61 63 65 20 28 63 61 72 20 70 72 6f 70 29 20 6e 73 65 67 .....(setq.nface.(car.prop).nseg
51a0 20 28 6e 74 68 20 31 20 70 72 6f 70 29 20 6e 73 65 63 74 20 28 6e 74 68 20 35 20 70 72 6f 70 29 .(nth.1.prop).nsect.(nth.5.prop)
51c0 29 0a 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 66 73 74 20 28 6e 74 68 20 32 20 70 72 6f )...........(setq.fst.(nth.2.pro
51e0 70 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 28 6e 61 74 6e 75 6d 70 20 6e p))...........(unless.(natnump.n
5200 66 61 63 65 29 20 28 74 68 72 6f 77 20 27 69 6e 76 61 6c 69 64 20 74 29 29 0a 20 20 20 20 20 20 face).(throw.'invalid.t)).......
5220 20 20 20 20 28 75 6e 6c 65 73 73 20 28 6f 72 20 73 65 67 20 6e 73 65 67 29 0a 20 20 20 20 20 20 ....(unless.(or.seg.nseg).......
5240 20 20 20 20 20 20 28 77 68 65 6e 20 28 61 6e 64 20 66 73 74 20 28 65 71 20 66 61 63 65 20 6e 66 ......(when.(and.fst.(eq.face.nf
5260 61 63 65 29 29 20 28 74 68 72 6f 77 20 27 69 6e 76 61 6c 69 64 20 74 29 29 0a 20 20 20 20 20 20 ace)).(throw.'invalid.t)).......
5280 20 20 20 20 20 20 28 77 68 65 6e 20 28 6e 6f 74 20 28 6f 72 20 66 73 74 20 28 65 71 20 66 61 63 ......(when.(not.(or.fst.(eq.fac
52a0 65 20 6e 66 61 63 65 29 29 29 20 28 74 68 72 6f 77 20 27 69 6e 76 61 6c 69 64 20 74 29 29 29 0a e.nface))).(throw.'invalid.t))).
52c0 20 20 20 20 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 28 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 ..........(unless.(highlight-ind
52e0 65 6e 74 2d 67 75 69 64 65 73 2d 2d 69 73 63 64 72 20 73 65 63 74 20 6e 73 65 63 74 29 0a 20 20 ent-guides--iscdr.sect.nsect)...
5300 20 20 20 20 20 20 20 20 20 20 28 74 68 72 6f 77 20 27 69 6e 76 61 6c 69 64 20 74 29 29 0a 20 20 ..........(throw.'invalid.t))...
5320 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 6c 20 28 2d 20 28 6c 65 6e 67 74 68 20 6e 73 65 63 ........(let.((l.(-.(length.nsec
5340 74 29 20 28 6c 65 6e 67 74 68 20 73 65 63 74 29 20 28 6c 65 6e 67 74 68 20 6e 73 65 67 29 29 29 t).(length.sect).(length.nseg)))
5360 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 66 73 74 20 28 73 65 74 71 20 6c 20 ).............(when.fst.(setq.l.
5380 28 31 2d 20 6c 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 6e 73 65 67 20 (1-.l))).............(when.nseg.
53a0 28 73 65 74 71 20 6c 20 28 31 2b 20 6c 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 (setq.l.(1+.l))).............(wh
53c0 65 6e 20 28 6e 6f 74 20 28 7a 65 72 6f 70 20 6c 29 29 20 28 74 68 72 6f 77 20 27 69 6e 76 61 6c en.(not.(zerop.l)).(throw.'inval
53e0 69 64 20 74 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 28 61 6e 64 20 28 id.t)))...........(unless.(and.(
5400 65 71 20 66 61 63 65 20 6e 66 61 63 65 29 20 28 65 71 75 61 6c 20 73 65 67 20 6e 73 65 67 29 29 eq.face.nface).(equal.seg.nseg))
5420 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 63 6f 6c 20 28 63 75 72 72 65 6e 74 .............(let.((col.(current
5440 2d 63 6f 6c 75 6d 6e 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 -column)))...............(when.(
5460 61 6e 64 20 66 61 63 65 20 28 6e 6f 74 20 28 65 71 20 66 61 63 65 20 6e 66 61 63 65 29 29 29 0a and.face.(not.(eq.face.nface))).
5480 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 67 75 69 64 65 73 20 28 63 6f ................(setq.guides.(co
54a0 6e 73 20 63 6f 6c 20 67 75 69 64 65 73 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 ns.col.guides)))...............(
54c0 64 6f 6c 69 73 74 20 28 73 65 67 6d 65 6e 74 20 6e 73 65 67 29 0a 20 20 20 20 20 20 20 20 20 20 dolist.(segment.nseg)...........
54e0 20 20 20 20 20 20 28 73 65 74 71 20 67 75 69 64 65 73 20 28 63 6f 6e 73 20 28 2b 20 73 65 67 6d ......(setq.guides.(cons.(+.segm
5500 65 6e 74 20 63 6f 6c 29 20 67 75 69 64 65 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ent.col).guides))...............
5520 20 20 28 73 65 74 71 20 6e 66 61 63 65 20 28 31 2b 20 6e 66 61 63 65 29 29 29 29 0a 20 20 20 20 ..(setq.nface.(1+.nface)))).....
5540 20 20 20 20 20 20 20 20 28 73 65 74 71 20 66 61 63 65 20 6e 66 61 63 65 20 73 65 67 20 6e 73 65 ........(setq.face.nface.seg.nse
5560 67 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 73 65 63 74 20 6e 73 65 63 74 29 0a g))...........(setq.sect.nsect).
5580 20 20 20 20 20 20 20 20 20 20 28 66 6f 72 77 61 72 64 2d 63 68 61 72 29 29 0a 20 20 20 20 20 20 ..........(forward-char)).......
55a0 20 20 28 64 6f 6c 69 73 74 20 28 73 65 63 74 69 6f 6e 20 73 65 63 74 29 0a 20 20 20 20 20 20 20 ..(dolist.(section.sect)........
55c0 20 20 20 28 75 6e 6c 65 73 73 20 28 61 6e 64 20 28 65 71 20 28 6d 61 72 6b 65 72 2d 62 75 66 66 ...(unless.(and.(eq.(marker-buff
55e0 65 72 20 28 63 61 72 20 73 65 63 74 69 6f 6e 29 29 20 28 63 75 72 72 65 6e 74 2d 62 75 66 66 65 er.(car.section)).(current-buffe
5600 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 71 20 28 r))........................(eq.(
5620 6d 61 72 6b 65 72 2d 62 75 66 66 65 72 20 28 63 64 72 20 73 65 63 74 69 6f 6e 29 29 20 28 63 75 marker-buffer.(cdr.section)).(cu
5640 72 72 65 6e 74 2d 62 75 66 66 65 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 rrent-buffer))..................
5660 20 20 20 20 20 20 28 3c 3d 20 28 63 61 72 20 73 65 63 74 69 6f 6e 29 20 28 70 6f 69 6e 74 29 20 ......(<=.(car.section).(point).
5680 28 63 64 72 20 73 65 63 74 69 6f 6e 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 74 68 72 (cdr.section))).............(thr
56a0 6f 77 20 27 69 6e 76 61 6c 69 64 20 74 29 29 29 0a 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 ow.'invalid.t))).........(let.((
56c0 63 6f 6c 20 28 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 29 29 29 0a 20 20 20 20 20 20 20 20 20 col.(current-column)))..........
56e0 20 28 77 68 65 6e 20 28 3c 20 30 20 63 6f 6c 29 20 28 73 65 74 71 20 67 75 69 64 65 73 20 28 63 .(when.(<.0.col).(setq.guides.(c
5700 6f 6e 73 20 63 6f 6c 20 67 75 69 64 65 73 29 29 29 29 0a 20 20 20 20 20 20 20 20 28 63 6f 6e 73 ons.col.guides)))).........(cons
5720 20 67 75 69 64 65 73 20 73 65 63 74 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 68 69 67 68 6c 69 .guides.sect)))))..(defun.highli
5740 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 67 65 74 2d 70 72 65 76 2d 67 75 69 64 ght-indent-guides--get-prev-guid
5760 65 73 20 28 29 0a 20 20 22 53 63 61 6e 20 75 70 20 74 68 65 20 62 75 66 66 65 72 20 74 6f 20 66 es.()..."Scan.up.the.buffer.to.f
5780 69 6e 64 20 61 20 73 74 61 72 74 69 6e 67 20 70 6f 69 6e 74 20 74 6f 20 63 61 6c 63 75 6c 61 74 ind.a.starting.point.to.calculat
57a0 65 20 67 75 69 64 65 73 20 66 72 6f 6d 2e 22 0a 20 20 28 6c 65 74 20 28 28 67 75 69 64 65 73 20 e.guides.from."...(let.((guides.
57c0 74 29 29 0a 20 20 20 20 28 77 68 69 6c 65 20 28 61 6e 64 20 28 6e 6c 69 73 74 70 20 67 75 69 64 t)).....(while.(and.(nlistp.guid
57e0 65 73 29 20 28 6c 65 74 20 28 28 70 20 28 70 6f 69 6e 74 29 29 29 0a 20 20 20 20 20 20 20 20 20 es).(let.((p.(point)))..........
5800 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 6f 72 20 28 2f 3d .........................(or.(/=
5820 20 2d 31 20 28 66 6f 72 77 61 72 64 2d 6c 69 6e 65 20 2d 31 29 29 0a 20 20 20 20 20 20 20 20 20 .-1.(forward-line.-1))..........
5840 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 28 6e 6f .............................(no
5860 74 20 28 67 6f 74 6f 2d 63 68 61 72 20 70 29 29 29 29 29 0a 20 20 20 20 20 20 28 75 6e 6c 65 73 t.(goto-char.p))))).......(unles
5880 73 20 28 6f 72 20 28 6c 65 74 20 28 28 73 20 28 73 79 6e 74 61 78 2d 70 70 73 73 29 29 29 20 28 s.(or.(let.((s.(syntax-ppss))).(
58a0 6f 72 20 28 6e 74 68 20 33 20 73 29 20 28 6e 74 68 20 34 20 73 29 29 29 0a 20 20 20 20 20 20 20 or.(nth.3.s).(nth.4.s)))........
58c0 20 20 20 20 20 20 20 20 20 20 20 28 6c 6f 6f 6b 69 6e 67 2d 61 74 20 22 5b 5b 3a 73 70 61 63 65 ...........(looking-at."[[:space
58e0 3a 5d 5d 2a 24 22 29 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 71 20 67 75 69 64 65 73 20 28 68 :]]*$")).........(setq.guides.(h
5900 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 67 65 74 2d 67 75 69 64 ighlight-indent-guides--get-guid
5920 65 73 29 29 29 29 0a 20 20 20 20 28 69 66 20 28 6c 69 73 74 70 20 67 75 69 64 65 73 29 20 67 75 es)))).....(if.(listp.guides).gu
5940 69 64 65 73 20 6e 69 6c 29 29 29 0a 0a 28 64 65 66 75 6e 20 68 69 67 68 6c 69 67 68 74 2d 69 6e ides.nil)))..(defun.highlight-in
5960 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 67 75 69 64 65 2d 6c 69 6e 65 20 28 67 75 69 64 65 73 29 dent-guides--guide-line.(guides)
5980 0a 20 20 22 44 72 61 77 20 74 68 65 20 69 6e 64 65 6e 74 20 67 75 69 64 65 73 20 73 70 65 63 69 ..."Draw.the.indent.guides.speci
59a0 66 69 65 64 20 62 79 20 47 55 49 44 45 53 20 6f 6e 20 74 68 65 20 63 75 72 72 65 6e 74 20 6c 69 fied.by.GUIDES.on.the.current.li
59c0 6e 65 2e 22 0a 20 20 28 6c 65 74 20 28 28 67 75 69 64 65 73 20 28 72 65 76 65 72 73 65 20 28 63 ne."...(let.((guides.(reverse.(c
59e0 61 72 20 67 75 69 64 65 73 29 29 29 0a 20 20 20 20 20 20 20 20 28 73 65 63 74 69 6f 6e 73 20 28 ar.guides))).........(sections.(
5a00 63 64 72 20 67 75 69 64 65 73 29 29 0a 20 20 20 20 20 20 20 20 28 63 6f 6c 75 6d 6e 20 28 63 75 cdr.guides)).........(column.(cu
5a20 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 29 29 0a 20 20 20 20 20 20 20 20 28 63 75 72 72 70 74 20 28 rrent-column)).........(currpt.(
5a40 70 6f 69 6e 74 29 29 0a 20 20 20 20 20 20 20 20 28 73 74 61 72 74 65 72 20 74 29 0a 20 20 20 20 point)).........(starter.t).....
5a60 20 20 20 20 28 66 61 63 65 20 30 29 20 63 75 72 72 63 6f 6c 20 63 75 72 72 66 61 63 65 20 70 72 ....(face.0).currcol.currface.pr
5a80 6f 70 73 20 6f 6c 64 70 72 6f 70 20 6e 65 77 70 72 6f 70 20 73 75 62 73 65 63 74 29 0a 20 20 20 ops.oldprop.newprop.subsect)....
5aa0 20 28 77 68 69 6c 65 20 67 75 69 64 65 73 0a 20 20 20 20 20 20 28 73 65 74 71 20 70 72 6f 70 73 .(while.guides.......(setq.props
5ac0 20 6e 69 6c 29 0a 20 20 20 20 20 20 28 73 65 74 71 20 63 75 72 72 63 6f 6c 20 63 6f 6c 75 6d 6e .nil).......(setq.currcol.column
5ae0 29 0a 20 20 20 20 20 20 28 73 65 74 71 20 63 75 72 72 66 61 63 65 20 66 61 63 65 29 0a 20 20 20 ).......(setq.currface.face)....
5b00 20 20 20 28 73 65 74 71 20 63 75 72 72 70 74 20 28 70 6f 69 6e 74 29 29 0a 20 20 20 20 20 20 28 ...(setq.currpt.(point)).......(
5b20 66 6f 72 77 61 72 64 2d 63 68 61 72 29 0a 20 20 20 20 20 20 28 73 65 74 71 20 63 6f 6c 75 6d 6e forward-char).......(setq.column
5b40 20 28 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 29 29 0a 20 20 20 20 20 20 28 77 68 69 6c 65 20 .(current-column)).......(while.
5b60 28 61 6e 64 20 67 75 69 64 65 73 20 28 3c 20 28 63 61 72 20 67 75 69 64 65 73 29 20 63 6f 6c 75 (and.guides.(<.(car.guides).colu
5b80 6d 6e 29 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 71 20 70 72 6f 70 73 20 28 63 6f 6e 73 20 28 mn)).........(setq.props.(cons.(
5ba0 2d 20 28 63 61 72 20 67 75 69 64 65 73 29 20 63 75 72 72 63 6f 6c 29 20 70 72 6f 70 73 29 29 0a -.(car.guides).currcol).props)).
5bc0 20 20 20 20 20 20 20 20 28 73 65 74 71 20 67 75 69 64 65 73 20 28 63 64 72 20 67 75 69 64 65 73 ........(setq.guides.(cdr.guides
5be0 29 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 71 20 66 61 63 65 20 28 31 2b 20 66 61 63 65 29 29 )).........(setq.face.(1+.face))
5c00 29 0a 20 20 20 20 20 20 28 73 65 74 71 20 70 72 6f 70 73 20 28 72 65 76 65 72 73 65 20 70 72 6f ).......(setq.props.(reverse.pro
5c20 70 73 29 29 0a 20 20 20 20 20 20 28 77 68 65 6e 20 28 61 6e 64 20 70 72 6f 70 73 20 28 7a 65 72 ps)).......(when.(and.props.(zer
5c40 6f 70 20 28 63 61 72 20 70 72 6f 70 73 29 29 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 71 20 70 op.(car.props))).........(setq.p
5c60 72 6f 70 73 20 28 63 64 72 20 70 72 6f 70 73 29 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 71 20 rops.(cdr.props)).........(setq.
5c80 63 75 72 72 66 61 63 65 20 28 31 2b 20 63 75 72 72 66 61 63 65 29 29 0a 20 20 20 20 20 20 20 20 currface.(1+.currface)).........
5ca0 28 73 65 74 71 20 73 74 61 72 74 65 72 20 74 29 29 0a 20 20 20 20 20 20 28 73 65 74 71 20 73 75 (setq.starter.t)).......(setq.su
5cc0 62 73 65 63 74 20 28 6e 74 68 63 64 72 20 28 31 2d 20 28 6c 65 6e 67 74 68 20 67 75 69 64 65 73 bsect.(nthcdr.(1-.(length.guides
5ce0 29 29 20 73 65 63 74 69 6f 6e 73 29 29 0a 20 20 20 20 20 20 28 73 65 74 71 20 6f 6c 64 70 72 6f )).sections)).......(setq.oldpro
5d00 70 20 28 67 65 74 2d 74 65 78 74 2d 70 72 6f 70 65 72 74 79 20 63 75 72 72 70 74 20 27 68 69 67 p.(get-text-property.currpt.'hig
5d20 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 70 72 6f 70 29 29 0a 20 20 20 20 hlight-indent-guides-prop)).....
5d40 20 20 28 73 65 74 71 20 6e 65 77 70 72 6f 70 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 73 ..(setq.newprop.............(lis
5d60 74 20 63 75 72 72 66 61 63 65 20 70 72 6f 70 73 20 73 74 61 72 74 65 72 20 28 2d 20 63 6f 6c 75 t.currface.props.starter.(-.colu
5d80 6d 6e 20 63 75 72 72 63 6f 6c 29 20 6e 69 6c 20 73 75 62 73 65 63 74 29 29 0a 20 20 20 20 20 20 mn.currcol).nil.subsect)).......
5da0 28 77 68 65 6e 20 28 61 6e 64 20 6f 6c 64 70 72 6f 70 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 (when.(and.oldprop..............
5dc0 20 20 20 20 28 65 71 20 28 63 61 72 20 6e 65 77 70 72 6f 70 29 20 28 63 61 72 20 6f 6c 64 70 72 ....(eq.(car.newprop).(car.oldpr
5de0 6f 70 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 71 75 61 6c 20 28 6e 74 op))..................(equal.(nt
5e00 68 20 31 20 6e 65 77 70 72 6f 70 29 20 28 6e 74 68 20 31 20 6f 6c 64 70 72 6f 70 29 29 0a 20 20 h.1.newprop).(nth.1.oldprop))...
5e20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 71 20 28 6e 74 68 20 32 20 6e 65 77 70 72 6f ...............(eq.(nth.2.newpro
5e40 70 29 20 28 6e 74 68 20 32 20 6f 6c 64 70 72 6f 70 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 p).(nth.2.oldprop)).............
5e60 20 20 20 20 20 28 65 71 20 28 6e 74 68 20 33 20 6e 65 77 70 72 6f 70 29 20 28 6e 74 68 20 33 20 .....(eq.(nth.3.newprop).(nth.3.
5e80 6f 6c 64 70 72 6f 70 29 29 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 63 61 72 20 28 6e 74 68 63 oldprop))).........(setcar.(nthc
5ea0 64 72 20 34 20 6e 65 77 70 72 6f 70 29 20 28 6e 74 68 20 34 20 6f 6c 64 70 72 6f 70 29 29 29 0a dr.4.newprop).(nth.4.oldprop))).
5ec0 20 20 20 20 20 20 28 77 68 65 6e 20 67 75 69 64 65 73 0a 20 20 20 20 20 20 20 20 28 61 64 64 2d ......(when.guides.........(add-
5ee0 74 65 78 74 2d 70 72 6f 70 65 72 74 69 65 73 0a 20 20 20 20 20 20 20 20 20 63 75 72 72 70 74 20 text-properties..........currpt.
5f00 28 31 2b 20 63 75 72 72 70 74 29 20 60 28 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 (1+.currpt).`(highlight-indent-g
5f20 75 69 64 65 73 2d 70 72 6f 70 20 2c 6e 65 77 70 72 6f 70 29 29 29 0a 20 20 20 20 20 20 28 73 65 uides-prop.,newprop))).......(se
5f40 74 71 20 73 74 61 72 74 65 72 20 6e 69 6c 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 68 69 67 68 6c tq.starter.nil))))..(defun.highl
5f60 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 72 65 70 6c 61 63 65 2d 73 65 63 74 ight-indent-guides--replace-sect
5f80 69 6f 6e 20 28 6f 6c 64 20 73 65 61 72 63 68 20 72 65 70 6c 61 63 65 29 0a 20 20 22 52 65 70 6c ion.(old.search.replace)..."Repl
5fa0 61 63 65 20 69 6e 20 61 20 6c 69 73 74 20 4f 4c 44 20 73 65 63 74 69 6f 6e 20 70 72 65 66 69 78 ace.in.a.list.OLD.section.prefix
5fc0 65 73 20 53 45 41 52 43 48 20 77 69 74 68 20 52 45 50 4c 41 43 45 2e 0a 41 6c 6c 20 6c 69 6e 65 es.SEARCH.with.REPLACE..All.line
5fe0 73 20 69 6e 20 74 68 65 20 73 61 6d 65 20 73 65 63 74 69 6f 6e 20 73 68 6f 75 6c 64 20 68 61 76 s.in.the.same.section.should.hav
6000 65 20 74 68 65 20 73 61 6d 65 20 28 65 71 29 20 73 65 63 74 69 6f 6e 20 70 72 65 66 69 78 65 73 e.the.same.(eq).section.prefixes
6020 2e 20 20 49 66 0a 74 68 65 20 70 72 65 66 69 78 20 63 68 61 6e 67 65 73 20 6f 6e 20 73 6f 6d 65 ...If.the.prefix.changes.on.some
6040 20 6c 69 6e 65 73 2c 20 61 6c 6c 20 6f 74 68 65 72 20 6c 69 6e 65 73 20 69 6e 20 74 68 65 20 73 .lines,.all.other.lines.in.the.s
6060 65 63 74 69 6f 6e 20 6e 65 65 64 20 74 6f 20 62 65 0a 75 70 64 61 74 65 64 20 74 6f 20 6d 61 74 ection.need.to.be.updated.to.mat
6080 63 68 2e 22 0a 20 20 28 6c 65 74 2a 20 28 28 6f 6c 64 6c 65 6e 20 28 6c 65 6e 67 74 68 20 6f 6c ch."...(let*.((oldlen.(length.ol
60a0 64 29 29 0a 20 20 20 20 20 20 20 20 20 28 72 65 70 6c 65 6e 20 28 6c 65 6e 67 74 68 20 72 65 70 d))..........(replen.(length.rep
60c0 6c 61 63 65 29 29 0a 20 20 20 20 20 20 20 20 20 28 6d 69 6e 6c 65 6e 20 28 6d 69 6e 20 6f 6c 64 lace))..........(minlen.(min.old
60e0 6c 65 6e 20 72 65 70 6c 65 6e 29 29 0a 20 20 20 20 20 20 20 20 20 28 63 70 61 72 65 6e 74 20 28 len.replen))..........(cparent.(
6100 6e 74 68 63 64 72 20 28 2d 20 6f 6c 64 6c 65 6e 20 6d 69 6e 6c 65 6e 29 20 28 63 6f 6e 73 20 6e nthcdr.(-.oldlen.minlen).(cons.n
6120 69 6c 20 6f 6c 64 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 63 6f 6c 64 20 28 6e 74 68 63 64 72 il.old)))..........(cold.(nthcdr
6140 20 28 2d 20 6f 6c 64 6c 65 6e 20 6d 69 6e 6c 65 6e 29 20 6f 6c 64 29 29 0a 20 20 20 20 20 20 20 .(-.oldlen.minlen).old))........
6160 20 20 28 63 73 65 61 72 63 68 20 28 6e 74 68 63 64 72 20 28 2d 20 72 65 70 6c 65 6e 20 6d 69 6e ..(csearch.(nthcdr.(-.replen.min
6180 6c 65 6e 29 20 73 65 61 72 63 68 29 29 0a 20 20 20 20 20 20 20 20 20 28 63 72 65 70 6c 20 28 6e len).search))..........(crepl.(n
61a0 74 68 63 64 72 20 28 2d 20 72 65 70 6c 65 6e 20 6d 69 6e 6c 65 6e 29 20 72 65 70 6c 61 63 65 29 thcdr.(-.replen.minlen).replace)
61c0 29 29 0a 20 20 20 20 28 77 68 69 6c 65 20 28 61 6e 64 20 63 6f 6c 64 20 28 6e 6f 74 20 28 65 71 )).....(while.(and.cold.(not.(eq
61e0 20 63 6f 6c 64 20 63 73 65 61 72 63 68 29 29 29 0a 20 20 20 20 20 20 28 73 65 74 71 20 63 70 61 .cold.csearch))).......(setq.cpa
6200 72 65 6e 74 20 28 63 64 72 20 63 70 61 72 65 6e 74 29 29 0a 20 20 20 20 20 20 28 73 65 74 71 20 rent.(cdr.cparent)).......(setq.
6220 63 6f 6c 64 20 28 63 64 72 20 63 6f 6c 64 29 29 0a 20 20 20 20 20 20 28 73 65 74 71 20 63 73 65 cold.(cdr.cold)).......(setq.cse
6240 61 72 63 68 20 28 63 64 72 20 63 73 65 61 72 63 68 29 29 0a 20 20 20 20 20 20 28 73 65 74 71 20 arch.(cdr.csearch)).......(setq.
6260 63 72 65 70 6c 20 28 63 64 72 20 63 72 65 70 6c 29 29 29 0a 20 20 20 20 28 69 66 20 28 6e 75 6c crepl.(cdr.crepl))).....(if.(nul
6280 6c 20 63 6f 6c 64 29 20 6f 6c 64 0a 20 20 20 20 20 20 28 73 65 74 63 64 72 20 63 70 61 72 65 6e l.cold).old.......(setcdr.cparen
62a0 74 20 63 72 65 70 6c 29 0a 20 20 20 20 20 20 28 69 66 20 28 63 61 72 20 63 70 61 72 65 6e 74 29 t.crepl).......(if.(car.cparent)
62c0 20 6f 6c 64 20 28 63 64 72 20 63 70 61 72 65 6e 74 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 68 .old.(cdr.cparent)))))..(defun.h
62e0 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 67 75 69 64 65 2d 72 65 ighlight-indent-guides--guide-re
6300 67 69 6f 6e 20 28 73 74 61 72 74 20 65 6e 64 29 0a 20 20 22 41 64 64 20 6f 72 20 75 70 64 61 74 gion.(start.end)..."Add.or.updat
6320 65 20 69 6e 64 65 6e 74 20 67 75 69 64 65 73 20 69 6e 20 74 68 65 20 62 75 66 66 65 72 20 72 65 e.indent.guides.in.the.buffer.re
6340 67 69 6f 6e 20 66 72 6f 6d 20 53 54 41 52 54 20 74 6f 20 45 4e 44 2e 22 0a 20 20 28 77 69 74 68 gion.from.START.to.END."...(with
6360 2d 73 69 6c 65 6e 74 2d 6d 6f 64 69 66 69 63 61 74 69 6f 6e 73 0a 20 20 20 20 28 73 61 76 65 2d -silent-modifications.....(save-
6380 65 78 63 75 72 73 69 6f 6e 0a 20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 73 74 61 72 74 excursion.......(goto-char.start
63a0 29 0a 20 20 20 20 20 20 28 62 65 67 69 6e 6e 69 6e 67 2d 6f 66 2d 6c 69 6e 65 29 0a 20 20 20 20 ).......(beginning-of-line).....
63c0 20 20 28 6c 65 74 20 28 28 70 72 6f 70 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d ..(let.((prop.'highlight-indent-
63e0 67 75 69 64 65 73 2d 70 72 6f 70 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 67 75 69 64 65 73 guides-prop).............(guides
6400 20 28 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 67 65 74 2d 70 .(highlight-indent-guides--get-p
6420 72 65 76 2d 67 75 69 64 65 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 65 6f 66 20 28 3c rev-guides)).............(eof.(<
6440 20 30 20 28 66 6f 72 77 61 72 64 2d 6c 69 6e 65 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 .0.(forward-line))).............
6460 28 73 74 61 72 74 6c 20 28 70 6f 69 6e 74 29 29 20 28 65 6e 64 6c 20 65 6e 64 29 0a 20 20 20 20 (startl.(point)).(endl.end).....
6480 20 20 20 20 20 20 20 20 63 68 75 6e 6b 20 6f 6c 64 67 75 69 64 65 73 20 6f 6c 64 73 65 63 74 20 ........chunk.oldguides.oldsect.
64a0 6e 65 77 73 65 63 74 20 6c 66 20 6c 65 20 72 6e 67 29 0a 20 20 20 20 20 20 20 20 3b 3b 20 66 6f newsect.lf.le.rng).........;;.fo
64c0 72 20 74 68 65 20 67 69 76 65 6e 20 72 65 67 69 6f 6e 2c 20 65 78 74 72 61 63 74 20 6f 6c 64 20 r.the.given.region,.extract.old.
64e0 67 75 69 64 65 73 20 61 6e 64 20 63 61 6c 63 75 6c 61 74 65 20 6e 65 77 20 67 75 69 64 65 73 0a guides.and.calculate.new.guides.
6500 20 20 20 20 20 20 20 20 28 77 68 69 6c 65 20 28 6e 6f 74 20 28 6f 72 20 65 6f 66 20 28 61 6e 64 ........(while.(not.(or.eof.(and
6520 20 28 3e 3d 20 28 70 6f 69 6e 74 29 20 65 6e 64 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 .(>=.(point).endl)..............
6540 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 65 71 20 6f 6c 64 ....................(not.(eq.old
6560 67 75 69 64 65 73 20 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 guides.t))......................
6580 20 20 20 20 20 20 20 20 20 20 20 20 28 65 71 75 61 6c 20 28 63 61 72 20 67 75 69 64 65 73 29 20 ............(equal.(car.guides).
65a0 28 63 61 72 20 6f 6c 64 67 75 69 64 65 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 (car.oldguides))................
65c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 71 20 28 63 64 72 20 67 75 69 64 65 ..................(eq.(cdr.guide
65e0 73 29 20 28 63 64 72 20 6f 6c 64 67 75 69 64 65 73 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 s).(cdr.oldguides)))))..........
6600 20 28 69 66 20 28 6f 72 20 28 6c 65 74 20 28 28 73 20 28 73 79 6e 74 61 78 2d 70 70 73 73 29 29 .(if.(or.(let.((s.(syntax-ppss))
6620 29 20 28 6f 72 20 28 6e 74 68 20 33 20 73 29 20 28 6e 74 68 20 34 20 73 29 29 29 0a 20 20 20 20 ).(or.(nth.3.s).(nth.4.s))).....
6640 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 6f 6f 6b 69 6e 67 2d 61 74 20 22 5b 5b 3a 73 70 ..............(looking-at."[[:sp
6660 61 63 65 3a 5d 5d 2a 24 22 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 ace:]]*$"))...............(setq.
6680 63 68 75 6e 6b 20 28 63 6f 6e 73 20 28 6c 69 73 74 20 28 70 6f 69 6e 74 29 29 20 63 68 75 6e 6b chunk.(cons.(list.(point)).chunk
66a0 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 74 6d 70 67 75 69 64 65 73 20 )).............(let.((tmpguides.
66c0 28 63 64 72 20 67 75 69 64 65 73 29 29 20 65 6e 64 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 (cdr.guides)).ends).............
66e0 20 20 28 77 68 69 6c 65 20 74 6d 70 67 75 69 64 65 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ..(while.tmpguides..............
6700 20 20 20 28 77 68 65 6e 20 28 63 61 72 20 74 6d 70 67 75 69 64 65 73 29 0a 20 20 20 20 20 20 20 ...(when.(car.tmpguides)........
6720 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 65 6e 64 73 20 28 63 6f 6e 73 20 28 6d 61 72 ...........(setq.ends.(cons.(mar
6740 6b 65 72 2d 70 6f 73 69 74 69 6f 6e 20 28 63 64 61 72 20 74 6d 70 67 75 69 64 65 73 29 29 20 65 ker-position.(cdar.tmpguides)).e
6760 6e 64 73 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 74 6d 70 nds))).................(setq.tmp
6780 67 75 69 64 65 73 20 28 63 64 72 20 74 6d 70 67 75 69 64 65 73 29 29 29 0a 20 20 20 20 20 20 20 guides.(cdr.tmpguides)))........
67a0 20 20 20 20 20 20 20 28 73 65 74 71 20 67 75 69 64 65 73 20 28 68 69 67 68 6c 69 67 68 74 2d 69 .......(setq.guides.(highlight-i
67c0 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 63 61 6c 63 2d 67 75 69 64 65 73 20 67 75 69 64 65 73 ndent-guides--calc-guides.guides
67e0 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 65 6e 64 6c 20 28 6d 61 78 ))...............(setq.endl.(max
6800 20 65 6e 64 6c 20 28 6f 72 20 28 6e 74 68 20 28 6c 65 6e 67 74 68 20 28 63 64 72 20 67 75 69 64 .endl.(or.(nth.(length.(cdr.guid
6820 65 73 29 29 20 65 6e 64 73 29 20 30 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 es)).ends).0)))).............(se
6840 74 71 20 6f 6c 64 67 75 69 64 65 73 20 28 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 tq.oldguides.(highlight-indent-g
6860 75 69 64 65 73 2d 2d 67 65 74 2d 67 75 69 64 65 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 uides--get-guides)).............
6880 28 73 65 74 71 20 63 68 75 6e 6b 20 28 63 6f 6e 73 20 28 6c 69 73 74 20 28 70 6f 69 6e 74 29 20 (setq.chunk.(cons.(list.(point).
68a0 67 75 69 64 65 73 20 6f 6c 64 67 75 69 64 65 73 29 20 63 68 75 6e 6b 29 29 29 0a 20 20 20 20 20 guides.oldguides).chunk)))......
68c0 20 20 20 20 20 28 73 65 74 71 20 65 6f 66 20 28 3c 20 30 20 28 66 6f 72 77 61 72 64 2d 6c 69 6e .....(setq.eof.(<.0.(forward-lin
68e0 65 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 65 78 70 61 6e 64 20 73 65 63 74 69 6f 6e e)))...........;;.expand.section
6900 73 20 69 66 20 6e 65 63 65 73 73 61 72 79 0a 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 s.if.necessary...........(when.(
6920 6f 72 20 65 6f 66 20 28 61 6e 64 20 28 3e 3d 20 28 70 6f 69 6e 74 29 20 65 6e 64 6c 29 0a 20 20 or.eof.(and.(>=.(point).endl)...
6940 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e 6f 74 20 ...........................(not.
6960 28 65 71 20 6f 6c 64 67 75 69 64 65 73 20 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 (eq.oldguides.t))...............
6980 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 71 75 61 6c 20 28 63 61 72 20 67 75 69 64 65 ...............(equal.(car.guide
69a0 73 29 20 28 63 61 72 20 6f 6c 64 67 75 69 64 65 73 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 s).(car.oldguides))))...........
69c0 20 20 28 6c 65 74 20 28 28 6c 65 70 20 28 6c 69 6e 65 2d 65 6e 64 2d 70 6f 73 69 74 69 6f 6e 20 ..(let.((lep.(line-end-position.
69e0 30 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 6f 6c 69 73 74 20 28 67 75 69 64 0)))...............(dolist.(guid
6a00 65 20 28 63 64 72 20 67 75 69 64 65 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 e.(cdr.guides)).................
6a20 28 77 68 65 6e 20 28 61 6e 64 20 28 63 64 72 20 67 75 69 64 65 29 20 28 3e 20 6c 65 70 20 28 63 (when.(and.(cdr.guide).(>.lep.(c
6a40 64 72 20 67 75 69 64 65 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 dr.guide)))...................(s
6a60 65 74 2d 6d 61 72 6b 65 72 20 28 63 64 72 20 67 75 69 64 65 29 20 6c 65 70 29 29 29 29 29 0a 20 et-marker.(cdr.guide).lep)))))..
6a80 20 20 20 20 20 20 20 20 20 3b 3b 20 65 6e 73 75 72 65 20 63 68 75 6e 6b 20 69 73 20 66 6c 75 73 .........;;.ensure.chunk.is.flus
6aa0 68 20 77 69 74 68 20 73 75 72 72 6f 75 6e 64 69 6e 67 20 73 65 63 74 69 6f 6e 73 0a 20 20 20 20 h.with.surrounding.sections.....
6ac0 20 20 20 20 20 20 28 77 68 65 6e 20 28 61 6e 64 20 28 3e 3d 20 28 70 6f 69 6e 74 29 20 65 6e 64 ......(when.(and.(>=.(point).end
6ae0 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e 6f 74 20 28 65 71 l)......................(not.(eq
6b00 20 6f 6c 64 67 75 69 64 65 73 20 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .oldguides.t))..................
6b20 20 20 20 20 28 65 71 75 61 6c 20 28 63 61 72 20 67 75 69 64 65 73 29 20 28 63 61 72 20 6f 6c 64 ....(equal.(car.guides).(car.old
6b40 67 75 69 64 65 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e guides))......................(n
6b60 6f 74 20 28 65 71 20 28 63 64 72 20 67 75 69 64 65 73 29 20 28 63 64 72 20 6f 6c 64 67 75 69 64 ot.(eq.(cdr.guides).(cdr.oldguid
6b80 65 73 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 67 75 69 64 65 73 20 es)))).............(setq.guides.
6ba0 28 63 6f 6e 73 20 28 63 61 72 20 67 75 69 64 65 73 29 20 28 63 64 72 20 67 75 69 64 65 73 29 29 (cons.(car.guides).(cdr.guides))
6bc0 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 6e 67 20 28 63 64 72 20 67 75 69 ).............(let.((ng.(cdr.gui
6be0 64 65 73 29 29 20 28 6f 67 20 28 63 64 72 20 6f 6c 64 67 75 69 64 65 73 29 29 20 28 62 61 64 67 des)).(og.(cdr.oldguides)).(badg
6c00 75 69 64 65 20 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 62 6f 76 65 73 uide.t)...................aboves
6c20 74 61 72 74 20 61 62 6f 76 65 65 6e 64 20 62 65 6c 6f 77 73 74 61 72 74 20 62 65 6c 6f 77 65 6e tart.aboveend.belowstart.belowen
6c40 64 20 61 62 6f 76 65 20 62 65 6c 6f 77 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 d.above.below)...............(wh
6c60 69 6c 65 20 28 61 6e 64 20 6f 67 20 6e 67 20 28 6e 6c 69 73 74 70 20 62 61 64 67 75 69 64 65 29 ile.(and.og.ng.(nlistp.badguide)
6c80 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 65 71 20 28 63 64 72 ).................(when.(eq.(cdr
6ca0 20 6f 67 29 20 28 63 64 72 20 6e 67 29 29 20 28 73 65 74 71 20 62 61 64 67 75 69 64 65 20 28 63 .og).(cdr.ng)).(setq.badguide.(c
6cc0 6f 6e 73 20 6f 67 20 6e 67 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 ons.og.ng))).................(se
6ce0 74 71 20 6e 67 20 28 63 64 72 20 6e 67 29 20 6f 67 20 28 63 64 72 20 6f 67 29 29 29 0a 20 20 20 tq.ng.(cdr.ng).og.(cdr.og)))....
6d00 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 61 62 6f 76 65 73 74 61 72 74 20 28 63 61 61 ...........(setq.abovestart.(caa
6d20 72 20 28 63 64 72 20 62 61 64 67 75 69 64 65 29 29 20 61 62 6f 76 65 65 6e 64 20 73 74 61 72 74 r.(cdr.badguide)).aboveend.start
6d40 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 62 65 6c 6f 77 73 74 61 72 l)...............(setq.belowstar
6d60 74 20 28 70 6f 69 6e 74 29 20 62 65 6c 6f 77 65 6e 64 20 28 63 64 61 72 20 28 63 61 72 20 62 61 t.(point).belowend.(cdar.(car.ba
6d80 64 67 75 69 64 65 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 61 62 dguide)))...............(setq.ab
6da0 6f 76 65 20 28 2d 20 61 62 6f 76 65 65 6e 64 20 61 62 6f 76 65 73 74 61 72 74 29 20 62 65 6c 6f ove.(-.aboveend.abovestart).belo
6dc0 77 20 28 2d 20 62 65 6c 6f 77 65 6e 64 20 62 65 6c 6f 77 73 74 61 72 74 29 29 0a 20 20 20 20 20 w.(-.belowend.belowstart))......
6de0 20 20 20 20 20 20 20 20 20 28 69 66 20 28 3e 3d 20 28 2d 20 62 65 6c 6f 77 73 74 61 72 74 20 61 .........(if.(>=.(-.belowstart.a
6e00 62 6f 76 65 73 74 61 72 74 29 20 62 65 6c 6f 77 29 20 28 73 65 74 71 20 65 6e 64 6c 20 62 65 6c bovestart).below).(setq.endl.bel
6e20 6f 77 65 6e 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 3e 3d 20 30 owend).................(if.(>=.0
6e40 20 61 62 6f 76 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 .above).....................(let
6e60 20 28 28 6e 67 20 28 63 64 72 20 67 75 69 64 65 73 29 29 20 28 6f 67 20 28 63 64 72 20 6f 6c 64 .((ng.(cdr.guides)).(og.(cdr.old
6e80 67 75 69 64 65 73 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 20 guides))).......................
6ea0 3b 3b 20 74 72 61 6e 73 66 6f 72 6d 20 65 78 69 73 74 69 6e 67 20 6c 69 6e 65 73 20 69 6e 20 63 ;;.transform.existing.lines.in.c
6ec0 68 75 6e 6b 20 74 6f 20 75 73 65 20 6e 65 77 20 73 65 63 74 69 6f 6e 73 0a 20 20 20 20 20 20 20 hunk.to.use.new.sections........
6ee0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 6c 65 20 28 61 6e 64 20 6f 67 20 6e 67 ...............(while.(and.og.ng
6f00 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 2d 6d ).........................(set-m
6f20 61 72 6b 65 72 20 28 63 61 61 72 20 6f 67 29 20 28 63 61 61 72 20 6e 67 29 29 0a 20 20 20 20 20 arker.(caar.og).(caar.ng))......
6f40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 6e 67 20 28 63 64 72 ...................(setq.ng.(cdr
6f60 20 6e 67 29 20 6f 67 20 28 63 64 72 20 6f 67 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 .ng).og.(cdr.og)))..............
6f80 20 20 20 20 20 20 20 20 20 28 64 6f 6c 69 73 74 20 28 6c 69 6e 65 20 63 68 75 6e 6b 29 0a 20 20 .........(dolist.(line.chunk)...
6fa0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 63 64 72 ......................(when.(cdr
6fc0 20 6c 69 6e 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 .line)..........................
6fe0 20 28 73 65 74 63 64 72 20 28 6e 74 68 20 31 20 6c 69 6e 65 29 0a 20 20 20 20 20 20 20 20 20 20 .(setcdr.(nth.1.line)...........
7000 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 68 69 67 68 6c 69 67 ........................(highlig
7020 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 72 65 70 6c 61 63 65 2d 73 65 63 74 69 6f ht-indent-guides--replace-sectio
7040 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 20 20 20 n...............................
7060 20 20 20 20 20 28 63 64 72 20 28 6e 74 68 20 31 20 6c 69 6e 65 29 29 0a 20 20 20 20 20 20 20 20 .....(cdr.(nth.1.line)).........
7080 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 64 72 20 ...........................(cdr.
70a0 67 75 69 64 65 73 29 20 28 63 64 72 20 6f 6c 64 67 75 69 64 65 73 29 29 29 29 29 29 0a 20 20 20 guides).(cdr.oldguides))))))....
70c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 61 62 6f 76 65 73 ...............(goto-char.aboves
70e0 74 61 72 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 67 75 tart)...................(setq.gu
7100 69 64 65 73 20 28 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 67 ides.(highlight-indent-guides--g
7120 65 74 2d 70 72 65 76 2d 67 75 69 64 65 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 et-prev-guides))................
7140 20 20 20 28 73 65 74 71 20 65 6f 66 20 28 3c 20 30 20 28 66 6f 72 77 61 72 64 2d 6c 69 6e 65 29 ...(setq.eof.(<.0.(forward-line)
7160 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 73 74 61 72 74 ))...................(setq.start
7180 6c 20 28 70 6f 69 6e 74 29 20 6f 6c 64 67 75 69 64 65 73 20 6e 69 6c 20 63 68 75 6e 6b 20 6e 69 l.(point).oldguides.nil.chunk.ni
71a0 6c 29 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 3b 3b 20 72 65 77 72 69 74 65 20 74 65 78 74 20 l)))))).........;;.rewrite.text.
71c0 70 72 6f 70 65 72 74 69 65 73 20 66 6f 72 20 61 6c 6c 20 6c 69 6e 65 73 20 69 6e 20 63 68 75 6e properties.for.all.lines.in.chun
71e0 6b 0a 20 20 20 20 20 20 20 20 28 64 6f 6c 69 73 74 20 28 6c 69 6e 65 20 63 68 75 6e 6b 29 0a 20 k.........(dolist.(line.chunk)..
7200 20 20 20 20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 63 61 72 20 6c 69 6e 65 29 29 0a .........(goto-char.(car.line)).
7220 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 63 64 72 20 6c 69 6e 65 29 0a 20 20 20 20 20 20 20 ..........(if.(cdr.line)........
7240 20 20 20 20 20 20 20 28 73 65 74 71 20 6c 66 20 28 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e 20 .......(setq.lf.(save-excursion.
7260 28 62 61 63 6b 2d 74 6f 2d 69 6e 64 65 6e 74 61 74 69 6f 6e 29 20 28 70 6f 69 6e 74 29 29 29 0a (back-to-indentation).(point))).
7280 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 6c 66 20 28 63 61 72 20 6c 69 6e 65 29 29 ............(setq.lf.(car.line))
72a0 29 0a 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 6c 65 20 28 6c 69 6e 65 2d 65 6e 64 2d 70 )...........(setq.le.(line-end-p
72c0 6f 73 69 74 69 6f 6e 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 28 61 6e 64 osition))...........(unless.(and
72e0 20 28 6e 75 6c 6c 20 28 67 65 74 2d 74 65 78 74 2d 70 72 6f 70 65 72 74 79 20 6c 66 20 70 72 6f .(null.(get-text-property.lf.pro
7300 70 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 71 20 6c p))........................(eq.l
7320 65 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 65 20 6c e.(next-single-property-change.l
7340 66 20 70 72 6f 70 20 6e 69 6c 20 6c 65 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 72 65 f.prop.nil.le))).............(re
7360 6d 6f 76 65 2d 74 65 78 74 2d 70 72 6f 70 65 72 74 69 65 73 20 6c 66 20 6c 65 20 28 6c 69 73 74 move-text-properties.lf.le.(list
7380 20 70 72 6f 70 20 6e 69 6c 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 6f 72 .prop.nil)))...........(when.(or
73a0 20 28 65 71 20 74 20 28 6e 74 68 20 32 20 6c 69 6e 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 .(eq.t.(nth.2.line))............
73c0 20 20 20 20 20 20 20 20 20 28 6e 6f 74 20 28 65 71 75 61 6c 20 28 63 61 72 20 28 6e 74 68 20 31 .........(not.(equal.(car.(nth.1
73e0 20 6c 69 6e 65 29 29 20 28 63 61 72 20 28 6e 74 68 20 32 20 6c 69 6e 65 29 29 29 29 0a 20 20 20 .line)).(car.(nth.2.line))))....
7400 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 63 64 72 20 28 .................(not.(eq.(cdr.(
7420 6e 74 68 20 31 20 6c 69 6e 65 29 29 20 28 63 64 72 20 28 6e 74 68 20 32 20 6c 69 6e 65 29 29 29 nth.1.line)).(cdr.(nth.2.line)))
7440 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 )).............(highlight-indent
7460 2d 67 75 69 64 65 73 2d 2d 67 75 69 64 65 2d 6c 69 6e 65 20 28 6e 74 68 20 31 20 6c 69 6e 65 29 -guides--guide-line.(nth.1.line)
7480 29 29 29 0a 20 20 20 20 20 20 20 20 3b 3b 20 75 70 64 61 74 65 20 74 68 65 20 6c 69 6e 65 20 63 ))).........;;.update.the.line.c
74a0 61 63 68 65 20 69 66 20 6e 65 63 65 73 73 61 72 79 0a 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 ache.if.necessary.........(when.
74c0 28 63 61 72 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 6c 69 (car.highlight-indent-guides--li
74e0 6e 65 2d 63 61 63 68 65 29 0a 20 20 20 20 20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 ne-cache)...........(goto-char.(
7500 63 61 72 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 6c 69 6e car.highlight-indent-guides--lin
7520 65 2d 63 61 63 68 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 6f 6c 64 73 65 63 e-cache))...........(setq.oldsec
7540 74 20 28 6e 74 68 20 32 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 t.(nth.2.highlight-indent-guides
7560 2d 2d 6c 69 6e 65 2d 63 61 63 68 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 6e --line-cache))...........(setq.n
7580 65 77 73 65 63 74 20 28 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d ewsect.(highlight-indent-guides-
75a0 2d 75 70 64 61 74 65 2d 6c 69 6e 65 2d 63 61 63 68 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 -update-line-cache))...........(
75c0 73 65 74 63 61 72 20 28 63 64 64 72 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 setcar.(cddr.highlight-indent-gu
75e0 69 64 65 73 2d 2d 6c 69 6e 65 2d 63 61 63 68 65 29 20 6e 65 77 73 65 63 74 29 29 0a 20 20 20 20 ides--line-cache).newsect)).....
7600 20 20 20 20 3b 3b 20 72 65 66 6f 6e 74 69 66 79 20 75 70 64 61 74 65 64 20 72 65 67 69 6f 6e 73 ....;;.refontify.updated.regions
7620 0a 20 20 20 20 20 20 20 20 28 69 66 20 28 65 71 75 61 6c 20 6f 6c 64 73 65 63 74 20 6e 65 77 73 .........(if.(equal.oldsect.news
7640 65 63 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 66 6f 6e 74 2d 6c 6f 63 6b 2d 66 6f 6e 74 ect).............(font-lock-font
7660 69 66 79 2d 72 65 67 69 6f 6e 20 73 74 61 72 74 6c 20 65 6e 64 6c 29 0a 20 20 20 20 20 20 20 20 ify-region.startl.endl).........
7680 20 20 28 73 65 74 71 20 72 6e 67 20 28 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 ..(setq.rng.(highlight-indent-gu
76a0 69 64 65 73 2d 2d 64 69 73 63 6f 76 65 72 2d 72 61 6e 67 65 73 20 6f 6c 64 73 65 63 74 20 6e 65 ides--discover-ranges.oldsect.ne
76c0 77 73 65 63 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 64 6f 6c 69 73 74 20 28 72 61 6e 67 65 wsect))...........(dolist.(range
76e0 20 28 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 74 72 79 2d 6d .(highlight-indent-guides--try-m
7700 65 72 67 65 2d 72 61 6e 67 65 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 erge-ranges.....................
7720 20 20 20 20 20 20 28 63 6f 6e 73 20 73 74 61 72 74 6c 20 65 6e 64 6c 29 20 28 63 61 72 20 72 6e ......(cons.startl.endl).(car.rn
7740 67 29 20 28 63 61 64 72 20 72 6e 67 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 66 6f 6e g).(cadr.rng))).............(fon
7760 74 2d 6c 6f 63 6b 2d 66 6f 6e 74 69 66 79 2d 72 65 67 69 6f 6e 20 28 63 61 72 20 72 61 6e 67 65 t-lock-fontify-region.(car.range
7780 29 20 28 63 64 72 20 72 61 6e 67 65 29 29 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 68 69 67 ).(cdr.range))))))))..(defun.hig
77a0 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 75 6e 67 75 69 64 65 2d 72 65 hlight-indent-guides--unguide-re
77c0 67 69 6f 6e 20 28 73 74 61 72 74 20 65 6e 64 29 0a 20 20 22 52 65 6d 6f 76 65 20 61 6c 6c 20 69 gion.(start.end)..."Remove.all.i
77e0 6e 64 65 6e 74 20 67 75 69 64 65 73 20 69 6e 20 74 68 65 20 62 75 66 66 65 72 20 72 65 67 69 6f ndent.guides.in.the.buffer.regio
7800 6e 20 66 72 6f 6d 20 53 54 41 52 54 20 74 6f 20 45 4e 44 2e 22 0a 20 20 28 77 69 74 68 2d 73 69 n.from.START.to.END."...(with-si
7820 6c 65 6e 74 2d 6d 6f 64 69 66 69 63 61 74 69 6f 6e 73 0a 20 20 20 20 28 72 65 6d 6f 76 65 2d 74 lent-modifications.....(remove-t
7840 65 78 74 2d 70 72 6f 70 65 72 74 69 65 73 20 73 74 61 72 74 20 65 6e 64 20 27 28 68 69 67 68 6c ext-properties.start.end.'(highl
7860 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 70 72 6f 70 20 6e 69 6c 29 29 29 29 0a ight-indent-guides-prop.nil)))).
7880 0a 28 64 65 66 75 6e 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d .(defun.highlight-indent-guides-
78a0 2d 66 69 6c 6c 2d 6b 65 79 77 6f 72 64 2d 6d 61 74 63 68 65 72 20 28 6c 69 6d 69 74 29 0a 20 20 -fill-keyword-matcher.(limit)...
78c0 22 53 65 61 72 63 68 20 66 6f 72 20 69 6e 64 65 6e 74 20 67 75 69 64 65 73 20 62 65 74 77 65 65 "Search.for.indent.guides.betwee
78e0 6e 20 74 68 65 20 70 6f 69 6e 74 20 61 6e 64 20 4c 49 4d 49 54 2e 0a 46 69 6e 64 20 74 68 65 20 n.the.point.and.LIMIT..Find.the.
7900 6e 65 78 74 20 63 68 61 72 61 63 74 65 72 20 74 68 61 74 20 69 73 20 70 61 72 74 20 6f 66 20 61 next.character.that.is.part.of.a
7920 6e 79 20 69 6e 64 65 6e 74 61 74 69 6f 6e 2e 20 20 54 68 69 73 20 69 73 20 6d 65 61 6e 74 20 74 ny.indentation...This.is.meant.t
7940 6f 20 62 65 0a 75 73 65 64 20 61 73 20 61 20 60 66 6f 6e 74 2d 6c 6f 63 6b 2d 6b 65 79 77 6f 72 o.be.used.as.a.`font-lock-keywor
7960 64 73 27 20 6d 61 74 63 68 65 72 2e 22 0a 20 20 28 6c 65 74 2a 20 28 28 70 6f 73 20 28 70 6f 69 ds'.matcher."...(let*.((pos.(poi
7980 6e 74 29 29 0a 20 20 20 20 20 20 20 20 20 28 70 72 6f 70 20 27 68 69 67 68 6c 69 67 68 74 2d 69 nt))..........(prop.'highlight-i
79a0 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 70 72 6f 70 29 0a 20 20 20 20 20 20 20 20 20 28 66 61 63 ndent-guides-prop)..........(fac
79c0 65 20 28 63 61 72 20 28 67 65 74 2d 74 65 78 74 2d 70 72 6f 70 65 72 74 79 20 70 6f 73 20 70 72 e.(car.(get-text-property.pos.pr
79e0 6f 70 29 29 29 29 0a 20 20 20 20 28 77 68 69 6c 65 20 28 61 6e 64 20 28 6e 6f 74 20 28 6e 61 74 op)))).....(while.(and.(not.(nat
7a00 6e 75 6d 70 20 66 61 63 65 29 29 20 28 3c 20 70 6f 73 20 6c 69 6d 69 74 29 29 0a 20 20 20 20 20 nump.face)).(<.pos.limit))......
7a20 20 28 73 65 74 71 20 70 6f 73 20 28 6e 65 78 74 2d 73 69 6e 67 6c 65 2d 70 72 6f 70 65 72 74 79 .(setq.pos.(next-single-property
7a40 2d 63 68 61 6e 67 65 20 70 6f 73 20 70 72 6f 70 20 6e 69 6c 20 6c 69 6d 69 74 29 29 0a 20 20 20 -change.pos.prop.nil.limit))....
7a60 20 20 20 28 73 65 74 71 20 66 61 63 65 20 28 63 61 72 20 28 67 65 74 2d 74 65 78 74 2d 70 72 6f ...(setq.face.(car.(get-text-pro
7a80 70 65 72 74 79 20 70 6f 73 20 70 72 6f 70 29 29 29 29 0a 20 20 20 20 28 77 68 65 6e 20 28 3c 20 perty.pos.prop)))).....(when.(<.
7aa0 70 6f 73 20 6c 69 6d 69 74 29 0a 20 20 20 20 20 20 28 73 65 74 2d 6d 61 74 63 68 2d 64 61 74 61 pos.limit).......(set-match-data
7ac0 20 28 6c 69 73 74 20 28 63 6f 70 79 2d 6d 61 72 6b 65 72 20 70 6f 73 29 20 28 63 6f 70 79 2d 6d .(list.(copy-marker.pos).(copy-m
7ae0 61 72 6b 65 72 20 28 31 2b 20 70 6f 73 29 29 29 29 0a 20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68 arker.(1+.pos)))).......(goto-ch
7b00 61 72 20 28 31 2b 20 70 6f 73 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 68 69 67 68 6c 69 67 68 ar.(1+.pos)))))..(defun.highligh
7b20 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 63 6f 6c 75 6d 6e 2d 6b 65 79 77 6f 72 64 2d t-indent-guides--column-keyword-
7b40 6d 61 74 63 68 65 72 20 28 6c 69 6d 69 74 29 0a 20 20 22 53 65 61 72 63 68 20 66 6f 72 20 69 6e matcher.(limit)..."Search.for.in
7b60 64 65 6e 74 20 67 75 69 64 65 73 20 62 65 74 77 65 65 6e 20 74 68 65 20 70 6f 69 6e 74 20 61 6e dent.guides.between.the.point.an
7b80 64 20 4c 49 4d 49 54 2e 0a 46 69 6e 64 20 74 68 65 20 6e 65 78 74 20 63 68 61 72 61 63 74 65 72 d.LIMIT..Find.the.next.character
7ba0 20 74 68 61 74 20 63 6f 6e 74 61 69 6e 73 20 74 68 65 20 66 69 72 73 74 20 63 6f 6c 75 6d 6e 20 .that.contains.the.first.column.
7bc0 6f 66 20 61 6e 20 69 6e 64 65 6e 74 61 74 69 6f 6e 20 6c 65 76 65 6c 2e 0a 54 68 69 73 20 69 73 of.an.indentation.level..This.is
7be0 20 6d 65 61 6e 74 20 74 6f 20 62 65 20 75 73 65 64 20 61 73 20 61 20 60 66 6f 6e 74 2d 6c 6f 63 .meant.to.be.used.as.a.`font-loc
7c00 6b 2d 6b 65 79 77 6f 72 64 73 27 20 6d 61 74 63 68 65 72 2e 22 0a 20 20 28 6c 65 74 2a 20 28 28 k-keywords'.matcher."...(let*.((
7c20 70 6f 73 20 28 70 6f 69 6e 74 29 29 0a 20 20 20 20 20 20 20 20 20 28 70 72 6f 70 20 27 68 69 67 pos.(point))..........(prop.'hig
7c40 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 70 72 6f 70 29 0a 20 20 20 20 20 hlight-indent-guides-prop)......
7c60 20 20 20 20 28 70 72 6f 70 76 61 6c 20 28 67 65 74 2d 74 65 78 74 2d 70 72 6f 70 65 72 74 79 20 ....(propval.(get-text-property.
7c80 70 6f 73 20 70 72 6f 70 29 29 29 0a 20 20 20 20 28 77 68 69 6c 65 20 28 61 6e 64 20 28 6e 6f 74 pos.prop))).....(while.(and.(not
7ca0 20 28 61 6e 64 20 28 6e 61 74 6e 75 6d 70 20 28 63 61 72 20 70 72 6f 70 76 61 6c 29 29 0a 20 20 .(and.(natnump.(car.propval))...
7cc0 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 6f 72 20 28 6e 74 68 ........................(or.(nth
7ce0 20 32 20 70 72 6f 70 76 61 6c 29 20 28 6e 74 68 20 31 20 70 72 6f 70 76 61 6c 29 29 29 29 0a 20 .2.propval).(nth.1.propval))))..
7d00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 3c 20 70 6f 73 20 6c 69 6d 69 74 29 29 0a 20 20 ...............(<.pos.limit))...
7d20 20 20 20 20 28 73 65 74 71 20 70 6f 73 20 28 31 2b 20 70 6f 73 29 29 0a 20 20 20 20 20 20 28 73 ....(setq.pos.(1+.pos)).......(s
7d40 65 74 71 20 70 72 6f 70 76 61 6c 20 28 67 65 74 2d 74 65 78 74 2d 70 72 6f 70 65 72 74 79 20 70 etq.propval.(get-text-property.p
7d60 6f 73 20 70 72 6f 70 29 29 0a 20 20 20 20 20 20 28 77 68 69 6c 65 20 28 61 6e 64 20 28 3c 20 70 os.prop)).......(while.(and.(<.p
7d80 6f 73 20 6c 69 6d 69 74 29 20 28 6e 6f 74 20 28 6e 61 74 6e 75 6d 70 20 28 63 61 72 20 70 72 6f os.limit).(not.(natnump.(car.pro
7da0 70 76 61 6c 29 29 29 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 71 20 70 6f 73 20 28 6e 65 78 74 pval)))).........(setq.pos.(next
7dc0 2d 73 69 6e 67 6c 65 2d 70 72 6f 70 65 72 74 79 2d 63 68 61 6e 67 65 20 70 6f 73 20 70 72 6f 70 -single-property-change.pos.prop
7de0 20 6e 69 6c 20 6c 69 6d 69 74 29 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 71 20 70 72 6f 70 76 .nil.limit)).........(setq.propv
7e00 61 6c 20 28 67 65 74 2d 74 65 78 74 2d 70 72 6f 70 65 72 74 79 20 70 6f 73 20 70 72 6f 70 29 29 al.(get-text-property.pos.prop))
7e20 29 29 0a 20 20 20 20 28 77 68 65 6e 20 28 3c 20 70 6f 73 20 6c 69 6d 69 74 29 0a 20 20 20 20 20 )).....(when.(<.pos.limit)......
7e40 20 28 73 65 74 2d 6d 61 74 63 68 2d 64 61 74 61 20 28 6c 69 73 74 20 28 63 6f 70 79 2d 6d 61 72 .(set-match-data.(list.(copy-mar
7e60 6b 65 72 20 70 6f 73 29 20 28 63 6f 70 79 2d 6d 61 72 6b 65 72 20 28 31 2b 20 70 6f 73 29 29 29 ker.pos).(copy-marker.(1+.pos)))
7e80 29 0a 20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 31 2b 20 70 6f 73 29 29 29 29 29 0a ).......(goto-char.(1+.pos))))).
7ea0 0a 28 64 65 66 75 6e 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d .(defun.highlight-indent-guides-
7ec0 2d 68 69 67 68 6c 69 67 68 74 65 72 2d 64 65 66 61 75 6c 74 20 28 6c 65 76 65 6c 20 72 65 73 70 -highlighter-default.(level.resp
7ee0 6f 6e 73 69 76 65 20 64 69 73 70 6c 61 79 29 0a 20 20 22 44 65 74 65 72 6d 69 6e 65 20 74 68 65 onsive.display)..."Determine.the
7f00 20 63 6f 72 72 65 63 74 20 66 61 63 65 20 74 6f 20 75 73 65 20 66 6f 72 20 61 20 67 69 76 65 6e .correct.face.to.use.for.a.given
7f20 20 69 6e 64 65 6e 74 61 74 69 6f 6e 20 6c 65 76 65 6c 2e 0a 55 73 65 73 20 74 68 65 20 4c 45 56 .indentation.level..Uses.the.LEV
7f40 45 4c 2c 20 52 45 53 50 4f 4e 53 49 56 45 20 63 6f 6e 74 65 78 74 2c 20 61 6e 64 20 44 49 53 50 EL,.RESPONSIVE.context,.and.DISP
7f60 4c 41 59 20 6d 65 74 68 6f 64 20 74 6f 20 64 65 63 69 64 65 20 6f 6e 20 61 20 63 6f 72 72 65 63 LAY.method.to.decide.on.a.correc
7f80 74 0a 66 61 63 65 20 66 6f 72 20 61 6e 79 20 67 69 76 65 6e 20 69 6e 64 65 6e 74 61 74 69 6f 6e t.face.for.any.given.indentation
7fa0 2e 20 20 54 68 69 73 20 69 73 20 74 68 65 20 64 65 66 61 75 6c 74 20 69 6d 70 6c 65 6d 65 6e 74 ...This.is.the.default.implement
7fc0 61 74 69 6f 6e 20 6f 66 0a 60 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 ation.of.`highlight-indent-guide
7fe0 73 2d 68 69 67 68 6c 69 67 68 74 65 72 2d 66 75 6e 63 74 69 6f 6e 27 2e 22 0a 20 20 28 63 6f 6e s-highlighter-function'."...(con
8000 64 20 28 28 6e 75 6c 6c 20 72 65 73 70 6f 6e 73 69 76 65 29 0a 20 20 20 20 20 20 20 20 20 28 63 d.((null.responsive)..........(c
8020 6f 6e 64 20 28 28 6f 72 20 28 65 71 20 64 69 73 70 6c 61 79 20 27 63 68 61 72 61 63 74 65 72 29 ond.((or.(eq.display.'character)
8040 20 28 65 71 20 64 69 73 70 6c 61 79 20 27 62 69 74 6d 61 70 29 29 0a 20 20 20 20 20 20 20 20 20 .(eq.display.'bitmap))..........
8060 20 20 20 20 20 20 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d .......'highlight-indent-guides-
8080 63 68 61 72 61 63 74 65 72 2d 66 61 63 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 character-face)................(
80a0 28 7a 65 72 6f 70 20 28 6d 6f 64 20 6c 65 76 65 6c 20 32 29 29 0a 20 20 20 20 20 20 20 20 20 20 (zerop.(mod.level.2))...........
80c0 20 20 20 20 20 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 65 ......'highlight-indent-guides-e
80e0 76 65 6e 2d 66 61 63 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 74 20 27 68 69 67 ven-face)................(t.'hig
8100 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 6f 64 64 2d 66 61 63 65 29 29 29 hlight-indent-guides-odd-face)))
8120 0a 20 20 20 20 20 20 20 20 28 28 65 71 20 72 65 73 70 6f 6e 73 69 76 65 20 27 74 6f 70 29 0a 20 .........((eq.responsive.'top)..
8140 20 20 20 20 20 20 20 20 28 63 6f 6e 64 20 28 28 6f 72 20 28 65 71 20 64 69 73 70 6c 61 79 20 27 ........(cond.((or.(eq.display.'
8160 63 68 61 72 61 63 74 65 72 29 20 28 65 71 20 64 69 73 70 6c 61 79 20 27 62 69 74 6d 61 70 29 29 character).(eq.display.'bitmap))
8180 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 .................'highlight-inde
81a0 6e 74 2d 67 75 69 64 65 73 2d 74 6f 70 2d 63 68 61 72 61 63 74 65 72 2d 66 61 63 65 29 0a 20 20 nt-guides-top-character-face)...
81c0 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 7a 65 72 6f 70 20 28 6d 6f 64 20 6c 65 76 65 6c 20 .............((zerop.(mod.level.
81e0 32 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 68 69 67 68 6c 69 67 68 74 2d 69 2)).................'highlight-i
8200 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 74 6f 70 2d 65 76 65 6e 2d 66 61 63 65 29 0a 20 20 20 20 ndent-guides-top-even-face).....
8220 20 20 20 20 20 20 20 20 20 20 20 28 74 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d ...........(t.'highlight-indent-
8240 67 75 69 64 65 73 2d 74 6f 70 2d 6f 64 64 2d 66 61 63 65 29 29 29 0a 20 20 20 20 20 20 20 20 28 guides-top-odd-face))).........(
8260 28 65 71 20 72 65 73 70 6f 6e 73 69 76 65 20 27 73 74 61 63 6b 29 0a 20 20 20 20 20 20 20 20 20 (eq.responsive.'stack)..........
8280 28 63 6f 6e 64 20 28 28 6f 72 20 28 65 71 20 64 69 73 70 6c 61 79 20 27 63 68 61 72 61 63 74 65 (cond.((or.(eq.display.'characte
82a0 72 29 20 28 65 71 20 64 69 73 70 6c 61 79 20 27 62 69 74 6d 61 70 29 29 0a 20 20 20 20 20 20 20 r).(eq.display.'bitmap))........
82c0 20 20 20 20 20 20 20 20 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 .........'highlight-indent-guide
82e0 73 2d 73 74 61 63 6b 2d 63 68 61 72 61 63 74 65 72 2d 66 61 63 65 29 0a 20 20 20 20 20 20 20 20 s-stack-character-face).........
8300 20 20 20 20 20 20 20 28 28 7a 65 72 6f 70 20 28 6d 6f 64 20 6c 65 76 65 6c 20 32 29 29 0a 20 20 .......((zerop.(mod.level.2))...
8320 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d ..............'highlight-indent-
8340 67 75 69 64 65 73 2d 73 74 61 63 6b 2d 65 76 65 6e 2d 66 61 63 65 29 0a 20 20 20 20 20 20 20 20 guides-stack-even-face).........
8360 20 20 20 20 20 20 20 28 74 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 .......(t.'highlight-indent-guid
8380 65 73 2d 73 74 61 63 6b 2d 6f 64 64 2d 66 61 63 65 29 29 29 0a 20 20 20 20 20 20 20 20 28 74 20 es-stack-odd-face))).........(t.
83a0 6e 69 6c 29 29 29 0a 0a 28 64 65 66 6d 61 63 72 6f 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 nil)))..(defmacro.highlight-inde
83c0 6e 74 2d 67 75 69 64 65 73 2d 2d 63 61 63 68 65 2d 68 69 67 68 6c 69 67 68 74 20 28 74 79 70 65 nt-guides--cache-highlight.(type
83e0 20 70 72 6f 70 20 68 6c 6b 65 79 20 26 72 65 73 74 20 62 6f 64 79 29 0a 20 20 22 4d 65 6d 6f 69 .prop.hlkey.&rest.body)..."Memoi
8400 7a 65 20 74 68 65 20 68 69 67 68 6c 69 67 68 74 65 72 20 72 65 73 75 6c 74 73 20 69 6e 20 74 68 ze.the.highlighter.results.in.th
8420 65 20 63 68 61 72 61 63 74 65 72 27 73 20 70 72 6f 70 65 72 74 69 65 73 2e 0a 49 66 20 61 20 63 e.character's.properties..If.a.c
8440 61 63 68 65 64 20 72 65 73 75 6c 74 20 77 69 74 68 20 74 68 65 20 72 69 67 68 74 20 54 59 50 45 ached.result.with.the.right.TYPE
8460 20 28 60 66 69 6c 6c 27 2c 20 60 63 6f 6c 75 6d 6e 27 2c 20 6f 72 20 60 63 68 61 72 61 63 74 65 .(`fill',.`column',.or.`characte
8480 72 27 29 20 69 73 0a 63 6f 6e 74 61 69 6e 65 64 20 69 6e 20 50 52 4f 50 20 77 69 74 68 20 61 20 r').is.contained.in.PROP.with.a.
84a0 72 65 73 70 6f 6e 73 69 76 65 20 63 6f 6e 74 65 78 74 20 6d 61 74 63 68 69 6e 67 20 48 4c 4b 45 responsive.context.matching.HLKE
84c0 59 2c 20 72 65 74 75 72 6e 20 74 68 61 74 20 72 65 73 75 6c 74 0a 69 6e 73 74 65 61 64 20 6f 66 Y,.return.that.result.instead.of
84e0 20 63 61 6c 63 75 6c 61 74 69 6e 67 20 61 20 6e 65 77 20 6f 6e 65 2e 20 20 4f 74 68 65 72 77 69 .calculating.a.new.one...Otherwi
8500 73 65 2c 20 63 61 6c 63 75 6c 61 74 65 20 61 20 6e 65 77 20 72 65 73 75 6c 74 20 62 79 20 72 75 se,.calculate.a.new.result.by.ru
8520 6e 6e 69 6e 67 0a 42 4f 44 59 2c 20 63 61 63 68 65 20 69 74 20 69 6e 20 50 52 4f 50 2c 20 61 6e nning.BODY,.cache.it.in.PROP,.an
8540 64 20 72 65 74 75 72 6e 20 69 74 2e 22 0a 20 20 60 28 6c 65 74 20 28 28 63 61 63 68 65 20 28 6e d.return.it."...`(let.((cache.(n
8560 74 68 20 34 20 2c 70 72 6f 70 29 29 20 70 6c 69 73 74 20 72 65 73 75 6c 74 29 0a 20 20 20 20 20 th.4.,prop)).plist.result)......
8580 28 69 66 20 28 61 6e 64 20 28 65 71 20 2c 74 79 70 65 20 28 63 61 72 20 63 61 63 68 65 29 29 0a (if.(and.(eq.,type.(car.cache)).
85a0 20 20 20 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 70 6c 69 73 ..............(setq.result.(plis
85c0 74 2d 67 65 74 20 28 63 64 72 20 63 61 63 68 65 29 20 2c 68 6c 6b 65 79 29 29 29 0a 20 20 20 20 t-get.(cdr.cache).,hlkey))).....
85e0 20 20 20 20 20 72 65 73 75 6c 74 0a 20 20 20 20 20 20 20 28 73 65 74 71 20 72 65 73 75 6c 74 20 .....result........(setq.result.
8600 28 70 72 6f 67 6e 20 2c 40 62 6f 64 79 29 29 0a 20 20 20 20 20 20 20 28 73 65 74 71 20 70 6c 69 (progn.,@body))........(setq.pli
8620 73 74 20 28 70 6c 69 73 74 2d 70 75 74 20 28 63 64 72 20 63 61 63 68 65 29 20 2c 68 6c 6b 65 79 st.(plist-put.(cdr.cache).,hlkey
8640 20 72 65 73 75 6c 74 29 29 0a 20 20 20 20 20 20 20 28 73 65 74 63 61 72 20 28 6e 74 68 63 64 72 .result))........(setcar.(nthcdr
8660 20 34 20 2c 70 72 6f 70 29 20 28 63 6f 6e 73 20 2c 74 79 70 65 20 70 6c 69 73 74 29 29 0a 20 20 .4.,prop).(cons.,type.plist))...
8680 20 20 20 20 20 72 65 73 75 6c 74 29 29 29 0a 0a 28 64 65 66 75 6e 20 68 69 67 68 6c 69 67 68 74 .....result)))..(defun.highlight
86a0 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 73 68 6f 75 6c 64 2d 68 69 67 68 6c 69 67 68 74 -indent-guides--should-highlight
86c0 20 28 70 72 6f 70 29 0a 20 20 22 44 65 74 65 72 6d 69 6e 65 20 68 6f 77 20 61 20 67 75 69 64 65 .(prop)..."Determine.how.a.guide
86e0 20 73 68 6f 75 6c 64 20 62 65 20 68 69 67 68 6c 69 67 68 74 65 64 20 69 6e 20 72 65 73 70 6f 6e .should.be.highlighted.in.respon
8700 73 69 76 65 20 6d 6f 64 65 2e 0a 54 68 65 20 67 75 69 64 65 27 73 20 64 61 74 61 20 69 73 20 67 sive.mode..The.guide's.data.is.g
8720 69 76 65 6e 20 61 73 20 50 52 4f 50 2e 22 0a 20 20 28 69 66 20 28 6e 75 6c 6c 20 68 69 67 68 6c iven.as.PROP."...(if.(null.highl
8740 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 72 65 73 70 6f 6e 73 69 76 65 29 20 6e ight-indent-guides-responsive).n
8760 69 6c 0a 20 20 20 20 28 6c 65 74 20 28 28 63 75 72 72 73 65 67 20 28 6e 74 68 20 35 20 70 72 6f il.....(let.((currseg.(nth.5.pro
8780 70 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 73 65 67 63 74 20 28 6d 61 78 20 31 20 28 2b 20 28 p))...........(segct.(max.1.(+.(
87a0 6c 65 6e 67 74 68 20 28 6e 74 68 20 31 20 70 72 6f 70 29 29 20 28 69 66 20 28 6e 74 68 20 32 20 length.(nth.1.prop)).(if.(nth.2.
87c0 70 72 6f 70 29 20 31 20 30 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 63 61 63 68 65 73 65 prop).1.0))))...........(cachese
87e0 67 20 28 6e 74 68 20 32 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 g.(nth.2.highlight-indent-guides
8800 2d 2d 6c 69 6e 65 2d 63 61 63 68 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 69 73 73 74 61 63 --line-cache))...........(isstac
8820 6b 20 28 65 71 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 72 65 k.(eq.highlight-indent-guides-re
8840 73 70 6f 6e 73 69 76 65 20 27 73 74 61 63 6b 29 29 0a 20 20 20 20 20 20 20 20 20 20 72 65 73 75 sponsive.'stack))...........resu
8860 6c 74 29 0a 20 20 20 20 20 20 28 64 6f 74 69 6d 65 73 20 28 5f 20 73 65 67 63 74 20 72 65 73 75 lt).......(dotimes.(_.segct.resu
8880 6c 74 29 0a 20 20 20 20 20 20 20 20 28 63 6f 6e 64 20 28 28 65 71 75 61 6c 20 63 61 63 68 65 73 lt).........(cond.((equal.caches
88a0 65 67 20 63 75 72 72 73 65 67 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 eg.currseg)................(setq
88c0 20 72 65 73 75 6c 74 20 28 63 6f 6e 73 20 27 74 6f 70 20 72 65 73 75 6c 74 29 29 29 0a 20 20 20 .result.(cons.'top.result)))....
88e0 20 20 20 20 20 20 20 20 20 20 20 28 28 61 6e 64 20 69 73 73 74 61 63 6b 20 28 68 69 67 68 6c 69 ...........((and.isstack.(highli
8900 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 69 73 63 64 72 20 63 75 72 72 73 65 67 ght-indent-guides--iscdr.currseg
8920 20 63 61 63 68 65 73 65 67 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 .cacheseg))................(setq
8940 20 72 65 73 75 6c 74 20 28 63 6f 6e 73 20 27 73 74 61 63 6b 20 72 65 73 75 6c 74 29 29 29 0a 20 .result.(cons.'stack.result)))..
8960 20 20 20 20 20 20 20 20 20 20 20 20 20 28 74 20 28 73 65 74 71 20 72 65 73 75 6c 74 20 28 63 6f .............(t.(setq.result.(co
8980 6e 73 20 6e 69 6c 20 72 65 73 75 6c 74 29 29 29 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 71 20 ns.nil.result)))).........(setq.
89a0 63 75 72 72 73 65 67 20 28 63 64 72 20 63 75 72 72 73 65 67 29 29 29 29 29 29 0a 0a 28 64 65 66 currseg.(cdr.currseg))))))..(def
89c0 75 6e 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 66 69 6c 6c un.highlight-indent-guides--fill
89e0 2d 68 69 67 68 6c 69 67 68 74 65 72 20 28 29 0a 20 20 22 41 70 70 6c 79 20 68 69 67 68 6c 69 67 -highlighter.()..."Apply.highlig
8a00 68 74 69 6e 67 20 74 6f 20 74 68 65 20 69 6e 64 65 6e 74 61 74 69 6f 6e 2e 0a 52 65 74 75 72 6e hting.to.the.indentation..Return
8a20 20 68 69 67 68 6c 69 67 68 74 69 6e 67 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 66 6f 72 20 74 68 .highlighting.information.for.th
8a40 65 20 6d 61 74 63 68 65 64 20 63 68 61 72 61 63 74 65 72 2e 20 20 48 69 67 68 6c 69 67 68 74 73 e.matched.character...Highlights
8a60 20 61 6c 6c 0a 69 6e 64 65 6e 74 61 74 69 6f 6e 20 63 68 61 72 61 63 74 65 72 73 20 69 6e 20 61 .all.indentation.characters.in.a
8a80 6c 74 65 72 6e 61 74 69 6e 67 20 63 6f 6c 6f 72 73 2e 20 20 54 68 69 73 20 69 73 20 6d 65 61 6e lternating.colors...This.is.mean
8aa0 74 20 74 6f 20 62 65 20 75 73 65 64 20 61 73 20 61 0a 60 66 6f 6e 74 2d 6c 6f 63 6b 2d 6b 65 79 t.to.be.used.as.a.`font-lock-key
8ac0 77 6f 72 64 73 27 20 66 61 63 65 20 64 65 66 69 6e 69 74 69 6f 6e 2e 22 0a 20 20 28 6c 65 74 2a words'.face.definition."...(let*
8ae0 20 28 28 70 72 6f 70 20 28 67 65 74 2d 74 65 78 74 2d 70 72 6f 70 65 72 74 79 20 28 6d 61 74 63 .((prop.(get-text-property.(matc
8b00 68 2d 62 65 67 69 6e 6e 69 6e 67 20 30 29 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 h-beginning.0).'highlight-indent
8b20 2d 67 75 69 64 65 73 2d 70 72 6f 70 29 29 0a 20 20 20 20 20 20 20 20 20 28 73 68 6f 75 6c 64 68 -guides-prop))..........(shouldh
8b40 6c 20 28 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 73 68 6f 75 l.(highlight-indent-guides--shou
8b60 6c 64 2d 68 69 67 68 6c 69 67 68 74 20 70 72 6f 70 29 29 29 0a 20 20 20 20 28 68 69 67 68 6c 69 ld-highlight.prop))).....(highli
8b80 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 63 61 63 68 65 2d 68 69 67 68 6c 69 67 ght-indent-guides--cache-highlig
8ba0 68 74 0a 20 20 20 20 20 27 66 69 6c 6c 20 70 72 6f 70 20 73 68 6f 75 6c 64 68 6c 0a 20 20 20 20 ht......'fill.prop.shouldhl.....
8bc0 20 28 6c 65 74 20 28 28 68 69 67 68 6c 69 67 68 74 65 72 20 68 69 67 68 6c 69 67 68 74 2d 69 6e .(let.((highlighter.highlight-in
8be0 64 65 6e 74 2d 67 75 69 64 65 73 2d 68 69 67 68 6c 69 67 68 74 65 72 2d 66 75 6e 63 74 69 6f 6e dent-guides-highlighter-function
8c00 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 66 61 63 65 70 20 28 63 61 72 20 70 72 6f 70 29 29 20 )............(facep.(car.prop)).
8c20 28 73 65 67 73 20 28 6e 74 68 20 31 20 70 72 6f 70 29 29 20 28 63 77 69 64 74 68 20 28 6e 74 68 (segs.(nth.1.prop)).(cwidth.(nth
8c40 20 33 20 70 72 6f 70 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 70 73 65 67 20 30 29 20 66 61 .3.prop))............(pseg.0).fa
8c60 63 65 20 73 68 6f 77 73 74 72 29 0a 20 20 20 20 20 20 20 28 69 66 20 28 6e 75 6c 6c 20 73 65 67 ce.showstr)........(if.(null.seg
8c80 73 29 20 28 66 75 6e 63 61 6c 6c 20 68 69 67 68 6c 69 67 68 74 65 72 20 66 61 63 65 70 20 28 63 s).(funcall.highlighter.facep.(c
8ca0 61 72 20 73 68 6f 75 6c 64 68 6c 29 20 27 66 69 6c 6c 29 0a 20 20 20 20 20 20 20 20 20 28 73 65 ar.shouldhl).'fill)..........(se
8cc0 74 71 20 73 68 6f 77 73 74 72 20 28 6d 61 6b 65 2d 73 74 72 69 6e 67 20 63 77 69 64 74 68 20 3f tq.showstr.(make-string.cwidth.?
8ce0 5c 73 29 29 0a 20 20 20 20 20 20 20 20 20 28 64 6f 6c 69 73 74 20 28 73 65 67 20 73 65 67 73 29 \s))..........(dolist.(seg.segs)
8d00 0a 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 66 61 63 65 20 28 66 75 6e 63 61 6c 6c 20 ............(setq.face.(funcall.
8d20 68 69 67 68 6c 69 67 68 74 65 72 20 66 61 63 65 70 20 28 70 6f 70 20 73 68 6f 75 6c 64 68 6c 29 highlighter.facep.(pop.shouldhl)
8d40 20 27 66 69 6c 6c 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 66 61 63 65 20 28 .'fill))............(when.face.(
8d60 61 64 64 2d 74 65 78 74 2d 70 72 6f 70 65 72 74 69 65 73 20 70 73 65 67 20 73 65 67 20 60 28 66 add-text-properties.pseg.seg.`(f
8d80 61 63 65 20 2c 66 61 63 65 29 20 73 68 6f 77 73 74 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 ace.,face).showstr))............
8da0 28 73 65 74 71 20 70 73 65 67 20 73 65 67 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 (setq.pseg.seg)............(setq
8dc0 20 66 61 63 65 70 20 28 31 2b 20 66 61 63 65 70 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 73 65 .facep.(1+.facep)))..........(se
8de0 74 71 20 66 61 63 65 20 28 66 75 6e 63 61 6c 6c 20 68 69 67 68 6c 69 67 68 74 65 72 20 66 61 63 tq.face.(funcall.highlighter.fac
8e00 65 70 20 28 70 6f 70 20 73 68 6f 75 6c 64 68 6c 29 20 27 66 69 6c 6c 29 29 0a 20 20 20 20 20 20 ep.(pop.shouldhl).'fill)).......
8e20 20 20 20 28 77 68 65 6e 20 66 61 63 65 20 28 61 64 64 2d 74 65 78 74 2d 70 72 6f 70 65 72 74 69 ...(when.face.(add-text-properti
8e40 65 73 20 70 73 65 67 20 63 77 69 64 74 68 20 60 28 66 61 63 65 20 2c 66 61 63 65 29 20 73 68 6f es.pseg.cwidth.`(face.,face).sho
8e60 77 73 74 72 29 29 0a 20 20 20 20 20 20 20 20 20 60 28 66 61 63 65 20 6e 69 6c 20 64 69 73 70 6c wstr))..........`(face.nil.displ
8e80 61 79 20 2c 73 68 6f 77 73 74 72 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 68 69 67 68 6c 69 ay.,showstr))))))..(defun.highli
8ea0 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 63 6f 6c 75 6d 6e 2d 68 69 67 68 6c 69 ght-indent-guides--column-highli
8ec0 67 68 74 65 72 20 28 29 0a 20 20 22 41 70 70 6c 79 20 68 69 67 68 6c 69 67 68 74 69 6e 67 20 74 ghter.()..."Apply.highlighting.t
8ee0 6f 20 74 68 65 20 69 6e 64 65 6e 74 61 74 69 6f 6e 2e 0a 52 65 74 75 72 6e 20 68 69 67 68 6c 69 o.the.indentation..Return.highli
8f00 67 68 74 69 6e 67 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 66 6f 72 20 74 68 65 20 6d 61 74 63 68 ghting.information.for.the.match
8f20 65 64 20 63 68 61 72 61 63 74 65 72 2e 20 20 48 69 67 68 6c 69 67 68 74 73 20 74 68 65 0a 66 69 ed.character...Highlights.the.fi
8f40 72 73 74 20 63 6f 6c 75 6d 6e 20 6f 66 20 65 61 63 68 20 69 6e 64 65 6e 74 61 74 69 6f 6e 20 6c rst.column.of.each.indentation.l
8f60 65 76 65 6c 20 69 6e 20 61 6c 74 65 72 6e 61 74 69 6e 67 20 63 6f 6c 6f 72 73 2e 20 20 54 68 69 evel.in.alternating.colors...Thi
8f80 73 20 69 73 20 6d 65 61 6e 74 20 74 6f 0a 62 65 20 75 73 65 64 20 61 73 20 61 20 60 66 6f 6e 74 s.is.meant.to.be.used.as.a.`font
8fa0 2d 6c 6f 63 6b 2d 6b 65 79 77 6f 72 64 73 27 20 66 61 63 65 20 64 65 66 69 6e 69 74 69 6f 6e 2e -lock-keywords'.face.definition.
8fc0 22 0a 20 20 28 6c 65 74 2a 20 28 28 70 72 6f 70 20 28 67 65 74 2d 74 65 78 74 2d 70 72 6f 70 65 "...(let*.((prop.(get-text-prope
8fe0 72 74 79 20 28 6d 61 74 63 68 2d 62 65 67 69 6e 6e 69 6e 67 20 30 29 20 27 68 69 67 68 6c 69 67 rty.(match-beginning.0).'highlig
9000 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 70 72 6f 70 29 29 0a 20 20 20 20 20 20 20 20 ht-indent-guides-prop)).........
9020 20 28 73 68 6f 75 6c 64 68 6c 20 28 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 .(shouldhl.(highlight-indent-gui
9040 64 65 73 2d 2d 73 68 6f 75 6c 64 2d 68 69 67 68 6c 69 67 68 74 20 70 72 6f 70 29 29 29 0a 20 20 des--should-highlight.prop)))...
9060 20 20 28 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 63 61 63 68 ..(highlight-indent-guides--cach
9080 65 2d 68 69 67 68 6c 69 67 68 74 0a 20 20 20 20 20 27 63 6f 6c 75 6d 6e 20 70 72 6f 70 20 73 68 e-highlight......'column.prop.sh
90a0 6f 75 6c 64 68 6c 0a 20 20 20 20 20 28 6c 65 74 20 28 28 68 69 67 68 6c 69 67 68 74 65 72 20 68 ouldhl......(let.((highlighter.h
90c0 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 68 69 67 68 6c 69 67 68 74 ighlight-indent-guides-highlight
90e0 65 72 2d 66 75 6e 63 74 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 66 61 63 65 70 20 28 er-function)............(facep.(
9100 63 61 72 20 70 72 6f 70 29 29 20 28 73 65 67 73 20 28 6e 74 68 20 31 20 70 72 6f 70 29 29 0a 20 car.prop)).(segs.(nth.1.prop))..
9120 20 20 20 20 20 20 20 20 20 20 28 73 74 61 72 74 65 72 20 28 6e 74 68 20 32 20 70 72 6f 70 29 29 ..........(starter.(nth.2.prop))
9140 20 28 63 77 69 64 74 68 20 28 6e 74 68 20 33 20 70 72 6f 70 29 29 0a 20 20 20 20 20 20 20 20 20 .(cwidth.(nth.3.prop))..........
9160 20 20 66 61 63 65 20 73 68 6f 77 73 74 72 29 0a 20 20 20 20 20 20 20 28 69 66 20 28 61 6e 64 20 ..face.showstr)........(if.(and.
9180 28 6e 75 6c 6c 20 73 65 67 73 29 20 28 65 71 20 63 77 69 64 74 68 20 31 29 29 0a 20 20 20 20 20 (null.segs).(eq.cwidth.1))......
91a0 20 20 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 68 69 67 68 6c 69 67 68 74 65 72 20 66 61 63 65 70 ......(funcall.highlighter.facep
91c0 20 28 63 61 72 20 73 68 6f 75 6c 64 68 6c 29 20 27 63 6f 6c 75 6d 6e 29 0a 20 20 20 20 20 20 20 .(car.shouldhl).'column)........
91e0 20 20 28 73 65 74 71 20 73 68 6f 77 73 74 72 20 28 6d 61 6b 65 2d 73 74 72 69 6e 67 20 63 77 69 ..(setq.showstr.(make-string.cwi
9200 64 74 68 20 3f 5c 73 29 29 0a 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 73 74 61 72 74 65 72 dth.?\s))..........(when.starter
9220 0a 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 66 61 63 65 20 28 66 75 6e 63 61 6c 6c 20 ............(setq.face.(funcall.
9240 68 69 67 68 6c 69 67 68 74 65 72 20 66 61 63 65 70 20 28 70 6f 70 20 73 68 6f 75 6c 64 68 6c 29 highlighter.facep.(pop.shouldhl)
9260 20 27 63 6f 6c 75 6d 6e 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 66 61 63 65 .'column))............(when.face
9280 20 28 61 64 64 2d 74 65 78 74 2d 70 72 6f 70 65 72 74 69 65 73 20 30 20 31 20 60 28 66 61 63 65 .(add-text-properties.0.1.`(face
92a0 20 2c 66 61 63 65 29 20 73 68 6f 77 73 74 72 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 64 6f 6c .,face).showstr)))..........(dol
92c0 69 73 74 20 28 73 65 67 20 73 65 67 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 ist.(seg.segs)............(setq.
92e0 66 61 63 65 20 28 66 75 6e 63 61 6c 6c 20 68 69 67 68 6c 69 67 68 74 65 72 20 66 61 63 65 70 20 face.(funcall.highlighter.facep.
9300 28 70 6f 70 20 73 68 6f 75 6c 64 68 6c 29 20 27 63 6f 6c 75 6d 6e 29 29 0a 20 20 20 20 20 20 20 (pop.shouldhl).'column))........
9320 20 20 20 20 28 77 68 65 6e 20 66 61 63 65 20 28 61 64 64 2d 74 65 78 74 2d 70 72 6f 70 65 72 74 ....(when.face.(add-text-propert
9340 69 65 73 20 73 65 67 20 28 31 2b 20 73 65 67 29 20 60 28 66 61 63 65 20 2c 66 61 63 65 29 20 73 ies.seg.(1+.seg).`(face.,face).s
9360 68 6f 77 73 74 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 66 61 63 65 70 20 howstr))............(setq.facep.
9380 28 31 2b 20 66 61 63 65 70 29 29 29 0a 20 20 20 20 20 20 20 20 20 60 28 66 61 63 65 20 6e 69 6c (1+.facep)))..........`(face.nil
93a0 20 64 69 73 70 6c 61 79 20 2c 73 68 6f 77 73 74 72 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 .display.,showstr))))))..(defun.
93c0 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 63 68 61 72 61 63 74 highlight-indent-guides--charact
93e0 65 72 2d 68 69 67 68 6c 69 67 68 74 65 72 20 28 29 0a 20 20 22 41 70 70 6c 79 20 68 69 67 68 6c er-highlighter.()..."Apply.highl
9400 69 67 68 74 69 6e 67 20 74 6f 20 74 68 65 20 69 6e 64 65 6e 74 61 74 69 6f 6e 2e 0a 52 65 74 75 ighting.to.the.indentation..Retu
9420 72 6e 20 68 69 67 68 6c 69 67 68 74 69 6e 67 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 66 6f 72 20 rn.highlighting.information.for.
9440 74 68 65 20 6d 61 74 63 68 65 64 20 63 68 61 72 61 63 74 65 72 2e 20 20 44 69 73 70 6c 61 79 73 the.matched.character...Displays
9460 20 61 20 63 68 61 72 61 63 74 65 72 0a 69 6e 20 70 6c 61 63 65 20 6f 66 20 74 68 65 20 66 69 72 .a.character.in.place.of.the.fir
9480 73 74 20 63 6f 6c 75 6d 6e 20 6f 66 20 65 61 63 68 20 69 6e 64 65 6e 74 61 74 69 6f 6e 20 6c 65 st.column.of.each.indentation.le
94a0 76 65 6c 2e 20 20 54 68 69 73 20 69 73 20 6d 65 61 6e 74 20 74 6f 20 62 65 0a 75 73 65 64 20 61 vel...This.is.meant.to.be.used.a
94c0 73 20 61 20 60 66 6f 6e 74 2d 6c 6f 63 6b 2d 6b 65 79 77 6f 72 64 73 27 20 66 61 63 65 20 64 65 s.a.`font-lock-keywords'.face.de
94e0 66 69 6e 69 74 69 6f 6e 2e 22 0a 20 20 28 6c 65 74 2a 20 28 28 70 72 6f 70 20 28 67 65 74 2d 74 finition."...(let*.((prop.(get-t
9500 65 78 74 2d 70 72 6f 70 65 72 74 79 20 28 6d 61 74 63 68 2d 62 65 67 69 6e 6e 69 6e 67 20 30 29 ext-property.(match-beginning.0)
9520 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 70 72 6f 70 29 29 .'highlight-indent-guides-prop))
9540 0a 20 20 20 20 20 20 20 20 20 28 73 68 6f 75 6c 64 68 6c 20 28 68 69 67 68 6c 69 67 68 74 2d 69 ..........(shouldhl.(highlight-i
9560 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 73 68 6f 75 6c 64 2d 68 69 67 68 6c 69 67 68 74 20 70 ndent-guides--should-highlight.p
9580 72 6f 70 29 29 29 0a 20 20 20 20 28 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 rop))).....(highlight-indent-gui
95a0 64 65 73 2d 2d 63 61 63 68 65 2d 68 69 67 68 6c 69 67 68 74 0a 20 20 20 20 20 27 63 68 61 72 61 des--cache-highlight......'chara
95c0 63 74 65 72 20 70 72 6f 70 20 73 68 6f 75 6c 64 68 6c 0a 20 20 20 20 20 28 6c 65 74 20 28 28 68 cter.prop.shouldhl......(let.((h
95e0 69 67 68 6c 69 67 68 74 65 72 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 ighlighter.highlight-indent-guid
9600 65 73 2d 68 69 67 68 6c 69 67 68 74 65 72 2d 66 75 6e 63 74 69 6f 6e 29 0a 20 20 20 20 20 20 20 es-highlighter-function)........
9620 20 20 20 20 28 66 61 63 65 70 20 28 63 61 72 20 70 72 6f 70 29 29 20 28 73 65 67 73 20 28 6e 74 ....(facep.(car.prop)).(segs.(nt
9640 68 20 31 20 70 72 6f 70 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 73 74 61 72 74 65 72 20 28 h.1.prop))............(starter.(
9660 6e 74 68 20 32 20 70 72 6f 70 29 29 20 28 63 77 69 64 74 68 20 28 6e 74 68 20 33 20 70 72 6f 70 nth.2.prop)).(cwidth.(nth.3.prop
9680 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 66 61 63 65 20 73 68 6f 77 73 74 72 29 0a 20 20 20 20 ))............face.showstr).....
96a0 20 20 20 28 69 66 20 28 61 6e 64 20 28 6e 75 6c 6c 20 73 65 67 73 29 20 28 65 71 20 63 77 69 64 ...(if.(and.(null.segs).(eq.cwid
96c0 74 68 20 31 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 67 6e 0a 20 20 20 20 20 20 20 th.1))............(progn........
96e0 20 20 20 20 20 20 28 73 65 74 71 20 66 61 63 65 20 28 66 75 6e 63 61 6c 6c 20 68 69 67 68 6c 69 ......(setq.face.(funcall.highli
9700 67 68 74 65 72 20 66 61 63 65 70 20 28 63 61 72 20 73 68 6f 75 6c 64 68 6c 29 20 27 63 68 61 72 ghter.facep.(car.shouldhl).'char
9720 61 63 74 65 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 66 61 63 65 0a acter))..............(when.face.
9740 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 73 68 6f 77 73 74 72 0a 20 20 20 ...............(setq.showstr....
9760 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 68 61 72 2d 74 6f 2d 73 74 72 69 6e ..................(char-to-strin
9780 67 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 63 68 61 72 61 63 g.highlight-indent-guides-charac
97a0 74 65 72 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 60 28 66 61 63 65 20 2c 66 61 63 65 ter)))..............`(face.,face
97c0 20 64 69 73 70 6c 61 79 20 2c 73 68 6f 77 73 74 72 29 29 0a 20 20 20 20 20 20 20 20 20 28 73 65 .display.,showstr))..........(se
97e0 74 71 20 73 68 6f 77 73 74 72 20 28 6d 61 6b 65 2d 73 74 72 69 6e 67 20 63 77 69 64 74 68 20 3f tq.showstr.(make-string.cwidth.?
9800 5c 73 29 29 0a 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 73 74 61 72 74 65 72 0a 20 20 20 20 \s))..........(when.starter.....
9820 20 20 20 20 20 20 20 28 73 65 74 71 20 66 61 63 65 20 28 66 75 6e 63 61 6c 6c 20 68 69 67 68 6c .......(setq.face.(funcall.highl
9840 69 67 68 74 65 72 20 66 61 63 65 70 20 28 70 6f 70 20 73 68 6f 75 6c 64 68 6c 29 20 27 63 68 61 ighter.facep.(pop.shouldhl).'cha
9860 72 61 63 74 65 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 66 61 63 65 0a 20 racter))............(when.face..
9880 20 20 20 20 20 20 20 20 20 20 20 20 28 61 73 65 74 20 73 68 6f 77 73 74 72 20 30 20 68 69 67 68 ............(aset.showstr.0.high
98a0 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 63 68 61 72 61 63 74 65 72 29 0a 20 light-indent-guides-character)..
98c0 20 20 20 20 20 20 20 20 20 20 20 20 28 61 64 64 2d 74 65 78 74 2d 70 72 6f 70 65 72 74 69 65 73 ............(add-text-properties
98e0 20 30 20 31 20 60 28 66 61 63 65 20 2c 66 61 63 65 29 20 73 68 6f 77 73 74 72 29 29 29 0a 20 20 .0.1.`(face.,face).showstr)))...
9900 20 20 20 20 20 20 20 28 64 6f 6c 69 73 74 20 28 73 65 67 20 73 65 67 73 29 0a 20 20 20 20 20 20 .......(dolist.(seg.segs).......
9920 20 20 20 20 20 28 73 65 74 71 20 66 61 63 65 20 28 66 75 6e 63 61 6c 6c 20 68 69 67 68 6c 69 67 .....(setq.face.(funcall.highlig
9940 68 74 65 72 20 66 61 63 65 70 20 28 70 6f 70 20 73 68 6f 75 6c 64 68 6c 29 20 27 63 68 61 72 61 hter.facep.(pop.shouldhl).'chara
9960 63 74 65 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 66 61 63 65 0a 20 20 20 cter))............(when.face....
9980 20 20 20 20 20 20 20 20 20 20 28 61 73 65 74 20 73 68 6f 77 73 74 72 20 73 65 67 20 68 69 67 68 ..........(aset.showstr.seg.high
99a0 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 63 68 61 72 61 63 74 65 72 29 0a 20 light-indent-guides-character)..
99c0 20 20 20 20 20 20 20 20 20 20 20 20 28 61 64 64 2d 74 65 78 74 2d 70 72 6f 70 65 72 74 69 65 73 ............(add-text-properties
99e0 20 73 65 67 20 28 31 2b 20 73 65 67 29 20 60 28 66 61 63 65 20 2c 66 61 63 65 29 20 73 68 6f 77 .seg.(1+.seg).`(face.,face).show
9a00 73 74 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 66 61 63 65 70 20 28 31 2b str))............(setq.facep.(1+
9a20 20 66 61 63 65 70 29 29 29 0a 20 20 20 20 20 20 20 20 20 60 28 66 61 63 65 20 6e 69 6c 20 64 69 .facep)))..........`(face.nil.di
9a40 73 70 6c 61 79 20 2c 73 68 6f 77 73 74 72 29 29 29 29 29 29 0a 0a 28 64 65 66 6d 61 63 72 6f 20 splay.,showstr))))))..(defmacro.
9a60 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 6d 65 6d 6f 69 7a 65 highlight-indent-guides--memoize
9a80 2d 62 69 74 6d 61 70 20 28 69 64 78 20 26 72 65 73 74 20 62 6f 64 79 29 0a 20 20 22 4d 65 6d 6f -bitmap.(idx.&rest.body)..."Memo
9aa0 69 7a 65 20 64 61 74 61 20 66 6f 72 20 74 68 65 20 62 69 74 6d 61 70 20 68 69 67 68 6c 69 67 68 ize.data.for.the.bitmap.highligh
9ac0 74 65 72 2e 0a 52 75 6e 20 61 6e 64 20 72 65 74 75 72 6e 20 42 4f 44 59 2e 20 20 4d 65 6d 6f 69 ter..Run.and.return.BODY...Memoi
9ae0 7a 65 20 74 68 65 20 72 65 73 75 6c 74 20 75 73 69 6e 67 20 74 68 65 20 6b 65 79 20 49 44 58 2e ze.the.result.using.the.key.IDX.
9b00 20 20 49 66 20 74 68 65 20 6d 61 63 72 6f 20 69 73 0a 63 61 6c 6c 65 64 20 61 67 61 69 6e 20 77 ..If.the.macro.is.called.again.w
9b20 69 74 68 20 74 68 65 20 73 61 6d 65 20 49 44 58 2c 20 72 65 74 75 72 6e 20 74 68 65 20 6d 65 6d ith.the.same.IDX,.return.the.mem
9b40 6f 69 7a 65 64 20 64 61 74 61 20 69 6e 73 74 65 61 64 20 6f 66 20 72 75 6e 6e 69 6e 67 20 42 4f oized.data.instead.of.running.BO
9b60 44 59 0a 61 67 61 69 6e 2e 22 0a 20 20 60 28 6c 65 74 20 28 28 76 61 6c 20 28 67 65 74 68 61 73 DY.again."...`(let.((val.(gethas
9b80 68 20 2c 69 64 78 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d h.,idx.highlight-indent-guides--
9ba0 62 69 74 6d 61 70 2d 6d 65 6d 6f 29 29 29 0a 20 20 20 20 20 28 69 66 20 76 61 6c 20 76 61 6c 0a bitmap-memo)))......(if.val.val.
9bc0 20 20 20 20 20 20 20 28 73 65 74 71 20 76 61 6c 20 28 70 72 6f 67 6e 20 2c 40 62 6f 64 79 29 29 .......(setq.val.(progn.,@body))
9be0 0a 20 20 20 20 20 20 20 28 70 75 74 68 61 73 68 20 2c 69 64 78 20 76 61 6c 20 68 69 67 68 6c 69 ........(puthash.,idx.val.highli
9c00 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 62 69 74 6d 61 70 2d 6d 65 6d 6f 29 0a ght-indent-guides--bitmap-memo).
9c20 20 20 20 20 20 20 20 76 61 6c 29 29 29 0a 0a 28 64 65 66 75 6e 20 68 69 67 68 6c 69 67 68 74 2d .......val)))..(defun.highlight-
9c40 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 62 69 74 6d 61 70 2d 68 69 67 68 6c 69 67 68 74 65 indent-guides--bitmap-highlighte
9c60 72 20 28 29 0a 20 20 22 41 70 70 6c 79 20 68 69 67 68 6c 69 67 68 74 69 6e 67 20 74 6f 20 74 68 r.()..."Apply.highlighting.to.th
9c80 65 20 69 6e 64 65 6e 74 61 74 69 6f 6e 2e 0a 52 65 74 75 72 6e 20 68 69 67 68 6c 69 67 68 74 69 e.indentation..Return.highlighti
9ca0 6e 67 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 66 6f 72 20 74 68 65 20 6d 61 74 63 68 65 64 20 63 ng.information.for.the.matched.c
9cc0 68 61 72 61 63 74 65 72 2e 20 20 44 69 73 70 6c 61 79 73 20 61 20 62 69 74 6d 61 70 20 69 6e 0a haracter...Displays.a.bitmap.in.
9ce0 70 6c 61 63 65 20 6f 66 20 74 68 65 20 66 69 72 73 74 20 63 6f 6c 75 6d 6e 20 6f 66 20 65 61 63 place.of.the.first.column.of.eac
9d00 68 20 69 6e 64 65 6e 74 61 74 69 6f 6e 20 6c 65 76 65 6c 2e 20 20 54 68 69 73 20 69 73 20 6d 65 h.indentation.level...This.is.me
9d20 61 6e 74 20 74 6f 20 62 65 20 75 73 65 64 0a 61 73 20 61 20 60 66 6f 6e 74 2d 6c 6f 63 6b 2d 6b ant.to.be.used.as.a.`font-lock-k
9d40 65 79 77 6f 72 64 73 27 20 66 61 63 65 20 64 65 66 69 6e 69 74 69 6f 6e 2e 22 0a 20 20 28 6c 65 eywords'.face.definition."...(le
9d60 74 2a 20 28 28 70 72 6f 70 20 28 67 65 74 2d 74 65 78 74 2d 70 72 6f 70 65 72 74 79 20 28 6d 61 t*.((prop.(get-text-property.(ma
9d80 74 63 68 2d 62 65 67 69 6e 6e 69 6e 67 20 30 29 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 tch-beginning.0).'highlight-inde
9da0 6e 74 2d 67 75 69 64 65 73 2d 70 72 6f 70 29 29 0a 20 20 20 20 20 20 20 20 20 28 73 68 6f 75 6c nt-guides-prop))..........(shoul
9dc0 64 68 6c 20 28 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 73 68 dhl.(highlight-indent-guides--sh
9de0 6f 75 6c 64 2d 68 69 67 68 6c 69 67 68 74 20 70 72 6f 70 29 29 29 0a 20 20 20 20 28 68 69 67 68 ould-highlight.prop))).....(high
9e00 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 63 61 63 68 65 2d 68 69 67 68 6c light-indent-guides--cache-highl
9e20 69 67 68 74 0a 20 20 20 20 20 27 62 69 74 6d 61 70 20 70 72 6f 70 20 73 68 6f 75 6c 64 68 6c 0a ight......'bitmap.prop.shouldhl.
9e40 20 20 20 20 20 28 6c 65 74 20 28 28 68 69 67 68 6c 69 67 68 74 65 72 20 68 69 67 68 6c 69 67 68 .....(let.((highlighter.highligh
9e60 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 68 69 67 68 6c 69 67 68 74 65 72 2d 66 75 6e 63 t-indent-guides-highlighter-func
9e80 74 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 66 61 63 65 70 20 28 63 61 72 20 70 72 6f tion)............(facep.(car.pro
9ea0 70 29 29 20 28 73 65 67 73 20 28 6e 74 68 20 31 20 70 72 6f 70 29 29 0a 20 20 20 20 20 20 20 20 p)).(segs.(nth.1.prop)).........
9ec0 20 20 20 28 73 74 61 72 74 65 72 20 28 6e 74 68 20 32 20 70 72 6f 70 29 29 20 28 63 77 69 64 74 ...(starter.(nth.2.prop)).(cwidt
9ee0 68 20 28 6e 74 68 20 33 20 70 72 6f 70 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 77 69 64 74 h.(nth.3.prop))............(widt
9f00 68 20 28 66 72 61 6d 65 2d 63 68 61 72 2d 77 69 64 74 68 29 29 20 28 68 65 69 67 68 74 20 28 66 h.(frame-char-width)).(height.(f
9f20 72 61 6d 65 2d 63 68 61 72 2d 68 65 69 67 68 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 66 61 rame-char-height))............fa
9f40 63 65 20 66 61 63 65 6c 69 73 74 20 73 68 6f 77 62 6d 70 29 0a 20 20 20 20 20 20 20 28 69 66 20 ce.facelist.showbmp)........(if.
9f60 28 61 6e 64 20 28 6e 75 6c 6c 20 73 65 67 73 29 20 28 65 71 20 63 77 69 64 74 68 20 31 29 29 0a (and.(null.segs).(eq.cwidth.1)).
9f80 20 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 28 ...........(progn..............(
9fa0 73 65 74 71 20 66 61 63 65 20 28 66 75 6e 63 61 6c 6c 20 68 69 67 68 6c 69 67 68 74 65 72 20 66 setq.face.(funcall.highlighter.f
9fc0 61 63 65 70 20 28 63 61 72 20 73 68 6f 75 6c 64 68 6c 29 20 27 62 69 74 6d 61 70 29 29 0a 20 20 acep.(car.shouldhl).'bitmap))...
9fe0 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 66 61 63 65 0a 20 20 20 20 20 20 20 20 20 20 ...........(when.face...........
a000 20 20 20 20 20 28 73 65 74 71 20 73 68 6f 77 62 6d 70 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 .....(setq.showbmp..............
a020 20 20 20 20 20 20 20 20 28 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 ........(highlight-indent-guides
a040 2d 2d 6d 65 6d 6f 69 7a 65 2d 62 69 74 6d 61 70 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 --memoize-bitmap................
a060 20 20 20 20 20 20 20 28 63 6f 6e 63 61 74 20 22 3b 22 20 28 6e 75 6d 62 65 72 2d 74 6f 2d 73 74 .......(concat.";".(number-to-st
a080 72 69 6e 67 20 77 69 64 74 68 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ring.width).....................
a0a0 20 20 20 20 20 20 20 20 20 20 22 3a 22 20 28 6e 75 6d 62 65 72 2d 74 6f 2d 73 74 72 69 6e 67 20 ..........":".(number-to-string.
a0c0 68 65 69 67 68 74 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 height).........................
a0e0 20 20 20 20 20 20 22 3a 22 20 28 66 61 63 65 2d 66 6f 72 65 67 72 6f 75 6e 64 20 66 61 63 65 29 ......":".(face-foreground.face)
a100 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 68 69 67 68 6c 69 67 ).......................(highlig
a120 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 64 72 61 77 2d 62 69 74 6d 61 70 0a 20 20 ht-indent-guides--draw-bitmap...
a140 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 68 69 67 68 6c 69 67 68 74 2d .....................(highlight-
a160 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 62 75 69 6c 64 2d 62 69 74 6d 61 70 0a 20 20 20 20 indent-guides--build-bitmap.....
a180 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 77 69 64 74 68 20 68 65 69 67 68 74 ....................width.height
a1a0 20 28 66 61 63 65 2d 66 6f 72 65 67 72 6f 75 6e 64 20 66 61 63 65 29 29 29 29 29 29 0a 20 20 20 .(face-foreground.face))))))....
a1c0 20 20 20 20 20 20 20 20 20 20 60 28 66 61 63 65 20 6e 69 6c 20 64 69 73 70 6c 61 79 20 2c 28 63 ..........`(face.nil.display.,(c
a1e0 6f 70 79 2d 73 65 71 75 65 6e 63 65 20 73 68 6f 77 62 6d 70 29 29 29 0a 20 20 20 20 20 20 20 20 opy-sequence.showbmp))).........
a200 20 28 73 65 74 71 20 66 61 63 65 6c 69 73 74 20 28 6d 61 6b 65 2d 6c 69 73 74 20 63 77 69 64 74 .(setq.facelist.(make-list.cwidt
a220 68 20 6e 69 6c 29 29 0a 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 73 74 61 72 74 65 72 0a 20 h.nil))..........(when.starter..
a240 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 66 61 63 65 20 28 66 75 6e 63 61 6c 6c 20 68 69 ..........(setq.face.(funcall.hi
a260 67 68 6c 69 67 68 74 65 72 20 66 61 63 65 70 20 28 70 6f 70 20 73 68 6f 75 6c 64 68 6c 29 20 27 ghlighter.facep.(pop.shouldhl).'
a280 62 69 74 6d 61 70 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 66 61 63 65 20 28 bitmap))............(when.face.(
a2a0 73 65 74 63 61 72 20 66 61 63 65 6c 69 73 74 20 28 66 61 63 65 2d 66 6f 72 65 67 72 6f 75 6e 64 setcar.facelist.(face-foreground
a2c0 20 66 61 63 65 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 64 6f 6c 69 73 74 20 28 73 65 67 20 .face))))..........(dolist.(seg.
a2e0 73 65 67 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 66 61 63 65 20 28 66 75 6e segs)............(setq.face.(fun
a300 63 61 6c 6c 20 68 69 67 68 6c 69 67 68 74 65 72 20 66 61 63 65 70 20 28 70 6f 70 20 73 68 6f 75 call.highlighter.facep.(pop.shou
a320 6c 64 68 6c 29 20 27 62 69 74 6d 61 70 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e ldhl).'bitmap))............(when
a340 20 66 61 63 65 20 28 73 65 74 63 61 72 20 28 6e 74 68 63 64 72 20 73 65 67 20 66 61 63 65 6c 69 .face.(setcar.(nthcdr.seg.faceli
a360 73 74 29 20 28 66 61 63 65 2d 66 6f 72 65 67 72 6f 75 6e 64 20 66 61 63 65 29 29 29 0a 20 20 20 st).(face-foreground.face)))....
a380 20 20 20 20 20 20 20 20 28 73 65 74 71 20 66 61 63 65 70 20 28 31 2b 20 66 61 63 65 70 29 29 29 ........(setq.facep.(1+.facep)))
a3a0 0a 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 73 68 6f 77 62 6d 70 0a 20 20 20 20 20 20 20 20 ..........(setq.showbmp.........
a3c0 20 20 20 20 20 20 20 28 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d .......(highlight-indent-guides-
a3e0 2d 6d 65 6d 6f 69 7a 65 2d 62 69 74 6d 61 70 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 -memoize-bitmap.................
a400 28 63 6f 6e 63 61 74 20 22 3b 22 20 28 6e 75 6d 62 65 72 2d 74 6f 2d 73 74 72 69 6e 67 20 77 69 (concat.";".(number-to-string.wi
a420 64 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 22 3a 22 dth).........................":"
a440 20 28 6e 75 6d 62 65 72 2d 74 6f 2d 73 74 72 69 6e 67 20 68 65 69 67 68 74 29 0a 20 20 20 20 20 .(number-to-string.height)......
a460 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 3a 22 20 28 6d 61 70 63 6f 6e 63 61 ...................":".(mapconca
a480 74 20 27 69 64 65 6e 74 69 74 79 20 66 61 63 65 6c 69 73 74 20 22 3a 22 29 29 0a 20 20 20 20 20 t.'identity.facelist.":"))......
a4a0 20 20 20 20 20 20 20 20 20 20 20 28 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 ...........(highlight-indent-gui
a4c0 64 65 73 2d 2d 63 6f 6e 63 61 74 2d 62 69 74 6d 61 70 20 77 69 64 74 68 20 68 65 69 67 68 74 20 des--concat-bitmap.width.height.
a4e0 66 61 63 65 6c 69 73 74 29 29 29 0a 20 20 20 20 20 20 20 20 20 60 28 66 61 63 65 20 6e 69 6c 20 facelist)))..........`(face.nil.
a500 64 69 73 70 6c 61 79 20 2c 28 63 6f 70 79 2d 73 65 71 75 65 6e 63 65 20 73 68 6f 77 62 6d 70 29 display.,(copy-sequence.showbmp)
a520 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d ))))))..(defun.highlight-indent-
a540 67 75 69 64 65 73 2d 2d 63 6f 6e 63 61 74 2d 62 69 74 6d 61 70 20 28 77 69 64 74 68 20 68 65 69 guides--concat-bitmap.(width.hei
a560 67 68 74 20 66 61 63 65 6c 69 73 74 29 0a 20 20 22 42 75 69 6c 64 20 61 20 63 6f 6e 63 61 74 65 ght.facelist)..."Build.a.concate
a580 6e 61 74 65 64 20 50 42 4d 20 69 6d 61 67 65 20 62 61 73 65 64 20 6f 6e 20 46 41 43 45 4c 49 53 nated.PBM.image.based.on.FACELIS
a5a0 54 2e 0a 46 41 43 45 4c 49 53 54 20 72 65 70 72 65 73 65 6e 74 73 20 63 68 61 72 61 63 74 65 72 T..FACELIST.represents.character
a5c0 73 20 69 6e 20 74 68 65 20 67 75 69 64 65 20 62 6c 6f 63 6b 20 28 6e 69 6c 20 66 6f 72 20 6e 6f s.in.the.guide.block.(nil.for.no
a5e0 20 67 75 69 64 65 2c 20 61 6e 64 20 61 20 63 6f 6c 6f 72 0a 73 74 72 69 6e 67 20 66 6f 72 20 61 .guide,.and.a.color.string.for.a
a600 20 67 75 69 64 65 20 77 69 74 68 20 74 68 61 74 20 63 6f 6c 6f 72 29 2e 20 20 57 49 44 54 48 20 .guide.with.that.color)...WIDTH.
a620 61 6e 64 20 48 45 49 47 48 54 20 61 72 65 20 74 68 65 20 77 69 64 74 68 20 61 6e 64 20 68 65 69 and.HEIGHT.are.the.width.and.hei
a640 67 68 74 0a 6f 66 20 65 61 63 68 20 63 68 61 72 61 63 74 65 72 20 69 6e 20 74 68 65 20 62 6c 6f ght.of.each.character.in.the.blo
a660 63 6b 2e 22 0a 20 20 28 6c 65 74 20 28 28 72 65 73 20 28 6d 61 6b 65 2d 6c 69 73 74 20 68 65 69 ck."...(let.((res.(make-list.hei
a680 67 68 74 20 6e 69 6c 29 29 0a 20 20 20 20 20 20 20 20 6e 65 78 74 62 6d 70 29 0a 20 20 20 20 28 ght.nil)).........nextbmp).....(
a6a0 77 68 69 6c 65 20 66 61 63 65 6c 69 73 74 0a 20 20 20 20 20 20 28 69 66 20 28 6e 75 6c 6c 20 28 while.facelist.......(if.(null.(
a6c0 63 61 72 20 66 61 63 65 6c 69 73 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 car.facelist))...........(let.((
a6e0 7a 6c 65 6e 20 30 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 6c 65 20 28 61 6e 64 zlen.0)).............(while.(and
a700 20 66 61 63 65 6c 69 73 74 20 28 6e 75 6c 6c 20 28 63 61 72 20 66 61 63 65 6c 69 73 74 29 29 29 .facelist.(null.(car.facelist)))
a720 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 7a 6c 65 6e 20 28 2b 20 7a 6c 65 ...............(setq.zlen.(+.zle
a740 6e 20 77 69 64 74 68 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 66 61 n.width))...............(setq.fa
a760 63 65 6c 69 73 74 20 28 63 64 72 20 66 61 63 65 6c 69 73 74 29 29 29 0a 20 20 20 20 20 20 20 20 celist.(cdr.facelist))).........
a780 20 20 20 20 28 64 6f 74 69 6d 65 73 20 28 69 20 68 65 69 67 68 74 29 0a 20 20 20 20 20 20 20 20 ....(dotimes.(i.height).........
a7a0 20 20 20 20 20 20 28 73 65 74 63 61 72 20 28 6e 74 68 63 64 72 20 69 20 72 65 73 29 20 28 61 70 ......(setcar.(nthcdr.i.res).(ap
a7c0 70 65 6e 64 20 28 6e 74 68 20 69 20 72 65 73 29 20 28 6d 61 6b 65 2d 6c 69 73 74 20 7a 6c 65 6e pend.(nth.i.res).(make-list.zlen
a7e0 20 22 20 36 35 35 33 35 20 30 20 36 35 35 33 35 22 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 28 .".65535.0.65535"))))).........(
a800 73 65 74 71 20 6e 65 78 74 62 6d 70 20 28 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 setq.nextbmp.(highlight-indent-g
a820 75 69 64 65 73 2d 2d 62 75 69 6c 64 2d 62 69 74 6d 61 70 20 77 69 64 74 68 20 68 65 69 67 68 74 uides--build-bitmap.width.height
a840 20 28 63 61 72 20 66 61 63 65 6c 69 73 74 29 29 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 71 20 .(car.facelist))).........(setq.
a860 66 61 63 65 6c 69 73 74 20 28 63 64 72 20 66 61 63 65 6c 69 73 74 29 29 0a 20 20 20 20 20 20 20 facelist.(cdr.facelist))........
a880 20 28 64 6f 74 69 6d 65 73 20 28 69 20 68 65 69 67 68 74 29 0a 20 20 20 20 20 20 20 20 20 20 28 .(dotimes.(i.height)...........(
a8a0 73 65 74 63 61 72 20 28 6e 74 68 63 64 72 20 69 20 72 65 73 29 20 28 61 70 70 65 6e 64 20 28 6e setcar.(nthcdr.i.res).(append.(n
a8c0 74 68 20 69 20 72 65 73 29 20 28 6e 74 68 20 69 20 6e 65 78 74 62 6d 70 29 29 29 29 29 29 0a 20 th.i.res).(nth.i.nextbmp))))))..
a8e0 20 20 20 28 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 64 72 61 ...(highlight-indent-guides--dra
a900 77 2d 62 69 74 6d 61 70 20 72 65 73 29 29 29 0a 0a 28 64 65 66 75 6e 20 68 69 67 68 6c 69 67 68 w-bitmap.res)))..(defun.highligh
a920 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 64 72 61 77 2d 62 69 74 6d 61 70 20 28 6c 69 t-indent-guides--draw-bitmap.(li
a940 6e 65 73 29 0a 20 20 22 55 73 69 6e 67 20 70 69 78 65 6c 20 64 61 74 61 20 4c 49 4e 45 53 2c 20 nes)..."Using.pixel.data.LINES,.
a960 62 75 69 6c 64 20 61 20 50 42 4d 20 69 6d 61 67 65 2e 22 0a 20 20 28 6c 65 74 2a 20 28 28 77 69 build.a.PBM.image."...(let*.((wi
a980 64 74 68 20 28 6c 65 6e 67 74 68 20 28 63 61 72 20 6c 69 6e 65 73 29 29 29 0a 20 20 20 20 20 20 dth.(length.(car.lines))).......
a9a0 20 20 20 28 68 65 69 67 68 74 20 28 6c 65 6e 67 74 68 20 6c 69 6e 65 73 29 29 0a 20 20 20 20 20 ...(height.(length.lines))......
a9c0 20 20 20 20 28 64 61 74 61 20 28 63 6f 6e 63 61 74 20 22 50 33 20 22 20 28 6e 75 6d 62 65 72 2d ....(data.(concat."P3.".(number-
a9e0 74 6f 2d 73 74 72 69 6e 67 20 77 69 64 74 68 29 20 22 20 22 20 28 6e 75 6d 62 65 72 2d 74 6f 2d to-string.width).".".(number-to-
aa00 73 74 72 69 6e 67 20 68 65 69 67 68 74 29 20 22 20 36 35 35 33 35 22 29 29 29 0a 20 20 20 20 28 string.height).".65535"))).....(
aa20 64 6f 6c 69 73 74 20 28 6c 69 6e 65 20 6c 69 6e 65 73 29 20 28 73 65 74 71 20 64 61 74 61 20 28 dolist.(line.lines).(setq.data.(
aa40 63 6f 6e 63 61 74 20 64 61 74 61 20 28 61 70 70 6c 79 20 27 63 6f 6e 63 61 74 20 6c 69 6e 65 29 concat.data.(apply.'concat.line)
aa60 29 29 29 0a 20 20 20 20 60 28 69 6d 61 67 65 20 3a 74 79 70 65 20 70 62 6d 20 3a 64 61 74 61 20 ))).....`(image.:type.pbm.:data.
aa80 2c 64 61 74 61 20 3a 6d 61 73 6b 20 68 65 75 72 69 73 74 69 63 20 3a 61 73 63 65 6e 74 20 63 65 ,data.:mask.heuristic.:ascent.ce
aaa0 6e 74 65 72 29 29 29 0a 0a 28 64 65 66 75 6e 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 nter)))..(defun.highlight-indent
aac0 2d 67 75 69 64 65 73 2d 2d 62 75 69 6c 64 2d 62 69 74 6d 61 70 20 28 77 69 64 74 68 20 68 65 69 -guides--build-bitmap.(width.hei
aae0 67 68 74 20 66 61 63 65 29 0a 20 20 22 42 75 69 6c 64 20 61 20 50 42 4d 20 69 6d 61 67 65 20 73 ght.face)..."Build.a.PBM.image.s
ab00 74 72 69 6e 67 2e 0a 54 68 65 20 69 6d 61 67 65 20 69 73 20 6f 66 20 64 69 6d 65 6e 73 69 6f 6e tring..The.image.is.of.dimension
ab20 73 20 57 49 44 54 48 20 61 6e 64 20 48 45 49 47 48 54 2c 20 61 6e 64 20 63 6f 6c 6f 72 20 46 41 s.WIDTH.and.HEIGHT,.and.color.FA
ab40 43 45 2c 20 61 6e 64 20 67 65 6e 65 72 61 74 65 64 20 62 79 0a 60 68 69 67 68 6c 69 67 68 74 2d CE,.and.generated.by.`highlight-
ab60 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 62 69 74 6d 61 70 2d 66 75 6e 63 74 69 6f 6e 27 2e 22 indent-guides-bitmap-function'."
ab80 0a 20 20 28 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 6d 65 6d ...(highlight-indent-guides--mem
aba0 6f 69 7a 65 2d 62 69 74 6d 61 70 0a 20 20 20 28 63 6f 6e 63 61 74 20 28 6e 75 6d 62 65 72 2d 74 oize-bitmap....(concat.(number-t
abc0 6f 2d 73 74 72 69 6e 67 20 77 69 64 74 68 29 20 22 3a 22 20 28 6e 75 6d 62 65 72 2d 74 6f 2d 73 o-string.width).":".(number-to-s
abe0 74 72 69 6e 67 20 68 65 69 67 68 74 29 20 22 3a 22 20 66 61 63 65 29 0a 20 20 20 28 66 75 6e 63 tring.height).":".face)....(func
ac00 61 6c 6c 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 62 69 74 6d all.highlight-indent-guides-bitm
ac20 61 70 2d 66 75 6e 63 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 77 69 64 74 68 20 68 65 ap-function.............width.he
ac40 69 67 68 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 ight.............(highlight-inde
ac60 6e 74 2d 67 75 69 64 65 73 2d 2d 70 62 6d 2d 63 6f 6c 6f 72 20 66 61 63 65 29 20 22 20 36 35 35 nt-guides--pbm-color.face).".655
ac80 33 35 20 30 20 36 35 35 33 35 22 29 29 29 0a 0a 28 64 65 66 75 6e 20 68 69 67 68 6c 69 67 68 74 35.0.65535")))..(defun.highlight
aca0 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 70 62 6d 2d 63 6f 6c 6f 72 20 28 63 6f 6c 6f 72 -indent-guides--pbm-color.(color
acc0 29 0a 20 20 22 43 72 65 61 74 65 20 61 20 50 42 4d 20 63 6f 6c 6f 72 20 73 74 72 69 6e 67 20 66 )..."Create.a.PBM.color.string.f
ace0 72 6f 6d 20 74 68 65 20 45 6d 61 63 73 20 63 6f 6c 6f 72 20 73 74 72 69 6e 67 20 43 4f 4c 4f 52 rom.the.Emacs.color.string.COLOR
ad00 2e 22 0a 20 20 28 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 6d ."...(highlight-indent-guides--m
ad20 65 6d 6f 69 7a 65 2d 62 69 74 6d 61 70 0a 20 20 20 63 6f 6c 6f 72 0a 20 20 20 28 6c 65 74 2a 20 emoize-bitmap....color....(let*.
ad40 28 28 72 67 62 20 28 63 6f 6c 6f 72 2d 6e 61 6d 65 2d 74 6f 2d 72 67 62 20 63 6f 6c 6f 72 29 29 ((rgb.(color-name-to-rgb.color))
ad60 0a 20 20 20 20 20 20 20 20 20 20 28 72 20 28 6e 75 6d 62 65 72 2d 74 6f 2d 73 74 72 69 6e 67 20 ...........(r.(number-to-string.
ad80 28 66 6c 6f 6f 72 20 28 2a 20 36 35 35 33 36 20 28 63 61 72 20 72 67 62 29 29 29 29 29 0a 20 20 (floor.(*.65536.(car.rgb)))))...
ada0 20 20 20 20 20 20 20 20 28 67 20 28 6e 75 6d 62 65 72 2d 74 6f 2d 73 74 72 69 6e 67 20 28 66 6c ........(g.(number-to-string.(fl
adc0 6f 6f 72 20 28 2a 20 36 35 35 33 36 20 28 6e 74 68 20 31 20 72 67 62 29 29 29 29 29 0a 20 20 20 oor.(*.65536.(nth.1.rgb)))))....
ade0 20 20 20 20 20 20 20 28 62 20 28 6e 75 6d 62 65 72 2d 74 6f 2d 73 74 72 69 6e 67 20 28 66 6c 6f .......(b.(number-to-string.(flo
ae00 6f 72 20 28 2a 20 36 35 35 33 36 20 28 6e 74 68 20 32 20 72 67 62 29 29 29 29 29 29 0a 20 20 20 or.(*.65536.(nth.2.rgb))))))....
ae20 20 20 28 63 6f 6e 63 61 74 20 22 20 22 20 72 20 22 20 22 20 67 20 22 20 22 20 62 29 29 29 29 0a ..(concat.".".r.".".g.".".b)))).
ae40 0a 28 64 65 66 75 6e 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d .(defun.highlight-indent-guides-
ae60 2d 62 69 74 6d 61 70 2d 6c 69 6e 65 20 28 77 69 64 74 68 20 68 65 69 67 68 74 20 63 72 65 70 20 -bitmap-line.(width.height.crep.
ae80 7a 72 65 70 29 0a 20 20 22 44 65 66 69 6e 65 20 61 20 73 6f 6c 69 64 20 67 75 69 64 65 20 6c 69 zrep)..."Define.a.solid.guide.li
aea0 6e 65 2c 20 74 77 6f 20 70 69 78 65 6c 73 20 77 69 64 65 2e 0a 55 73 65 20 57 49 44 54 48 2c 20 ne,.two.pixels.wide..Use.WIDTH,.
aec0 48 45 49 47 48 54 2c 20 43 52 45 50 2c 20 61 6e 64 20 5a 52 45 50 20 61 73 20 64 65 73 63 72 69 HEIGHT,.CREP,.and.ZREP.as.descri
aee0 62 65 64 20 69 6e 0a 60 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d bed.in.`highlight-indent-guides-
af00 62 69 74 6d 61 70 2d 66 75 6e 63 74 69 6f 6e 27 2e 22 0a 20 20 28 6c 65 74 2a 20 28 28 6c 65 66 bitmap-function'."...(let*.((lef
af20 74 20 28 2f 20 28 2d 20 77 69 64 74 68 20 32 29 20 32 29 29 0a 20 20 20 20 20 20 20 20 20 28 72 t.(/.(-.width.2).2))..........(r
af40 69 67 68 74 20 28 2d 20 77 69 64 74 68 20 6c 65 66 74 20 32 29 29 0a 20 20 20 20 20 20 20 20 20 ight.(-.width.left.2))..........
af60 28 72 6f 77 20 28 61 70 70 65 6e 64 20 28 6d 61 6b 65 2d 6c 69 73 74 20 6c 65 66 74 20 7a 72 65 (row.(append.(make-list.left.zre
af80 70 29 20 28 6d 61 6b 65 2d 6c 69 73 74 20 32 20 63 72 65 70 29 20 28 6d 61 6b 65 2d 6c 69 73 74 p).(make-list.2.crep).(make-list
afa0 20 72 69 67 68 74 20 7a 72 65 70 29 29 29 0a 20 20 20 20 20 20 20 20 20 72 6f 77 73 29 0a 20 20 .right.zrep)))..........rows)...
afc0 20 20 28 64 6f 74 69 6d 65 73 20 28 5f 20 68 65 69 67 68 74 20 72 6f 77 73 29 0a 20 20 20 20 20 ..(dotimes.(_.height.rows)......
afe0 20 28 73 65 74 71 20 72 6f 77 73 20 28 63 6f 6e 73 20 72 6f 77 20 72 6f 77 73 29 29 29 29 29 0a .(setq.rows.(cons.row.rows))))).
b000 0a 28 64 65 66 75 6e 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d .(defun.highlight-indent-guides-
b020 2d 62 69 74 6d 61 70 2d 64 6f 74 73 20 28 77 69 64 74 68 20 68 65 69 67 68 74 20 63 72 65 70 20 -bitmap-dots.(width.height.crep.
b040 7a 72 65 70 29 0a 20 20 22 44 65 66 69 6e 65 20 61 20 64 6f 74 74 65 64 20 67 75 69 64 65 20 6c zrep)..."Define.a.dotted.guide.l
b060 69 6e 65 2c 20 77 69 74 68 20 32 78 32 20 70 69 78 65 6c 20 64 6f 74 73 2c 20 61 6e 64 20 33 20 ine,.with.2x2.pixel.dots,.and.3.
b080 6f 72 20 34 20 64 6f 74 73 20 70 65 72 20 72 6f 77 2e 0a 55 73 65 20 57 49 44 54 48 2c 20 48 45 or.4.dots.per.row..Use.WIDTH,.HE
b0a0 49 47 48 54 2c 20 43 52 45 50 2c 20 61 6e 64 20 5a 52 45 50 20 61 73 20 64 65 73 63 72 69 62 65 IGHT,.CREP,.and.ZREP.as.describe
b0c0 64 20 69 6e 0a 60 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 62 69 d.in.`highlight-indent-guides-bi
b0e0 74 6d 61 70 2d 66 75 6e 63 74 69 6f 6e 27 2e 22 0a 20 20 28 6c 65 74 2a 20 28 28 6c 65 66 74 20 tmap-function'."...(let*.((left.
b100 28 2f 20 28 2d 20 77 69 64 74 68 20 32 29 20 32 29 29 0a 20 20 20 20 20 20 20 20 20 28 72 69 67 (/.(-.width.2).2))..........(rig
b120 68 74 20 28 2d 20 77 69 64 74 68 20 6c 65 66 74 20 32 29 29 0a 20 20 20 20 20 20 20 20 20 28 73 ht.(-.width.left.2))..........(s
b140 70 61 63 65 33 20 28 2f 20 68 65 69 67 68 74 20 33 29 29 0a 20 20 20 20 20 20 20 20 20 28 73 70 pace3.(/.height.3))..........(sp
b160 61 63 65 33 31 20 28 2f 20 28 2d 20 73 70 61 63 65 33 20 32 29 20 32 29 29 0a 20 20 20 20 20 20 ace31.(/.(-.space3.2).2)).......
b180 20 20 20 28 73 70 61 63 65 34 20 28 2f 20 68 65 69 67 68 74 20 34 29 29 0a 20 20 20 20 20 20 20 ...(space4.(/.height.4))........
b1a0 20 20 28 73 70 61 63 65 34 31 20 28 2f 20 28 2d 20 73 70 61 63 65 34 20 32 29 20 32 29 29 0a 20 ..(space41.(/.(-.space4.2).2))..
b1c0 20 20 20 20 20 20 20 20 28 72 6f 77 31 20 28 61 70 70 65 6e 64 20 28 6d 61 6b 65 2d 6c 69 73 74 ........(row1.(append.(make-list
b1e0 20 6c 65 66 74 20 7a 72 65 70 29 20 28 6d 61 6b 65 2d 6c 69 73 74 20 32 20 63 72 65 70 29 20 28 .left.zrep).(make-list.2.crep).(
b200 6d 61 6b 65 2d 6c 69 73 74 20 72 69 67 68 74 20 7a 72 65 70 29 29 29 0a 20 20 20 20 20 20 20 20 make-list.right.zrep))).........
b220 20 28 72 6f 77 32 20 28 6d 61 6b 65 2d 6c 69 73 74 20 77 69 64 74 68 20 7a 72 65 70 29 29 0a 20 .(row2.(make-list.width.zrep))..
b240 20 20 20 20 20 20 20 20 73 70 61 63 65 20 73 70 61 63 65 31 20 72 6f 77 73 29 0a 20 20 20 20 28 ........space.space1.rows).....(
b260 69 66 20 28 3c 20 28 61 62 73 20 28 2d 20 73 70 61 63 65 34 20 73 70 61 63 65 34 31 20 73 70 61 if.(<.(abs.(-.space4.space41.spa
b280 63 65 34 31 29 29 20 28 61 62 73 20 28 2d 20 73 70 61 63 65 33 20 73 70 61 63 65 33 31 20 73 70 ce41)).(abs.(-.space3.space31.sp
b2a0 61 63 65 33 31 29 29 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 71 20 73 70 61 63 65 20 73 70 61 ace31))).........(setq.space.spa
b2c0 63 65 34 20 73 70 61 63 65 31 20 73 70 61 63 65 34 31 29 0a 20 20 20 20 20 20 28 73 65 74 71 20 ce4.space1.space41).......(setq.
b2e0 73 70 61 63 65 20 73 70 61 63 65 33 20 73 70 61 63 65 31 20 73 70 61 63 65 33 31 29 29 0a 20 20 space.space3.space1.space31))...
b300 20 20 28 64 6f 74 69 6d 65 73 20 28 69 20 68 65 69 67 68 74 20 72 6f 77 73 29 0a 20 20 20 20 20 ..(dotimes.(i.height.rows)......
b320 20 28 6c 65 74 20 28 28 78 20 28 6d 6f 64 20 28 2d 20 69 20 73 70 61 63 65 31 29 20 73 70 61 63 .(let.((x.(mod.(-.i.space1).spac
b340 65 29 29 29 0a 20 20 20 20 20 20 20 20 28 69 66 20 28 6f 72 20 28 65 71 20 78 20 30 29 20 28 65 e))).........(if.(or.(eq.x.0).(e
b360 71 20 78 20 31 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 72 6f 77 73 20 28 q.x.1)).............(setq.rows.(
b380 63 6f 6e 73 20 72 6f 77 31 20 72 6f 77 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 cons.row1.rows))...........(setq
b3a0 20 72 6f 77 73 20 28 63 6f 6e 73 20 72 6f 77 32 20 72 6f 77 73 29 29 29 29 29 29 29 0a 0a 28 64 .rows.(cons.row2.rows)))))))..(d
b3c0 65 66 75 6e 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 6f 76 efun.highlight-indent-guides--ov
b3e0 65 72 64 72 61 77 20 28 73 74 61 72 74 20 65 6e 64 29 0a 20 20 22 4f 76 65 72 64 72 61 77 20 74 erdraw.(start.end)..."Overdraw.t
b400 68 65 20 67 75 69 64 65 73 20 69 6e 20 74 68 65 20 72 65 67 69 6f 6e 20 66 72 6f 6d 20 53 54 41 he.guides.in.the.region.from.STA
b420 52 54 20 74 6f 20 45 4e 44 2e 0a 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 6c 69 6b 65 RT.to.END..This.function.is.like
b440 20 60 66 6f 6e 74 2d 6c 6f 63 6b 2d 66 6f 6e 74 69 66 79 2d 72 65 67 69 6f 6e 27 20 6f 72 20 60 .`font-lock-fontify-region'.or.`
b460 66 6f 6e 74 2d 6c 6f 63 6b 2d 65 6e 73 75 72 65 27 2c 20 65 78 63 65 70 74 0a 69 74 20 6f 6e 6c font-lock-ensure',.except.it.onl
b480 79 20 64 72 61 77 73 20 69 6e 64 65 6e 74 20 67 75 69 64 65 73 2e 20 20 54 68 69 73 20 66 75 6e y.draws.indent.guides...This.fun
b4a0 63 74 69 6f 6e 20 69 73 20 63 61 6c 6c 65 64 20 74 6f 20 75 70 64 61 74 65 20 74 68 65 20 64 69 ction.is.called.to.update.the.di
b4c0 73 70 6c 61 79 0a 77 68 65 6e 65 76 65 72 20 74 68 65 20 61 63 74 69 76 65 20 69 6e 64 65 6e 74 splay.whenever.the.active.indent
b4e0 20 6c 65 76 65 6c 20 63 68 61 6e 67 65 73 2c 20 61 73 20 6c 6f 6e 67 20 61 73 20 72 65 73 70 6f .level.changes,.as.long.as.respo
b500 6e 73 69 76 65 20 67 75 69 64 65 73 20 61 72 65 0a 65 6e 61 62 6c 65 64 2e 20 20 54 68 69 73 20 nsive.guides.are.enabled...This.
b520 66 75 6e 63 74 69 6f 6e 20 69 73 20 75 73 65 64 20 62 65 63 61 75 73 65 20 69 74 20 61 76 6f 69 function.is.used.because.it.avoi
b540 64 73 20 64 6f 69 6e 67 20 65 78 74 72 61 20 77 6f 72 6b 20 6c 69 6b 65 20 63 6c 65 61 72 69 6e ds.doing.extra.work.like.clearin
b560 67 0a 65 78 69 73 74 69 6e 67 20 66 6f 6e 74 69 66 69 63 61 74 69 6f 6e 2c 20 72 65 64 72 61 77 g.existing.fontification,.redraw
b580 69 6e 67 20 73 79 6e 74 61 78 20 61 6e 64 20 6f 74 68 65 72 20 6b 65 79 77 6f 72 64 73 2c 20 6f ing.syntax.and.other.keywords,.o
b5a0 72 20 63 61 6c 6c 69 6e 67 20 6a 69 74 2d 6c 6f 63 6b 0a 72 65 63 75 72 73 69 76 65 6c 79 2e 22 r.calling.jit-lock.recursively."
b5c0 0a 20 20 28 77 69 74 68 2d 73 69 6c 65 6e 74 2d 6d 6f 64 69 66 69 63 61 74 69 6f 6e 73 0a 20 20 ...(with-silent-modifications...
b5e0 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 73 61 76 65 2d 72 65 ..(save-excursion.......(save-re
b600 73 74 72 69 63 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 6d 61 74 63 68 65 72 striction.........(let.((matcher
b620 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 63 61 73 65 20 68 69 67 68 6c 69 67 68 74 ................(pcase.highlight
b640 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 6d 65 74 68 6f 64 0a 20 20 20 20 20 20 20 20 20 20 -indent-guides-method...........
b660 20 20 20 20 20 20 20 28 60 66 69 6c 6c 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d .......(`fill.'highlight-indent-
b680 67 75 69 64 65 73 2d 2d 66 69 6c 6c 2d 6b 65 79 77 6f 72 64 2d 6d 61 74 63 68 65 72 29 0a 20 20 guides--fill-keyword-matcher)...
b6a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 60 63 6f 6c 75 6d 6e 20 27 68 69 67 68 6c 69 67 ...............(`column.'highlig
b6c0 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 63 6f 6c 75 6d 6e 2d 6b 65 79 77 6f 72 64 ht-indent-guides--column-keyword
b6e0 2d 6d 61 74 63 68 65 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 60 63 68 61 -matcher)..................(`cha
b700 72 61 63 74 65 72 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d racter.'highlight-indent-guides-
b720 2d 63 6f 6c 75 6d 6e 2d 6b 65 79 77 6f 72 64 2d 6d 61 74 63 68 65 72 29 0a 20 20 20 20 20 20 20 -column-keyword-matcher)........
b740 20 20 20 20 20 20 20 20 20 20 28 60 62 69 74 6d 61 70 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e ..........(`bitmap.'highlight-in
b760 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 63 6f 6c 75 6d 6e 2d 6b 65 79 77 6f 72 64 2d 6d 61 74 63 dent-guides--column-keyword-matc
b780 68 65 72 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 68 69 67 68 6c 69 67 68 74 0a her)))...............(highlight.
b7a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 63 61 73 65 20 68 69 67 68 6c 69 67 68 74 2d ...............(pcase.highlight-
b7c0 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 6d 65 74 68 6f 64 0a 20 20 20 20 20 20 20 20 20 20 20 indent-guides-method............
b7e0 20 20 20 20 20 20 28 60 66 69 6c 6c 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 ......(`fill.'highlight-indent-g
b800 75 69 64 65 73 2d 2d 66 69 6c 6c 2d 68 69 67 68 6c 69 67 68 74 65 72 29 0a 20 20 20 20 20 20 20 uides--fill-highlighter)........
b820 20 20 20 20 20 20 20 20 20 20 28 60 63 6f 6c 75 6d 6e 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e ..........(`column.'highlight-in
b840 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 63 6f 6c 75 6d 6e 2d 68 69 67 68 6c 69 67 68 74 65 72 29 dent-guides--column-highlighter)
b860 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 60 63 68 61 72 61 63 74 65 72 20 27 68 ..................(`character.'h
b880 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 63 68 61 72 61 63 74 65 ighlight-indent-guides--characte
b8a0 72 2d 68 69 67 68 6c 69 67 68 74 65 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 r-highlighter)..................
b8c0 28 60 62 69 74 6d 61 70 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 (`bitmap.'highlight-indent-guide
b8e0 73 2d 2d 62 69 74 6d 61 70 2d 68 69 67 68 6c 69 67 68 74 65 72 29 29 29 29 0a 20 20 20 20 20 20 s--bitmap-highlighter)))).......
b900 20 20 20 20 28 75 6e 6c 65 73 73 20 66 6f 6e 74 2d 6c 6f 63 6b 2d 64 6f 6e 74 2d 77 69 64 65 6e ....(unless.font-lock-dont-widen
b920 20 28 77 69 64 65 6e 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 73 .(widen))...........(goto-char.s
b940 74 61 72 74 29 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 28 tart)...........(while.(and.(<.(
b960 70 6f 69 6e 74 29 20 65 6e 64 29 20 28 66 75 6e 63 61 6c 6c 20 6d 61 74 63 68 65 72 20 65 6e 64 point).end).(funcall.matcher.end
b980 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 28 3e 20 28 70 6f 69 6e 74 )).............(unless.(>.(point
b9a0 29 20 28 6d 61 74 63 68 2d 62 65 67 69 6e 6e 69 6e 67 20 30 29 29 20 28 66 6f 72 77 61 72 64 2d ).(match-beginning.0)).(forward-
b9c0 63 68 61 72 20 31 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 66 6f 6e 74 2d 6c 6f 63 6b 2d char.1)).............(font-lock-
b9e0 61 70 70 6c 79 2d 68 69 67 68 6c 69 67 68 74 20 28 6c 69 73 74 20 30 20 28 6c 69 73 74 20 68 69 apply-highlight.(list.0.(list.hi
ba00 67 68 6c 69 67 68 74 29 20 74 29 29 29 29 29 29 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f ghlight).t))))))))..;;;###autolo
ba20 61 64 0a 28 64 65 66 75 6e 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 ad.(defun.highlight-indent-guide
ba40 73 2d 61 75 74 6f 2d 73 65 74 2d 66 61 63 65 73 20 28 26 72 65 73 74 20 5f 29 0a 20 20 22 41 75 s-auto-set-faces.(&rest._)..."Au
ba60 74 6f 6d 61 74 69 63 61 6c 6c 79 20 63 61 6c 63 75 6c 61 74 65 20 69 6e 64 65 6e 74 20 67 75 69 tomatically.calculate.indent.gui
ba80 64 65 20 66 61 63 65 73 2e 0a 49 66 20 74 68 69 73 20 66 65 61 74 75 72 65 20 69 73 20 65 6e 61 de.faces..If.this.feature.is.ena
baa0 62 6c 65 64 2c 20 63 61 6c 63 75 6c 61 74 65 20 72 65 61 73 6f 6e 61 62 6c 65 20 76 61 6c 75 65 bled,.calculate.reasonable.value
bac0 73 20 66 6f 72 20 74 68 65 20 69 6e 64 65 6e 74 20 67 75 69 64 65 0a 63 6f 6c 6f 72 73 20 62 61 s.for.the.indent.guide.colors.ba
bae0 73 65 64 20 6f 6e 20 74 68 65 20 63 75 72 72 65 6e 74 20 74 68 65 6d 65 27 73 20 63 6f 6c 6f 72 sed.on.the.current.theme's.color
bb00 73 63 68 65 6d 65 2c 20 61 6e 64 20 73 65 74 20 74 68 65 6d 20 61 70 70 72 6f 70 72 69 61 74 65 scheme,.and.set.them.appropriate
bb20 6c 79 2e 0a 54 68 69 73 20 72 75 6e 73 20 77 68 65 6e 65 76 65 72 20 61 20 74 68 65 6d 65 20 69 ly..This.runs.whenever.a.theme.i
bb40 73 20 6c 6f 61 64 65 64 2c 20 62 75 74 20 69 74 20 63 61 6e 20 61 6c 73 6f 20 62 65 20 72 75 6e s.loaded,.but.it.can.also.be.run
bb60 20 69 6e 74 65 72 61 63 74 69 76 65 6c 79 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 29 .interactively."...(interactive)
bb80 0a 20 20 28 77 68 65 6e 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 ...(when.highlight-indent-guides
bba0 2d 61 75 74 6f 2d 65 6e 61 62 6c 65 64 0a 20 20 20 20 28 6c 65 74 2a 20 28 28 62 6b 20 28 66 61 -auto-enabled.....(let*.((bk.(fa
bbc0 63 65 2d 62 61 63 6b 67 72 6f 75 6e 64 20 27 64 65 66 61 75 6c 74 20 6e 69 6c 20 27 64 65 66 61 ce-background.'default.nil.'defa
bbe0 75 6c 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 66 67 20 28 63 6f 6c 6f 72 2d 6e 61 6d 65 ult))............(fg.(color-name
bc00 2d 74 6f 2d 72 67 62 20 28 66 61 63 65 2d 66 6f 72 65 67 72 6f 75 6e 64 20 27 64 65 66 61 75 6c -to-rgb.(face-foreground.'defaul
bc20 74 20 6e 69 6c 20 27 64 65 66 61 75 6c 74 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 62 67 t.nil.'default)))............(bg
bc40 20 28 63 6f 6c 6f 72 2d 6e 61 6d 65 2d 74 6f 2d 72 67 62 20 62 6b 29 29 0a 20 20 20 20 20 20 20 .(color-name-to-rgb.bk))........
bc60 20 20 20 20 28 6f 64 64 66 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 ....(oddf.'highlight-indent-guid
bc80 65 73 2d 6f 64 64 2d 66 61 63 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 65 76 65 6e 66 20 27 es-odd-face)............(evenf.'
bca0 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 65 76 65 6e 2d 66 61 63 highlight-indent-guides-even-fac
bcc0 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 63 68 61 72 66 20 27 68 69 67 68 6c 69 67 68 74 2d e)............(charf.'highlight-
bce0 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 63 68 61 72 61 63 74 65 72 2d 66 61 63 65 29 0a 20 20 indent-guides-character-face)...
bd00 20 20 20 20 20 20 20 20 20 28 74 6f 64 64 66 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e .........(toddf.'highlight-inden
bd20 74 2d 67 75 69 64 65 73 2d 74 6f 70 2d 6f 64 64 2d 66 61 63 65 29 0a 20 20 20 20 20 20 20 20 20 t-guides-top-odd-face)..........
bd40 20 20 28 74 65 76 65 6e 66 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 ..(tevenf.'highlight-indent-guid
bd60 65 73 2d 74 6f 70 2d 65 76 65 6e 2d 66 61 63 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 74 63 es-top-even-face)............(tc
bd80 68 61 72 66 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 74 6f harf.'highlight-indent-guides-to
bda0 70 2d 63 68 61 72 61 63 74 65 72 2d 66 61 63 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 73 6f p-character-face)............(so
bdc0 64 64 66 20 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 73 74 61 ddf.'highlight-indent-guides-sta
bde0 63 6b 2d 6f 64 64 2d 66 61 63 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 73 65 76 65 6e 66 20 ck-odd-face)............(sevenf.
be00 27 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 73 74 61 63 6b 2d 65 'highlight-indent-guides-stack-e
be20 76 65 6e 2d 66 61 63 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 73 63 68 61 72 66 20 27 68 69 ven-face)............(scharf.'hi
be40 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 73 74 61 63 6b 2d 63 68 61 72 ghlight-indent-guides-stack-char
be60 61 63 74 65 72 2d 66 61 63 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 6f 64 64 70 20 68 69 67 acter-face)............(oddp.hig
be80 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 61 75 74 6f 2d 6f 64 64 2d 66 61 hlight-indent-guides-auto-odd-fa
bea0 63 65 2d 70 65 72 63 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 65 76 65 6e 70 20 68 69 67 68 6c ce-perc)............(evenp.highl
bec0 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 61 75 74 6f 2d 65 76 65 6e 2d 66 61 63 ight-indent-guides-auto-even-fac
bee0 65 2d 70 65 72 63 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 63 68 61 72 70 20 68 69 67 68 6c 69 e-perc)............(charp.highli
bf00 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 61 75 74 6f 2d 63 68 61 72 61 63 74 65 72 ght-indent-guides-auto-character
bf20 2d 66 61 63 65 2d 70 65 72 63 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 74 6f 64 64 70 20 68 69 -face-perc)............(toddp.hi
bf40 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 61 75 74 6f 2d 74 6f 70 2d 6f ghlight-indent-guides-auto-top-o
bf60 64 64 2d 66 61 63 65 2d 70 65 72 63 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 74 65 76 65 6e 70 dd-face-perc)............(tevenp
bf80 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 61 75 74 6f 2d 74 6f .highlight-indent-guides-auto-to
bfa0 70 2d 65 76 65 6e 2d 66 61 63 65 2d 70 65 72 63 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 74 63 p-even-face-perc)............(tc
bfc0 68 61 72 70 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 61 75 74 harp.highlight-indent-guides-aut
bfe0 6f 2d 74 6f 70 2d 63 68 61 72 61 63 74 65 72 2d 66 61 63 65 2d 70 65 72 63 29 0a 20 20 20 20 20 o-top-character-face-perc)......
c000 20 20 20 20 20 20 28 73 6f 64 64 70 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 ......(soddp.highlight-indent-gu
c020 69 64 65 73 2d 61 75 74 6f 2d 73 74 61 63 6b 2d 6f 64 64 2d 66 61 63 65 2d 70 65 72 63 29 0a 20 ides-auto-stack-odd-face-perc)..
c040 20 20 20 20 20 20 20 20 20 20 28 73 65 76 65 6e 70 20 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 ..........(sevenp.highlight-inde
c060 6e 74 2d 67 75 69 64 65 73 2d 61 75 74 6f 2d 73 74 61 63 6b 2d 65 76 65 6e 2d 66 61 63 65 2d 70 nt-guides-auto-stack-even-face-p
c080 65 72 63 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 73 63 68 61 72 70 20 68 69 67 68 6c 69 67 68 erc)............(scharp.highligh
c0a0 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 61 75 74 6f 2d 73 74 61 63 6b 2d 63 68 61 72 61 t-indent-guides-auto-stack-chara
c0c0 63 74 65 72 2d 66 61 63 65 2d 70 65 72 63 29 0a 20 20 20 20 20 20 20 20 20 20 20 6d 6f 64 20 66 cter-face-perc)............mod.f
c0e0 6c 20 62 6c 29 0a 20 20 20 20 20 20 28 69 66 20 28 6e 6f 74 20 28 61 6e 64 20 66 67 20 62 67 29 l.bl).......(if.(not.(and.fg.bg)
c100 29 0a 20 20 20 20 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 68 69 67 68 6c 69 67 68 74 2d 69 6e )...........(unless.highlight-in
c120 64 65 6e 74 2d 67 75 69 64 65 73 2d 73 75 70 70 72 65 73 73 2d 61 75 74 6f 2d 65 72 72 6f 72 0a dent-guides-suppress-auto-error.
c140 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 65 73 73 61 67 65 20 22 45 72 72 6f 72 3a 20 25 73 3a ............(message."Error:.%s:
c160 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 20 22 68 69 67 68 6c .%s"......................"highl
c180 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 20 63 61 6e 6e 6f 74 20 61 75 74 6f 20 73 ight-indent-guides.cannot.auto.s
c1a0 65 74 20 66 61 63 65 73 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 et.faces"......................"
c1c0 60 64 65 66 61 75 6c 74 27 20 66 61 63 65 20 69 73 20 6e 6f 74 20 73 65 74 20 70 72 6f 70 65 72 `default'.face.is.not.set.proper
c1e0 6c 79 22 29 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 71 20 66 6c 20 28 6e 74 68 20 32 20 28 61 ly")).........(setq.fl.(nth.2.(a
c200 70 70 6c 79 20 27 63 6f 6c 6f 72 2d 72 67 62 2d 74 6f 2d 68 73 6c 20 66 67 29 29 29 0a 20 20 20 pply.'color-rgb-to-hsl.fg)))....
c220 20 20 20 20 20 28 73 65 74 71 20 62 6c 20 28 6e 74 68 20 32 20 28 61 70 70 6c 79 20 27 63 6f 6c .....(setq.bl.(nth.2.(apply.'col
c240 6f 72 2d 72 67 62 2d 74 6f 2d 68 73 6c 20 62 67 29 29 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 or-rgb-to-hsl.bg))).........(set
c260 71 20 6d 6f 64 20 28 63 6f 6e 64 20 28 28 3c 20 66 6c 20 62 6c 29 20 2d 31 29 20 28 28 3e 20 66 q.mod.(cond.((<.fl.bl).-1).((>.f
c280 6c 20 62 6c 29 20 31 29 20 28 28 3c 20 30 2e 35 20 62 6c 29 20 2d 31 29 20 28 74 20 31 29 29 29 l.bl).1).((<.0.5.bl).-1).(t.1)))
c2a0 0a 20 20 20 20 20 20 20 20 28 73 65 74 2d 66 61 63 65 2d 62 61 63 6b 67 72 6f 75 6e 64 20 6f 64 .........(set-face-background.od
c2c0 64 66 20 28 63 6f 6c 6f 72 2d 6c 69 67 68 74 65 6e 2d 6e 61 6d 65 20 62 6b 20 28 2a 20 6d 6f 64 df.(color-lighten-name.bk.(*.mod
c2e0 20 6f 64 64 70 29 29 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 2d 66 61 63 65 2d 62 61 63 6b 67 .oddp))).........(set-face-backg
c300 72 6f 75 6e 64 20 65 76 65 6e 66 20 28 63 6f 6c 6f 72 2d 6c 69 67 68 74 65 6e 2d 6e 61 6d 65 20 round.evenf.(color-lighten-name.
c320 62 6b 20 28 2a 20 6d 6f 64 20 65 76 65 6e 70 29 29 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 2d bk.(*.mod.evenp))).........(set-
c340 66 61 63 65 2d 66 6f 72 65 67 72 6f 75 6e 64 20 63 68 61 72 66 20 28 63 6f 6c 6f 72 2d 6c 69 67 face-foreground.charf.(color-lig
c360 68 74 65 6e 2d 6e 61 6d 65 20 62 6b 20 28 2a 20 6d 6f 64 20 63 68 61 72 70 29 29 29 0a 20 20 20 hten-name.bk.(*.mod.charp)))....
c380 20 20 20 20 20 28 73 65 74 2d 66 61 63 65 2d 62 61 63 6b 67 72 6f 75 6e 64 20 74 6f 64 64 66 20 .....(set-face-background.toddf.
c3a0 28 63 6f 6c 6f 72 2d 6c 69 67 68 74 65 6e 2d 6e 61 6d 65 20 62 6b 20 28 2a 20 6d 6f 64 20 74 6f (color-lighten-name.bk.(*.mod.to
c3c0 64 64 70 29 29 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 2d 66 61 63 65 2d 62 61 63 6b 67 72 6f ddp))).........(set-face-backgro
c3e0 75 6e 64 20 74 65 76 65 6e 66 20 28 63 6f 6c 6f 72 2d 6c 69 67 68 74 65 6e 2d 6e 61 6d 65 20 62 und.tevenf.(color-lighten-name.b
c400 6b 20 28 2a 20 6d 6f 64 20 74 65 76 65 6e 70 29 29 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 2d k.(*.mod.tevenp))).........(set-
c420 66 61 63 65 2d 66 6f 72 65 67 72 6f 75 6e 64 20 74 63 68 61 72 66 20 28 63 6f 6c 6f 72 2d 6c 69 face-foreground.tcharf.(color-li
c440 67 68 74 65 6e 2d 6e 61 6d 65 20 62 6b 20 28 2a 20 6d 6f 64 20 74 63 68 61 72 70 29 29 29 0a 20 ghten-name.bk.(*.mod.tcharp)))..
c460 20 20 20 20 20 20 20 28 73 65 74 2d 66 61 63 65 2d 62 61 63 6b 67 72 6f 75 6e 64 20 73 6f 64 64 .......(set-face-background.sodd
c480 66 20 28 63 6f 6c 6f 72 2d 6c 69 67 68 74 65 6e 2d 6e 61 6d 65 20 62 6b 20 28 2a 20 6d 6f 64 20 f.(color-lighten-name.bk.(*.mod.
c4a0 73 6f 64 64 70 29 29 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 2d 66 61 63 65 2d 62 61 63 6b 67 soddp))).........(set-face-backg
c4c0 72 6f 75 6e 64 20 73 65 76 65 6e 66 20 28 63 6f 6c 6f 72 2d 6c 69 67 68 74 65 6e 2d 6e 61 6d 65 round.sevenf.(color-lighten-name
c4e0 20 62 6b 20 28 2a 20 6d 6f 64 20 73 65 76 65 6e 70 29 29 29 0a 20 20 20 20 20 20 20 20 28 73 65 .bk.(*.mod.sevenp))).........(se
c500 74 2d 66 61 63 65 2d 66 6f 72 65 67 72 6f 75 6e 64 20 73 63 68 61 72 66 20 28 63 6f 6c 6f 72 2d t-face-foreground.scharf.(color-
c520 6c 69 67 68 74 65 6e 2d 6e 61 6d 65 20 62 6b 20 28 2a 20 6d 6f 64 20 73 63 68 61 72 70 29 29 29 lighten-name.bk.(*.mod.scharp)))
c540 29 29 29 29 0a 0a 3b 3b 20 41 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 63 61 6c 63 75 6c 61 74 65 ))))..;;.Automatically.calculate
c560 20 69 6e 64 65 6e 74 20 67 75 69 64 65 20 66 61 63 65 73 2e 0a 3b 3b 20 49 66 20 74 68 69 73 20 .indent.guide.faces..;;.If.this.
c580 66 65 61 74 75 72 65 20 69 73 20 65 6e 61 62 6c 65 64 2c 20 63 61 6c 63 75 6c 61 74 65 20 72 65 feature.is.enabled,.calculate.re
c5a0 61 73 6f 6e 61 62 6c 65 20 76 61 6c 75 65 73 20 66 6f 72 20 74 68 65 20 69 6e 64 65 6e 74 20 67 asonable.values.for.the.indent.g
c5c0 75 69 64 65 0a 3b 3b 20 63 6f 6c 6f 72 73 20 62 61 73 65 64 20 6f 6e 20 74 68 65 20 63 75 72 72 uide.;;.colors.based.on.the.curr
c5e0 65 6e 74 20 74 68 65 6d 65 27 73 20 63 6f 6c 6f 72 73 63 68 65 6d 65 2c 20 61 6e 64 20 73 65 74 ent.theme's.colorscheme,.and.set
c600 20 74 68 65 6d 20 61 70 70 72 6f 70 72 69 61 74 65 6c 79 2e 0a 3b 3b 20 54 68 69 73 20 72 75 6e .them.appropriately..;;.This.run
c620 73 20 77 68 65 6e 65 76 65 72 20 61 20 74 68 65 6d 65 20 69 73 20 6c 6f 61 64 65 64 2e 0a 28 61 s.whenever.a.theme.is.loaded..(a
c640 64 76 69 63 65 2d 61 64 64 20 27 6c 6f 61 64 2d 74 68 65 6d 65 20 3a 61 66 74 65 72 20 28 6c 61 dvice-add.'load-theme.:after.(la
c660 6d 62 64 61 20 28 26 72 65 73 74 20 5f 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 mbda.(&rest._)..................
c680 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e ................(highlight-inden
c6a0 74 2d 67 75 69 64 65 73 2d 61 75 74 6f 2d 73 65 74 2d 66 61 63 65 73 29 29 29 0a 3b 3b 20 41 75 t-guides-auto-set-faces))).;;.Au
c6c0 74 6f 6d 61 74 69 63 61 6c 6c 79 20 63 61 6c 63 75 6c 61 74 65 20 69 6e 64 65 6e 74 20 67 75 69 tomatically.calculate.indent.gui
c6e0 64 65 20 66 61 63 65 73 2e 0a 3b 3b 20 49 66 20 74 68 69 73 20 66 65 61 74 75 72 65 20 69 73 20 de.faces..;;.If.this.feature.is.
c700 65 6e 61 62 6c 65 64 2c 20 63 61 6c 63 75 6c 61 74 65 20 72 65 61 73 6f 6e 61 62 6c 65 20 76 61 enabled,.calculate.reasonable.va
c720 6c 75 65 73 20 66 6f 72 20 74 68 65 20 69 6e 64 65 6e 74 20 67 75 69 64 65 0a 3b 3b 20 63 6f 6c lues.for.the.indent.guide.;;.col
c740 6f 72 73 20 62 61 73 65 64 20 6f 6e 20 74 68 65 20 63 75 72 72 65 6e 74 20 74 68 65 6d 65 27 73 ors.based.on.the.current.theme's
c760 20 63 6f 6c 6f 72 73 63 68 65 6d 65 2c 20 61 6e 64 20 73 65 74 20 74 68 65 6d 20 61 70 70 72 6f .colorscheme,.and.set.them.appro
c780 70 72 69 61 74 65 6c 79 2e 0a 3b 3b 20 54 68 69 73 20 72 75 6e 73 20 77 68 65 6e 65 76 65 72 20 priately..;;.This.runs.whenever.
c7a0 61 20 74 68 65 6d 65 20 69 73 20 64 69 73 61 62 6c 65 64 2e 0a 28 61 64 76 69 63 65 2d 61 64 64 a.theme.is.disabled..(advice-add
c7c0 20 27 64 69 73 61 62 6c 65 2d 74 68 65 6d 65 20 3a 61 66 74 65 72 20 28 6c 61 6d 62 64 61 20 28 .'disable-theme.:after.(lambda.(
c7e0 26 72 65 73 74 20 5f 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 &rest._)........................
c800 20 20 20 20 20 20 20 20 20 20 20 20 20 28 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 .............(highlight-indent-g
c820 75 69 64 65 73 2d 61 75 74 6f 2d 73 65 74 2d 66 61 63 65 73 29 29 29 0a 0a 28 64 65 66 75 6e 20 uides-auto-set-faces)))..(defun.
c840 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 2d 61 75 74 6f 2d 73 65 highlight-indent-guides--auto-se
c860 74 2d 66 61 63 65 73 2d 77 69 74 68 2d 66 72 61 6d 65 20 28 66 72 61 6d 65 29 0a 20 20 22 52 75 t-faces-with-frame.(frame)..."Ru
c880 6e 20 60 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2d 61 75 74 6f 2d n.`highlight-indent-guides-auto-
c8a0 73 65 74 2d 66 61 63 65 73 27 20 69 6e 20 66 72 61 6d 65 20 46 52 41 4d 45 2e 0a 54 68 69 73 20 set-faces'.in.frame.FRAME..This.
c8c0 66 75 6e 63 74 69 6f 6e 20 69 73 20 64 65 73 69 67 6e 65 64 20 74 6f 20 72 75 6e 20 66 72 6f 6d function.is.designed.to.run.from
c8e0 20 74 68 65 20 60 61 66 74 65 72 2d 6d 61 6b 65 2d 66 72 61 6d 65 2d 66 75 6e 63 74 69 6f 6e 73 .the.`after-make-frame-functions
c900 27 20 68 6f 6f 6b 2e 22 0a 20 20 28 77 69 74 68 2d 73 65 6c 65 63 74 65 64 2d 66 72 61 6d 65 20 '.hook."...(with-selected-frame.
c920 66 72 61 6d 65 0a 20 20 20 20 28 68 69 67 68 6c 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 frame.....(highlight-indent-guid
c940 65 73 2d 61 75 74 6f 2d 73 65 74 2d 66 61 63 65 73 29 29 29 0a 0a 28 6d 61 6b 65 2d 76 61 72 69 es-auto-set-faces)))..(make-vari
c960 61 62 6c 65 2d 62 75 66 66 65 72 2d 6c 6f 63 61 6c 20 27 66 6f 6e 74 2d 6c 6f 63 6b 2d 65 78 74 able-buffer-local.'font-lock-ext
c980 72 61 2d 6d 61 6e 61 67 65 64 2d 70 72 6f 70 73 29 0a 28 6d 61 6b 65 2d 76 61 72 69 61 62 6c 65 ra-managed-props).(make-variable
c9a0 2d 62 75 66 66 65 72 2d 6c 6f 63 61 6c 20 27 74 65 78 74 2d 70 72 6f 70 65 72 74 79 2d 64 65 66 -buffer-local.'text-property-def
c9c0 61 75 6c 74 2d 6e 6f 6e 73 74 69 63 6b 79 29 0a 0a 28 70 72 6f 76 69 64 65 20 27 68 69 67 68 6c ault-nonsticky)..(provide.'highl
c9e0 69 67 68 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 29 0a 3b 3b 3b 20 68 69 67 68 6c 69 67 68 ight-indent-guides).;;;.highligh
ca00 74 2d 69 6e 64 65 6e 74 2d 67 75 69 64 65 73 2e 65 6c 20 65 6e 64 73 20 68 65 72 65 0a 00 00 00 t-indent-guides.el.ends.here....
ca20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ca40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ca60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ca80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
caa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cb00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cb20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cb40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cb60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cb80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cbc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cbe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cc00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cc20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cc40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cc60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cc80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ccc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cd00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cd20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cd40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cd60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cd80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cda0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cdc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cde0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ce00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ce20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ce40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ce60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ce80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cf00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cf20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cf40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cf60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cf80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cfa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cfc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
cfe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d080 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d0a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d0c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d0e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d100 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d1a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d1c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d1e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d200 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d260 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d280 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d2a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d2c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d2e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d300 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d320 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d3a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d3c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d3e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d400 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d460 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d4a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d4c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d4e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d500 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d520 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d5a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d5c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d5e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d600 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d620 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d660 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d680 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d6a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d6c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d6e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d700 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d720 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d7a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d7c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d7e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d800 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d820 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d860 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d880 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d8a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d8c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d8e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d9a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d9c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
d9e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
da00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
da20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
da40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
da60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
da80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
daa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
dac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
dae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
db00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
db20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
db40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
db60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
db80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
dba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
dbc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
dbe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
dc00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
dc20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
dc40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
dc60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
dc80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
dca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
dcc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
dce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
dd00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
dd20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
dd40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
dd60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
dd80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
dda0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ddc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
dde0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
de00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
de20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
de40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
de60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
de80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
dea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
dec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
dee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
df00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
df20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
df40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
df60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
df80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
dfa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
dfc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
dfe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e080 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e0a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e0c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e0e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e100 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e1a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e1c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e1e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e200 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e260 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e280 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e2a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e2c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e2e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e300 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e320 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e3a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e3c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e3e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e400 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e460 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e4a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e4c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e4e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e500 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e520 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e5a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e5c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e5e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e600 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e620 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e660 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e680 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e6a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e6c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e6e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e700 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e720 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e7a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e7c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e7e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e800 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e820 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e860 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e880 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e8a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e8c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e8e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e9a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e9c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
e9e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ea00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ea20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ea40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ea60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ea80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
eaa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
eac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
eae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
eb00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
eb20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
eb40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
eb60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
eb80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
eba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ebc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ebe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ec00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ec20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ec40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ec60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ec80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
eca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ecc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ece0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ed00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ed20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ed40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ed60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ed80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
eda0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
edc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ede0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ee00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ee20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ee40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ee60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ee80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
eea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
eec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
eee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ef00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ef20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ef40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ef60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
ef80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
efa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
efc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
efe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................