summaryrefslogtreecommitdiff
path: root/localrepo/alert-20221213.1619.tar
blob: 87c613b67e366587aa5735d2184808aa46341c85 (plain)
ofshex dumpascii
0000 61 6c 65 72 74 2d 32 30 32 32 31 32 31 33 2e 31 36 31 39 2f 00 00 00 00 00 00 00 00 00 00 00 00 alert-20221213.1619/............
0020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0060 00 00 00 00 30 30 30 30 37 35 35 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000755.0000000.0000000.0000
0080 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 32 31 31 35 00 20 35 00 00 00 0000000.00000000000.012115..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 61 6c 65 72 74 2d 32 30 32 32 31 32 31 33 2e 31 36 31 39 2f 61 6c 65 72 74 2e 65 6c 00 00 00 00 alert-20221213.1619/alert.el....
0220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0260 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
0280 30 31 34 30 31 36 30 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 33 35 35 30 00 20 30 00 00 00 0140160.00000000000.013550..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 3b 20 61 6c 65 72 74 2e 65 6c 20 2d 2d 2d 20 47 72 6f 77 6c 2d 73 74 79 6c 65 20 6e 6f 74 ;;;.alert.el.---.Growl-style.not
0420 69 66 69 63 61 74 69 6f 6e 20 73 79 73 74 65 6d 20 66 6f 72 20 45 6d 61 63 73 20 20 2d 2a 2d 20 ification.system.for.Emacs..-*-.
0440 6c 65 78 69 63 61 6c 2d 62 69 6e 64 69 6e 67 3a 20 74 3b 20 2d 2a 2d 0a 0a 3b 3b 20 43 6f 70 79 lexical-binding:.t;.-*-..;;.Copy
0460 72 69 67 68 74 20 28 43 29 20 32 30 31 31 2d 32 30 31 33 20 4a 6f 68 6e 20 57 69 65 67 6c 65 79 right.(C).2011-2013.John.Wiegley
0480 0a 0a 3b 3b 20 41 75 74 68 6f 72 3a 20 4a 6f 68 6e 20 57 69 65 67 6c 65 79 20 3c 6a 77 69 65 67 ..;;.Author:.John.Wiegley.<jwieg
04a0 6c 65 79 40 67 6d 61 69 6c 2e 63 6f 6d 3e 0a 3b 3b 20 43 72 65 61 74 65 64 3a 20 32 34 20 41 75 ley@gmail.com>.;;.Created:.24.Au
04c0 67 20 32 30 31 31 0a 3b 3b 20 55 70 64 61 74 65 64 3a 20 31 36 20 4d 61 72 20 32 30 31 35 0a 3b g.2011.;;.Updated:.16.Mar.2015.;
04e0 3b 20 56 65 72 73 69 6f 6e 3a 20 31 2e 32 0a 3b 3b 20 50 61 63 6b 61 67 65 2d 52 65 71 75 69 72 ;.Version:.1.2.;;.Package-Requir
0500 65 73 3a 20 28 28 67 6e 74 70 20 22 30 2e 31 22 29 20 28 6c 6f 67 34 65 20 22 30 2e 33 2e 30 22 es:.((gntp."0.1").(log4e."0.3.0"
0520 29 20 28 63 6c 2d 6c 69 62 20 22 30 2e 35 22 29 29 0a 3b 3b 20 4b 65 79 77 6f 72 64 73 3a 20 6e ).(cl-lib."0.5")).;;.Keywords:.n
0540 6f 74 69 66 69 63 61 74 69 6f 6e 20 65 6d 61 63 73 20 6d 65 73 73 61 67 65 0a 3b 3b 20 58 2d 55 otification.emacs.message.;;.X-U
0560 52 4c 3a 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 6a 77 69 65 67 6c 65 79 2f RL:.https://github.com/jwiegley/
0580 61 6c 65 72 74 0a 0a 3b 3b 20 54 68 69 73 20 70 72 6f 67 72 61 6d 20 69 73 20 66 72 65 65 20 73 alert..;;.This.program.is.free.s
05a0 6f 66 74 77 61 72 65 3b 20 79 6f 75 20 63 61 6e 20 72 65 64 69 73 74 72 69 62 75 74 65 20 69 74 oftware;.you.can.redistribute.it
05c0 20 61 6e 64 2f 6f 72 0a 3b 3b 20 6d 6f 64 69 66 79 20 69 74 20 75 6e 64 65 72 20 74 68 65 20 74 .and/or.;;.modify.it.under.the.t
05e0 65 72 6d 73 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c erms.of.the.GNU.General.Public.L
0600 69 63 65 6e 73 65 20 61 73 0a 3b 3b 20 70 75 62 6c 69 73 68 65 64 20 62 79 20 74 68 65 20 46 72 icense.as.;;.published.by.the.Fr
0620 65 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 3b 20 65 69 74 68 65 72 20 76 ee.Software.Foundation;.either.v
0640 65 72 73 69 6f 6e 20 32 2c 20 6f 72 20 28 61 74 0a 3b 3b 20 79 6f 75 72 20 6f 70 74 69 6f 6e 29 ersion.2,.or.(at.;;.your.option)
0660 20 61 6e 79 20 6c 61 74 65 72 20 76 65 72 73 69 6f 6e 2e 0a 0a 3b 3b 20 54 68 69 73 20 70 72 6f .any.later.version...;;.This.pro
0680 67 72 61 6d 20 69 73 20 64 69 73 74 72 69 62 75 74 65 64 20 69 6e 20 74 68 65 20 68 6f 70 65 20 gram.is.distributed.in.the.hope.
06a0 74 68 61 74 20 69 74 20 77 69 6c 6c 20 62 65 20 75 73 65 66 75 6c 2c 20 62 75 74 0a 3b 3b 20 57 that.it.will.be.useful,.but.;;.W
06c0 49 54 48 4f 55 54 20 41 4e 59 20 57 41 52 52 41 4e 54 59 3b 20 77 69 74 68 6f 75 74 20 65 76 65 ITHOUT.ANY.WARRANTY;.without.eve
06e0 6e 20 74 68 65 20 69 6d 70 6c 69 65 64 20 77 61 72 72 61 6e 74 79 20 6f 66 0a 3b 3b 20 4d 45 52 n.the.implied.warranty.of.;;.MER
0700 43 48 41 4e 54 41 42 49 4c 49 54 59 20 6f 72 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41 CHANTABILITY.or.FITNESS.FOR.A.PA
0720 52 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 2e 20 20 53 65 65 20 74 68 65 20 47 4e 55 0a 3b RTICULAR.PURPOSE...See.the.GNU.;
0740 3b 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 6d 6f 72 ;.General.Public.License.for.mor
0760 65 20 64 65 74 61 69 6c 73 2e 0a 0a 3b 3b 20 59 6f 75 20 73 68 6f 75 6c 64 20 68 61 76 65 20 72 e.details...;;.You.should.have.r
0780 65 63 65 69 76 65 64 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 eceived.a.copy.of.the.GNU.Genera
07a0 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 0a 3b 3b 20 61 6c 6f 6e 67 20 77 69 74 68 20 47 l.Public.License.;;.along.with.G
07c0 4e 55 20 45 6d 61 63 73 3b 20 73 65 65 20 74 68 65 20 66 69 6c 65 20 43 4f 50 59 49 4e 47 2e 20 NU.Emacs;.see.the.file.COPYING..
07e0 20 49 66 20 6e 6f 74 2c 20 77 72 69 74 65 20 74 6f 20 74 68 65 0a 3b 3b 20 46 72 65 65 20 53 6f .If.not,.write.to.the.;;.Free.So
0800 66 74 77 61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 2c 20 49 6e 63 2e 2c 20 35 39 20 54 65 6d 70 ftware.Foundation,.Inc.,.59.Temp
0820 6c 65 20 50 6c 61 63 65 20 2d 20 53 75 69 74 65 20 33 33 30 2c 0a 3b 3b 20 42 6f 73 74 6f 6e 2c le.Place.-.Suite.330,.;;.Boston,
0840 20 4d 41 20 30 32 31 31 31 2d 31 33 30 37 2c 20 55 53 41 2e 0a 0c 0a 3b 3b 3b 20 43 6f 6d 6d 65 .MA.02111-1307,.USA....;;;.Comme
0860 6e 74 61 72 79 3a 0a 0a 3b 3b 20 41 6c 65 72 74 20 69 73 20 61 20 47 72 6f 77 6c 2d 77 6f 72 6b ntary:..;;.Alert.is.a.Growl-work
0880 61 6c 69 6b 65 20 66 6f 72 20 45 6d 61 63 73 20 77 68 69 63 68 20 75 73 65 73 20 61 20 63 6f 6d alike.for.Emacs.which.uses.a.com
08a0 6d 6f 6e 20 6e 6f 74 69 66 69 63 61 74 69 6f 6e 0a 3b 3b 20 69 6e 74 65 72 66 61 63 65 20 61 6e mon.notification.;;.interface.an
08c0 64 20 6d 75 6c 74 69 70 6c 65 2c 20 73 65 6c 65 63 74 61 62 6c 65 20 22 73 74 79 6c 65 73 22 2c d.multiple,.selectable."styles",
08e0 20 77 68 6f 73 65 20 75 73 65 20 69 73 20 66 75 6c 6c 79 0a 3b 3b 20 63 75 73 74 6f 6d 69 7a 61 .whose.use.is.fully.;;.customiza
0900 62 6c 65 20 62 79 20 74 68 65 20 75 73 65 72 2e 0a 3b 3b 0a 3b 3b 20 2a 20 46 6f 72 20 6d 6f 64 ble.by.the.user..;;.;;.*.For.mod
0920 75 6c 65 20 77 72 69 74 65 72 73 0a 3b 3b 0a 3b 3b 20 4a 75 73 74 20 75 73 65 20 60 61 6c 65 72 ule.writers.;;.;;.Just.use.`aler
0940 74 27 20 69 6e 73 74 65 61 64 20 6f 66 20 60 6d 65 73 73 61 67 65 27 20 61 73 20 66 6f 6c 6c 6f t'.instead.of.`message'.as.follo
0960 77 73 3a 0a 3b 3b 0a 3b 3b 20 20 20 28 72 65 71 75 69 72 65 20 27 61 6c 65 72 74 29 0a 3b 3b 0a ws:.;;.;;...(require.'alert).;;.
0980 3b 3b 20 20 20 3b 3b 20 54 68 69 73 20 69 73 20 74 68 65 20 6d 6f 73 74 20 62 61 73 69 63 20 66 ;;...;;.This.is.the.most.basic.f
09a0 6f 72 6d 20 75 73 61 67 65 0a 3b 3b 20 20 20 28 61 6c 65 72 74 20 22 54 68 69 73 20 69 73 20 61 orm.usage.;;...(alert."This.is.a
09c0 6e 20 61 6c 65 72 74 22 29 0a 3b 3b 0a 3b 3b 20 20 20 3b 3b 20 59 6f 75 20 63 61 6e 20 61 64 6a n.alert").;;.;;...;;.You.can.adj
09e0 75 73 74 20 74 68 65 20 73 65 76 65 72 69 74 79 20 66 6f 72 20 6d 6f 72 65 20 69 6d 70 6f 72 74 ust.the.severity.for.more.import
0a00 61 6e 74 20 6d 65 73 73 61 67 65 73 0a 3b 3b 20 20 20 28 61 6c 65 72 74 20 22 54 68 69 73 20 69 ant.messages.;;...(alert."This.i
0a20 73 20 61 6e 20 61 6c 65 72 74 22 20 3a 73 65 76 65 72 69 74 79 20 27 68 69 67 68 29 0a 3b 3b 0a s.an.alert".:severity.'high).;;.
0a40 3b 3b 20 20 20 3b 3b 20 4f 72 20 64 65 63 72 65 61 73 65 20 69 74 20 66 6f 72 20 70 75 72 65 6c ;;...;;.Or.decrease.it.for.purel
0a60 79 20 69 6e 66 6f 72 6d 61 74 69 76 65 20 6f 6e 65 73 0a 3b 3b 20 20 20 28 61 6c 65 72 74 20 22 y.informative.ones.;;...(alert."
0a80 54 68 69 73 20 69 73 20 61 6e 20 61 6c 65 72 74 22 20 3a 73 65 76 65 72 69 74 79 20 27 74 72 69 This.is.an.alert".:severity.'tri
0aa0 76 69 61 6c 29 0a 3b 3b 0a 3b 3b 20 20 20 3b 3b 20 41 6c 65 72 74 73 20 63 61 6e 20 68 61 76 65 vial).;;.;;...;;.Alerts.can.have
0ac0 20 6f 70 74 69 6f 6e 61 6c 20 74 69 74 6c 65 73 2e 20 20 4f 74 68 65 72 77 69 73 65 2c 20 74 68 .optional.titles...Otherwise,.th
0ae0 65 20 74 69 74 6c 65 20 69 73 20 74 68 65 0a 3b 3b 20 20 20 3b 3b 20 62 75 66 66 65 72 2d 6e 61 e.title.is.the.;;...;;.buffer-na
0b00 6d 65 20 6f 66 20 74 68 65 20 28 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 29 20 77 68 65 72 65 me.of.the.(current-buffer).where
0b20 20 74 68 65 20 61 6c 65 72 74 20 6f 72 69 67 69 6e 61 74 65 64 2e 0a 3b 3b 20 20 20 28 61 6c 65 .the.alert.originated..;;...(ale
0b40 72 74 20 22 54 68 69 73 20 69 73 20 61 6e 20 61 6c 65 72 74 22 20 3a 74 69 74 6c 65 20 22 4d 79 rt."This.is.an.alert".:title."My
0b60 20 41 6c 65 72 74 22 29 0a 3b 3b 0a 3b 3b 20 20 20 3b 3b 20 46 75 72 74 68 65 72 2c 20 61 6c 65 .Alert").;;.;;...;;.Further,.ale
0b80 72 74 73 20 63 61 6e 20 68 61 76 65 20 63 61 74 65 67 6f 72 69 65 73 2e 20 20 54 68 69 73 20 61 rts.can.have.categories...This.a
0ba0 6c 6c 6f 77 73 20 75 73 65 72 73 20 74 6f 0a 3b 3b 20 20 20 3b 3b 20 73 65 6c 65 63 74 69 76 65 llows.users.to.;;...;;.selective
0bc0 6c 79 20 66 69 6c 74 65 72 20 6f 6e 20 74 68 65 6d 2e 0a 3b 3b 20 20 20 28 61 6c 65 72 74 20 22 ly.filter.on.them..;;...(alert."
0be0 54 68 69 73 20 69 73 20 61 6e 20 61 6c 65 72 74 22 20 3a 74 69 74 6c 65 20 22 4d 79 20 41 6c 65 This.is.an.alert".:title."My.Ale
0c00 72 74 22 20 3a 63 61 74 65 67 6f 72 79 20 27 64 65 62 75 67 29 0a 3b 3b 0a 3b 3b 20 2a 20 46 6f rt".:category.'debug).;;.;;.*.Fo
0c20 72 20 75 73 65 72 73 0a 3b 3b 0a 3b 3b 20 46 6f 72 20 74 68 65 20 75 73 65 72 2c 20 74 68 65 72 r.users.;;.;;.For.the.user,.ther
0c40 65 20 61 72 65 20 73 65 76 65 72 61 6c 20 76 61 72 69 61 62 6c 65 73 20 74 6f 20 63 6f 6e 74 72 e.are.several.variables.to.contr
0c60 6f 6c 20 77 68 65 6e 20 61 6e 64 20 68 6f 77 20 61 6c 65 72 74 73 0a 3b 3b 20 61 72 65 20 70 72 ol.when.and.how.alerts.;;.are.pr
0c80 65 73 65 6e 74 65 64 2e 20 20 42 79 20 64 65 66 61 75 6c 74 2c 20 74 68 65 79 20 61 70 70 65 61 esented...By.default,.they.appea
0ca0 72 20 69 6e 20 74 68 65 20 6d 69 6e 69 62 75 66 66 65 72 20 6d 75 63 68 20 74 68 65 20 73 61 6d r.in.the.minibuffer.much.the.sam
0cc0 65 0a 3b 3b 20 61 73 20 61 20 6e 6f 72 6d 61 6c 20 45 6d 61 63 73 20 6d 65 73 73 61 67 65 2e 20 e.;;.as.a.normal.Emacs.message..
0ce0 20 42 75 74 20 74 68 65 72 65 20 61 72 65 20 6d 61 6e 79 20 6d 6f 72 65 20 70 6f 73 73 69 62 69 .But.there.are.many.more.possibi
0d00 6c 69 74 69 65 73 3a 0a 3b 3b 0a 3b 3b 20 20 20 60 61 6c 65 72 74 2d 66 61 64 65 2d 74 69 6d 65 lities:.;;.;;...`alert-fade-time
0d20 27 0a 3b 3b 20 20 20 20 20 4e 6f 72 6d 61 6c 6c 79 20 61 6c 65 72 74 73 20 64 69 73 61 70 70 65 '.;;.....Normally.alerts.disappe
0d40 61 72 20 61 66 74 65 72 20 74 68 69 73 20 6d 61 6e 79 20 73 65 63 6f 6e 64 73 2c 20 69 66 20 74 ar.after.this.many.seconds,.if.t
0d60 68 65 20 73 74 79 6c 65 0a 3b 3b 20 20 20 20 20 73 75 70 70 6f 72 74 73 20 69 74 2e 20 20 54 68 he.style.;;.....supports.it...Th
0d80 65 20 64 65 66 61 75 6c 74 20 69 73 20 35 20 73 65 63 6f 6e 64 73 2e 0a 3b 3b 0a 3b 3b 20 20 20 e.default.is.5.seconds..;;.;;...
0da0 60 61 6c 65 72 74 2d 64 65 66 61 75 6c 74 2d 73 74 79 6c 65 27 0a 3b 3b 20 20 20 20 20 50 69 63 `alert-default-style'.;;.....Pic
0dc0 6b 20 74 68 65 20 73 74 79 6c 65 20 74 6f 20 75 73 65 20 69 66 20 6e 6f 20 6f 74 68 65 72 20 63 k.the.style.to.use.if.no.other.c
0de0 6f 6e 66 69 67 20 72 75 6c 65 20 6d 61 74 63 68 65 73 2e 20 20 54 68 65 0a 3b 3b 20 20 20 20 20 onfig.rule.matches...The.;;.....
0e00 64 65 66 61 75 6c 74 20 69 73 20 60 6d 65 73 73 61 67 65 27 2c 20 62 75 74 20 60 67 72 6f 77 6c default.is.`message',.but.`growl
0e20 27 20 77 6f 72 6b 73 20 77 65 6c 6c 20 74 6f 6f 2e 0a 3b 3b 0a 3b 3b 20 20 20 60 61 6c 65 72 74 '.works.well.too..;;.;;...`alert
0e40 2d 72 65 76 65 61 6c 2d 69 64 6c 65 2d 74 69 6d 65 27 0a 3b 3b 20 20 20 20 20 49 66 20 61 20 63 -reveal-idle-time'.;;.....If.a.c
0e60 6f 6e 66 69 67 20 72 75 6c 65 20 63 68 6f 6f 73 65 20 74 6f 20 6d 61 74 63 68 20 6f 6e 20 60 69 onfig.rule.choose.to.match.on.`i
0e80 64 6c 65 27 2c 20 74 68 69 73 20 69 73 20 68 6f 77 20 6d 61 6e 79 0a 3b 3b 20 20 20 20 20 73 65 dle',.this.is.how.many.;;.....se
0ea0 63 6f 6e 64 73 20 69 64 6c 65 20 74 68 65 20 75 73 65 72 20 68 61 73 20 74 6f 20 62 65 2e 20 20 conds.idle.the.user.has.to.be...
0ec0 44 65 66 61 75 6c 74 73 20 74 6f 20 35 20 73 6f 20 74 68 61 74 20 75 73 65 72 73 0a 3b 3b 20 20 Defaults.to.5.so.that.users.;;..
0ee0 20 20 20 64 6f 6e 27 74 20 6d 69 73 73 20 61 6e 79 20 61 6c 65 72 74 73 2c 20 62 75 74 20 31 32 ...don't.miss.any.alerts,.but.12
0f00 30 20 69 73 20 61 6c 73 6f 20 67 6f 6f 64 2e 0a 3b 3b 0a 3b 3b 20 20 20 60 61 6c 65 72 74 2d 70 0.is.also.good..;;.;;...`alert-p
0f20 65 72 73 69 73 74 2d 69 64 6c 65 2d 74 69 6d 65 27 0a 3b 3b 20 20 20 20 20 41 66 74 65 72 20 74 ersist-idle-time'.;;.....After.t
0f40 68 69 73 20 6d 61 6e 79 20 69 64 6c 65 20 73 65 63 6f 6e 64 73 2c 20 61 6c 65 72 74 73 20 77 69 his.many.idle.seconds,.alerts.wi
0f60 6c 6c 20 62 65 63 6f 6d 65 20 73 74 69 63 6b 79 2c 20 61 6e 64 20 6e 6f 74 0a 3b 3b 20 20 20 20 ll.become.sticky,.and.not.;;....
0f80 20 66 61 64 65 20 61 77 61 79 20 6d 6f 72 65 2e 20 20 54 68 65 20 64 65 66 61 75 6c 74 20 69 73 .fade.away.more...The.default.is
0fa0 20 31 35 20 6d 69 6e 75 74 65 73 2e 0a 3b 3b 0a 3b 3b 20 20 20 60 61 6c 65 72 74 2d 6c 6f 67 2d .15.minutes..;;.;;...`alert-log-
0fc0 6d 65 73 73 61 67 65 73 27 0a 3b 3b 20 20 20 20 20 42 79 20 64 65 66 61 75 6c 74 2c 20 61 6c 6c messages'.;;.....By.default,.all
0fe0 20 61 6c 65 72 74 73 20 61 72 65 20 6c 6f 67 67 65 64 20 74 6f 20 2a 41 6c 65 72 74 73 2a 20 28 .alerts.are.logged.to.*Alerts*.(
1000 61 6e 64 20 74 6f 20 2a 4d 65 73 73 61 67 65 73 2a 2c 0a 3b 3b 20 20 20 20 20 69 66 20 74 68 65 and.to.*Messages*,.;;.....if.the
1020 20 60 6d 65 73 73 61 67 65 27 20 73 74 79 6c 65 20 69 73 20 62 65 69 6e 67 20 75 73 65 64 29 2e .`message'.style.is.being.used).
1040 20 20 53 65 74 20 74 6f 20 6e 69 6c 20 74 6f 20 64 69 73 61 62 6c 65 2e 0a 3b 3b 0a 3b 3b 20 20 ..Set.to.nil.to.disable..;;.;;..
1060 20 60 61 6c 65 72 74 2d 68 69 64 65 2d 61 6c 6c 2d 6e 6f 74 69 66 69 63 61 74 69 6f 6e 73 27 0a .`alert-hide-all-notifications'.
1080 3b 3b 20 20 20 20 20 57 61 6e 74 20 61 6c 65 72 74 73 20 6f 66 66 20 65 6e 74 69 72 65 6c 79 3f ;;.....Want.alerts.off.entirely?
10a0 20 20 54 68 65 79 20 73 74 69 6c 6c 20 67 65 74 20 6c 6f 67 67 65 64 2c 20 68 6f 77 65 76 65 72 ..They.still.get.logged,.however
10c0 2c 20 75 6e 6c 65 73 73 0a 3b 3b 20 20 20 20 20 79 6f 75 27 76 65 20 74 75 72 6e 65 64 20 74 68 ,.unless.;;.....you've.turned.th
10e0 61 74 20 6f 66 66 20 74 6f 6f 2e 0a 3b 3b 0a 3b 3b 20 20 20 60 61 6c 65 72 74 2d 75 73 65 72 2d at.off.too..;;.;;...`alert-user-
1100 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 27 0a 3b 3b 20 20 20 20 20 54 68 69 73 20 76 61 72 69 61 configuration'.;;.....This.varia
1120 62 6c 65 20 6c 65 74 73 20 79 6f 75 20 63 6f 6e 74 72 6f 6c 20 65 78 61 63 74 6c 79 20 68 6f 77 ble.lets.you.control.exactly.how
1140 20 61 6e 64 20 77 68 65 6e 20 61 20 70 61 72 74 69 63 75 6c 61 72 0a 3b 3b 20 20 20 20 20 61 6c .and.when.a.particular.;;.....al
1160 65 72 74 2c 20 61 20 63 6c 61 73 73 20 6f 66 20 61 6c 65 72 74 73 2c 20 6f 72 20 61 6c 6c 20 61 ert,.a.class.of.alerts,.or.all.a
1180 6c 65 72 74 73 2c 20 67 65 74 20 72 65 70 6f 72 74 65 64 20 2d 2d 20 6f 72 20 69 66 20 61 74 0a lerts,.get.reported.--.or.if.at.
11a0 3b 3b 20 20 20 20 20 61 6c 6c 2e 20 20 55 73 65 20 74 68 69 73 20 74 6f 20 6d 61 6b 65 20 73 6f ;;.....all...Use.this.to.make.so
11c0 6d 65 20 61 6c 65 72 74 73 20 75 73 65 20 47 72 6f 77 6c 2c 20 77 68 69 6c 65 20 6f 74 68 65 72 me.alerts.use.Growl,.while.other
11e0 73 20 61 72 65 0a 3b 3b 20 20 20 20 20 63 6f 6d 70 6c 65 74 65 6c 79 20 73 69 6c 65 6e 74 2e 0a s.are.;;.....completely.silent..
1200 3b 3b 0a 3b 3b 20 2a 20 50 72 6f 67 72 61 6d 6d 61 74 69 63 61 6c 6c 79 20 61 64 64 69 6e 67 20 ;;.;;.*.Programmatically.adding.
1220 72 75 6c 65 73 0a 3b 3b 0a 3b 3b 20 55 73 65 72 73 20 63 61 6e 20 61 6c 73 6f 20 70 72 6f 67 72 rules.;;.;;.Users.can.also.progr
1240 61 6d 6d 61 74 69 63 61 6c 6c 79 20 61 64 64 20 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20 72 75 ammatically.add.configuration.ru
1260 6c 65 73 2c 20 69 6e 20 61 64 64 69 74 69 6f 6e 20 74 6f 0a 3b 3b 20 63 75 73 74 6f 6d 69 7a 69 les,.in.addition.to.;;.customizi
1280 6e 67 20 60 61 6c 65 72 74 2d 75 73 65 72 2d 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 27 2e 20 20 ng.`alert-user-configuration'...
12a0 48 65 72 65 20 69 73 20 6f 6e 65 20 74 68 61 74 20 74 68 65 20 61 75 74 68 6f 72 0a 3b 3b 20 63 Here.is.one.that.the.author.;;.c
12c0 75 72 72 65 6e 74 6c 79 20 75 73 65 73 20 77 69 74 68 20 45 52 43 2c 20 73 6f 20 74 68 61 74 20 urrently.uses.with.ERC,.so.that.
12e0 74 68 65 20 66 72 69 6e 67 65 20 67 65 74 73 20 63 6f 6c 6f 72 65 64 20 77 68 65 6e 65 76 65 72 the.fringe.gets.colored.whenever
1300 20 70 65 6f 70 6c 65 0a 3b 3b 20 63 68 61 74 20 6f 6e 20 42 69 74 6c 42 65 65 3a 0a 3b 3b 0a 3b .people.;;.chat.on.BitlBee:.;;.;
1320 3b 20 20 28 61 6c 65 72 74 2d 61 64 64 2d 72 75 6c 65 20 3a 73 74 61 74 75 73 20 20 20 27 28 62 ;..(alert-add-rule.:status...'(b
1340 75 72 69 65 64 20 76 69 73 69 62 6c 65 20 69 64 6c 65 29 0a 3b 3b 20 20 20 20 20 20 20 20 20 20 uried.visible.idle).;;..........
1360 20 20 20 20 20 20 20 20 3a 73 65 76 65 72 69 74 79 20 27 28 6d 6f 64 65 72 61 74 65 20 68 69 67 ........:severity.'(moderate.hig
1380 68 20 75 72 67 65 6e 74 29 0a 3b 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 6d h.urgent).;;..................:m
13a0 6f 64 65 20 20 20 20 20 27 65 72 63 2d 6d 6f 64 65 0a 3b 3b 20 20 20 20 20 20 20 20 20 20 20 20 ode.....'erc-mode.;;............
13c0 20 20 20 20 20 20 3a 70 72 65 64 69 63 61 74 65 0a 3b 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 ......:predicate.;;.............
13e0 20 20 20 20 20 23 27 28 6c 61 6d 62 64 61 20 28 69 6e 66 6f 29 0a 3b 3b 20 20 20 20 20 20 20 20 .....#'(lambda.(info).;;........
1400 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 74 72 69 6e 67 2d 6d 61 74 63 68 20 28 63 6f 6e ..............(string-match.(con
1420 63 61 74 20 22 5c 5c 60 5b 5e 26 5d 2e 2a 40 42 69 74 6c 42 65 65 5c 5c 27 22 29 0a 3b 3b 20 20 cat."\\`[^&].*@BitlBee\\'").;;..
1440 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1460 20 20 28 65 72 63 2d 66 6f 72 6d 61 74 2d 74 61 72 67 65 74 2d 61 6e 64 2f 6f 72 2d 6e 65 74 77 ..(erc-format-target-and/or-netw
1480 6f 72 6b 29 29 29 0a 3b 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 70 65 72 73 ork))).;;..................:pers
14a0 69 73 74 65 6e 74 0a 3b 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 27 28 6c 61 istent.;;..................#'(la
14c0 6d 62 64 61 20 28 69 6e 66 6f 29 0a 3b 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 mbda.(info).;;..................
14e0 20 20 20 20 3b 3b 20 49 66 20 74 68 65 20 62 75 66 66 65 72 20 69 73 20 62 75 72 69 65 64 2c 20 ....;;.If.the.buffer.is.buried,.
1500 6f 72 20 74 68 65 20 75 73 65 72 20 68 61 73 20 62 65 65 6e 0a 3b 3b 20 20 20 20 20 20 20 20 20 or.the.user.has.been.;;.........
1520 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 69 64 6c 65 20 66 6f 72 20 60 61 6c 65 72 74 2d .............;;.idle.for.`alert-
1540 72 65 76 65 61 6c 2d 69 64 6c 65 2d 74 69 6d 65 27 20 73 65 63 6f 6e 64 73 2c 0a 3b 3b 20 20 20 reveal-idle-time'.seconds,.;;...
1560 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 6d 61 6b 65 20 74 68 69 73 20 ...................;;.make.this.
1580 61 6c 65 72 74 20 70 65 72 73 69 73 74 65 6e 74 2e 20 20 4e 6f 72 6d 61 6c 6c 79 2c 20 61 6c 65 alert.persistent...Normally,.ale
15a0 72 74 73 0a 3b 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 62 rts.;;......................;;.b
15c0 65 63 6f 6d 65 20 70 65 72 73 69 73 74 65 6e 74 20 61 66 74 65 72 0a 3b 3b 20 20 20 20 20 20 20 ecome.persistent.after.;;.......
15e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 60 61 6c 65 72 74 2d 70 65 72 73 69 73 74 ...............;;.`alert-persist
1600 2d 69 64 6c 65 2d 74 69 6d 65 27 20 73 65 63 6f 6e 64 73 2e 0a 3b 3b 20 20 20 20 20 20 20 20 20 -idle-time'.seconds..;;.........
1620 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 65 6d 71 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e .............(memq.(plist-get.in
1640 66 6f 20 3a 73 74 61 74 75 73 29 20 27 28 62 75 72 69 65 64 20 69 64 6c 65 29 29 29 0a 3b 3b 20 fo.:status).'(buried.idle))).;;.
1660 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 73 74 79 6c 65 20 27 66 72 69 6e 67 65 0a .................:style.'fringe.
1680 3b 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 63 6f 6e 74 69 6e 75 65 20 74 29 ;;..................:continue.t)
16a0 0a 3b 3b 0a 3b 3b 20 2a 20 42 75 69 6c 74 69 6e 20 61 6c 65 72 74 20 73 74 79 6c 65 73 0a 3b 3b .;;.;;.*.Builtin.alert.styles.;;
16c0 0a 3b 3b 20 54 68 65 72 65 20 61 72 65 20 73 65 76 65 72 61 6c 20 62 75 69 6c 74 69 6e 20 73 74 .;;.There.are.several.builtin.st
16e0 79 6c 65 73 2c 20 61 6e 64 20 69 74 20 69 73 20 74 72 69 76 69 61 6c 20 74 6f 20 63 72 65 61 74 yles,.and.it.is.trivial.to.creat
1700 65 20 6e 65 77 20 6f 6e 65 73 2e 0a 3b 3b 20 54 68 65 20 62 75 69 6c 74 69 6e 73 20 61 72 65 3a e.new.ones..;;.The.builtins.are:
1720 0a 3b 3b 0a 3b 3b 20 20 20 66 72 69 6e 67 65 20 20 20 20 20 20 20 20 2d 20 43 68 61 6e 67 65 73 .;;.;;...fringe........-.Changes
1740 20 74 68 65 20 63 75 72 72 65 6e 74 20 66 72 61 6d 65 27 73 20 66 72 69 6e 67 65 20 62 61 63 6b .the.current.frame's.fringe.back
1760 67 72 6f 75 6e 64 20 63 6f 6c 6f 72 0a 3b 3b 20 20 20 6d 6f 64 65 2d 6c 69 6e 65 20 20 20 20 20 ground.color.;;...mode-line.....
1780 2d 20 43 68 61 6e 67 65 73 20 74 68 65 20 63 75 72 72 65 6e 74 20 66 72 61 6d 65 27 73 20 6d 6f -.Changes.the.current.frame's.mo
17a0 64 65 2d 6c 69 6e 65 20 62 61 63 6b 67 72 6f 75 6e 64 20 63 6f 6c 6f 72 0a 3b 3b 20 20 20 67 6e de-line.background.color.;;...gn
17c0 74 70 20 20 20 20 20 20 20 20 20 20 2d 20 55 73 65 73 20 67 6e 74 70 2c 20 69 74 20 72 65 71 75 tp..........-.Uses.gntp,.it.requ
17e0 69 72 65 73 20 67 6e 74 70 2e 65 6c 20 28 73 65 65 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 ires.gntp.el.(see.https://github
1800 2e 63 6f 6d 2f 74 65 6b 61 69 2f 67 6e 74 70 2e 65 6c 29 0a 3b 3b 20 20 20 67 72 6f 77 6c 20 20 .com/tekai/gntp.el).;;...growl..
1820 20 20 20 20 20 20 20 2d 20 55 73 65 73 20 47 72 6f 77 6c 20 6f 6e 20 4f 53 20 58 2c 20 69 66 20 .......-.Uses.Growl.on.OS.X,.if.
1840 67 72 6f 77 6c 6e 6f 74 69 66 79 20 69 73 20 6f 6e 20 74 68 65 20 50 41 54 48 0a 3b 3b 20 20 20 growlnotify.is.on.the.PATH.;;...
1860 69 67 6e 6f 72 65 20 20 20 20 20 20 20 20 2d 20 49 67 6e 6f 72 65 73 20 74 68 65 20 61 6c 65 72 ignore........-.Ignores.the.aler
1880 74 20 65 6e 74 69 72 65 6c 79 0a 3b 3b 20 20 20 6c 69 62 6e 6f 74 69 66 79 20 20 20 20 20 2d 20 t.entirely.;;...libnotify.....-.
18a0 55 73 65 73 20 6c 69 62 6e 6f 74 69 66 79 20 69 66 20 6e 6f 74 69 66 79 2d 73 65 6e 64 20 69 73 Uses.libnotify.if.notify-send.is
18c0 20 6f 6e 20 74 68 65 20 50 41 54 48 0a 3b 3b 20 20 20 6c 6f 67 20 20 20 20 20 20 20 20 20 20 20 .on.the.PATH.;;...log...........
18e0 2d 20 4c 6f 67 73 20 74 68 65 20 61 6c 65 72 74 20 74 65 78 74 20 74 6f 20 2a 41 6c 65 72 74 73 -.Logs.the.alert.text.to.*Alerts
1900 2a 2c 20 77 69 74 68 20 61 20 74 69 6d 65 73 74 61 6d 70 0a 3b 3b 20 20 20 6d 65 73 73 61 67 65 *,.with.a.timestamp.;;...message
1920 20 20 20 20 20 20 20 2d 20 55 73 65 73 20 74 68 65 20 45 6d 61 63 73 20 60 6d 65 73 73 61 67 65 .......-.Uses.the.Emacs.`message
1940 27 20 66 61 63 69 6c 69 74 79 0a 3b 3b 20 20 20 6d 6f 6d 65 6e 74 61 72 79 20 20 20 20 20 2d 20 '.facility.;;...momentary.....-.
1960 55 73 65 73 20 74 68 65 20 45 6d 61 63 73 20 60 6d 6f 6d 65 6e 74 61 72 79 2d 73 74 72 69 6e 67 Uses.the.Emacs.`momentary-string
1980 2d 64 69 73 70 6c 61 79 27 20 66 61 63 69 6c 69 74 79 0a 3b 3b 20 20 20 6e 6f 74 69 66 69 63 61 -display'.facility.;;...notifica
19a0 74 69 6f 6e 73 20 2d 20 55 73 65 73 20 6e 6f 74 69 66 69 63 61 74 69 6f 6e 73 20 6c 69 62 72 61 tions.-.Uses.notifications.libra
19c0 72 79 20 76 69 61 20 44 2d 42 75 73 0a 3b 3b 20 20 20 6e 6f 74 69 66 69 65 72 20 20 20 20 20 20 ry.via.D-Bus.;;...notifier......
19e0 2d 20 55 73 65 73 20 74 65 72 6d 69 6e 61 6c 2d 6e 6f 74 69 66 69 65 72 20 6f 6e 20 4f 53 20 58 -.Uses.terminal-notifier.on.OS.X
1a00 2c 20 69 66 20 69 74 20 69 73 20 6f 6e 20 74 68 65 20 50 41 54 48 0a 3b 3b 20 20 20 6f 73 78 2d ,.if.it.is.on.the.PATH.;;...osx-
1a20 6e 6f 74 69 66 69 65 72 20 20 2d 20 4e 61 74 69 76 65 20 4f 53 58 20 6e 6f 74 69 66 69 65 72 20 notifier..-.Native.OSX.notifier.
1a40 75 73 69 6e 67 20 41 70 70 6c 65 53 63 72 69 70 74 0a 3b 3b 20 20 20 74 6f 61 73 74 65 72 20 20 using.AppleScript.;;...toaster..
1a60 20 20 20 20 20 2d 20 55 73 65 20 74 68 65 20 74 6f 61 73 74 20 6e 6f 74 69 66 69 63 61 74 69 6f .....-.Use.the.toast.notificatio
1a80 6e 20 73 79 73 74 65 6d 0a 3b 3b 20 20 20 78 31 31 20 20 20 20 20 20 20 20 20 20 20 2d 20 43 68 n.system.;;...x11...........-.Ch
1aa0 61 6e 67 65 73 20 74 68 65 20 75 72 67 65 6e 63 79 20 70 72 6f 70 65 72 74 79 20 6f 66 20 74 68 anges.the.urgency.property.of.th
1ac0 65 20 77 69 6e 64 6f 77 20 69 6e 20 74 68 65 20 58 20 57 69 6e 64 6f 77 20 53 79 73 74 65 6d 0a e.window.in.the.X.Window.System.
1ae0 3b 3b 20 20 20 74 65 72 6d 75 78 20 20 20 20 20 20 20 20 2d 20 55 73 65 20 74 65 72 6d 75 78 2d ;;...termux........-.Use.termux-
1b00 6e 6f 74 69 66 69 63 61 74 69 6f 6e 20 66 72 6f 6d 20 74 68 65 20 54 65 72 6d 75 78 20 41 50 49 notification.from.the.Termux.API
1b20 0a 3b 3b 0a 3b 3b 20 2a 20 44 65 66 69 6e 69 6e 67 20 6e 65 77 20 73 74 79 6c 65 73 0a 3b 3b 0a .;;.;;.*.Defining.new.styles.;;.
1b40 3b 3b 20 54 6f 20 63 72 65 61 74 65 20 61 20 6e 65 77 20 73 74 79 6c 65 2c 20 79 6f 75 20 6e 65 ;;.To.create.a.new.style,.you.ne
1b60 65 64 20 74 6f 20 61 74 20 6c 65 61 73 74 20 77 72 69 74 65 20 61 20 22 6e 6f 74 69 66 69 65 72 ed.to.at.least.write.a."notifier
1b80 22 2c 20 77 68 69 63 68 20 69 73 0a 3b 3b 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 68 61 74 20 72 ",.which.is.;;.a.function.that.r
1ba0 65 63 65 69 76 65 73 20 74 68 65 20 64 65 74 61 69 6c 73 20 6f 66 20 74 68 65 20 61 6c 65 72 74 eceives.the.details.of.the.alert
1bc0 2e 20 20 54 68 65 73 65 20 64 65 74 61 69 6c 73 20 61 72 65 0a 3b 3b 20 67 69 76 65 6e 20 69 6e ...These.details.are.;;.given.in
1be0 20 61 20 70 6c 69 73 74 20 77 68 69 63 68 20 75 73 65 73 20 76 61 72 69 6f 75 73 20 6b 65 79 77 .a.plist.which.uses.various.keyw
1c00 6f 72 64 20 74 6f 20 69 64 65 6e 74 69 66 79 20 74 68 65 20 70 61 72 74 73 20 6f 66 20 74 68 65 ord.to.identify.the.parts.of.the
1c20 0a 3b 3b 20 61 6c 65 72 74 2e 20 20 48 65 72 65 20 69 73 20 61 20 70 72 6f 74 6f 74 79 70 69 63 .;;.alert...Here.is.a.prototypic
1c40 61 6c 20 73 74 79 6c 65 20 64 65 66 69 6e 69 74 69 6f 6e 3a 0a 3b 3b 0a 3b 3b 20 20 28 61 6c 65 al.style.definition:.;;.;;..(ale
1c60 72 74 2d 64 65 66 69 6e 65 2d 73 74 79 6c 65 20 27 73 74 79 6c 65 2d 6e 61 6d 65 20 3a 74 69 74 rt-define-style.'style-name.:tit
1c80 6c 65 20 22 4d 79 20 53 74 79 6c 65 27 73 20 74 69 74 6c 65 22 0a 3b 3b 20 20 20 20 20 20 20 20 le."My.Style's.title".;;........
1ca0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 6e 6f 74 69 66 69 65 72 0a 3b 3b 20 20 20 20 20 20 ..............:notifier.;;......
1cc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 69 6e 66 6f 29 0a 3b ................(lambda.(info).;
1ce0 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 54 68 65 20 ;........................;;.The.
1d00 6d 65 73 73 61 67 65 20 74 65 78 74 20 69 73 20 3a 6d 65 73 73 61 67 65 0a 3b 3b 20 20 20 20 20 message.text.is.:message.;;.....
1d20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e ...................(plist-get.in
1d40 66 6f 20 3a 6d 65 73 73 61 67 65 29 0a 3b 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 fo.:message).;;.................
1d60 20 20 20 20 20 20 20 3b 3b 20 54 68 65 20 3a 74 69 74 6c 65 20 6f 66 20 74 68 65 20 61 6c 65 72 .......;;.The.:title.of.the.aler
1d80 74 0a 3b 3b 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 70 6c 69 t.;;........................(pli
1da0 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 74 69 74 6c 65 29 0a 3b 3b 20 20 20 20 20 20 20 20 20 20 st-get.info.:title).;;..........
1dc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 54 68 65 20 3a 63 61 74 65 67 6f 72 79 20 6f ..............;;.The.:category.o
1de0 66 20 74 68 65 20 61 6c 65 72 74 0a 3b 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 f.the.alert.;;..................
1e00 20 20 20 20 20 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 63 61 74 65 67 6f 72 79 29 ......(plist-get.info.:category)
1e20 0a 3b 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 54 68 .;;........................;;.Th
1e40 65 20 6d 61 6a 6f 72 2d 6d 6f 64 65 20 74 68 69 73 20 61 6c 65 72 74 20 72 65 6c 61 74 65 73 20 e.major-mode.this.alert.relates.
1e60 74 6f 0a 3b 3b 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 70 6c to.;;........................(pl
1e80 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 6d 6f 64 65 29 0a 3b 3b 20 20 20 20 20 20 20 20 20 20 ist-get.info.:mode).;;..........
1ea0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 54 68 65 20 62 75 66 66 65 72 20 74 68 65 20 ..............;;.The.buffer.the.
1ec0 61 6c 65 72 74 20 72 65 6c 61 74 65 73 20 74 6f 0a 3b 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 alert.relates.to.;;.............
1ee0 20 20 20 20 20 20 20 20 20 20 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 62 75 66 66 ...........(plist-get.info.:buff
1f00 65 72 29 0a 3b 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b er).;;........................;;
1f20 20 53 65 76 65 72 69 74 79 20 6f 66 20 74 68 65 20 61 6c 65 72 74 2e 20 20 49 74 20 69 73 20 6f .Severity.of.the.alert...It.is.o
1f40 6e 65 20 6f 66 3a 0a 3b 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ne.of:.;;.......................
1f60 20 3b 3b 20 20 20 60 75 72 67 65 6e 74 27 0a 3b 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .;;...`urgent'.;;...............
1f80 20 20 20 20 20 20 20 20 20 3b 3b 20 20 20 60 68 69 67 68 27 0a 3b 3b 20 20 20 20 20 20 20 20 20 .........;;...`high'.;;.........
1fa0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 20 20 60 6d 6f 64 65 72 61 74 65 27 0a 3b ...............;;...`moderate'.;
1fc0 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 20 20 60 6e ;........................;;...`n
1fe0 6f 72 6d 61 6c 27 0a 3b 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ormal'.;;.......................
2000 20 3b 3b 20 20 20 60 6c 6f 77 27 0a 3b 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .;;...`low'.;;..................
2020 20 20 20 20 20 20 3b 3b 20 20 20 60 74 72 69 76 69 61 6c 27 0a 3b 3b 20 20 20 20 20 20 20 20 20 ......;;...`trivial'.;;.........
2040 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a ...............(plist-get.info.:
2060 73 65 76 65 72 69 74 79 29 0a 3b 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 severity).;;....................
2080 20 20 20 20 3b 3b 20 57 68 65 74 68 65 72 20 74 68 69 73 20 61 6c 65 72 74 20 73 68 6f 75 6c 64 ....;;.Whether.this.alert.should
20a0 20 70 65 72 73 69 73 74 2c 20 6f 72 20 66 61 64 65 20 61 77 61 79 0a 3b 3b 20 20 20 20 20 20 20 .persist,.or.fade.away.;;.......
20c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f .................(plist-get.info
20e0 20 3a 70 65 72 73 69 73 74 65 6e 74 29 0a 3b 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .:persistent).;;................
2100 20 20 20 20 20 20 20 20 3b 3b 20 44 61 74 61 20 77 68 69 63 68 20 77 61 73 20 70 61 73 73 65 64 ........;;.Data.which.was.passed
2120 20 74 6f 20 60 61 6c 65 72 74 27 2e 20 20 43 61 6e 20 62 65 0a 3b 3b 20 20 20 20 20 20 20 20 20 .to.`alert'...Can.be.;;.........
2140 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 61 6e 79 74 68 69 6e 67 2e 0a 3b 3b 20 20 ...............;;.anything..;;..
2160 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 6c 69 73 74 2d 67 65 74 ......................(plist-get
2180 20 69 6e 66 6f 20 3a 64 61 74 61 29 29 0a 3b 3b 0a 3b 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 .info.:data)).;;.;;.............
21a0 20 20 20 20 20 20 20 20 20 3b 3b 20 52 65 6d 6f 76 65 72 73 20 61 72 65 20 6f 70 74 69 6f 6e 61 .........;;.Removers.are.optiona
21c0 6c 2e 20 20 54 68 65 69 72 20 6a 6f 62 20 69 73 20 74 6f 20 72 65 6d 6f 76 65 0a 3b 3b 20 20 20 l...Their.job.is.to.remove.;;...
21e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 74 68 65 20 76 69 73 75 61 6c ...................;;.the.visual
2200 20 6f 72 20 61 75 64 69 74 6f 72 79 20 65 66 66 65 63 74 20 6f 66 20 74 68 65 20 61 6c 65 72 74 .or.auditory.effect.of.the.alert
2220 2e 0a 3b 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 72 65 6d 6f 76 ..;;......................:remov
2240 65 72 0a 3b 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 er.;;......................(lamb
2260 64 61 20 28 69 6e 66 6f 29 0a 3b 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 da.(info).;;....................
2280 20 20 20 20 3b 3b 20 49 74 20 69 73 20 74 68 65 20 73 61 6d 65 20 70 72 6f 70 65 72 74 79 20 6c ....;;.It.is.the.same.property.l
22a0 69 73 74 20 74 68 61 74 20 77 61 73 20 70 61 73 73 65 64 20 74 6f 0a 3b 3b 20 20 20 20 20 20 20 ist.that.was.passed.to.;;.......
22c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 74 68 65 20 6e 6f 74 69 66 69 65 72 .................;;.the.notifier
22e0 20 66 75 6e 63 74 69 6f 6e 2e 0a 3b 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .function..;;...................
2300 20 20 20 20 20 29 29 0a 3b 3b 0a 3b 3b 20 59 6f 75 20 63 61 6e 20 74 65 73 74 20 61 20 73 70 65 .....)).;;.;;.You.can.test.a.spe
2320 63 69 66 69 63 20 73 74 79 6c 65 20 77 69 74 68 20 73 6f 6d 65 74 68 69 6e 67 20 6c 69 6b 65 20 cific.style.with.something.like.
2340 74 68 69 73 3a 0a 3b 3b 0a 3b 3b 20 28 6c 65 74 20 28 28 61 6c 65 72 74 2d 75 73 65 72 2d 63 6f this:.;;.;;.(let.((alert-user-co
2360 6e 66 69 67 75 72 61 74 69 6f 6e 20 27 28 28 28 28 3a 73 65 76 65 72 69 74 79 20 68 69 67 68 29 nfiguration.'((((:severity.high)
2380 29 20 6d 6f 6d 65 6e 74 61 72 79 20 6e 69 6c 29 29 29 29 0a 3b 3b 20 20 20 28 61 6c 65 72 74 20 ).momentary.nil)))).;;...(alert.
23a0 22 53 61 6d 65 20 62 75 66 66 65 72 20 6d 6f 6d 65 6e 74 61 72 79 20 61 6c 65 72 74 22 20 3a 74 "Same.buffer.momentary.alert".:t
23c0 69 74 6c 65 20 22 4d 79 20 41 6c 65 72 74 22 20 3a 73 65 76 65 72 69 74 79 20 27 68 69 67 68 29 itle."My.Alert".:severity.'high)
23e0 0a 3b 3b 20 20 20 28 61 6c 65 72 74 20 22 54 68 69 73 20 69 73 20 61 20 6d 6f 6d 65 6e 74 61 72 .;;...(alert."This.is.a.momentar
2400 79 20 61 6c 65 72 74 20 69 6e 20 61 6e 6f 74 68 65 72 20 76 69 73 69 62 6c 65 20 62 75 66 66 65 y.alert.in.another.visible.buffe
2420 72 22 20 3a 74 69 74 6c 65 20 22 4d 79 20 41 6c 65 72 74 22 0a 3b 3b 20 20 20 20 20 20 20 20 20 r".:title."My.Alert".;;.........
2440 20 3a 73 65 76 65 72 69 74 79 20 27 68 69 67 68 20 3a 62 75 66 66 65 72 20 28 6f 74 68 65 72 2d .:severity.'high.:buffer.(other-
2460 62 75 66 66 65 72 20 28 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 29 20 74 29 29 29 0a 0a 3b 3b buffer.(current-buffer).t)))..;;
2480 3b 20 43 6f 64 65 3a 0a 0a 28 72 65 71 75 69 72 65 20 27 63 6c 2d 6c 69 62 29 0a 28 72 65 71 75 ;.Code:..(require.'cl-lib).(requ
24a0 69 72 65 20 27 67 6e 74 70 20 6e 69 6c 20 74 29 0a 28 65 76 61 6c 2d 77 68 65 6e 2d 63 6f 6d 70 ire.'gntp.nil.t).(eval-when-comp
24c0 69 6c 65 0a 20 20 3b 3b 20 69 66 20 6e 6f 74 20 61 76 61 69 6c 61 62 6c 65 2c 20 73 69 6c 65 6e ile...;;.if.not.available,.silen
24e0 63 65 20 74 68 65 20 62 79 74 65 20 63 6f 6d 70 69 6c 65 72 0a 20 20 28 64 65 66 76 61 72 20 67 ce.the.byte.compiler...(defvar.g
2500 6e 74 70 2d 73 65 72 76 65 72 29 29 0a 28 64 65 63 6c 61 72 65 2d 66 75 6e 63 74 69 6f 6e 20 67 ntp-server)).(declare-function.g
2520 6e 74 70 2d 6e 6f 74 69 66 79 20 22 67 6e 74 70 22 29 0a 28 72 65 71 75 69 72 65 20 27 6e 6f 74 ntp-notify."gntp").(require.'not
2540 69 66 69 63 61 74 69 6f 6e 73 20 6e 69 6c 20 74 29 0a 28 72 65 71 75 69 72 65 20 27 6c 6f 67 34 ifications.nil.t).(require.'log4
2560 65 20 6e 69 6c 20 74 29 0a 0a 3b 3b 20 73 68 75 74 20 75 70 20 74 68 65 20 62 79 74 65 20 63 6f e.nil.t)..;;.shut.up.the.byte.co
2580 6d 70 69 6c 65 72 0a 28 64 65 63 6c 61 72 65 2d 66 75 6e 63 74 69 6f 6e 20 61 6c 65 72 74 2d 67 mpiler.(declare-function.alert-g
25a0 6e 74 70 2d 6e 6f 74 69 66 79 20 22 61 6c 65 72 74 22 29 0a 28 64 65 63 6c 61 72 65 2d 66 75 6e ntp-notify."alert").(declare-fun
25c0 63 74 69 6f 6e 20 61 6c 65 72 74 2d 6e 6f 74 69 66 69 63 61 74 69 6f 6e 73 2d 6e 6f 74 69 66 79 ction.alert-notifications-notify
25e0 20 22 61 6c 65 72 74 22 29 0a 0a 28 64 65 66 67 72 6f 75 70 20 61 6c 65 72 74 20 6e 69 6c 0a 20 ."alert")..(defgroup.alert.nil..
2600 20 22 4e 6f 74 69 66 69 63 61 74 69 6f 6e 20 73 79 73 74 65 6d 20 66 6f 72 20 45 6d 61 63 73 20 ."Notification.system.for.Emacs.
2620 73 69 6d 69 6c 61 72 20 74 6f 20 47 72 6f 77 6c 22 0a 20 20 3a 67 72 6f 75 70 20 27 65 6d 61 63 similar.to.Growl"...:group.'emac
2640 73 29 0a 0c 0a 28 64 65 66 63 75 73 74 6f 6d 20 61 6c 65 72 74 2d 73 65 76 65 72 69 74 79 2d 66 s)...(defcustom.alert-severity-f
2660 61 63 65 73 0a 20 20 27 28 28 75 72 67 65 6e 74 20 20 20 2e 20 61 6c 65 72 74 2d 75 72 67 65 6e aces...'((urgent.....alert-urgen
2680 74 2d 66 61 63 65 29 0a 20 20 20 20 28 68 69 67 68 20 20 20 20 20 2e 20 61 6c 65 72 74 2d 68 69 t-face).....(high.......alert-hi
26a0 67 68 2d 66 61 63 65 29 0a 20 20 20 20 28 6d 6f 64 65 72 61 74 65 20 2e 20 61 6c 65 72 74 2d 6d gh-face).....(moderate...alert-m
26c0 6f 64 65 72 61 74 65 2d 66 61 63 65 29 0a 20 20 20 20 28 6e 6f 72 6d 61 6c 20 20 20 2e 20 61 6c oderate-face).....(normal.....al
26e0 65 72 74 2d 6e 6f 72 6d 61 6c 2d 66 61 63 65 29 0a 20 20 20 20 28 6c 6f 77 20 20 20 20 20 20 2e ert-normal-face).....(low.......
2700 20 61 6c 65 72 74 2d 6c 6f 77 2d 66 61 63 65 29 0a 20 20 20 20 28 74 72 69 76 69 61 6c 20 20 2e .alert-low-face).....(trivial...
2720 20 61 6c 65 72 74 2d 74 72 69 76 69 61 6c 2d 66 61 63 65 29 29 0a 20 20 22 46 61 63 65 73 20 61 .alert-trivial-face))..."Faces.a
2740 73 73 6f 63 69 61 74 65 64 20 62 79 20 64 65 66 61 75 6c 74 20 77 69 74 68 20 61 6c 65 72 74 20 ssociated.by.default.with.alert.
2760 73 65 76 65 72 69 74 69 65 73 2e 22 0a 20 20 3a 74 79 70 65 20 27 28 61 6c 69 73 74 20 3a 6b 65 severities."...:type.'(alist.:ke
2780 79 2d 74 79 70 65 20 73 79 6d 62 6f 6c 20 3a 76 61 6c 75 65 2d 74 79 70 65 20 63 6f 6c 6f 72 29 y-type.symbol.:value-type.color)
27a0 0a 20 20 3a 67 72 6f 75 70 20 27 61 6c 65 72 74 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 61 6c ...:group.'alert)..(defcustom.al
27c0 65 72 74 2d 73 65 76 65 72 69 74 79 2d 63 6f 6c 6f 72 73 0a 20 20 27 28 28 75 72 67 65 6e 74 20 ert-severity-colors...'((urgent.
27e0 20 20 2e 20 22 72 65 64 22 29 0a 20 20 20 20 28 68 69 67 68 20 20 20 20 20 2e 20 22 6f 72 61 6e ...."red").....(high......."oran
2800 67 65 22 29 0a 20 20 20 20 28 6d 6f 64 65 72 61 74 65 20 2e 20 22 79 65 6c 6c 6f 77 22 29 0a 20 ge").....(moderate..."yellow")..
2820 20 20 20 28 6e 6f 72 6d 61 6c 20 20 20 2e 20 22 67 72 65 65 6e 22 29 0a 20 20 20 20 28 6c 6f 77 ...(normal....."green").....(low
2840 20 20 20 20 20 20 2e 20 22 62 6c 75 65 22 29 0a 20 20 20 20 28 74 72 69 76 69 61 6c 20 20 2e 20 ........"blue").....(trivial....
2860 22 70 75 72 70 6c 65 22 29 29 0a 20 20 22 43 6f 6c 6f 72 73 20 61 73 73 6f 63 69 61 74 65 64 20 "purple"))..."Colors.associated.
2880 62 79 20 64 65 66 61 75 6c 74 20 77 69 74 68 20 61 6c 65 72 74 20 73 65 76 65 72 69 74 69 65 73 by.default.with.alert.severities
28a0 2e 0a 54 68 69 73 20 69 73 20 75 73 65 64 20 62 79 20 73 74 79 6c 65 73 20 65 78 74 65 72 6e 61 ..This.is.used.by.styles.externa
28c0 6c 20 74 6f 20 45 6d 61 63 73 20 74 68 61 74 20 64 6f 6e 27 74 20 75 6e 64 65 72 73 74 61 6e 64 l.to.Emacs.that.don't.understand
28e0 20 66 61 63 65 73 2e 22 0a 20 20 3a 74 79 70 65 20 27 28 61 6c 69 73 74 20 3a 6b 65 79 2d 74 79 .faces."...:type.'(alist.:key-ty
2900 70 65 20 73 79 6d 62 6f 6c 20 3a 76 61 6c 75 65 2d 74 79 70 65 20 63 6f 6c 6f 72 29 0a 20 20 3a pe.symbol.:value-type.color)...:
2920 67 72 6f 75 70 20 27 61 6c 65 72 74 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 61 6c 65 72 74 2d group.'alert)..(defcustom.alert-
2940 6c 6f 67 2d 73 65 76 65 72 69 74 79 2d 66 75 6e 63 74 69 6f 6e 73 0a 20 20 27 28 28 75 72 67 65 log-severity-functions...'((urge
2960 6e 74 20 20 20 2e 20 61 6c 65 72 74 2d 2d 6c 6f 67 2d 66 61 74 61 6c 29 0a 20 20 20 20 28 68 69 nt.....alert--log-fatal).....(hi
2980 67 68 20 20 20 20 20 2e 20 61 6c 65 72 74 2d 2d 6c 6f 67 2d 65 72 72 6f 72 29 0a 20 20 20 20 28 gh.......alert--log-error).....(
29a0 6d 6f 64 65 72 61 74 65 20 2e 20 61 6c 65 72 74 2d 2d 6c 6f 67 2d 77 61 72 6e 29 0a 20 20 20 20 moderate...alert--log-warn).....
29c0 28 6e 6f 72 6d 61 6c 20 20 20 2e 20 61 6c 65 72 74 2d 2d 6c 6f 67 2d 69 6e 66 6f 29 0a 20 20 20 (normal.....alert--log-info)....
29e0 20 28 6c 6f 77 20 20 20 20 20 20 2e 20 61 6c 65 72 74 2d 2d 6c 6f 67 2d 64 65 62 75 67 29 0a 20 .(low........alert--log-debug)..
2a00 20 20 20 28 74 72 69 76 69 61 6c 20 20 2e 20 61 6c 65 72 74 2d 2d 6c 6f 67 2d 74 72 61 63 65 29 ...(trivial....alert--log-trace)
2a20 29 0a 20 20 22 4c 6f 67 34 65 20 6c 6f 67 67 69 6e 67 20 66 75 6e 63 74 69 6f 6e 73 2e 22 0a 20 )..."Log4e.logging.functions."..
2a40 20 3a 74 79 70 65 20 27 28 61 6c 69 73 74 20 3a 6b 65 79 2d 74 79 70 65 20 73 79 6d 62 6f 6c 20 .:type.'(alist.:key-type.symbol.
2a60 3a 76 61 6c 75 65 2d 74 79 70 65 20 63 6f 6c 6f 72 29 0a 20 20 3a 67 72 6f 75 70 20 27 61 6c 65 :value-type.color)...:group.'ale
2a80 72 74 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 61 6c 65 72 74 2d 6c 6f 67 2d 6c 65 76 65 6c 0a rt)..(defcustom.alert-log-level.
2aa0 20 20 27 6e 6f 72 6d 61 6c 0a 20 20 22 4d 69 6e 69 6d 75 6d 20 6c 65 76 65 6c 20 6f 66 20 6d 65 ..'normal..."Minimum.level.of.me
2ac0 73 73 61 67 65 73 20 74 6f 20 6c 6f 67 2e 22 0a 20 20 3a 74 79 70 65 20 27 73 79 6d 62 6f 6c 0a ssages.to.log."...:type.'symbol.
2ae0 20 20 3a 67 72 6f 75 70 20 27 61 6c 65 72 74 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 61 6c 65 ..:group.'alert)..(defcustom.ale
2b00 72 74 2d 72 65 76 65 61 6c 2d 69 64 6c 65 2d 74 69 6d 65 20 31 35 0a 20 20 22 49 66 20 69 64 6c rt-reveal-idle-time.15..."If.idl
2b20 65 20 74 68 69 73 20 6d 61 6e 79 20 73 65 63 6f 6e 64 73 2c 20 72 75 6c 65 73 20 77 69 6c 6c 20 e.this.many.seconds,.rules.will.
2b40 6d 61 74 63 68 20 74 68 65 20 60 69 64 6c 65 27 20 70 72 6f 70 65 72 74 79 2e 22 0a 20 20 3a 74 match.the.`idle'.property."...:t
2b60 79 70 65 20 27 69 6e 74 65 67 65 72 0a 20 20 3a 67 72 6f 75 70 20 27 61 6c 65 72 74 29 0a 0a 28 ype.'integer...:group.'alert)..(
2b80 64 65 66 63 75 73 74 6f 6d 20 61 6c 65 72 74 2d 70 65 72 73 69 73 74 2d 69 64 6c 65 2d 74 69 6d defcustom.alert-persist-idle-tim
2ba0 65 20 39 30 30 0a 20 20 22 49 66 20 69 64 6c 65 20 74 68 69 73 20 6d 61 6e 79 20 73 65 63 6f 6e e.900..."If.idle.this.many.secon
2bc0 64 73 2c 20 61 6c 6c 20 61 6c 65 72 74 73 20 62 65 63 6f 6d 65 20 70 65 72 73 69 73 74 65 6e 74 ds,.all.alerts.become.persistent
2be0 2e 0a 54 68 69 73 20 63 61 6e 20 62 65 20 6f 76 65 72 72 69 64 64 65 6e 20 77 69 74 68 20 74 68 ..This.can.be.overridden.with.th
2c00 65 20 4e 65 76 65 72 20 50 65 72 73 69 73 74 20 6f 70 74 69 6f 6e 20 28 3a 6e 65 76 65 72 2d 70 e.Never.Persist.option.(:never-p
2c20 65 72 73 69 73 74 29 2e 22 0a 20 20 3a 74 79 70 65 20 27 69 6e 74 65 67 65 72 0a 20 20 3a 67 72 ersist)."...:type.'integer...:gr
2c40 6f 75 70 20 27 61 6c 65 72 74 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 61 6c 65 72 74 2d 66 61 oup.'alert)..(defcustom.alert-fa
2c60 64 65 2d 74 69 6d 65 20 35 0a 20 20 22 49 66 20 6e 6f 74 20 69 64 6c 65 2c 20 61 6c 65 72 74 73 de-time.5..."If.not.idle,.alerts
2c80 20 64 69 73 61 70 70 65 61 72 20 61 66 74 65 72 20 74 68 69 73 20 6d 61 6e 79 20 73 65 63 6f 6e .disappear.after.this.many.secon
2ca0 64 73 2e 0a 54 68 65 20 61 6d 6f 75 6e 74 20 6f 66 20 69 64 6c 65 20 74 69 6d 65 20 69 73 20 67 ds..The.amount.of.idle.time.is.g
2cc0 6f 76 65 72 6e 65 64 20 62 79 20 60 61 6c 65 72 74 2d 70 65 72 73 69 73 74 2d 69 64 6c 65 2d 74 overned.by.`alert-persist-idle-t
2ce0 69 6d 65 27 2e 22 0a 20 20 3a 74 79 70 65 20 27 69 6e 74 65 67 65 72 0a 20 20 3a 67 72 6f 75 70 ime'."...:type.'integer...:group
2d00 20 27 61 6c 65 72 74 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 61 6c 65 72 74 2d 68 69 64 65 2d .'alert)..(defcustom.alert-hide-
2d20 61 6c 6c 2d 6e 6f 74 69 66 69 63 61 74 69 6f 6e 73 20 6e 69 6c 0a 20 20 22 49 66 20 6e 6f 6e 2d all-notifications.nil..."If.non-
2d40 6e 69 6c 2c 20 6e 6f 20 61 6c 65 72 74 73 20 61 72 65 20 65 76 65 72 20 73 68 6f 77 6e 20 74 6f nil,.no.alerts.are.ever.shown.to
2d60 20 74 68 65 20 75 73 65 72 2e 22 0a 20 20 3a 74 79 70 65 20 27 62 6f 6f 6c 65 61 6e 0a 20 20 3a .the.user."...:type.'boolean...:
2d80 67 72 6f 75 70 20 27 61 6c 65 72 74 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 61 6c 65 72 74 2d group.'alert)..(defcustom.alert-
2da0 6c 6f 67 2d 6d 65 73 73 61 67 65 73 20 74 0a 20 20 22 49 66 20 6e 6f 6e 2d 6e 69 6c 2c 20 61 6c log-messages.t..."If.non-nil,.al
2dc0 6c 20 61 6c 65 72 74 73 20 61 72 65 20 6c 6f 67 67 65 64 20 74 6f 20 74 68 65 20 2a 41 6c 65 72 l.alerts.are.logged.to.the.*Aler
2de0 74 73 2a 20 62 75 66 66 65 72 2e 22 0a 20 20 3a 74 79 70 65 20 27 62 6f 6f 6c 65 61 6e 0a 20 20 ts*.buffer."...:type.'boolean...
2e00 3a 67 72 6f 75 70 20 27 61 6c 65 72 74 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 61 6c 65 72 74 :group.'alert)..(defcustom.alert
2e20 2d 64 65 66 61 75 6c 74 2d 69 63 6f 6e 0a 20 20 28 63 6f 6e 63 61 74 20 64 61 74 61 2d 64 69 72 -default-icon...(concat.data-dir
2e40 65 63 74 6f 72 79 0a 20 20 20 20 20 20 20 20 20 20 22 69 6d 61 67 65 73 2f 69 63 6f 6e 73 2f 68 ectory..........."images/icons/h
2e60 69 63 6f 6c 6f 72 2f 73 63 61 6c 61 62 6c 65 2f 61 70 70 73 2f 65 6d 61 63 73 2e 73 76 67 22 29 icolor/scalable/apps/emacs.svg")
2e80 0a 20 20 22 46 69 6c 65 6e 61 6d 65 20 6f 66 20 64 65 66 61 75 6c 74 20 69 63 6f 6e 20 74 6f 20 ..."Filename.of.default.icon.to.
2ea0 73 68 6f 77 20 66 6f 72 20 6c 69 62 6e 6f 74 69 66 79 2d 61 6c 65 72 74 73 2e 22 0a 20 20 3a 74 show.for.libnotify-alerts."...:t
2ec0 79 70 65 20 27 73 74 72 69 6e 67 0a 20 20 3a 67 72 6f 75 70 20 27 61 6c 65 72 74 29 0a 0a 28 64 ype.'string...:group.'alert)..(d
2ee0 65 66 76 61 72 20 61 6c 65 72 74 2d 73 74 79 6c 65 73 20 6e 69 6c 29 0a 0a 28 64 65 66 75 6e 20 efvar.alert-styles.nil)..(defun.
2f00 61 6c 65 72 74 2d 73 74 79 6c 65 73 2d 72 61 64 69 6f 2d 74 79 70 65 20 28 77 69 64 67 65 74 2d alert-styles-radio-type.(widget-
2f20 6e 61 6d 65 29 0a 20 20 28 61 70 70 65 6e 64 0a 20 20 20 28 6c 69 73 74 20 77 69 64 67 65 74 2d name)...(append....(list.widget-
2f40 6e 61 6d 65 20 3a 74 61 67 20 22 53 74 79 6c 65 22 29 0a 20 20 20 28 6d 61 70 63 61 72 20 23 27 name.:tag."Style")....(mapcar.#'
2f60 28 6c 61 6d 62 64 61 20 28 73 74 79 6c 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 (lambda.(style)................(
2f80 6c 69 73 74 20 27 63 6f 6e 73 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 list.'const.....................
2fa0 20 3a 74 61 67 20 28 6f 72 20 28 70 6c 69 73 74 2d 67 65 74 20 28 63 64 72 20 73 74 79 6c 65 29 .:tag.(or.(plist-get.(cdr.style)
2fc0 20 3a 74 69 74 6c 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 .:title)........................
2fe0 20 20 20 20 20 20 20 28 73 79 6d 62 6f 6c 2d 6e 61 6d 65 20 28 63 61 72 20 73 74 79 6c 65 29 29 .......(symbol-name.(car.style))
3000 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 61 72 20 73 74 79 6c )......................(car.styl
3020 65 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 61 6c 65 72 74 2d 73 74 79 6c e)))............(setq.alert-styl
3040 65 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 6f 72 74 20 61 6c 65 72 74 2d es..................(sort.alert-
3060 73 74 79 6c 65 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 27 styles........................#'
3080 28 6c 61 6d 62 64 61 20 28 6c 20 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 (lambda.(l.r)...................
30a0 20 20 20 20 20 20 20 20 20 28 73 74 72 69 6e 67 3c 20 28 73 79 6d 62 6f 6c 2d 6e 61 6d 65 20 28 .........(string<.(symbol-name.(
30c0 63 61 72 20 6c 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 car.l)).........................
30e0 20 20 20 20 20 20 20 20 20 20 20 20 28 73 79 6d 62 6f 6c 2d 6e 61 6d 65 20 28 63 61 72 20 72 29 ............(symbol-name.(car.r)
3100 29 29 29 29 29 29 29 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 61 6c 65 72 74 2d 64 65 66 61 75 ))))))))..(defcustom.alert-defau
3120 6c 74 2d 73 74 79 6c 65 20 27 6d 65 73 73 61 67 65 0a 20 20 22 54 68 65 20 73 74 79 6c 65 20 74 lt-style.'message..."The.style.t
3140 6f 20 75 73 65 20 69 66 20 6e 6f 20 72 75 6c 65 73 20 6d 61 74 63 68 20 69 6e 20 74 68 65 20 63 o.use.if.no.rules.match.in.the.c
3160 75 72 72 65 6e 74 20 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 2e 0a 49 66 20 61 20 63 6f 6e 66 69 urrent.configuration..If.a.confi
3180 67 75 72 65 64 20 72 75 6c 65 20 64 6f 65 73 20 6d 61 74 63 68 20 61 6e 20 61 6c 65 72 74 2c 20 gured.rule.does.match.an.alert,.
31a0 74 68 69 73 20 73 74 79 6c 65 20 69 73 20 6e 6f 74 20 75 73 65 64 3b 0a 69 74 20 69 73 20 73 74 this.style.is.not.used;.it.is.st
31c0 72 69 63 74 6c 79 20 61 20 66 61 6c 6c 62 61 63 6b 2e 22 0a 20 20 3a 74 79 70 65 20 28 61 6c 65 rictly.a.fallback."...:type.(ale
31e0 72 74 2d 73 74 79 6c 65 73 2d 72 61 64 69 6f 2d 74 79 70 65 20 27 72 61 64 69 6f 29 0a 20 20 3a rt-styles-radio-type.'radio)...:
3200 67 72 6f 75 70 20 27 61 6c 65 72 74 29 0a 0a 28 64 65 66 75 6e 20 61 6c 65 72 74 2d 63 6f 6e 66 group.'alert)..(defun.alert-conf
3220 69 67 75 72 61 74 69 6f 6e 2d 74 79 70 65 20 28 29 0a 20 20 28 6c 69 73 74 20 27 72 65 70 65 61 iguration-type.()...(list.'repea
3240 74 0a 20 20 20 20 20 20 20 20 28 6c 69 73 74 0a 20 20 20 20 20 20 20 20 20 27 6c 69 73 74 20 3a t.........(list..........'list.:
3260 74 61 67 20 22 53 65 6c 65 63 74 20 73 74 79 6c 65 20 69 66 20 61 6c 65 72 74 20 6d 61 74 63 68 tag."Select.style.if.alert.match
3280 65 73 20 73 65 6c 65 63 74 6f 72 22 0a 20 20 20 20 20 20 20 20 20 27 28 72 65 70 65 61 74 0a 20 es.selector"..........'(repeat..
32a0 20 20 20 20 20 20 20 20 20 20 3a 74 61 67 20 22 53 65 6c 65 63 74 6f 72 22 0a 20 20 20 20 20 20 ..........:tag."Selector".......
32c0 20 20 20 20 20 28 63 68 6f 69 63 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 20 3a .....(choice.............(cons.:
32e0 74 61 67 20 22 53 65 76 65 72 69 74 79 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 tag."Severity"..................
3300 20 28 63 6f 6e 73 74 20 3a 66 6f 72 6d 61 74 20 22 22 20 3a 73 65 76 65 72 69 74 79 29 0a 20 20 .(const.:format."".:severity)...
3320 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 20 28 63 6f 6e 73 74 20 3a 74 61 67 ................(set.(const.:tag
3340 20 22 55 72 67 65 6e 74 22 20 75 72 67 65 6e 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ."Urgent".urgent)...............
3360 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 74 20 3a 74 61 67 20 22 48 69 67 68 22 20 68 69 67 68 .........(const.:tag."High".high
3380 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 63 6f 6e 73 74 20 )........................(const.
33a0 3a 74 61 67 20 22 4d 6f 64 65 72 61 74 65 22 20 6d 6f 64 65 72 61 74 65 29 0a 20 20 20 20 20 20 :tag."Moderate".moderate).......
33c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 74 20 3a 74 61 67 20 22 4e 6f .................(const.:tag."No
33e0 72 6d 61 6c 22 20 6e 6f 72 6d 61 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 rmal".normal)...................
3400 20 20 20 20 20 28 63 6f 6e 73 74 20 3a 74 61 67 20 22 4c 6f 77 22 20 6c 6f 77 29 0a 20 20 20 20 .....(const.:tag."Low".low).....
3420 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 74 20 3a 74 61 67 20 22 ...................(const.:tag."
3440 54 72 69 76 69 61 6c 22 20 74 72 69 76 69 61 6c 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 Trivial".trivial))).............
3460 28 63 6f 6e 73 20 3a 74 61 67 20 22 55 73 65 72 20 53 74 61 74 75 73 22 0a 20 20 20 20 20 20 20 (cons.:tag."User.Status"........
3480 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 74 20 3a 66 6f 72 6d 61 74 20 22 22 20 3a 73 74 ...........(const.:format."".:st
34a0 61 74 75 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 20 28 63 6f atus)...................(set.(co
34c0 6e 73 74 20 3a 74 61 67 20 22 42 75 66 66 65 72 20 6e 6f 74 20 76 69 73 69 62 6c 65 22 20 62 75 nst.:tag."Buffer.not.visible".bu
34e0 72 69 65 64 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 63 6f ried)........................(co
3500 6e 73 74 20 3a 74 61 67 20 22 42 75 66 66 65 72 20 76 69 73 69 62 6c 65 22 20 76 69 73 69 62 6c nst.:tag."Buffer.visible".visibl
3520 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 28 63 6f 6e 73 74 e)........................(const
3540 20 3a 74 61 67 20 22 42 75 66 66 65 72 20 73 65 6c 65 63 74 65 64 22 20 73 65 6c 65 63 74 65 64 .:tag."Buffer.selected".selected
3560 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 63 6f 6e 73 74 20 )........................(const.
3580 3a 74 61 67 20 22 42 75 66 66 65 72 20 73 65 6c 65 63 74 65 64 2c 20 75 73 65 72 20 69 64 6c 65 :tag."Buffer.selected,.user.idle
35a0 22 20 69 64 6c 65 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 20 3a 74 61 67 ".idle))).............(cons.:tag
35c0 20 22 4d 61 6a 6f 72 20 4d 6f 64 65 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ."Major.Mode"...................
35e0 28 63 6f 6e 73 74 20 3a 66 6f 72 6d 61 74 20 22 22 20 3a 6d 6f 64 65 29 0a 20 20 20 20 20 20 20 (const.:format."".:mode)........
3600 20 20 20 20 20 20 20 20 20 20 20 72 65 67 65 78 70 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 ...........regexp).............(
3620 63 6f 6e 73 20 3a 74 61 67 20 22 43 61 74 65 67 6f 72 79 22 0a 20 20 20 20 20 20 20 20 20 20 20 cons.:tag."Category"............
3640 20 20 20 20 20 20 20 28 63 6f 6e 73 74 20 3a 66 6f 72 6d 61 74 20 22 22 20 3a 63 61 74 65 67 6f .......(const.:format."".:catego
3660 72 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 67 65 78 70 29 0a 20 20 ry)...................regexp)...
3680 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 20 3a 74 61 67 20 22 54 69 74 6c 65 22 0a 20 20 20 ..........(cons.:tag."Title"....
36a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 74 20 3a 66 6f 72 6d 61 74 20 22 22 ...............(const.:format.""
36c0 20 3a 74 69 74 6c 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 67 65 78 .:title)...................regex
36e0 70 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 20 3a 74 61 67 20 22 4d 65 73 73 61 p).............(cons.:tag."Messa
3700 67 65 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 74 20 3a 66 6f ge"...................(const.:fo
3720 72 6d 61 74 20 22 22 20 3a 6d 65 73 73 61 67 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 rmat."".:message)...............
3740 20 20 20 20 72 65 67 65 78 70 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 20 3a 74 ....regexp).............(cons.:t
3760 61 67 20 22 50 72 65 64 69 63 61 74 65 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ag."Predicate"..................
3780 20 28 63 6f 6e 73 74 20 3a 66 6f 72 6d 61 74 20 22 22 20 3a 70 72 65 64 69 63 61 74 65 29 0a 20 .(const.:format."".:predicate)..
37a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 75 6e 63 74 69 6f 6e 29 0a 20 20 20 20 20 .................function)......
37c0 20 20 20 20 20 20 20 28 63 6f 6e 73 20 3a 74 61 67 20 22 49 63 6f 6e 22 0a 20 20 20 20 20 20 20 .......(cons.:tag."Icon"........
37e0 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 74 20 3a 66 6f 72 6d 61 74 20 22 22 20 3a 69 63 ...........(const.:format."".:ic
3800 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 67 65 78 70 29 29 29 0a on)...................regexp))).
3820 20 20 20 20 20 20 20 20 20 28 61 6c 65 72 74 2d 73 74 79 6c 65 73 2d 72 61 64 69 6f 2d 74 79 70 .........(alert-styles-radio-typ
3840 65 20 27 63 68 6f 69 63 65 29 0a 20 20 20 20 20 20 20 20 20 27 28 73 65 74 20 3a 74 61 67 20 22 e.'choice)..........'(set.:tag."
3860 4f 70 74 69 6f 6e 73 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 20 3a 74 Options"................(cons.:t
3880 61 67 20 22 4d 61 6b 65 20 61 6c 65 72 74 20 70 65 72 73 69 73 74 65 6e 74 22 0a 20 20 20 20 20 ag."Make.alert.persistent"......
38a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 74 20 3a 66 6f 72 6d 61 74 20 22 ................(const.:format."
38c0 22 20 3a 70 65 72 73 69 73 74 65 6e 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ".:persistent)..................
38e0 20 20 20 20 28 63 68 6f 69 63 65 20 3a 76 61 6c 75 65 20 74 20 28 63 6f 6e 73 74 20 3a 74 61 67 ....(choice.:value.t.(const.:tag
3900 20 22 59 65 73 22 20 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 ."Yes".t).......................
3920 20 20 20 20 20 20 20 28 66 75 6e 63 74 69 6f 6e 20 3a 74 61 67 20 22 50 72 65 64 69 63 61 74 65 .......(function.:tag."Predicate
3940 22 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 20 3a 74 61 67 20 22 ")))................(cons.:tag."
3960 4e 65 76 65 72 20 70 65 72 73 69 73 74 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 Never.persist"..................
3980 20 20 20 20 28 63 6f 6e 73 74 20 3a 66 6f 72 6d 61 74 20 22 22 20 3a 6e 65 76 65 72 2d 70 65 72 ....(const.:format."".:never-per
39a0 73 69 73 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 68 6f 69 sist)......................(choi
39c0 63 65 20 3a 76 61 6c 75 65 20 74 20 28 63 6f 6e 73 74 20 3a 74 61 67 20 22 59 65 73 22 20 74 29 ce.:value.t.(const.:tag."Yes".t)
39e0 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 28 66 ..............................(f
3a00 75 6e 63 74 69 6f 6e 20 3a 74 61 67 20 22 50 72 65 64 69 63 61 74 65 22 29 29 29 0a 20 20 20 20 unction.:tag."Predicate"))).....
3a20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 20 3a 74 61 67 20 22 43 6f 6e 74 69 6e 75 65 20 ...........(cons.:tag."Continue.
3a40 74 6f 20 6e 65 78 74 20 72 75 6c 65 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 to.next.rule"...................
3a60 20 20 20 28 63 6f 6e 73 74 20 3a 66 6f 72 6d 61 74 20 22 22 20 3a 63 6f 6e 74 69 6e 75 65 29 0a ...(const.:format."".:continue).
3a80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 68 6f 69 63 65 20 3a 76 61 .....................(choice.:va
3aa0 6c 75 65 20 74 20 28 63 6f 6e 73 74 20 3a 74 61 67 20 22 59 65 73 22 20 74 29 0a 20 20 20 20 20 lue.t.(const.:tag."Yes".t)......
3ac0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 75 6e 63 74 69 6f ........................(functio
3ae0 6e 20 3a 74 61 67 20 22 50 72 65 64 69 63 61 74 65 22 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 n.:tag."Predicate")))...........
3b00 20 20 20 20 20 3b 3b 28 6c 69 73 74 20 3a 74 61 67 20 22 43 68 61 6e 67 65 20 53 65 76 65 72 69 .....;;(list.:tag."Change.Severi
3b20 74 79 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 20 20 20 20 20 28 72 61 64 69 ty"................;;......(radi
3b40 6f 20 3a 74 61 67 20 22 46 72 6f 6d 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 o.:tag."From"................;;.
3b60 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 74 20 3a 74 61 67 20 22 55 72 67 65 6e 74 22 ............(const.:tag."Urgent"
3b80 20 75 72 67 65 6e 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 20 20 20 20 20 .urgent)................;;......
3ba0 20 20 20 20 20 20 20 28 63 6f 6e 73 74 20 3a 74 61 67 20 22 48 69 67 68 22 20 68 69 67 68 29 0a .......(const.:tag."High".high).
3bc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 ...............;;.............(c
3be0 6f 6e 73 74 20 3a 74 61 67 20 22 4d 6f 64 65 72 61 74 65 22 20 6d 6f 64 65 72 61 74 65 29 0a 20 onst.:tag."Moderate".moderate)..
3c00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f ..............;;.............(co
3c20 6e 73 74 20 3a 74 61 67 20 22 4e 6f 72 6d 61 6c 22 20 6e 6f 72 6d 61 6c 29 0a 20 20 20 20 20 20 nst.:tag."Normal".normal).......
3c40 20 20 20 20 20 20 20 20 20 3b 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 74 20 3a .........;;.............(const.:
3c60 74 61 67 20 22 4c 6f 77 22 20 6c 6f 77 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b tag."Low".low)................;;
3c80 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 74 20 3a 74 61 67 20 22 54 72 69 76 69 61 .............(const.:tag."Trivia
3ca0 6c 22 20 74 72 69 76 69 61 6c 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 20 l".trivial))................;;..
3cc0 20 20 20 20 28 72 61 64 69 6f 20 3a 74 61 67 20 22 54 6f 22 0a 20 20 20 20 20 20 20 20 20 20 20 ....(radio.:tag."To"............
3ce0 20 20 20 20 3b 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 74 20 3a 74 61 67 20 22 ....;;.............(const.:tag."
3d00 55 72 67 65 6e 74 22 20 75 72 67 65 6e 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b Urgent".urgent)................;
3d20 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 74 20 3a 74 61 67 20 22 48 69 67 68 22 ;.............(const.:tag."High"
3d40 20 68 69 67 68 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 20 20 20 20 20 20 20 .high)................;;........
3d60 20 20 20 20 20 28 63 6f 6e 73 74 20 3a 74 61 67 20 22 4d 6f 64 65 72 61 74 65 22 20 6d 6f 64 65 .....(const.:tag."Moderate".mode
3d80 72 61 74 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 20 20 20 20 20 20 20 20 rate)................;;.........
3da0 20 20 20 20 28 63 6f 6e 73 74 20 3a 74 61 67 20 22 4e 6f 72 6d 61 6c 22 20 6e 6f 72 6d 61 6c 29 ....(const.:tag."Normal".normal)
3dc0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 28 ................;;.............(
3de0 63 6f 6e 73 74 20 3a 74 61 67 20 22 4c 6f 77 22 20 6c 6f 77 29 0a 20 20 20 20 20 20 20 20 20 20 const.:tag."Low".low)...........
3e00 20 20 20 20 20 3b 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 74 20 3a 74 61 67 20 .....;;.............(const.:tag.
3e20 22 54 72 69 76 69 61 6c 22 20 74 72 69 76 69 61 6c 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 "Trivial".trivial)))............
3e40 20 20 20 20 29 29 29 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 61 6c 65 72 74 2d 75 73 65 72 2d ....))))..(defcustom.alert-user-
3e60 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20 6e 69 6c 0a 20 20 22 52 75 6c 65 73 20 74 68 61 74 20 configuration.nil..."Rules.that.
3e80 64 65 74 65 72 6d 69 6e 65 20 68 6f 77 20 61 6e 64 20 77 68 65 6e 20 61 6c 65 72 74 73 20 67 65 determine.how.and.when.alerts.ge
3ea0 74 20 64 69 73 70 6c 61 79 65 64 2e 22 0a 20 20 3a 74 79 70 65 20 28 61 6c 65 72 74 2d 63 6f 6e t.displayed."...:type.(alert-con
3ec0 66 69 67 75 72 61 74 69 6f 6e 2d 74 79 70 65 29 0a 20 20 3a 67 72 6f 75 70 20 27 61 6c 65 72 74 figuration-type)...:group.'alert
3ee0 29 0a 0a 28 64 65 66 76 61 72 20 61 6c 65 72 74 2d 69 6e 74 65 72 6e 61 6c 2d 63 6f 6e 66 69 67 )..(defvar.alert-internal-config
3f00 75 72 61 74 69 6f 6e 20 6e 69 6c 0a 20 20 22 52 75 6c 65 73 20 61 64 64 65 64 20 62 79 20 60 61 uration.nil..."Rules.added.by.`a
3f20 6c 65 72 74 2d 61 64 64 2d 72 75 6c 65 27 2e 0a 46 6f 72 20 75 73 65 72 20 63 75 73 74 6f 6d 69 lert-add-rule'..For.user.customi
3f40 7a 61 74 69 6f 6e 2c 20 73 65 65 20 60 61 6c 65 72 74 2d 75 73 65 72 2d 63 6f 6e 66 69 67 75 72 zation,.see.`alert-user-configur
3f60 61 74 69 6f 6e 27 2e 22 29 0a 0c 0a 28 64 65 66 66 61 63 65 20 61 6c 65 72 74 2d 75 72 67 65 6e ation'.")...(defface.alert-urgen
3f80 74 2d 66 61 63 65 0a 20 20 27 28 28 74 20 28 3a 66 6f 72 65 67 72 6f 75 6e 64 20 22 52 65 64 22 t-face...'((t.(:foreground."Red"
3fa0 20 3a 62 6f 6c 64 20 74 29 29 29 0a 20 20 22 55 72 67 65 6e 74 20 61 6c 65 72 74 20 66 61 63 65 .:bold.t)))..."Urgent.alert.face
3fc0 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 61 6c 65 72 74 29 0a 0a 28 64 65 66 66 61 63 65 20 61 6c ."...:group.'alert)..(defface.al
3fe0 65 72 74 2d 68 69 67 68 2d 66 61 63 65 0a 20 20 27 28 28 74 20 28 3a 66 6f 72 65 67 72 6f 75 6e ert-high-face...'((t.(:foregroun
4000 64 20 22 44 61 72 6b 20 4f 72 61 6e 67 65 22 20 3a 62 6f 6c 64 20 74 29 29 29 0a 20 20 22 48 69 d."Dark.Orange".:bold.t)))..."Hi
4020 67 68 20 61 6c 65 72 74 20 66 61 63 65 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 61 6c 65 72 74 29 gh.alert.face."...:group.'alert)
4040 0a 0a 28 64 65 66 66 61 63 65 20 61 6c 65 72 74 2d 6d 6f 64 65 72 61 74 65 2d 66 61 63 65 0a 20 ..(defface.alert-moderate-face..
4060 20 27 28 28 74 20 28 3a 66 6f 72 65 67 72 6f 75 6e 64 20 22 47 6f 6c 64 22 20 3a 62 6f 6c 64 20 .'((t.(:foreground."Gold".:bold.
4080 74 29 29 29 0a 20 20 22 4d 6f 64 65 72 61 74 65 20 61 6c 65 72 74 20 66 61 63 65 2e 22 0a 20 20 t)))..."Moderate.alert.face."...
40a0 3a 67 72 6f 75 70 20 27 61 6c 65 72 74 29 0a 0a 28 64 65 66 66 61 63 65 20 61 6c 65 72 74 2d 6e :group.'alert)..(defface.alert-n
40c0 6f 72 6d 61 6c 2d 66 61 63 65 0a 20 20 27 28 28 74 29 29 0a 20 20 22 4e 6f 72 6d 61 6c 20 61 6c ormal-face...'((t))..."Normal.al
40e0 65 72 74 20 66 61 63 65 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 61 6c 65 72 74 29 0a 0a 28 64 65 ert.face."...:group.'alert)..(de
4100 66 66 61 63 65 20 61 6c 65 72 74 2d 6c 6f 77 2d 66 61 63 65 0a 20 20 27 28 28 74 20 28 3a 66 6f fface.alert-low-face...'((t.(:fo
4120 72 65 67 72 6f 75 6e 64 20 22 44 61 72 6b 20 42 6c 75 65 22 29 29 29 0a 20 20 22 4c 6f 77 20 61 reground."Dark.Blue")))..."Low.a
4140 6c 65 72 74 20 66 61 63 65 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 61 6c 65 72 74 29 0a 0a 28 64 lert.face."...:group.'alert)..(d
4160 65 66 66 61 63 65 20 61 6c 65 72 74 2d 74 72 69 76 69 61 6c 2d 66 61 63 65 0a 20 20 27 28 28 74 efface.alert-trivial-face...'((t
4180 20 28 3a 66 6f 72 65 67 72 6f 75 6e 64 20 22 44 61 72 6b 20 56 69 6f 6c 65 74 22 29 29 29 0a 20 .(:foreground."Dark.Violet")))..
41a0 20 22 54 72 69 76 69 61 6c 20 61 6c 65 72 74 20 66 61 63 65 2e 22 0a 20 20 3a 67 72 6f 75 70 20 ."Trivial.alert.face."...:group.
41c0 27 61 6c 65 72 74 29 0a 0c 0a 28 64 65 66 75 6e 20 61 6c 65 72 74 2d 64 65 66 69 6e 65 2d 73 74 'alert)...(defun.alert-define-st
41e0 79 6c 65 20 28 6e 61 6d 65 20 26 72 65 73 74 20 70 6c 69 73 74 29 0a 20 20 22 44 65 66 69 6e 65 yle.(name.&rest.plist)..."Define
4200 20 61 20 6e 65 77 20 73 74 79 6c 65 20 66 6f 72 20 6e 6f 74 69 66 79 69 6e 67 20 74 68 65 20 75 .a.new.style.for.notifying.the.u
4220 73 65 72 20 6f 66 20 61 6c 65 72 74 20 6d 65 73 73 61 67 65 73 2e 0a 54 6f 20 63 72 65 61 74 65 ser.of.alert.messages..To.create
4240 20 61 20 6e 65 77 20 73 74 79 6c 65 2c 20 79 6f 75 20 6e 65 65 64 20 74 6f 20 61 74 20 6c 65 61 .a.new.style,.you.need.to.at.lea
4260 73 74 20 77 72 69 74 65 20 61 20 5c 22 6e 6f 74 69 66 69 65 72 5c 22 2c 0a 77 68 69 63 68 20 69 st.write.a.\"notifier\",.which.i
4280 73 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 68 61 74 20 72 65 63 65 69 76 65 73 20 74 68 65 20 64 s.a.function.that.receives.the.d
42a0 65 74 61 69 6c 73 20 6f 66 20 74 68 65 20 61 6c 65 72 74 2e 0a 54 68 65 73 65 20 64 65 74 61 69 etails.of.the.alert..These.detai
42c0 6c 73 20 61 72 65 20 67 69 76 65 6e 20 69 6e 20 61 20 70 6c 69 73 74 20 77 68 69 63 68 20 75 73 ls.are.given.in.a.plist.which.us
42e0 65 73 20 76 61 72 69 6f 75 73 20 6b 65 79 77 6f 72 64 20 74 6f 0a 69 64 65 6e 74 69 66 79 20 74 es.various.keyword.to.identify.t
4300 68 65 20 70 61 72 74 73 20 6f 66 20 74 68 65 20 61 6c 65 72 74 2e 20 20 48 65 72 65 20 69 73 20 he.parts.of.the.alert...Here.is.
4320 61 20 70 72 6f 74 6f 74 79 70 69 63 61 6c 20 73 74 79 6c 65 0a 64 65 66 69 6e 69 74 69 6f 6e 3a a.prototypical.style.definition:
4340 0a 0a 5c 28 61 6c 65 72 74 2d 64 65 66 69 6e 65 2d 73 74 79 6c 65 20 27 73 74 79 6c 65 2d 6e 61 ..\(alert-define-style.'style-na
4360 6d 65 20 3a 74 69 74 6c 65 20 5c 22 4d 79 20 53 74 79 6c 65 27 73 20 74 69 74 6c 65 5c 22 0a 20 me.:title.\"My.Style's.title\"..
4380 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 6e 6f 74 69 66 69 65 72 0a 20 20 20 ...................:notifier....
43a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 69 6e 66 6f 29 0a .................(lambda.(info).
43c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 54 68 65 20 6d 65 73 ......................;;.The.mes
43e0 73 61 67 65 20 74 65 78 74 20 69 73 20 3a 6d 65 73 73 61 67 65 0a 20 20 20 20 20 20 20 20 20 20 sage.text.is.:message...........
4400 20 20 20 20 20 20 20 20 20 20 20 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 6d 65 73 ............(plist-get.info.:mes
4420 73 61 67 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 3b 3b 20 54 sage).......................;;.T
4440 68 65 20 3a 74 69 74 6c 65 20 6f 66 20 74 68 65 20 61 6c 65 72 74 0a 20 20 20 20 20 20 20 20 20 he.:title.of.the.alert..........
4460 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 74 69 .............(plist-get.info.:ti
4480 74 6c 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 3b 3b 20 54 68 tle).......................;;.Th
44a0 65 20 3a 63 61 74 65 67 6f 72 79 20 6f 66 20 74 68 65 20 61 6c 65 72 74 0a 20 20 20 20 20 20 20 e.:category.of.the.alert........
44c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a ...............(plist-get.info.:
44e0 63 61 74 65 67 6f 72 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 category).......................
4500 3b 3b 20 54 68 65 20 6d 61 6a 6f 72 2d 6d 6f 64 65 20 74 68 69 73 20 61 6c 65 72 74 20 72 65 6c ;;.The.major-mode.this.alert.rel
4520 61 74 65 73 20 74 6f 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 ates.to.......................(p
4540 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 6d 6f 64 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 list-get.info.:mode)............
4560 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 54 68 65 20 62 75 66 66 65 72 20 74 68 65 20 61 6c 65 ...........;;.The.buffer.the.ale
4580 72 74 20 72 65 6c 61 74 65 73 20 74 6f 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 rt.relates.to...................
45a0 20 20 20 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 62 75 66 66 65 72 29 0a 20 20 20 ....(plist-get.info.:buffer)....
45c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 53 65 76 65 72 69 74 79 20 6f ...................;;.Severity.o
45e0 66 20 74 68 65 20 61 6c 65 72 74 2e 20 20 49 74 20 69 73 20 6f 6e 65 20 6f 66 3a 0a 20 20 20 20 f.the.alert...It.is.one.of:.....
4600 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 20 20 60 75 72 67 65 6e 74 27 0a ..................;;...`urgent'.
4620 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 20 20 60 68 69 67 68 ......................;;...`high
4640 27 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 20 20 60 6d 6f '.......................;;...`mo
4660 64 65 72 61 74 65 27 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b derate'.......................;;
4680 20 20 20 60 6e 6f 72 6d 61 6c 27 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...`normal'.....................
46a0 20 20 3b 3b 20 20 20 60 6c 6f 77 27 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..;;...`low'....................
46c0 20 20 20 3b 3b 20 20 20 60 74 72 69 76 69 61 6c 27 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...;;...`trivial'...............
46e0 20 20 20 20 20 20 20 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 73 65 76 65 72 69 74 ........(plist-get.info.:severit
4700 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 57 68 65 74 y).......................;;.Whet
4720 68 65 72 20 74 68 69 73 20 61 6c 65 72 74 20 73 68 6f 75 6c 64 20 70 65 72 73 69 73 74 2c 20 6f her.this.alert.should.persist,.o
4740 72 20 66 61 64 65 20 61 77 61 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 r.fade.away.....................
4760 20 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 70 65 72 73 69 73 74 65 6e 74 29 0a 20 ..(plist-get.info.:persistent)..
4780 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 44 61 74 61 20 77 68 69 .....................;;.Data.whi
47a0 63 68 20 77 61 73 20 70 61 73 73 65 64 20 74 6f 20 60 61 6c 65 72 74 27 2e 20 20 43 61 6e 20 62 ch.was.passed.to.`alert'...Can.b
47c0 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 61 6e 79 74 68 e.......................;;.anyth
47e0 69 6e 67 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 6c 69 73 ing........................(plis
4800 74 2d 67 65 74 20 69 6e 66 6f 20 3a 64 61 74 61 29 29 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 t-get.info.:data))..............
4820 20 20 20 20 20 20 20 20 3b 3b 20 52 65 6d 6f 76 65 72 73 20 61 72 65 20 6f 70 74 69 6f 6e 61 6c ........;;.Removers.are.optional
4840 2e 20 20 54 68 65 69 72 20 6a 6f 62 20 69 73 20 74 6f 20 72 65 6d 6f 76 65 0a 20 20 20 20 20 20 ...Their.job.is.to.remove.......
4860 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 74 68 65 20 76 69 73 75 61 6c 20 6f 72 20 61 ..............;;.the.visual.or.a
4880 75 64 69 74 6f 72 79 20 65 66 66 65 63 74 20 6f 66 20 74 68 65 20 61 6c 65 72 74 2e 0a 20 20 20 uditory.effect.of.the.alert.....
48a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 72 65 6d 6f 76 65 72 0a 20 20 20 20 20 20 .................:remover.......
48c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 69 6e 66 6f 29 0a 20 20 20 ..............(lambda.(info)....
48e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 49 74 20 69 73 20 74 68 65 20 ...................;;.It.is.the.
4900 73 61 6d 65 20 70 72 6f 70 65 72 74 79 20 6c 69 73 74 20 74 68 61 74 20 77 61 73 20 70 61 73 73 same.property.list.that.was.pass
4920 65 64 20 74 6f 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 74 ed.to.......................;;.t
4940 68 65 20 6e 6f 74 69 66 69 65 72 20 66 75 6e 63 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 he.notifier.function............
4960 20 20 20 20 20 20 20 20 20 20 20 20 29 29 22 0a 20 20 28 61 64 64 2d 74 6f 2d 6c 69 73 74 20 27 ............))"...(add-to-list.'
4980 61 6c 65 72 74 2d 73 74 79 6c 65 73 20 28 63 6f 6e 73 20 6e 61 6d 65 20 70 6c 69 73 74 29 29 0a alert-styles.(cons.name.plist)).
49a0 20 20 28 70 75 74 20 27 61 6c 65 72 74 2d 75 73 65 72 2d 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e ..(put.'alert-user-configuration
49c0 20 27 63 75 73 74 6f 6d 2d 74 79 70 65 20 28 61 6c 65 72 74 2d 63 6f 6e 66 69 67 75 72 61 74 69 .'custom-type.(alert-configurati
49e0 6f 6e 2d 74 79 70 65 29 29 0a 20 20 28 70 75 74 20 27 61 6c 65 72 74 2d 64 65 66 69 6e 65 2d 73 on-type))...(put.'alert-define-s
4a00 74 79 6c 65 20 27 63 75 73 74 6f 6d 2d 74 79 70 65 20 28 61 6c 65 72 74 2d 73 74 79 6c 65 73 2d tyle.'custom-type.(alert-styles-
4a20 72 61 64 69 6f 2d 74 79 70 65 20 27 72 61 64 69 6f 29 29 29 0a 0a 28 61 6c 65 72 74 2d 64 65 66 radio-type.'radio)))..(alert-def
4a40 69 6e 65 2d 73 74 79 6c 65 20 27 69 67 6e 6f 72 65 20 3a 74 69 74 6c 65 20 22 49 67 6e 6f 72 65 ine-style.'ignore.:title."Ignore
4a60 20 41 6c 65 72 74 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 6e 6f 74 .Alert".....................:not
4a80 69 66 69 65 72 20 23 27 69 67 6e 6f 72 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ifier.#'ignore..................
4aa0 20 20 20 3a 72 65 6d 6f 76 65 72 20 23 27 69 67 6e 6f 72 65 29 0a 0c 0a 3b 3b 3b 23 23 23 61 75 ...:remover.#'ignore)...;;;###au
4ac0 74 6f 6c 6f 61 64 0a 28 63 6c 2d 64 65 66 75 6e 20 61 6c 65 72 74 2d 61 64 64 2d 72 75 6c 65 20 toload.(cl-defun.alert-add-rule.
4ae0 28 26 6b 65 79 20 73 65 76 65 72 69 74 79 20 73 74 61 74 75 73 20 6d 6f 64 65 20 63 61 74 65 67 (&key.severity.status.mode.categ
4b00 6f 72 79 20 74 69 74 6c 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ory.title.......................
4b20 20 20 20 20 20 20 20 20 20 6d 65 73 73 61 67 65 20 70 72 65 64 69 63 61 74 65 20 69 63 6f 6e 20 .........message.predicate.icon.
4b40 28 73 74 79 6c 65 20 61 6c 65 72 74 2d 64 65 66 61 75 6c 74 2d 73 74 79 6c 65 29 0a 20 20 20 20 (style.alert-default-style).....
4b60 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 70 65 72 73 69 ...........................persi
4b80 73 74 65 6e 74 20 63 6f 6e 74 69 6e 75 65 20 6e 65 76 65 72 2d 70 65 72 73 69 73 74 20 61 70 70 stent.continue.never-persist.app
4ba0 65 6e 64 29 0a 20 20 22 50 72 6f 67 72 61 6d 6d 61 74 69 63 61 6c 6c 79 20 61 64 64 20 61 6e 20 end)..."Programmatically.add.an.
4bc0 61 6c 65 72 74 20 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20 72 75 6c 65 2e 0a 0a 4e 6f 72 6d 61 alert.configuration.rule...Norma
4be0 6c 6c 79 2c 20 75 73 65 72 73 20 73 68 6f 75 6c 64 20 63 75 73 74 6f 69 6d 7a 65 20 60 61 6c 65 lly,.users.should.custoimze.`ale
4c00 72 74 2d 75 73 65 72 2d 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 27 2e 0a 54 68 69 73 20 66 61 63 rt-user-configuration'..This.fac
4c20 69 6c 69 74 79 20 69 73 20 66 6f 72 20 6d 6f 64 75 6c 65 20 77 72 69 74 65 72 73 20 61 6e 64 20 ility.is.for.module.writers.and.
4c40 75 73 65 72 73 20 74 68 61 74 20 6e 65 65 64 20 74 6f 20 64 6f 0a 74 68 69 6e 67 73 20 74 68 65 users.that.need.to.do.things.the
4c60 20 4c 69 73 70 20 77 61 79 2e 0a 0a 48 65 72 65 20 69 73 20 61 20 72 75 6c 65 20 74 68 65 20 61 .Lisp.way...Here.is.a.rule.the.a
4c80 75 74 68 6f 72 20 63 75 72 72 65 6e 74 6c 79 20 75 73 65 73 20 77 69 74 68 20 45 52 43 2c 20 73 uthor.currently.uses.with.ERC,.s
4ca0 6f 20 74 68 61 74 20 74 68 65 0a 66 72 69 6e 67 65 20 67 65 74 73 20 63 6f 6c 6f 72 65 64 20 77 o.that.the.fringe.gets.colored.w
4cc0 68 65 6e 65 76 65 72 20 70 65 6f 70 6c 65 20 63 68 61 74 20 6f 6e 20 42 69 74 6c 42 65 65 3a 0a henever.people.chat.on.BitlBee:.
4ce0 0a 5c 28 61 6c 65 72 74 2d 61 64 64 2d 72 75 6c 65 20 3a 73 74 61 74 75 73 20 20 20 5c 5c 3d 27 .\(alert-add-rule.:status...\\='
4d00 28 62 75 72 69 65 64 20 76 69 73 69 62 6c 65 20 69 64 6c 65 29 0a 20 20 20 20 20 20 20 20 20 20 (buried.visible.idle)...........
4d20 20 20 20 20 20 20 3a 73 65 76 65 72 69 74 79 20 5c 5c 3d 27 28 6d 6f 64 65 72 61 74 65 20 68 69 ......:severity.\\='(moderate.hi
4d40 67 68 20 75 72 67 65 6e 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 6d 6f 64 65 gh.urgent).................:mode
4d60 20 20 20 20 20 5c 5c 3d 27 65 72 63 2d 6d 6f 64 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .....\\='erc-mode...............
4d80 20 20 3a 70 72 65 64 69 63 61 74 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 5c 5c ..:predicate.................#\\
4da0 3d 27 28 6c 61 6d 62 64 61 20 28 69 6e 66 6f 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ='(lambda.(info)................
4dc0 20 20 20 20 20 28 73 74 72 69 6e 67 2d 6d 61 74 63 68 20 28 63 6f 6e 63 61 74 20 5c 22 5c 5c 5c .....(string-match.(concat.\"\\\
4de0 5c 60 5b 5e 26 5d 2e 2a 40 42 69 74 6c 42 65 65 5c 5c 5c 5c 5c 5c 3d 27 5c 22 29 0a 20 20 20 20 \`[^&].*@BitlBee\\\\\\='\").....
4e00 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 28 65 ..............................(e
4e20 72 63 2d 66 6f 72 6d 61 74 2d 74 61 72 67 65 74 2d 61 6e 64 2f 6f 72 2d 6e 65 74 77 6f 72 6b 29 rc-format-target-and/or-network)
4e40 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 70 65 72 73 69 73 74 65 6e 74 0a 20 )).................:persistent..
4e60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 5c 5c 3d 27 28 6c 61 6d 62 64 61 20 28 69 6e 66 ...............#\\='(lambda.(inf
4e80 6f 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 49 66 20 74 68 65 o).....................;;.If.the
4ea0 20 62 75 66 66 65 72 20 69 73 20 62 75 72 69 65 64 2c 20 6f 72 20 74 68 65 20 75 73 65 72 20 68 .buffer.is.buried,.or.the.user.h
4ec0 61 73 20 62 65 65 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 69 as.been.....................;;.i
4ee0 64 6c 65 20 66 6f 72 20 60 61 6c 65 72 74 2d 72 65 76 65 61 6c 2d 69 64 6c 65 2d 74 69 6d 65 27 dle.for.`alert-reveal-idle-time'
4f00 20 73 65 63 6f 6e 64 73 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b .seconds,.....................;;
4f20 20 6d 61 6b 65 20 74 68 69 73 20 61 6c 65 72 74 20 70 65 72 73 69 73 74 65 6e 74 2e 20 20 4e 6f .make.this.alert.persistent...No
4f40 72 6d 61 6c 6c 79 2c 20 61 6c 65 72 74 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 rmally,.alerts..................
4f60 20 20 20 3b 3b 20 62 65 63 6f 6d 65 20 70 65 72 73 69 73 74 65 6e 74 20 61 66 74 65 72 0a 20 20 ...;;.become.persistent.after...
4f80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 60 61 6c 65 72 74 2d 70 65 72 73 ..................;;.`alert-pers
4fa0 69 73 74 2d 69 64 6c 65 2d 74 69 6d 65 27 20 73 65 63 6f 6e 64 73 2e 0a 20 20 20 20 20 20 20 20 ist-idle-time'.seconds..........
4fc0 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 65 6d 71 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 ............(memq.(plist-get.inf
4fe0 6f 20 3a 73 74 61 74 75 73 29 20 5c 5c 3d 27 28 62 75 72 69 65 64 20 69 64 6c 65 29 29 29 0a 20 o.:status).\\='(buried.idle)))..
5000 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 73 74 79 6c 65 20 5c 5c 3d 27 66 72 69 6e 67 65 ...............:style.\\='fringe
5020 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 63 6f 6e 74 69 6e 75 65 20 74 29 22 0a 20 .................:continue.t)"..
5040 20 28 6c 65 74 20 28 28 72 75 6c 65 20 28 6c 69 73 74 20 28 6c 69 73 74 20 74 29 20 73 74 79 6c .(let.((rule.(list.(list.t).styl
5060 65 20 28 6c 69 73 74 20 74 29 29 29 29 0a 20 20 20 20 28 69 66 20 73 65 76 65 72 69 74 79 0a 20 e.(list.t)))).....(if.severity..
5080 20 20 20 20 20 20 20 28 6e 63 6f 6e 63 20 28 6e 74 68 20 30 20 72 75 6c 65 29 0a 20 20 20 20 20 .......(nconc.(nth.0.rule)......
50a0 20 20 20 20 20 20 20 20 20 20 28 6c 69 73 74 20 28 63 6f 6e 73 20 3a 73 65 76 65 72 69 74 79 0a ..........(list.(cons.:severity.
50c0 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 69 66 20 28 ...........................(if.(
50e0 6c 69 73 74 70 20 73 65 76 65 72 69 74 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 listp.severity).................
5100 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 65 76 65 72 69 74 79 0a 20 20 20 20 20 20 20 20 ...............severity.........
5120 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 73 74 20 73 65 76 65 72 .....................(list.sever
5140 69 74 79 29 29 29 29 29 29 0a 20 20 20 20 28 69 66 20 73 74 61 74 75 73 0a 20 20 20 20 20 20 20 ity)))))).....(if.status........
5160 20 28 6e 63 6f 6e 63 20 28 6e 74 68 20 30 20 72 75 6c 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 .(nconc.(nth.0.rule)............
5180 20 20 20 20 28 6c 69 73 74 20 28 63 6f 6e 73 20 3a 73 74 61 74 75 73 0a 20 20 20 20 20 20 20 20 ....(list.(cons.:status.........
51a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 6c 69 73 74 70 20 73 74 ...................(if.(listp.st
51c0 61 74 75 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 atus)...........................
51e0 20 20 20 20 20 73 74 61 74 75 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .....status.....................
5200 20 20 20 20 20 20 20 20 20 28 6c 69 73 74 20 73 74 61 74 75 73 29 29 29 29 29 29 0a 20 20 20 20 .........(list.status)))))).....
5220 28 69 66 20 6d 6f 64 65 0a 20 20 20 20 20 20 20 20 28 6e 63 6f 6e 63 20 28 6e 74 68 20 30 20 72 (if.mode.........(nconc.(nth.0.r
5240 75 6c 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 73 74 20 28 63 6f 6e 73 20 ule)................(list.(cons.
5260 3a 6d 6f 64 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 :mode...........................
5280 20 28 69 66 20 28 73 74 72 69 6e 67 70 20 6d 6f 64 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 .(if.(stringp.mode).............
52a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 6f 64 65 0a 20 20 20 20 20 20 20 20 ...................mode.........
52c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 63 61 74 20 22 5c 5c .....................(concat."\\
52e0 60 22 20 28 73 79 6d 62 6f 6c 2d 6e 61 6d 65 20 6d 6f 64 65 29 0a 20 20 20 20 20 20 20 20 20 20 `".(symbol-name.mode)...........
5300 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 22 5c 5c 27 22 ..........................."\\'"
5320 29 29 29 29 29 29 0a 20 20 20 20 28 69 66 20 63 61 74 65 67 6f 72 79 0a 20 20 20 20 20 20 20 20 )))))).....(if.category.........
5340 28 6e 63 6f 6e 63 20 28 6e 74 68 20 30 20 72 75 6c 65 29 20 28 6c 69 73 74 20 28 63 6f 6e 73 20 (nconc.(nth.0.rule).(list.(cons.
5360 3a 63 61 74 65 67 6f 72 79 20 63 61 74 65 67 6f 72 79 29 29 29 29 0a 20 20 20 20 28 69 66 20 74 :category.category)))).....(if.t
5380 69 74 6c 65 0a 20 20 20 20 20 20 20 20 28 6e 63 6f 6e 63 20 28 6e 74 68 20 30 20 72 75 6c 65 29 itle.........(nconc.(nth.0.rule)
53a0 20 28 6c 69 73 74 20 28 63 6f 6e 73 20 3a 74 69 74 6c 65 20 74 69 74 6c 65 29 29 29 29 0a 20 20 .(list.(cons.:title.title))))...
53c0 20 20 28 69 66 20 6d 65 73 73 61 67 65 0a 20 20 20 20 20 20 20 20 28 6e 63 6f 6e 63 20 28 6e 74 ..(if.message.........(nconc.(nt
53e0 68 20 30 20 72 75 6c 65 29 20 28 6c 69 73 74 20 28 63 6f 6e 73 20 3a 6d 65 73 73 61 67 65 20 6d h.0.rule).(list.(cons.:message.m
5400 65 73 73 61 67 65 29 29 29 29 0a 20 20 20 20 28 69 66 20 70 72 65 64 69 63 61 74 65 0a 20 20 20 essage)))).....(if.predicate....
5420 20 20 20 20 20 28 6e 63 6f 6e 63 20 28 6e 74 68 20 30 20 72 75 6c 65 29 20 28 6c 69 73 74 20 28 .....(nconc.(nth.0.rule).(list.(
5440 63 6f 6e 73 20 3a 70 72 65 64 69 63 61 74 65 20 70 72 65 64 69 63 61 74 65 29 29 29 29 0a 20 20 cons.:predicate.predicate))))...
5460 20 20 28 69 66 20 69 63 6f 6e 0a 20 20 20 20 20 20 20 20 28 6e 63 6f 6e 63 20 28 6e 74 68 20 30 ..(if.icon.........(nconc.(nth.0
5480 20 72 75 6c 65 29 20 28 6c 69 73 74 20 28 63 6f 6e 73 20 3a 69 63 6f 6e 20 69 63 6f 6e 29 29 29 .rule).(list.(cons.:icon.icon)))
54a0 29 0a 20 20 20 20 28 73 65 74 63 61 72 20 72 75 6c 65 20 28 63 64 72 20 28 6e 74 68 20 30 20 72 ).....(setcar.rule.(cdr.(nth.0.r
54c0 75 6c 65 29 29 29 0a 0a 20 20 20 20 28 69 66 20 70 65 72 73 69 73 74 65 6e 74 0a 20 20 20 20 20 ule)))......(if.persistent......
54e0 20 20 20 28 6e 63 6f 6e 63 20 28 6e 74 68 20 32 20 72 75 6c 65 29 20 28 6c 69 73 74 20 28 63 6f ...(nconc.(nth.2.rule).(list.(co
5500 6e 73 20 3a 70 65 72 73 69 73 74 65 6e 74 20 70 65 72 73 69 73 74 65 6e 74 29 29 29 29 0a 20 20 ns.:persistent.persistent))))...
5520 20 20 28 69 66 20 6e 65 76 65 72 2d 70 65 72 73 69 73 74 0a 20 20 20 20 20 20 20 20 28 6e 63 6f ..(if.never-persist.........(nco
5540 6e 63 20 28 6e 74 68 20 32 20 72 75 6c 65 29 20 28 6c 69 73 74 20 28 63 6f 6e 73 20 3a 6e 65 76 nc.(nth.2.rule).(list.(cons.:nev
5560 65 72 2d 70 65 72 73 69 73 74 20 6e 65 76 65 72 2d 70 65 72 73 69 73 74 29 29 29 29 0a 20 20 20 er-persist.never-persist))))....
5580 20 28 69 66 20 63 6f 6e 74 69 6e 75 65 0a 20 20 20 20 20 20 20 20 28 6e 63 6f 6e 63 20 28 6e 74 .(if.continue.........(nconc.(nt
55a0 68 20 32 20 72 75 6c 65 29 20 28 6c 69 73 74 20 28 63 6f 6e 73 20 3a 63 6f 6e 74 69 6e 75 65 20 h.2.rule).(list.(cons.:continue.
55c0 63 6f 6e 74 69 6e 75 65 29 29 29 29 0a 20 20 20 20 28 73 65 74 63 64 72 20 28 63 64 72 20 72 75 continue)))).....(setcdr.(cdr.ru
55e0 6c 65 29 20 28 6c 69 73 74 20 28 63 64 72 20 28 6e 74 68 20 32 20 72 75 6c 65 29 29 29 29 0a 0a le).(list.(cdr.(nth.2.rule))))..
5600 20 20 20 20 28 69 66 20 28 6e 75 6c 6c 20 61 6c 65 72 74 2d 69 6e 74 65 72 6e 61 6c 2d 63 6f 6e ....(if.(null.alert-internal-con
5620 66 69 67 75 72 61 74 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 71 20 61 6c 65 72 74 2d figuration).........(setq.alert-
5640 69 6e 74 65 72 6e 61 6c 2d 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20 28 6c 69 73 74 20 72 75 6c internal-configuration.(list.rul
5660 65 29 29 0a 20 20 20 20 20 20 28 69 66 20 61 70 70 65 6e 64 0a 20 20 20 20 20 20 20 20 20 20 28 e)).......(if.append...........(
5680 6e 63 6f 6e 63 20 61 6c 65 72 74 2d 69 6e 74 65 72 6e 61 6c 2d 63 6f 6e 66 69 67 75 72 61 74 69 nconc.alert-internal-configurati
56a0 6f 6e 20 28 6c 69 73 74 20 72 75 6c 65 29 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 71 20 61 6c on.(list.rule)).........(setq.al
56c0 65 72 74 2d 69 6e 74 65 72 6e 61 6c 2d 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 0a 20 20 20 20 20 ert-internal-configuration......
56e0 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 20 72 75 6c 65 20 61 6c 65 72 74 2d 69 6e 74 65 72 6e .........(cons.rule.alert-intern
5700 61 6c 2d 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 29 29 29 29 0a 0a 20 20 20 20 72 75 6c 65 29 29 al-configuration))))......rule))
5720 0a 0c 0a 28 61 6c 65 72 74 2d 64 65 66 69 6e 65 2d 73 74 79 6c 65 20 27 69 67 6e 6f 72 65 20 3a ...(alert-define-style.'ignore.:
5740 74 69 74 6c 65 20 22 44 6f 6e 27 74 20 64 69 73 70 6c 61 79 20 61 6c 65 72 74 73 22 29 0a 0c 0a title."Don't.display.alerts")...
5760 28 64 65 66 75 6e 20 61 6c 65 72 74 2d 6c 6f 67 2d 6e 6f 74 69 66 79 20 28 69 6e 66 6f 29 0a 20 (defun.alert-log-notify.(info)..
5780 20 28 6c 65 74 2a 20 28 28 6d 65 73 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 6d 65 .(let*.((mes.(plist-get.info.:me
57a0 73 73 61 67 65 29 29 0a 20 20 20 20 20 20 20 20 20 28 73 65 76 20 28 70 6c 69 73 74 2d 67 65 74 ssage))..........(sev.(plist-get
57c0 20 69 6e 66 6f 20 3a 73 65 76 65 72 69 74 79 29 29 0a 20 20 20 20 20 20 20 20 20 28 6c 65 6e 20 .info.:severity))..........(len.
57e0 28 6c 65 6e 67 74 68 20 6d 65 73 29 29 0a 20 20 20 20 20 20 20 20 20 28 66 75 6e 63 20 28 63 64 (length.mes))..........(func.(cd
5800 72 20 28 61 73 73 6f 63 20 73 65 76 20 61 6c 65 72 74 2d 6c 6f 67 2d 73 65 76 65 72 69 74 79 2d r.(assoc.sev.alert-log-severity-
5820 66 75 6e 63 74 69 6f 6e 73 29 29 29 29 0a 20 20 20 20 28 69 66 20 28 6e 6f 74 20 28 66 65 61 74 functions)))).....(if.(not.(feat
5840 75 72 65 70 20 27 6c 6f 67 34 65 29 29 0a 20 20 20 20 20 20 20 20 28 61 6c 65 72 74 2d 6c 65 67 urep.'log4e)).........(alert-leg
5860 61 63 79 2d 6c 6f 67 2d 6e 6f 74 69 66 79 20 6d 65 73 20 73 65 76 20 6c 65 6e 29 0a 20 20 20 20 acy-log-notify.mes.sev.len).....
5880 20 20 3b 3b 20 77 68 65 6e 20 77 65 20 67 65 74 20 68 65 72 65 20 79 6f 75 20 62 65 74 74 65 72 ..;;.when.we.get.here.you.better
58a0 20 62 65 20 75 73 69 6e 67 20 6c 6f 67 34 65 20 6f 72 20 68 61 76 65 20 79 6f 75 72 20 6c 6f 67 .be.using.log4e.or.have.your.log
58c0 67 69 6e 67 0a 20 20 20 20 20 20 3b 3b 20 66 75 6e 63 74 69 6f 6e 73 20 64 65 66 69 6e 65 64 0a ging.......;;.functions.defined.
58e0 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 28 66 62 6f 75 6e 64 70 20 66 75 6e 63 29 0a 09 28 77 ......(unless.(fboundp.func)..(w
5900 68 65 6e 20 28 66 62 6f 75 6e 64 70 20 27 6c 6f 67 34 65 3a 64 65 66 6c 6f 67 67 65 72 29 0a 20 hen.(fboundp.'log4e:deflogger)..
5920 20 20 20 20 20 20 20 20 20 28 6c 6f 67 34 65 3a 64 65 66 6c 6f 67 67 65 72 20 22 61 6c 65 72 74 .........(log4e:deflogger."alert
5940 22 20 22 25 74 20 5b 25 6c 5d 20 25 6d 22 20 22 25 48 3a 25 4d 3a 25 53 22 29 0a 20 20 20 20 20 "."%t.[%l].%m"."%H:%M:%S")......
5960 20 20 20 20 20 28 77 68 65 6e 20 28 66 75 6e 63 74 69 6f 6e 70 20 27 61 6c 65 72 74 2d 2d 6c 6f .....(when.(functionp.'alert--lo
5980 67 2d 73 65 74 2d 6c 65 76 65 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 61 6c 65 72 74 2d g-set-level).............(alert-
59a0 2d 6c 6f 67 2d 73 65 74 2d 6c 65 76 65 6c 20 61 6c 65 72 74 2d 6c 6f 67 2d 6c 65 76 65 6c 29 29 -log-set-level.alert-log-level))
59c0 29 0a 09 28 61 6c 65 72 74 2d 2d 6c 6f 67 2d 65 6e 61 62 6c 65 2d 6c 6f 67 67 69 6e 67 29 29 0a )..(alert--log-enable-logging)).
59e0 20 20 20 20 20 20 28 77 68 65 6e 20 28 66 62 6f 75 6e 64 70 20 66 75 6e 63 29 0a 20 20 20 20 20 ......(when.(fboundp.func)......
5a00 20 20 20 28 61 70 70 6c 79 20 66 75 6e 63 20 28 6c 69 73 74 20 6d 65 73 29 29 29 29 29 29 0a 0a ...(apply.func.(list.mes))))))..
5a20 28 64 65 66 75 6e 20 61 6c 65 72 74 2d 6c 65 67 61 63 79 2d 6c 6f 67 2d 6e 6f 74 69 66 79 20 28 (defun.alert-legacy-log-notify.(
5a40 6d 65 73 20 73 65 76 20 6c 65 6e 29 0a 20 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 mes.sev.len)...(with-current-buf
5a60 66 65 72 0a 20 20 20 20 20 20 28 67 65 74 2d 62 75 66 66 65 72 2d 63 72 65 61 74 65 20 22 2a 41 fer.......(get-buffer-create."*A
5a80 6c 65 72 74 73 2a 22 29 0a 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 70 6f 69 6e 74 2d 6d lerts*").....(goto-char.(point-m
5aa0 61 78 29 29 0a 20 20 20 20 28 69 6e 73 65 72 74 20 28 66 6f 72 6d 61 74 2d 74 69 6d 65 2d 73 74 ax)).....(insert.(format-time-st
5ac0 72 69 6e 67 20 22 25 48 3a 25 4d 20 25 70 20 2d 20 22 29 29 0a 20 20 20 20 28 69 6e 73 65 72 74 ring."%H:%M.%p.-.")).....(insert
5ae0 20 6d 65 73 29 0a 20 20 20 20 28 73 65 74 2d 74 65 78 74 2d 70 72 6f 70 65 72 74 69 65 73 20 28 .mes).....(set-text-properties.(
5b00 2d 20 28 70 6f 69 6e 74 29 20 6c 65 6e 29 20 28 70 6f 69 6e 74 29 0a 20 20 20 20 20 20 20 20 20 -.(point).len).(point)..........
5b20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 73 74 20 27 66 61 63 65 20 28 63 64 72 ................(list.'face.(cdr
5b40 20 28 61 73 73 71 20 73 65 76 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .(assq.sev......................
5b60 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 61 6c 65 72 74 ...........................alert
5b80 2d 73 65 76 65 72 69 74 79 2d 66 61 63 65 73 29 29 29 29 0a 20 20 20 20 28 69 6e 73 65 72 74 20 -severity-faces)))).....(insert.
5ba0 3f 5c 6e 29 29 29 0a 0a 28 64 65 66 75 6e 20 61 6c 65 72 74 2d 6c 6f 67 2d 63 6c 65 61 72 20 28 ?\n)))..(defun.alert-log-clear.(
5bc0 69 6e 66 6f 29 0a 20 20 28 69 66 20 28 66 75 6e 63 74 69 6f 6e 70 20 27 61 6c 65 72 74 2d 2d 6c info)...(if.(functionp.'alert--l
5be0 6f 67 2d 63 6c 65 61 72 2d 6c 6f 67 29 0a 20 20 20 20 20 20 28 61 6c 65 72 74 2d 2d 6c 6f 67 2d og-clear-log).......(alert--log-
5c00 63 6c 65 61 72 2d 6c 6f 67 29 0a 20 20 20 20 28 69 66 20 28 62 75 66 66 65 72 70 20 22 2a 41 6c clear-log).....(if.(bufferp."*Al
5c20 65 72 74 73 2a 22 29 0a 20 20 20 20 20 20 20 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 erts*").........(with-current-bu
5c40 66 66 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 67 65 74 2d 62 75 66 66 65 72 2d 63 72 65 ffer.............(get-buffer-cre
5c60 61 74 65 20 22 2a 41 6c 65 72 74 73 2a 22 29 0a 20 20 20 20 20 20 20 20 20 20 28 67 6f 74 6f 2d ate."*Alerts*")...........(goto-
5c80 63 68 61 72 20 28 70 6f 69 6e 74 2d 6d 61 78 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 69 6e 73 char.(point-max))...........(ins
5ca0 65 72 74 20 28 66 6f 72 6d 61 74 2d 74 69 6d 65 2d 73 74 72 69 6e 67 20 22 25 48 3a 25 4d 20 25 ert.(format-time-string."%H:%M.%
5cc0 70 20 2d 20 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 43 6c 65 61 72 3a p.-.")..................."Clear:
5ce0 20 22 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 6d 65 73 73 61 67 65 29 0a 20 20 20 .".(plist-get.info.:message)....
5d00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3f 5c 6e 29 29 29 29 29 0a 0a 28 61 6c 65 72 74 2d ...............?\n)))))..(alert-
5d20 64 65 66 69 6e 65 2d 73 74 79 6c 65 20 27 6c 6f 67 20 3a 74 69 74 6c 65 20 22 4c 6f 67 20 74 6f define-style.'log.:title."Log.to
5d40 20 2a 41 6c 65 72 74 73 2a 20 62 75 66 66 65 72 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .*Alerts*.buffer"...............
5d60 20 20 20 20 20 20 3a 6e 6f 74 69 66 69 65 72 20 23 27 61 6c 65 72 74 2d 6c 6f 67 2d 6e 6f 74 69 ......:notifier.#'alert-log-noti
5d80 66 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 3a 72 65 6d 6f 76 65 fy.....................;;:remove
5da0 72 20 23 27 61 6c 65 72 74 2d 6c 6f 67 2d 63 6c 65 61 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 r.#'alert-log-clear.............
5dc0 20 20 20 20 20 20 20 20 29 0a 0c 0a 28 64 65 66 75 6e 20 61 6c 65 72 74 2d 6d 65 73 73 61 67 65 ........)...(defun.alert-message
5de0 2d 6e 6f 74 69 66 79 20 28 69 6e 66 6f 29 0a 20 20 3b 3b 20 74 68 65 20 6d 65 73 73 61 67 65 20 -notify.(info)...;;.the.message.
5e00 74 65 78 74 20 6d 69 67 68 74 20 63 6f 6e 74 61 69 6e 20 60 25 27 20 61 6e 64 20 77 65 20 64 6f text.might.contain.`%'.and.we.do
5e20 6e 27 74 20 77 61 6e 74 20 74 68 65 6d 20 74 6f 20 62 65 0a 20 20 3b 3b 20 69 6e 74 65 72 70 72 n't.want.them.to.be...;;.interpr
5e40 65 74 65 64 20 61 73 20 66 6f 72 6d 61 74 20 73 70 65 63 69 66 69 65 72 73 3a 0a 20 20 28 6d 65 eted.as.format.specifiers:...(me
5e60 73 73 61 67 65 20 22 25 73 22 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 6d 65 73 73 ssage."%s".(plist-get.info.:mess
5e80 61 67 65 29 29 0a 20 20 3b 3b 28 69 66 20 28 6d 65 6d 71 20 28 70 6c 69 73 74 2d 67 65 74 20 69 age))...;;(if.(memq.(plist-get.i
5ea0 6e 66 6f 20 3a 73 65 76 65 72 69 74 79 29 20 27 28 68 69 67 68 20 75 72 67 65 6e 63 79 29 29 0a nfo.:severity).'(high.urgency)).
5ec0 20 20 3b 3b 20 20 20 20 28 64 69 6e 67 29 29 0a 20 20 29 0a 0a 28 64 65 66 75 6e 20 61 6c 65 72 ..;;....(ding))...)..(defun.aler
5ee0 74 2d 6d 65 73 73 61 67 65 2d 72 65 6d 6f 76 65 20 28 5f 69 6e 66 6f 29 0a 20 20 28 6d 65 73 73 t-message-remove.(_info)...(mess
5f00 61 67 65 20 22 22 29 29 0a 0a 28 61 6c 65 72 74 2d 64 65 66 69 6e 65 2d 73 74 79 6c 65 20 27 6d age.""))..(alert-define-style.'m
5f20 65 73 73 61 67 65 20 3a 74 69 74 6c 65 20 22 44 69 73 70 6c 61 79 20 6d 65 73 73 61 67 65 20 69 essage.:title."Display.message.i
5f40 6e 20 6d 69 6e 69 62 75 66 66 65 72 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 n.minibuffer"...................
5f60 20 20 3a 6e 6f 74 69 66 69 65 72 20 23 27 61 6c 65 72 74 2d 6d 65 73 73 61 67 65 2d 6e 6f 74 69 ..:notifier.#'alert-message-noti
5f80 66 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 72 65 6d 6f 76 65 72 20 fy.....................:remover.
5fa0 23 27 61 6c 65 72 74 2d 6d 65 73 73 61 67 65 2d 72 65 6d 6f 76 65 29 0a 0c 0a 28 64 65 66 75 6e #'alert-message-remove)...(defun
5fc0 20 61 6c 65 72 74 2d 6d 6f 6d 65 6e 74 61 72 79 2d 6e 6f 74 69 66 79 20 28 69 6e 66 6f 29 0a 20 .alert-momentary-notify.(info)..
5fe0 20 28 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e 0a 20 20 20 20 28 77 69 74 68 2d 63 75 72 72 65 .(save-excursion.....(with-curre
6000 6e 74 2d 62 75 66 66 65 72 20 28 6f 72 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 62 nt-buffer.(or.(plist-get.info.:b
6020 75 66 66 65 72 29 20 28 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 29 29 0a 20 20 20 20 20 20 28 uffer).(current-buffer)).......(
6040 6d 6f 6d 65 6e 74 61 72 79 2d 73 74 72 69 6e 67 2d 64 69 73 70 6c 61 79 0a 20 20 20 20 20 20 20 momentary-string-display........
6060 28 66 6f 72 6d 61 74 20 22 25 73 3a 20 25 73 20 28 25 73 2f 25 73 2f 25 73 29 22 0a 20 20 20 20 (format."%s:.%s.(%s/%s/%s)".....
6080 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a ...........(or.(plist-get.info.:
60a0 74 69 74 6c 65 29 20 22 75 6e 74 69 74 6c 65 64 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 title)."untitled")..............
60c0 20 20 28 6f 72 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 6d 65 73 73 61 67 65 29 20 ..(or.(plist-get.info.:message).
60e0 22 6e 6f 20 6d 65 73 73 61 67 65 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 "no.message")................(or
6100 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 73 65 76 65 72 69 74 79 29 20 22 6e 6f 20 .(plist-get.info.:severity)."no.
6120 70 72 69 6f 72 69 74 79 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 20 28 70 priority")................(or.(p
6140 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 63 61 74 65 67 6f 72 79 29 20 22 6e 6f 20 63 61 74 list-get.info.:category)."no.cat
6160 65 67 6f 72 79 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 20 28 70 6c 69 73 egory")................(or.(plis
6180 74 2d 67 65 74 20 69 6e 66 6f 20 3a 6d 6f 64 65 29 20 22 6e 6f 20 6d 6f 64 65 22 29 29 0a 20 20 t-get.info.:mode)."no.mode"))...
61a0 20 20 20 20 20 28 70 72 6f 67 6e 0a 20 20 20 20 20 20 20 20 20 28 62 65 67 69 6e 6e 69 6e 67 2d .....(progn..........(beginning-
61c0 6f 66 2d 6c 69 6e 65 29 0a 20 20 20 20 20 20 20 20 20 28 70 6f 69 6e 74 29 29 29 29 29 29 0a 0a of-line)..........(point))))))..
61e0 28 61 6c 65 72 74 2d 64 65 66 69 6e 65 2d 73 74 79 6c 65 20 27 6d 6f 6d 65 6e 74 61 72 79 20 3a (alert-define-style.'momentary.:
6200 74 69 74 6c 65 20 22 44 69 73 70 6c 61 79 20 6d 65 73 73 61 67 65 20 6d 6f 6d 65 6e 74 61 72 69 title."Display.message.momentari
6220 6c 79 20 69 6e 20 62 75 66 66 65 72 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ly.in.buffer"...................
6240 20 20 3a 6e 6f 74 69 66 69 65 72 20 23 27 61 6c 65 72 74 2d 6d 6f 6d 65 6e 74 61 72 79 2d 6e 6f ..:notifier.#'alert-momentary-no
6260 74 69 66 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 65 78 70 6c tify.....................;;.expl
6280 69 63 69 74 6c 79 2c 20 77 65 20 64 6f 6e 27 74 20 6e 65 65 64 20 61 20 72 65 6d 6f 76 65 72 0a icitly,.we.don't.need.a.remover.
62a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 72 65 6d 6f 76 65 72 20 23 27 69 ....................:remover.#'i
62c0 67 6e 6f 72 65 29 0a 0c 0a 28 63 6f 70 79 2d 66 61 63 65 20 27 66 72 69 6e 67 65 20 27 61 6c 65 gnore)...(copy-face.'fringe.'ale
62e0 72 74 2d 73 61 76 65 64 2d 66 72 69 6e 67 65 2d 66 61 63 65 29 0a 0a 28 64 65 66 75 6e 20 61 6c rt-saved-fringe-face)..(defun.al
6300 65 72 74 2d 66 72 69 6e 67 65 2d 6e 6f 74 69 66 79 20 28 69 6e 66 6f 29 0a 20 20 28 73 65 74 2d ert-fringe-notify.(info)...(set-
6320 66 61 63 65 2d 62 61 63 6b 67 72 6f 75 6e 64 20 27 66 72 69 6e 67 65 20 28 63 64 72 20 28 61 73 face-background.'fringe.(cdr.(as
6340 73 71 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 73 65 76 65 72 69 74 79 29 0a 20 20 sq.(plist-get.info.:severity)...
6360 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
6380 20 20 20 20 20 20 20 20 61 6c 65 72 74 2d 73 65 76 65 72 69 74 79 2d 63 6f 6c 6f 72 73 29 29 29 ........alert-severity-colors)))
63a0 29 0a 0a 28 64 65 66 75 6e 20 61 6c 65 72 74 2d 66 72 69 6e 67 65 2d 72 65 73 74 6f 72 65 20 28 )..(defun.alert-fringe-restore.(
63c0 5f 69 6e 66 6f 29 0a 20 20 28 63 6f 70 79 2d 66 61 63 65 20 27 61 6c 65 72 74 2d 73 61 76 65 64 _info)...(copy-face.'alert-saved
63e0 2d 66 72 69 6e 67 65 2d 66 61 63 65 20 27 66 72 69 6e 67 65 29 29 0a 0a 28 61 6c 65 72 74 2d 64 -fringe-face.'fringe))..(alert-d
6400 65 66 69 6e 65 2d 73 74 79 6c 65 20 27 66 72 69 6e 67 65 20 3a 74 69 74 6c 65 20 22 43 68 61 6e efine-style.'fringe.:title."Chan
6420 67 65 20 74 68 65 20 66 72 69 6e 67 65 20 63 6f 6c 6f 72 22 0a 20 20 20 20 20 20 20 20 20 20 20 ge.the.fringe.color"............
6440 20 20 20 20 20 20 20 20 20 3a 6e 6f 74 69 66 69 65 72 20 23 27 61 6c 65 72 74 2d 66 72 69 6e 67 .........:notifier.#'alert-fring
6460 65 2d 6e 6f 74 69 66 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 72 65 e-notify.....................:re
6480 6d 6f 76 65 72 20 23 27 61 6c 65 72 74 2d 66 72 69 6e 67 65 2d 72 65 73 74 6f 72 65 29 0a 0c 0a mover.#'alert-fringe-restore)...
64a0 28 63 6f 70 79 2d 66 61 63 65 20 27 6d 6f 64 65 2d 6c 69 6e 65 20 27 61 6c 65 72 74 2d 73 61 76 (copy-face.'mode-line.'alert-sav
64c0 65 64 2d 6d 6f 64 65 2d 6c 69 6e 65 2d 66 61 63 65 29 0a 28 64 65 66 75 6e 20 61 6c 65 72 74 2d ed-mode-line-face).(defun.alert-
64e0 6d 6f 64 65 2d 6c 69 6e 65 2d 6e 6f 74 69 66 79 20 28 69 6e 66 6f 29 0a 20 20 28 73 65 74 2d 66 mode-line-notify.(info)...(set-f
6500 61 63 65 2d 62 61 63 6b 67 72 6f 75 6e 64 20 27 6d 6f 64 65 2d 6c 69 6e 65 20 28 63 64 72 20 28 ace-background.'mode-line.(cdr.(
6520 61 73 73 71 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 73 65 76 65 72 69 74 79 29 0a assq.(plist-get.info.:severity).
6540 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
6560 20 20 20 20 20 20 20 20 20 20 20 20 20 61 6c 65 72 74 2d 73 65 76 65 72 69 74 79 2d 63 6f 6c 6f .............alert-severity-colo
6580 72 73 29 29 29 0a 20 20 28 73 65 74 2d 66 61 63 65 2d 66 6f 72 65 67 72 6f 75 6e 64 20 27 6d 6f rs)))...(set-face-foreground.'mo
65a0 64 65 2d 6c 69 6e 65 20 22 77 68 69 74 65 22 29 29 0a 0a 28 64 65 66 75 6e 20 61 6c 65 72 74 2d de-line."white"))..(defun.alert-
65c0 6d 6f 64 65 2d 6c 69 6e 65 2d 72 65 73 74 6f 72 65 20 28 5f 69 6e 66 6f 29 0a 20 20 28 63 6f 70 mode-line-restore.(_info)...(cop
65e0 79 2d 66 61 63 65 20 27 61 6c 65 72 74 2d 73 61 76 65 64 2d 6d 6f 64 65 2d 6c 69 6e 65 2d 66 61 y-face.'alert-saved-mode-line-fa
6600 63 65 20 27 6d 6f 64 65 2d 6c 69 6e 65 29 29 0a 0a 28 61 6c 65 72 74 2d 64 65 66 69 6e 65 2d 73 ce.'mode-line))..(alert-define-s
6620 74 79 6c 65 20 27 6d 6f 64 65 2d 6c 69 6e 65 20 3a 74 69 74 6c 65 20 22 43 68 61 6e 67 65 20 74 tyle.'mode-line.:title."Change.t
6640 68 65 20 6d 6f 64 65 2d 6c 69 6e 65 20 63 6f 6c 6f 72 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 he.mode-line.color".............
6660 20 20 20 20 20 20 20 20 3a 6e 6f 74 69 66 69 65 72 20 23 27 61 6c 65 72 74 2d 6d 6f 64 65 2d 6c ........:notifier.#'alert-mode-l
6680 69 6e 65 2d 6e 6f 74 69 66 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a ine-notify.....................:
66a0 72 65 6d 6f 76 65 72 20 23 27 61 6c 65 72 74 2d 6d 6f 64 65 2d 6c 69 6e 65 2d 72 65 73 74 6f 72 remover.#'alert-mode-line-restor
66c0 65 29 0a 0a 0c 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 61 6c 65 72 74 2d 67 72 6f 77 6c 2d 63 6f e).....(defcustom.alert-growl-co
66e0 6d 6d 61 6e 64 20 28 65 78 65 63 75 74 61 62 6c 65 2d 66 69 6e 64 20 22 67 72 6f 77 6c 6e 6f 74 mmand.(executable-find."growlnot
6700 69 66 79 22 29 0a 20 20 22 50 61 74 68 20 74 6f 20 74 68 65 20 67 72 6f 77 6c 6e 6f 74 69 66 79 ify")..."Path.to.the.growlnotify
6720 20 63 6f 6d 6d 61 6e 64 2e 0a 54 68 69 73 20 69 73 20 66 6f 75 6e 64 20 69 6e 20 74 68 65 20 47 .command..This.is.found.in.the.G
6740 72 6f 77 6c 20 45 78 74 72 61 73 3a 20 68 74 74 70 3a 2f 2f 67 72 6f 77 6c 2e 69 6e 66 6f 2f 65 rowl.Extras:.http://growl.info/e
6760 78 74 72 61 73 2e 70 68 70 2e 22 0a 20 20 3a 74 79 70 65 20 27 66 69 6c 65 0a 20 20 3a 67 72 6f xtras.php."...:type.'file...:gro
6780 75 70 20 27 61 6c 65 72 74 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 61 6c 65 72 74 2d 67 72 6f up.'alert)..(defcustom.alert-gro
67a0 77 6c 2d 70 72 69 6f 72 69 74 69 65 73 0a 20 20 27 28 28 75 72 67 65 6e 74 20 20 20 2e 20 32 29 wl-priorities...'((urgent.....2)
67c0 0a 20 20 20 20 28 68 69 67 68 20 20 20 20 20 2e 20 32 29 0a 20 20 20 20 28 6d 6f 64 65 72 61 74 .....(high.......2).....(moderat
67e0 65 20 2e 20 31 29 0a 20 20 20 20 28 6e 6f 72 6d 61 6c 20 20 20 2e 20 30 29 0a 20 20 20 20 28 6c e...1).....(normal.....0).....(l
6800 6f 77 20 20 20 20 20 20 2e 20 2d 31 29 0a 20 20 20 20 28 74 72 69 76 69 61 6c 20 20 2e 20 2d 32 ow........-1).....(trivial....-2
6820 29 29 0a 20 20 22 41 20 6d 61 70 70 69 6e 67 20 6f 66 20 61 6c 65 72 74 20 73 65 76 65 72 69 74 ))..."A.mapping.of.alert.severit
6840 69 65 73 20 6f 6e 74 6f 20 47 72 6f 77 6c 20 70 72 69 6f 72 69 74 79 20 76 61 6c 75 65 73 2e 22 ies.onto.Growl.priority.values."
6860 0a 20 20 3a 74 79 70 65 20 27 28 61 6c 69 73 74 20 3a 6b 65 79 2d 74 79 70 65 20 73 79 6d 62 6f ...:type.'(alist.:key-type.symbo
6880 6c 20 3a 76 61 6c 75 65 2d 74 79 70 65 20 69 6e 74 65 67 65 72 29 0a 20 20 3a 67 72 6f 75 70 20 l.:value-type.integer)...:group.
68a0 27 61 6c 65 72 74 29 0a 0a 28 64 65 66 73 75 62 73 74 20 61 6c 65 72 74 2d 65 6e 63 6f 64 65 2d 'alert)..(defsubst.alert-encode-
68c0 73 74 72 69 6e 67 20 28 73 74 72 29 0a 20 20 28 65 6e 63 6f 64 65 2d 63 6f 64 69 6e 67 2d 73 74 string.(str)...(encode-coding-st
68e0 72 69 6e 67 20 73 74 72 20 28 6b 65 79 62 6f 61 72 64 2d 63 6f 64 69 6e 67 2d 73 79 73 74 65 6d ring.str.(keyboard-coding-system
6900 29 29 29 0a 0a 28 64 65 66 75 6e 20 61 6c 65 72 74 2d 67 72 6f 77 6c 2d 6e 6f 74 69 66 79 20 28 )))..(defun.alert-growl-notify.(
6920 69 6e 66 6f 29 0a 20 20 28 69 66 20 61 6c 65 72 74 2d 67 72 6f 77 6c 2d 63 6f 6d 6d 61 6e 64 0a info)...(if.alert-growl-command.
6940 20 20 20 20 20 20 28 6c 65 74 2a 20 28 28 74 69 74 6c 65 20 28 61 6c 65 72 74 2d 65 6e 63 6f 64 ......(let*.((title.(alert-encod
6960 65 2d 73 74 72 69 6e 67 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 74 69 74 6c 65 29 e-string.(plist-get.info.:title)
6980 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 69 6f 72 69 74 79 20 28 6e 75 6d 62 65 ))..............(priority.(numbe
69a0 72 2d 74 6f 2d 73 74 72 69 6e 67 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 r-to-string.....................
69c0 20 20 20 20 28 63 64 72 20 28 61 73 73 71 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a ....(cdr.(assq.(plist-get.info.:
69e0 73 65 76 65 72 69 74 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 severity).......................
6a00 20 20 20 20 20 20 20 20 20 20 20 20 20 61 6c 65 72 74 2d 67 72 6f 77 6c 2d 70 72 69 6f 72 69 74 .............alert-growl-priorit
6a20 69 65 73 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 72 67 73 0a 20 20 20 20 20 ies))))..............(args......
6a40 20 20 20 20 20 20 20 20 20 28 63 6c 2d 63 61 73 65 20 73 79 73 74 65 6d 2d 74 79 70 65 0a 20 20 .........(cl-case.system-type...
6a60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 27 77 69 6e 64 6f 77 73 2d 6e 74 20 28 6d 61 70 63 ..............('windows-nt.(mapc
6a80 61 72 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 ar..............................
6aa0 20 28 6c 61 6d 62 64 61 20 28 6c 73 74 29 20 28 61 70 70 6c 79 20 23 27 63 6f 6e 63 61 74 20 6c .(lambda.(lst).(apply.#'concat.l
6ac0 73 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 st))............................
6ae0 20 20 20 60 28 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 ...`(...........................
6b00 20 20 20 20 20 20 3b 3b 20 68 74 74 70 3a 2f 2f 77 77 77 2e 67 72 6f 77 6c 66 6f 72 77 69 6e 64 ......;;.http://www.growlforwind
6b20 6f 77 73 2e 63 6f 6d 2f 67 66 77 2f 68 65 6c 70 2f 67 72 6f 77 6c 6e 6f 74 69 66 79 2e 61 73 70 ows.com/gfw/help/growlnotify.asp
6b40 78 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 x...............................
6b60 20 20 28 22 2f 69 3a 22 20 2c 28 66 69 6c 65 2d 74 72 75 65 6e 61 6d 65 20 28 63 6f 6e 63 61 74 ..("/i:".,(file-truename.(concat
6b80 20 69 6e 76 6f 63 61 74 69 6f 6e 2d 64 69 72 65 63 74 6f 72 79 20 22 2e 2e 2f 73 68 61 72 65 2f .invocation-directory."../share/
6ba0 69 63 6f 6e 73 2f 68 69 63 6f 6c 6f 72 2f 34 38 78 34 38 2f 61 70 70 73 2f 65 6d 61 63 73 2e 70 icons/hicolor/48x48/apps/emacs.p
6bc0 6e 67 22 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 20 20 20 ng")))..........................
6be0 20 20 20 20 20 20 20 28 22 2f 74 3a 22 20 2c 74 69 74 6c 65 29 0a 20 20 20 20 20 20 20 20 20 20 .......("/t:".,title)...........
6c00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 22 2f 70 3a 22 20 2c 70 72 ......................("/p:".,pr
6c20 69 6f 72 69 74 79 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 74 20 28 6c iority)))).................(t.(l
6c40 69 73 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 2d 2d 61 70 70 49 63 ist....................."--appIc
6c60 6f 6e 22 20 20 22 45 6d 61 63 73 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 on".."Emacs"....................
6c80 20 22 2d 2d 6e 61 6d 65 22 20 20 20 20 20 22 45 6d 61 63 73 22 0a 20 20 20 20 20 20 20 20 20 20 ."--name"....."Emacs"...........
6ca0 20 20 20 20 20 20 20 20 20 20 22 2d 2d 74 69 74 6c 65 22 20 20 20 20 74 69 74 6c 65 0a 20 20 20 .........."--title"....title....
6cc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 2d 2d 70 72 69 6f 72 69 74 79 22 20 70 72 ................."--priority".pr
6ce0 69 6f 72 69 74 79 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 28 69 66 20 28 61 6e 64 20 28 70 6c iority))))).........(if.(and.(pl
6d00 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 70 65 72 73 69 73 74 65 6e 74 29 0a 20 20 20 20 20 20 ist-get.info.:persistent).......
6d20 20 20 20 20 20 20 20 20 20 20 20 28 6e 6f 74 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 ...........(not.(plist-get.info.
6d40 3a 6e 65 76 65 72 2d 70 65 72 73 69 73 74 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 63 :never-persist))).............(c
6d60 6c 2d 63 61 73 65 20 73 79 73 74 65 6d 2d 74 79 70 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 l-case.system-type..............
6d80 20 28 27 77 69 6e 64 6f 77 73 2d 6e 74 20 28 6e 63 6f 6e 63 20 61 72 67 73 20 28 6c 69 73 74 20 .('windows-nt.(nconc.args.(list.
6da0 22 2f 73 3a 74 72 75 65 22 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 74 20 28 6e "/s:true")))...............(t.(n
6dc0 63 6f 6e 63 20 61 72 67 73 20 28 6c 69 73 74 20 22 2d 2d 73 74 69 63 6b 79 22 29 29 29 29 29 0a conc.args.(list."--sticky"))))).
6de0 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 6d 65 73 73 61 67 65 20 28 61 6c 65 72 74 2d 65 6e ........(let.((message.(alert-en
6e00 63 6f 64 65 2d 73 74 72 69 6e 67 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 6d 65 73 code-string.(plist-get.info.:mes
6e20 73 61 67 65 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 63 6c 2d 63 61 73 65 20 73 79 73 74 sage))))...........(cl-case.syst
6e40 65 6d 2d 74 79 70 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 27 77 69 6e 64 6f 77 73 2d 6e 74 em-type.............('windows-nt
6e60 20 28 6e 63 6f 6e 63 20 61 72 67 73 20 28 6c 69 73 74 20 6d 65 73 73 61 67 65 29 29 29 0a 20 20 .(nconc.args.(list.message)))...
6e80 20 20 20 20 20 20 20 20 20 20 28 74 20 28 6e 63 6f 6e 63 20 61 72 67 73 20 28 6c 69 73 74 20 22 ..........(t.(nconc.args.(list."
6ea0 2d 2d 6d 65 73 73 61 67 65 22 20 6d 65 73 73 61 67 65 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 --message".message))))).........
6ec0 28 61 70 70 6c 79 20 23 27 63 61 6c 6c 2d 70 72 6f 63 65 73 73 20 61 6c 65 72 74 2d 67 72 6f 77 (apply.#'call-process.alert-grow
6ee0 6c 2d 63 6f 6d 6d 61 6e 64 20 6e 69 6c 20 6e 69 6c 20 6e 69 6c 20 61 72 67 73 29 29 0a 20 20 20 l-command.nil.nil.nil.args))....
6f00 20 28 61 6c 65 72 74 2d 6d 65 73 73 61 67 65 2d 6e 6f 74 69 66 79 20 69 6e 66 6f 29 29 29 0a 0a .(alert-message-notify.info)))..
6f20 28 61 6c 65 72 74 2d 64 65 66 69 6e 65 2d 73 74 79 6c 65 20 27 67 72 6f 77 6c 20 3a 74 69 74 6c (alert-define-style.'growl.:titl
6f40 65 20 22 4e 6f 74 69 66 79 20 75 73 69 6e 67 20 47 72 6f 77 6c 22 0a 20 20 20 20 20 20 20 20 20 e."Notify.using.Growl"..........
6f60 20 20 20 20 20 20 20 20 20 20 20 3a 6e 6f 74 69 66 69 65 72 20 23 27 61 6c 65 72 74 2d 67 72 6f ...........:notifier.#'alert-gro
6f80 77 6c 2d 6e 6f 74 69 66 79 29 0a 0a 0c 0a 28 64 65 66 63 75 73 74 6f 6d 20 61 6c 65 72 74 2d 6c wl-notify)....(defcustom.alert-l
6fa0 69 62 6e 6f 74 69 66 79 2d 63 6f 6d 6d 61 6e 64 20 28 65 78 65 63 75 74 61 62 6c 65 2d 66 69 6e ibnotify-command.(executable-fin
6fc0 64 20 22 6e 6f 74 69 66 79 2d 73 65 6e 64 22 29 0a 20 20 22 50 61 74 68 20 74 6f 20 74 68 65 20 d."notify-send")..."Path.to.the.
6fe0 6e 6f 74 69 66 79 2d 73 65 6e 64 20 63 6f 6d 6d 61 6e 64 2e 0a 54 68 69 73 20 69 73 20 66 6f 75 notify-send.command..This.is.fou
7000 6e 64 20 69 6e 20 74 68 65 20 6c 69 62 6e 6f 74 69 66 79 2d 62 69 6e 20 70 61 63 6b 61 67 65 20 nd.in.the.libnotify-bin.package.
7020 69 6e 20 44 65 62 69 61 6e 20 62 61 73 65 64 0a 73 79 73 74 65 6d 73 2e 22 0a 20 20 3a 74 79 70 in.Debian.based.systems."...:typ
7040 65 20 27 66 69 6c 65 0a 20 20 3a 67 72 6f 75 70 20 27 61 6c 65 72 74 29 0a 0a 28 64 65 66 63 75 e.'file...:group.'alert)..(defcu
7060 73 74 6f 6d 20 61 6c 65 72 74 2d 6c 69 62 6e 6f 74 69 66 79 2d 61 64 64 69 74 69 6f 6e 61 6c 2d stom.alert-libnotify-additional-
7080 61 72 67 73 0a 20 20 6e 69 6c 0a 20 20 22 41 64 64 69 74 69 6f 6e 61 6c 20 61 72 67 73 20 74 6f args...nil..."Additional.args.to
70a0 20 70 61 73 73 20 74 6f 20 6e 6f 74 69 66 79 2d 73 65 6e 64 2e 0a 4d 75 73 74 20 62 65 20 61 20 .pass.to.notify-send..Must.be.a.
70c0 6c 69 73 74 20 6f 66 20 73 74 72 69 6e 67 73 2e 22 0a 20 20 3a 74 79 70 65 20 27 28 72 65 70 65 list.of.strings."...:type.'(repe
70e0 61 74 20 73 74 72 69 6e 67 29 0a 20 20 3a 67 72 6f 75 70 20 27 61 6c 65 72 74 29 0a 0a 28 64 65 at.string)...:group.'alert)..(de
7100 66 63 75 73 74 6f 6d 20 61 6c 65 72 74 2d 6c 69 62 6e 6f 74 69 66 79 2d 70 72 69 6f 72 69 74 69 fcustom.alert-libnotify-prioriti
7120 65 73 0a 20 20 27 28 28 75 72 67 65 6e 74 20 20 20 2e 20 63 72 69 74 69 63 61 6c 29 0a 20 20 20 es...'((urgent.....critical)....
7140 20 28 68 69 67 68 20 20 20 20 20 2e 20 63 72 69 74 69 63 61 6c 29 0a 20 20 20 20 28 6d 6f 64 65 .(high.......critical).....(mode
7160 72 61 74 65 20 2e 20 6e 6f 72 6d 61 6c 29 0a 20 20 20 20 28 6e 6f 72 6d 61 6c 20 20 20 2e 20 6e rate...normal).....(normal.....n
7180 6f 72 6d 61 6c 29 0a 20 20 20 20 28 6c 6f 77 20 20 20 20 20 20 2e 20 6c 6f 77 29 0a 20 20 20 20 ormal).....(low........low).....
71a0 28 74 72 69 76 69 61 6c 20 20 2e 20 6c 6f 77 29 29 0a 20 20 22 41 20 6d 61 70 70 69 6e 67 20 6f (trivial....low))..."A.mapping.o
71c0 66 20 61 6c 65 72 74 20 73 65 76 65 72 69 74 69 65 73 20 6f 6e 74 6f 20 6c 69 62 6e 6f 74 69 66 f.alert.severities.onto.libnotif
71e0 79 20 70 72 69 6f 72 69 74 79 20 76 61 6c 75 65 73 2e 22 0a 20 20 3a 74 79 70 65 20 27 28 61 6c y.priority.values."...:type.'(al
7200 69 73 74 20 3a 6b 65 79 2d 74 79 70 65 20 73 79 6d 62 6f 6c 20 3a 76 61 6c 75 65 2d 74 79 70 65 ist.:key-type.symbol.:value-type
7220 20 73 79 6d 62 6f 6c 29 0a 20 20 3a 67 72 6f 75 70 20 27 61 6c 65 72 74 29 0a 0a 28 64 65 66 75 .symbol)...:group.'alert)..(defu
7240 6e 20 61 6c 65 72 74 2d 6c 69 62 6e 6f 74 69 66 79 2d 6e 6f 74 69 66 79 20 28 69 6e 66 6f 29 0a n.alert-libnotify-notify.(info).
7260 20 20 22 53 65 6e 64 20 49 4e 46 4f 20 75 73 69 6e 67 20 6e 6f 74 69 66 79 2d 73 65 6e 64 2e 0a .."Send.INFO.using.notify-send..
7280 48 61 6e 64 6c 65 73 20 3a 49 43 4f 4e 2c 20 3a 43 41 54 45 47 4f 52 59 2c 20 3a 53 45 56 45 52 Handles.:ICON,.:CATEGORY,.:SEVER
72a0 49 54 59 2c 20 3a 50 45 52 53 49 53 54 45 4e 54 2c 20 3a 4e 45 56 45 52 2d 50 45 52 53 49 53 54 ITY,.:PERSISTENT,.:NEVER-PERSIST
72c0 2c 20 3a 54 49 54 4c 45 0a 61 6e 64 20 3a 4d 45 53 53 41 47 45 20 6b 65 79 77 6f 72 64 73 20 66 ,.:TITLE.and.:MESSAGE.keywords.f
72e0 72 6f 6d 20 74 68 65 20 49 4e 46 4f 20 70 6c 69 73 74 2e 20 20 3a 43 41 54 45 47 4f 52 59 20 63 rom.the.INFO.plist...:CATEGORY.c
7300 61 6e 20 62 65 0a 70 61 73 73 65 64 20 61 73 20 61 20 73 69 6e 67 6c 65 20 73 79 6d 62 6f 6c 2c an.be.passed.as.a.single.symbol,
7320 20 61 20 73 74 72 69 6e 67 20 6f 72 20 61 20 6c 69 73 74 20 6f 66 20 73 79 6d 62 6f 6c 73 20 6f .a.string.or.a.list.of.symbols.o
7340 72 0a 73 74 72 69 6e 67 73 2e 22 0a 20 20 28 69 66 20 61 6c 65 72 74 2d 6c 69 62 6e 6f 74 69 66 r.strings."...(if.alert-libnotif
7360 79 2d 63 6f 6d 6d 61 6e 64 0a 20 20 20 20 20 20 28 6c 65 74 2a 20 28 28 61 72 67 73 0a 20 20 20 y-command.......(let*.((args....
7380 20 20 20 20 20 20 20 20 20 20 20 28 61 70 70 65 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ...........(append..............
73a0 20 20 28 6c 69 73 74 20 22 2d 2d 69 63 6f 6e 22 20 20 20 20 20 28 6f 72 20 28 70 6c 69 73 74 2d ..(list."--icon".....(or.(plist-
73c0 67 65 74 20 69 6e 66 6f 20 3a 69 63 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 get.info.:icon).................
73e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 6c 65 72 74 2d 64 65 66 61 ......................alert-defa
7400 75 6c 74 2d 69 63 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 ult-icon)......................"
7420 2d 2d 61 70 70 2d 6e 61 6d 65 22 20 22 45 6d 61 63 73 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 --app-name"."Emacs".............
7440 20 20 20 20 20 20 20 20 20 22 2d 2d 75 72 67 65 6e 63 79 22 20 20 28 6c 65 74 20 28 28 75 72 67 ........."--urgency"..(let.((urg
7460 65 6e 63 79 20 28 63 64 72 20 28 61 73 73 71 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ency.(cdr.(assq.................
7480 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
74a0 20 20 20 20 20 20 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 73 65 76 65 72 69 74 79 .......(plist-get.info.:severity
74c0 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 )...............................
74e0 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 61 6c 65 72 74 2d 6c .........................alert-l
7500 69 62 6e 6f 74 69 66 79 2d 70 72 69 6f 72 69 74 69 65 73 29 29 29 29 0a 20 20 20 20 20 20 20 20 ibnotify-priorities)))).........
7520 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 69 66 20 ............................(if.
7540 75 72 67 65 6e 63 79 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 urgency.........................
7560 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 79 6d 62 6f 6c 2d 6e 61 6d 65 20 75 72 67 ................(symbol-name.urg
7580 65 6e 63 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ency)...........................
75a0 20 20 20 20 20 20 20 20 20 20 20 20 22 6e 6f 72 6d 61 6c 22 29 29 29 0a 20 20 20 20 20 20 20 20 ............"normal"))).........
75c0 20 20 20 20 20 20 20 28 63 6f 70 79 2d 74 72 65 65 20 61 6c 65 72 74 2d 6c 69 62 6e 6f 74 69 66 .......(copy-tree.alert-libnotif
75e0 79 2d 61 64 64 69 74 69 6f 6e 61 6c 2d 61 72 67 73 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 y-additional-args)))............
7600 20 20 28 63 61 74 65 67 6f 72 79 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 63 61 74 ..(category.(plist-get.info.:cat
7620 65 67 6f 72 79 29 29 29 0a 20 20 20 20 20 20 20 20 28 6e 63 6f 6e 63 20 61 72 67 73 0a 20 20 20 egory))).........(nconc.args....
7640 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 73 74 20 22 2d 2d 65 78 70 69 72 65 2d 74 69 6d 65 ............(list."--expire-time
7660 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e 75 6d 62 65 72 2d 74 "......................(number-t
7680 6f 2d 73 74 72 69 6e 67 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 o-string.......................(
76a0 2a 20 31 30 30 30 20 3b 20 6e 6f 74 69 66 79 2d 73 65 6e 64 20 74 61 6b 65 73 20 6d 73 65 63 73 *.1000.;.notify-send.takes.msecs
76c0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 61 ..........................(if.(a
76e0 6e 64 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 70 65 72 73 69 73 74 65 6e 74 29 0a nd.(plist-get.info.:persistent).
7700 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
7720 20 20 28 6e 6f 74 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 6e 65 76 65 72 2d 70 65 ..(not.(plist-get.info.:never-pe
7740 72 73 69 73 74 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 rsist)))........................
7760 20 20 20 20 20 20 30 20 3b 20 30 20 69 6e 64 69 63 61 74 65 73 20 70 65 72 73 69 73 74 65 6e 63 ......0.;.0.indicates.persistenc
7780 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 6c 65 e............................ale
77a0 72 74 2d 66 61 64 65 2d 74 69 6d 65 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 rt-fade-time))))).........(when.
77c0 63 61 74 65 67 6f 72 79 0a 20 20 20 20 20 20 20 20 20 20 28 6e 63 6f 6e 63 20 61 72 67 73 0a 20 category...........(nconc.args..
77e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 73 74 20 22 2d 2d 63 61 74 65 67 6f 72 ................(list."--categor
7800 79 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 64 20 y"........................(cond.
7820 28 28 73 79 6d 62 6f 6c 70 20 63 61 74 65 67 6f 72 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 ((symbolp.category).............
7840 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 79 6d 62 6f 6c 2d 6e 61 6d 65 20 63 ..................(symbol-name.c
7860 61 74 65 67 6f 72 79 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 ategory)).......................
7880 20 20 20 20 20 20 20 28 28 73 74 72 69 6e 67 70 20 63 61 74 65 67 6f 72 79 29 20 63 61 74 65 67 .......((stringp.category).categ
78a0 6f 72 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ory)............................
78c0 20 20 28 28 6c 69 73 74 70 20 63 61 74 65 67 6f 72 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 ..((listp.category).............
78e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 61 70 63 6f 6e 63 61 74 20 28 69 66 ..................(mapconcat.(if
7900 20 28 73 79 6d 62 6f 6c 70 20 28 63 61 72 20 63 61 74 65 67 6f 72 79 29 29 0a 20 20 20 20 20 20 .(symbolp.(car.category)).......
7920 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
7940 20 20 20 20 20 20 20 23 27 73 79 6d 62 6f 6c 2d 6e 61 6d 65 0a 20 20 20 20 20 20 20 20 20 20 20 .......#'symbol-name............
7960 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
7980 23 27 69 64 65 6e 74 69 74 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 #'identity).....................
79a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 74 65 67 6f 72 79 20 22 2c .....................category.",
79c0 22 29 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 28 6e 63 6f 6e 63 20 61 72 67 73 20 28 6c 69 73 ")))))).........(nconc.args.(lis
79e0 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 6c 65 72 74 2d 65 6e t......................(alert-en
7a00 63 6f 64 65 2d 73 74 72 69 6e 67 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 74 69 74 code-string.(plist-get.info.:tit
7a20 6c 65 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 61 6c 65 72 74 le))......................(alert
7a40 2d 65 6e 63 6f 64 65 2d 73 74 72 69 6e 67 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a -encode-string.(plist-get.info.:
7a60 6d 65 73 73 61 67 65 29 29 29 29 0a 20 20 20 20 20 20 20 20 28 61 70 70 6c 79 20 23 27 63 61 6c message)))).........(apply.#'cal
7a80 6c 2d 70 72 6f 63 65 73 73 20 61 6c 65 72 74 2d 6c 69 62 6e 6f 74 69 66 79 2d 63 6f 6d 6d 61 6e l-process.alert-libnotify-comman
7aa0 64 20 6e 69 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 73 74 20 28 67 65 74 2d d.nil................(list.(get-
7ac0 62 75 66 66 65 72 2d 63 72 65 61 74 65 20 22 20 2a 6c 69 62 6e 6f 74 69 66 79 20 6f 75 74 70 75 buffer-create.".*libnotify.outpu
7ae0 74 2a 22 29 20 74 29 20 6e 69 6c 20 61 72 67 73 29 29 0a 20 20 20 20 28 61 6c 65 72 74 2d 6d 65 t*").t).nil.args)).....(alert-me
7b00 73 73 61 67 65 2d 6e 6f 74 69 66 79 20 69 6e 66 6f 29 29 29 0a 0a 28 61 6c 65 72 74 2d 64 65 66 ssage-notify.info)))..(alert-def
7b20 69 6e 65 2d 73 74 79 6c 65 20 27 6c 69 62 6e 6f 74 69 66 79 20 3a 74 69 74 6c 65 20 22 4e 6f 74 ine-style.'libnotify.:title."Not
7b40 69 66 79 20 75 73 69 6e 67 20 6c 69 62 6e 6f 74 69 66 79 22 0a 20 20 20 20 20 20 20 20 20 20 20 ify.using.libnotify"............
7b60 20 20 20 20 20 20 20 20 20 3a 6e 6f 74 69 66 69 65 72 20 23 27 61 6c 65 72 74 2d 6c 69 62 6e 6f .........:notifier.#'alert-libno
7b80 74 69 66 79 2d 6e 6f 74 69 66 79 29 0a 0a 0c 0a 28 64 65 66 63 75 73 74 6f 6d 20 61 6c 65 72 74 tify-notify)....(defcustom.alert
7ba0 2d 67 6e 74 70 2d 69 63 6f 6e 0a 20 20 22 68 74 74 70 3a 2f 2f 63 76 73 2e 73 61 76 61 6e 6e 61 -gntp-icon..."http://cvs.savanna
7bc0 68 2e 67 6e 75 2e 6f 72 67 2f 76 69 65 77 76 63 2f 2a 63 68 65 63 6b 6f 75 74 2a 2f 65 6d 61 63 h.gnu.org/viewvc/*checkout*/emac
7be0 73 2f 65 6d 61 63 73 2f 65 74 63 2f 69 6d 61 67 65 73 2f 69 63 6f 6e 73 2f 68 69 63 6f 6c 6f 72 s/emacs/etc/images/icons/hicolor
7c00 2f 34 38 78 34 38 2f 61 70 70 73 2f 65 6d 61 63 73 2e 70 6e 67 22 0a 20 20 22 49 63 6f 6e 20 66 /48x48/apps/emacs.png"..."Icon.f
7c20 69 6c 65 20 75 73 69 6e 67 20 67 6e 74 70 2e 22 0a 20 20 3a 74 79 70 65 20 27 73 74 72 69 6e 67 ile.using.gntp."...:type.'string
7c40 0a 20 20 3a 67 72 6f 75 70 20 27 61 6c 65 72 74 29 0a 0a 28 77 68 65 6e 20 28 66 65 61 74 75 72 ...:group.'alert)..(when.(featur
7c60 65 70 20 27 67 6e 74 70 29 0a 20 20 28 64 65 66 75 6e 20 61 6c 65 72 74 2d 67 6e 74 70 2d 6e 6f ep.'gntp)...(defun.alert-gntp-no
7c80 74 69 66 79 20 28 69 6e 66 6f 29 0a 20 20 20 20 28 67 6e 74 70 2d 6e 6f 74 69 66 79 20 27 61 6c tify.(info).....(gntp-notify.'al
7ca0 65 72 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 6c 65 72 74 2d 65 6e 63 6f ert..................(alert-enco
7cc0 64 65 2d 73 74 72 69 6e 67 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 74 69 74 6c 65 de-string.(plist-get.info.:title
7ce0 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 6c 65 72 74 2d 65 6e 63 6f 64 ))..................(alert-encod
7d00 65 2d 73 74 72 69 6e 67 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 6d 65 73 73 61 67 e-string.(plist-get.info.:messag
7d20 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 67 6e 74 70 2d 73 65 72 76 65 72 e))..................gntp-server
7d40 20 6e 69 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e 75 6d 62 65 72 2d 74 6f .nil..................(number-to
7d60 2d 73 74 72 69 6e 67 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 64 72 20 28 -string...................(cdr.(
7d80 61 73 73 71 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 73 65 76 65 72 69 74 79 29 0a assq.(plist-get.info.:severity).
7da0 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 61 6c 65 .............................ale
7dc0 72 74 2d 67 72 6f 77 6c 2d 70 72 69 6f 72 69 74 69 65 73 29 29 29 0a 20 20 20 20 20 20 20 20 20 rt-growl-priorities)))..........
7de0 20 20 20 20 20 20 20 20 28 69 66 20 28 65 71 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 ........(if.(eq.(plist-get.info.
7e00 3a 69 63 6f 6e 29 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 :icon).nil).....................
7e20 20 61 6c 65 72 74 2d 67 6e 74 70 2d 69 63 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .alert-gntp-icon................
7e40 20 20 20 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 69 63 6f 6e 29 29 29 0a 20 20 20 ....(plist-get.info.:icon)))....
7e60 20 28 61 6c 65 72 74 2d 6d 65 73 73 61 67 65 2d 6e 6f 74 69 66 79 20 69 6e 66 6f 29 29 0a 0a 20 .(alert-message-notify.info))...
7e80 20 28 61 6c 65 72 74 2d 64 65 66 69 6e 65 2d 73 74 79 6c 65 20 27 67 6e 74 70 20 3a 74 69 74 6c .(alert-define-style.'gntp.:titl
7ea0 65 20 22 4e 6f 74 69 66 79 20 75 73 69 6e 67 20 67 6e 74 70 22 0a 20 20 20 20 20 20 20 20 20 20 e."Notify.using.gntp"...........
7ec0 20 20 20 20 20 20 20 20 20 20 20 20 3a 6e 6f 74 69 66 69 65 72 20 23 27 61 6c 65 72 74 2d 67 6e ............:notifier.#'alert-gn
7ee0 74 70 2d 6e 6f 74 69 66 79 29 29 0a 0a 0c 0a 28 64 65 66 63 75 73 74 6f 6d 20 61 6c 65 72 74 2d tp-notify))....(defcustom.alert-
7f00 6e 6f 74 69 66 69 63 61 74 69 6f 6e 73 2d 70 72 69 6f 72 69 74 69 65 73 0a 20 20 27 28 28 75 72 notifications-priorities...'((ur
7f20 67 65 6e 74 20 20 20 2e 20 63 72 69 74 69 63 61 6c 29 0a 20 20 20 20 28 68 69 67 68 20 20 20 20 gent.....critical).....(high....
7f40 20 2e 20 63 72 69 74 69 63 61 6c 29 0a 20 20 20 20 28 6d 6f 64 65 72 61 74 65 20 2e 20 6e 6f 72 ...critical).....(moderate...nor
7f60 6d 61 6c 29 0a 20 20 20 20 28 6e 6f 72 6d 61 6c 20 20 20 2e 20 6e 6f 72 6d 61 6c 29 0a 20 20 20 mal).....(normal.....normal)....
7f80 20 28 6c 6f 77 20 20 20 20 20 20 2e 20 6c 6f 77 29 0a 20 20 20 20 28 74 72 69 76 69 61 6c 20 20 .(low........low).....(trivial..
7fa0 2e 20 6c 6f 77 29 29 0a 20 20 22 41 20 6d 61 70 70 69 6e 67 20 6f 66 20 61 6c 65 72 74 20 73 65 ..low))..."A.mapping.of.alert.se
7fc0 76 65 72 69 74 69 65 73 20 6f 6e 74 6f 20 47 72 6f 77 6c 20 70 72 69 6f 72 69 74 79 20 76 61 6c verities.onto.Growl.priority.val
7fe0 75 65 73 2e 22 0a 20 20 3a 74 79 70 65 20 27 28 61 6c 69 73 74 20 3a 6b 65 79 2d 74 79 70 65 20 ues."...:type.'(alist.:key-type.
8000 73 79 6d 62 6f 6c 20 3a 76 61 6c 75 65 2d 74 79 70 65 20 73 79 6d 62 6f 6c 29 0a 20 20 3a 67 72 symbol.:value-type.symbol)...:gr
8020 6f 75 70 20 27 61 6c 65 72 74 29 0a 0a 28 64 65 66 76 61 72 20 61 6c 65 72 74 2d 6e 6f 74 69 66 oup.'alert)..(defvar.alert-notif
8040 69 63 61 74 69 6f 6e 73 2d 69 64 73 20 28 6d 61 6b 65 2d 68 61 73 68 2d 74 61 62 6c 65 20 3a 74 ications-ids.(make-hash-table.:t
8060 65 73 74 20 23 27 65 71 75 61 6c 29 0a 20 20 22 49 6e 74 65 72 6e 61 6c 20 73 74 6f 72 65 20 6f est.#'equal)..."Internal.store.o
8080 66 20 6e 6f 74 69 66 69 63 61 74 69 6f 6e 20 69 64 73 20 72 65 74 75 72 6e 65 64 20 62 79 20 74 f.notification.ids.returned.by.t
80a0 68 65 20 60 6e 6f 74 69 66 69 63 61 74 69 6f 6e 73 27 20 62 61 63 6b 65 6e 64 2e 0a 55 73 65 64 he.`notifications'.backend..Used
80c0 20 66 6f 72 20 72 65 70 6c 61 63 69 6e 67 20 6e 6f 74 69 66 69 63 61 74 69 6f 6e 73 20 77 69 74 .for.replacing.notifications.wit
80e0 68 20 74 68 65 20 73 61 6d 65 20 69 64 2e 20 20 54 68 65 20 6b 65 79 20 69 73 0a 74 68 65 20 76 h.the.same.id...The.key.is.the.v
8100 61 6c 75 65 20 6f 66 20 74 68 65 20 3a 69 64 20 6b 65 79 77 6f 72 64 20 74 6f 20 60 61 6c 65 72 alue.of.the.:id.keyword.to.`aler
8120 74 27 2e 20 20 41 6e 20 69 64 20 69 73 20 6f 6e 6c 79 20 73 74 6f 72 65 64 0a 68 65 72 65 20 69 t'...An.id.is.only.stored.here.i
8140 66 20 74 68 65 72 65 20 60 61 6c 65 72 74 27 20 77 61 73 20 63 61 6c 6c 65 64 20 77 69 74 68 20 f.there.`alert'.was.called.with.
8160 61 6e 20 3a 69 64 20 6b 65 79 77 6f 72 64 20 61 6e 64 20 68 61 6e 64 6c 65 64 0a 62 79 20 74 68 an.:id.keyword.and.handled.by.th
8180 65 20 60 6e 6f 74 69 66 69 63 61 74 69 6f 6e 73 27 20 73 74 79 6c 65 2e 22 29 0a 0a 28 77 68 65 e.`notifications'.style.")..(whe
81a0 6e 20 28 66 65 61 74 75 72 65 70 20 27 6e 6f 74 69 66 69 63 61 74 69 6f 6e 73 29 0a 20 20 28 64 n.(featurep.'notifications)...(d
81c0 65 66 75 6e 20 61 6c 65 72 74 2d 6e 6f 74 69 66 69 63 61 74 69 6f 6e 73 2d 6e 6f 74 69 66 79 20 efun.alert-notifications-notify.
81e0 28 69 6e 66 6f 29 0a 20 20 20 20 22 53 68 6f 77 20 74 68 65 20 61 6c 65 72 74 20 64 65 66 69 6e (info)....."Show.the.alert.defin
8200 65 64 20 62 79 20 49 4e 46 4f 20 77 69 74 68 20 60 6e 6f 74 69 66 69 63 61 74 69 6f 6e 73 2d 6e ed.by.INFO.with.`notifications-n
8220 6f 74 69 66 79 27 2e 22 0a 20 20 20 20 28 6c 65 74 20 28 28 69 64 20 28 6e 6f 74 69 66 69 63 61 otify'.".....(let.((id.(notifica
8240 74 69 6f 6e 73 2d 6e 6f 74 69 66 79 20 3a 74 69 74 6c 65 20 28 70 6c 69 73 74 2d 67 65 74 20 69 tions-notify.:title.(plist-get.i
8260 6e 66 6f 20 3a 74 69 74 6c 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nfo.:title).....................
8280 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 62 6f 64 79 20 20 28 70 6c 69 73 74 2d 67 65 ................:body..(plist-ge
82a0 74 20 69 6e 66 6f 20 3a 6d 65 73 73 61 67 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 t.info.:message)................
82c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 61 70 70 2d 69 63 6f 6e 20 28 .....................:app-icon.(
82e0 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 69 63 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 20 plist-get.info.:icon)...........
8300 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 3a 74 69 6d 65 6f ..........................:timeo
8320 75 74 20 28 69 66 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 70 65 72 73 69 73 74 65 ut.(if.(plist-get.info.:persiste
8340 6e 74 29 20 30 20 2d 31 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nt).0.-1).......................
8360 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 72 65 70 6c 61 63 65 73 2d 69 64 20 28 67 65 74 68 ..............:replaces-id.(geth
8380 61 73 68 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 69 64 29 20 61 6c 65 72 74 2d 6e ash.(plist-get.info.:id).alert-n
83a0 6f 74 69 66 69 63 61 74 69 6f 6e 73 2d 69 64 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 otifications-ids)...............
83c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 75 72 67 65 6e 63 79 20 28 ......................:urgency.(
83e0 63 64 72 20 28 61 73 73 71 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 73 65 76 65 72 cdr.(assq.(plist-get.info.:sever
8400 69 74 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ity)............................
8420 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 61 6c 65 .............................ale
8440 72 74 2d 6e 6f 74 69 66 69 63 61 74 69 6f 6e 73 2d 70 72 69 6f 72 69 74 69 65 73 29 29 0a 20 20 rt-notifications-priorities))...
8460 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
8480 20 20 3a 61 63 74 69 6f 6e 73 20 27 28 22 64 65 66 61 75 6c 74 22 20 22 4f 70 65 6e 20 63 6f 72 ..:actions.'("default"."Open.cor
84a0 72 65 73 70 6f 6e 64 69 6e 67 20 62 75 66 66 65 72 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 responding.buffer").............
84c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 6f 6e 2d 61 63 74 69 ........................:on-acti
84e0 6f 6e 20 28 6c 61 6d 62 64 61 20 28 69 64 20 61 63 74 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 on.(lambda.(id.action)..........
8500 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
8520 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 73 74 72 69 6e 67 3d 20 61 63 74 69 6f 6e 20 22 64 ........(when.(string=.action."d
8540 65 66 61 75 6c 74 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 efault")........................
8560 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 73 77 69 ............................(swi
8580 74 63 68 2d 74 6f 2d 62 75 66 66 65 72 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 62 tch-to-buffer.(plist-get.info.:b
85a0 75 66 66 65 72 29 29 29 29 29 29 29 0a 20 20 20 20 20 20 28 77 68 65 6e 20 28 70 6c 69 73 74 2d uffer))))))).......(when.(plist-
85c0 67 65 74 20 69 6e 66 6f 20 3a 69 64 29 0a 20 20 20 20 20 20 20 20 28 70 75 74 68 61 73 68 20 28 get.info.:id).........(puthash.(
85e0 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 69 64 29 20 69 64 20 61 6c 65 72 74 2d 6e 6f 74 plist-get.info.:id).id.alert-not
8600 69 66 69 63 61 74 69 6f 6e 73 2d 69 64 73 29 29 29 0a 20 20 20 20 28 61 6c 65 72 74 2d 6d 65 73 ifications-ids))).....(alert-mes
8620 73 61 67 65 2d 6e 6f 74 69 66 79 20 69 6e 66 6f 29 29 0a 0a 20 20 28 64 65 66 75 6e 20 61 6c 65 sage-notify.info))....(defun.ale
8640 72 74 2d 6e 6f 74 69 66 69 63 61 74 69 6f 6e 73 2d 72 65 6d 6f 76 65 20 28 69 6e 66 6f 29 0a 20 rt-notifications-remove.(info)..
8660 20 20 20 22 52 65 6d 6f 76 65 20 74 68 65 20 60 6e 6f 74 69 66 69 63 61 74 69 6f 6e 73 2d 6e 6f ..."Remove.the.`notifications-no
8680 74 69 66 79 27 20 6d 65 73 73 61 67 65 20 62 61 73 65 64 20 6f 6e 20 49 4e 46 4f 20 3a 69 64 2e tify'.message.based.on.INFO.:id.
86a0 22 0a 20 20 20 20 28 6c 65 74 20 28 28 69 64 20 28 61 6e 64 20 28 70 6c 69 73 74 2d 67 65 74 20 ".....(let.((id.(and.(plist-get.
86c0 69 6e 66 6f 20 3a 69 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 67 65 info.:id)....................(ge
86e0 74 68 61 73 68 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 69 64 29 20 61 6c 65 72 74 thash.(plist-get.info.:id).alert
8700 2d 6e 6f 74 69 66 69 63 61 74 69 6f 6e 73 2d 69 64 73 29 29 29 29 0a 20 20 20 20 20 20 28 77 68 -notifications-ids)))).......(wh
8720 65 6e 20 69 64 0a 20 20 20 20 20 20 20 20 28 6e 6f 74 69 66 69 63 61 74 69 6f 6e 73 2d 63 6c 6f en.id.........(notifications-clo
8740 73 65 2d 6e 6f 74 69 66 69 63 61 74 69 6f 6e 20 69 64 29 0a 20 20 20 20 20 20 20 20 28 72 65 6d se-notification.id).........(rem
8760 68 61 73 68 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 69 64 29 20 61 6c 65 72 74 2d hash.(plist-get.info.:id).alert-
8780 6e 6f 74 69 66 69 63 61 74 69 6f 6e 73 2d 69 64 73 29 29 29 29 0a 0a 20 20 28 61 6c 65 72 74 2d notifications-ids))))....(alert-
87a0 64 65 66 69 6e 65 2d 73 74 79 6c 65 20 27 6e 6f 74 69 66 69 63 61 74 69 6f 6e 73 20 3a 74 69 74 define-style.'notifications.:tit
87c0 6c 65 20 22 4e 6f 74 69 66 79 20 75 73 69 6e 67 20 6e 6f 74 69 66 69 63 61 74 69 6f 6e 73 22 0a le."Notify.using.notifications".
87e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 6e 6f 74 69 66 69 65 72 20 ......................:notifier.
8800 23 27 61 6c 65 72 74 2d 6e 6f 74 69 66 69 63 61 74 69 6f 6e 73 2d 6e 6f 74 69 66 79 29 29 0a 0a #'alert-notifications-notify))..
8820 0c 0a 28 64 65 66 63 75 73 74 6f 6d 20 61 6c 65 72 74 2d 6e 6f 74 69 66 69 65 72 2d 63 6f 6d 6d ..(defcustom.alert-notifier-comm
8840 61 6e 64 20 28 65 78 65 63 75 74 61 62 6c 65 2d 66 69 6e 64 20 22 74 65 72 6d 69 6e 61 6c 2d 6e and.(executable-find."terminal-n
8860 6f 74 69 66 69 65 72 22 29 0a 20 20 22 50 61 74 68 20 74 6f 20 74 68 65 20 74 65 72 6d 69 6e 61 otifier")..."Path.to.the.termina
8880 6c 2d 6e 6f 74 69 66 69 65 72 20 63 6f 6d 6d 61 6e 64 2e 0a 46 72 6f 6d 20 68 74 74 70 73 3a 2f l-notifier.command..From.https:/
88a0 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 6a 75 6c 69 65 6e 58 58 2f 74 65 72 6d 69 6e 61 6c 2d 6e 6f /github.com/julienXX/terminal-no
88c0 74 69 66 69 65 72 2e 22 0a 20 20 3a 74 79 70 65 20 27 66 69 6c 65 0a 20 20 3a 67 72 6f 75 70 20 tifier."...:type.'file...:group.
88e0 27 61 6c 65 72 74 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 61 6c 65 72 74 2d 6e 6f 74 69 66 69 'alert)..(defcustom.alert-notifi
8900 65 72 2d 64 65 66 61 75 6c 74 2d 69 63 6f 6e 0a 20 20 28 63 6f 6e 63 61 74 20 64 61 74 61 2d 64 er-default-icon...(concat.data-d
8920 69 72 65 63 74 6f 72 79 0a 20 20 20 20 20 20 20 20 20 20 22 69 6d 61 67 65 73 2f 69 63 6f 6e 73 irectory..........."images/icons
8940 2f 68 69 63 6f 6c 6f 72 2f 31 32 38 78 31 32 38 2f 61 70 70 73 2f 65 6d 61 63 73 2e 70 6e 67 22 /hicolor/128x128/apps/emacs.png"
8960 29 0a 20 20 22 46 69 6c 65 6e 61 6d 65 20 6f 66 20 64 65 66 61 75 6c 74 20 69 63 6f 6e 20 74 6f )..."Filename.of.default.icon.to
8980 20 73 68 6f 77 20 66 6f 72 20 74 65 72 6d 69 6e 61 6c 2d 6e 6f 74 69 66 69 65 72 20 61 6c 65 72 .show.for.terminal-notifier.aler
89a0 74 73 2e 22 0a 20 20 3a 74 79 70 65 20 27 73 74 72 69 6e 67 0a 20 20 3a 67 72 6f 75 70 20 27 61 ts."...:type.'string...:group.'a
89c0 6c 65 72 74 29 0a 0a 28 64 65 66 75 6e 20 61 6c 65 72 74 2d 6e 6f 74 69 66 69 65 72 2d 6e 6f 74 lert)..(defun.alert-notifier-not
89e0 69 66 79 20 28 69 6e 66 6f 29 0a 20 20 28 69 66 20 61 6c 65 72 74 2d 6e 6f 74 69 66 69 65 72 2d ify.(info)...(if.alert-notifier-
8a00 63 6f 6d 6d 61 6e 64 0a 20 20 20 20 20 20 28 6c 65 74 20 28 28 61 72 67 73 0a 20 20 20 20 20 20 command.......(let.((args.......
8a20 20 20 20 20 20 20 20 28 6c 69 73 74 20 22 2d 74 69 74 6c 65 22 20 20 20 28 61 6c 65 72 74 2d 65 .......(list."-title"...(alert-e
8a40 6e 63 6f 64 65 2d 73 74 72 69 6e 67 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 74 69 ncode-string.(plist-get.info.:ti
8a60 74 6c 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 2d 61 70 70 49 63 tle))...................."-appIc
8a80 6f 6e 22 20 28 6f 72 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 69 63 6f 6e 29 20 61 on".(or.(plist-get.info.:icon).a
8aa0 6c 65 72 74 2d 6e 6f 74 69 66 69 65 72 2d 64 65 66 61 75 6c 74 2d 69 63 6f 6e 29 0a 20 20 20 20 lert-notifier-default-icon).....
8ac0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 2d 6d 65 73 73 61 67 65 22 20 28 61 6c 65 72 74 ..............."-message".(alert
8ae0 2d 65 6e 63 6f 64 65 2d 73 74 72 69 6e 67 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a -encode-string.(plist-get.info.:
8b00 6d 65 73 73 61 67 65 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 28 61 70 70 6c 79 20 23 27 63 61 message))))).........(apply.#'ca
8b20 6c 6c 2d 70 72 6f 63 65 73 73 20 61 6c 65 72 74 2d 6e 6f 74 69 66 69 65 72 2d 63 6f 6d 6d 61 6e ll-process.alert-notifier-comman
8b40 64 20 6e 69 6c 20 6e 69 6c 20 6e 69 6c 20 61 72 67 73 29 29 0a 20 20 20 20 28 61 6c 65 72 74 2d d.nil.nil.nil.args)).....(alert-
8b60 6d 65 73 73 61 67 65 2d 6e 6f 74 69 66 79 20 69 6e 66 6f 29 29 29 0a 0a 28 61 6c 65 72 74 2d 64 message-notify.info)))..(alert-d
8b80 65 66 69 6e 65 2d 73 74 79 6c 65 20 27 6e 6f 74 69 66 69 65 72 20 3a 74 69 74 6c 65 20 22 4e 6f efine-style.'notifier.:title."No
8ba0 74 69 66 79 20 75 73 69 6e 67 20 74 65 72 6d 69 6e 61 6c 2d 6e 6f 74 69 66 69 65 72 22 0a 20 20 tify.using.terminal-notifier"...
8bc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 6e 6f 74 69 66 69 65 72 20 23 27 61 6c ..................:notifier.#'al
8be0 65 72 74 2d 6e 6f 74 69 66 69 65 72 2d 6e 6f 74 69 66 79 29 0a 0a 28 64 65 66 75 6e 20 61 6c 65 ert-notifier-notify)..(defun.ale
8c00 72 74 2d 6f 73 78 2d 6e 6f 74 69 66 69 65 72 2d 6e 6f 74 69 66 79 20 28 69 6e 66 6f 29 0a 20 20 rt-osx-notifier-notify.(info)...
8c20 28 61 70 70 6c 79 20 23 27 63 61 6c 6c 2d 70 72 6f 63 65 73 73 20 22 6f 73 61 73 63 72 69 70 74 (apply.#'call-process."osascript
8c40 22 20 6e 69 6c 20 6e 69 6c 20 6e 69 6c 20 22 2d 65 22 0a 20 20 20 20 20 20 20 20 20 28 6c 69 73 ".nil.nil.nil."-e"..........(lis
8c60 74 20 28 66 6f 72 6d 61 74 20 22 64 69 73 70 6c 61 79 20 6e 6f 74 69 66 69 63 61 74 69 6f 6e 20 t.(format."display.notification.
8c80 25 53 20 77 69 74 68 20 74 69 74 6c 65 20 25 53 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 %S.with.title.%S"...............
8ca0 20 20 20 20 20 20 20 20 20 28 61 6c 65 72 74 2d 65 6e 63 6f 64 65 2d 73 74 72 69 6e 67 20 28 70 .........(alert-encode-string.(p
8cc0 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 6d 65 73 73 61 67 65 29 29 0a 20 20 20 20 20 20 20 list-get.info.:message))........
8ce0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 6c 65 72 74 2d 65 6e 63 6f 64 65 2d 73 74 ................(alert-encode-st
8d00 72 69 6e 67 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 74 69 74 6c 65 29 29 29 29 29 ring.(plist-get.info.:title)))))
8d20 0a 20 20 28 61 6c 65 72 74 2d 6d 65 73 73 61 67 65 2d 6e 6f 74 69 66 79 20 69 6e 66 6f 29 29 0a ...(alert-message-notify.info)).
8d40 0a 28 77 68 65 6e 20 28 66 62 6f 75 6e 64 70 20 27 64 6f 2d 61 70 70 6c 65 73 63 72 69 70 74 29 .(when.(fboundp.'do-applescript)
8d60 0a 20 20 3b 3b 20 55 73 65 20 62 75 69 6c 74 2d 69 6e 20 41 70 70 6c 65 53 63 72 69 70 74 20 73 ...;;.Use.built-in.AppleScript.s
8d80 75 70 70 6f 72 74 20 77 68 65 6e 20 70 6f 73 73 69 62 6c 65 2e 0a 20 20 28 64 65 66 75 6e 20 61 upport.when.possible....(defun.a
8da0 6c 65 72 74 2d 6f 73 78 2d 6e 6f 74 69 66 69 65 72 2d 6e 6f 74 69 66 79 20 28 69 6e 66 6f 29 0a lert-osx-notifier-notify.(info).
8dc0 20 20 20 20 28 64 6f 2d 61 70 70 6c 65 73 63 72 69 70 74 20 28 66 6f 72 6d 61 74 20 22 64 69 73 ....(do-applescript.(format."dis
8de0 70 6c 61 79 20 6e 6f 74 69 66 69 63 61 74 69 6f 6e 20 25 53 20 77 69 74 68 20 74 69 74 6c 65 20 play.notification.%S.with.title.
8e00 25 53 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 %S".............................
8e20 28 61 6c 65 72 74 2d 65 6e 63 6f 64 65 2d 73 74 72 69 6e 67 20 28 70 6c 69 73 74 2d 67 65 74 20 (alert-encode-string.(plist-get.
8e40 69 6e 66 6f 20 3a 6d 65 73 73 61 67 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 info.:message)).................
8e60 20 20 20 20 20 20 20 20 20 20 20 20 28 61 6c 65 72 74 2d 65 6e 63 6f 64 65 2d 73 74 72 69 6e 67 ............(alert-encode-string
8e80 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 74 69 74 6c 65 29 29 29 29 0a 20 20 20 20 .(plist-get.info.:title)))).....
8ea0 28 61 6c 65 72 74 2d 6d 65 73 73 61 67 65 2d 6e 6f 74 69 66 79 20 69 6e 66 6f 29 29 29 0a 0a 28 (alert-message-notify.info)))..(
8ec0 61 6c 65 72 74 2d 64 65 66 69 6e 65 2d 73 74 79 6c 65 20 27 6f 73 78 2d 6e 6f 74 69 66 69 65 72 alert-define-style.'osx-notifier
8ee0 20 3a 74 69 74 6c 65 20 22 4e 6f 74 69 66 79 20 75 73 69 6e 67 20 6e 61 74 69 76 65 20 4f 53 58 .:title."Notify.using.native.OSX
8f00 20 6e 6f 74 69 66 69 63 61 74 69 6f 6e 22 20 3a 6e 6f 74 69 66 69 65 72 20 23 27 61 6c 65 72 74 .notification".:notifier.#'alert
8f20 2d 6f 73 78 2d 6e 6f 74 69 66 69 65 72 2d 6e 6f 74 69 66 79 29 0a 0a 28 64 65 66 75 6e 20 61 6c -osx-notifier-notify)..(defun.al
8f40 65 72 74 2d 66 72 61 6d 65 2d 6e 6f 74 69 66 79 20 28 69 6e 66 6f 29 0a 20 20 28 6c 65 74 20 28 ert-frame-notify.(info)...(let.(
8f60 28 62 75 66 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 62 75 66 66 65 72 29 29 29 0a (buf.(plist-get.info.:buffer))).
8f80 20 20 20 20 28 69 66 20 28 65 71 20 28 61 6c 65 72 74 2d 62 75 66 66 65 72 2d 73 74 61 74 75 73 ....(if.(eq.(alert-buffer-status
8fa0 20 62 75 66 29 20 27 62 75 72 69 65 64 29 0a 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 63 75 .buf).'buried).........(let.((cu
8fc0 72 72 65 6e 74 2d 66 72 61 6d 65 20 28 73 65 6c 65 63 74 65 64 2d 66 72 61 6d 65 29 29 29 0a 20 rrent-frame.(selected-frame)))..
8fe0 20 20 20 20 20 20 20 20 20 28 77 69 74 68 2d 73 65 6c 65 63 74 65 64 2d 66 72 61 6d 65 0a 20 20 .........(with-selected-frame...
9000 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 61 6b 65 2d 66 72 61 6d 65 20 27 28 28 77 69 64 74 68 ............(make-frame.'((width
9020 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2e 20 38 30 29 0a 20 20 20 20 20 20 20 20 20 20 ..................80)...........
9040 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 68 65 69 67 68 74 20 20 20 20 20 20 20 ..................(height.......
9060 20 20 20 20 20 20 20 20 2e 20 32 30 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..........20)...................
9080 20 20 20 20 20 20 20 20 20 20 28 74 6f 70 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..........(top..................
90a0 2e 20 2d 31 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..-1)...........................
90c0 20 20 28 6c 65 66 74 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2e 20 30 29 0a 20 20 20 ..(left...................0)....
90e0 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 6c 65 66 74 2d 66 .........................(left-f
9100 72 69 6e 67 65 20 20 20 20 20 20 20 20 20 20 2e 20 30 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 ringe............0).............
9120 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 72 69 67 68 74 2d 66 72 69 6e 67 65 20 20 20 ................(right-fringe...
9140 20 20 20 20 20 20 2e 20 30 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ........0)......................
9160 20 20 20 20 20 20 20 28 74 6f 6f 6c 2d 62 61 72 2d 6c 69 6e 65 73 20 20 20 20 20 20 20 2e 20 6e .......(tool-bar-lines.........n
9180 69 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 il).............................
91a0 28 6d 65 6e 75 2d 62 61 72 2d 6c 69 6e 65 73 20 20 20 20 20 20 20 2e 20 6e 69 6c 29 0a 20 20 20 (menu-bar-lines.........nil)....
91c0 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 76 65 72 74 69 63 .........................(vertic
91e0 61 6c 2d 73 63 72 6f 6c 6c 2d 62 61 72 73 20 2e 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 20 20 al-scroll-bars...nil)...........
9200 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 75 6e 73 70 6c 69 74 74 61 62 6c 65 20 ..................(unsplittable.
9220 20 20 20 20 20 20 20 20 2e 20 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..........t)....................
9240 20 20 20 20 20 20 20 20 20 28 68 61 73 2d 6d 6f 64 65 6c 69 6e 65 2d 70 20 20 20 20 20 20 20 2e .........(has-modeline-p........
9260 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .nil)...........................
9280 20 20 28 6d 69 6e 69 62 75 66 66 65 72 20 20 20 20 20 20 20 20 20 20 20 2e 20 6e 69 6c 29 29 29 ..(minibuffer.............nil)))
92a0 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 73 77 69 74 63 68 2d 74 6f 2d 62 75 66 66 65 72 20 62 .............(switch-to-buffer.b
92c0 75 66 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 28 73 65 74 20 28 6d 61 6b 65 2d 6c 6f 63 uf).............;;(set.(make-loc
92e0 61 6c 2d 76 61 72 69 61 62 6c 65 20 27 6d 6f 64 65 2d 6c 69 6e 65 2d 66 6f 72 6d 61 74 29 20 6e al-variable.'mode-line-format).n
9300 69 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 6e 63 6f 6e 63 20 69 6e 66 6f 20 28 6c 69 73 il).............(nconc.info.(lis
9320 74 20 3a 66 72 61 6d 65 20 28 73 65 6c 65 63 74 65 64 2d 66 72 61 6d 65 29 29 29 29 0a 20 20 20 t.:frame.(selected-frame))))....
9340 20 20 20 20 20 20 20 28 73 65 6c 65 63 74 2d 66 72 61 6d 65 20 63 75 72 72 65 6e 74 2d 66 72 61 .......(select-frame.current-fra
9360 6d 65 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 61 6c 65 72 74 2d 66 72 61 6d 65 2d 72 65 6d 6f me)))))..(defun.alert-frame-remo
9380 76 65 20 28 69 6e 66 6f 29 0a 20 20 28 75 6e 6c 65 73 73 20 28 65 71 20 74 68 69 73 2d 63 6f 6d ve.(info)...(unless.(eq.this-com
93a0 6d 61 6e 64 20 27 68 61 6e 64 6c 65 2d 73 77 69 74 63 68 2d 66 72 61 6d 65 29 0a 20 20 20 20 28 mand.'handle-switch-frame).....(
93c0 64 65 6c 65 74 65 2d 66 72 61 6d 65 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 66 72 delete-frame.(plist-get.info.:fr
93e0 61 6d 65 29 20 74 29 29 29 0a 0a 3b 3b 20 54 68 69 73 20 63 6f 64 65 20 77 61 73 20 6b 69 6e 64 ame).t)))..;;.This.code.was.kind
9400 6c 79 20 62 6f 72 72 6f 77 65 64 20 66 72 6f 6d 20 41 72 6e 65 20 42 61 62 65 6e 68 61 75 73 65 ly.borrowed.from.Arne.Babenhause
9420 72 68 65 69 64 65 3a 0a 3b 3b 20 68 74 74 70 3a 2f 2f 77 77 77 2e 64 72 61 6b 65 74 6f 2e 64 65 rheide:.;;.http://www.draketo.de
9440 2f 70 72 6f 6a 2f 62 61 62 63 6f 72 65 2f 23 73 65 63 2d 33 2d 31 34 2d 32 0a 28 64 65 66 75 6e /proj/babcore/#sec-3-14-2.(defun
9460 20 78 2d 75 72 67 65 6e 63 79 2d 68 69 6e 74 20 28 66 72 61 6d 65 20 61 72 67 20 26 6f 70 74 69 .x-urgency-hint.(frame.arg.&opti
9480 6f 6e 61 6c 20 73 6f 75 72 63 65 29 0a 20 20 22 53 65 74 20 74 68 65 20 78 2d 75 72 67 65 6e 63 onal.source)..."Set.the.x-urgenc
94a0 79 20 68 69 6e 74 20 66 6f 72 20 46 52 41 4d 45 20 74 6f 20 41 52 47 2e 0a 0a 2d 20 49 66 20 61 y.hint.for.FRAME.to.ARG...-.If.a
94c0 72 67 20 69 73 20 6e 69 6c 2c 20 75 6e 73 65 74 20 74 68 65 20 75 72 67 65 6e 63 79 2e 0a 2d 20 rg.is.nil,.unset.the.urgency..-.
94e0 49 66 20 61 72 67 20 69 73 20 61 6e 79 20 6f 74 68 65 72 20 76 61 6c 75 65 2c 20 73 65 74 20 74 If.arg.is.any.other.value,.set.t
9500 68 65 20 75 72 67 65 6e 63 79 2e 0a 0a 49 66 20 79 6f 75 20 75 6e 73 65 74 20 74 68 65 20 75 72 he.urgency...If.you.unset.the.ur
9520 67 65 6e 63 79 2c 20 79 6f 75 20 73 74 69 6c 6c 20 68 61 76 65 20 74 6f 20 76 69 73 69 74 20 74 gency,.you.still.have.to.visit.t
9540 68 65 20 66 72 61 6d 65 20 74 6f 20 6d 61 6b 65 20 74 68 65 20 75 72 67 65 6e 63 79 0a 73 65 74 he.frame.to.make.the.urgency.set
9560 74 69 6e 67 20 64 69 73 61 70 70 65 61 72 20 28 61 74 20 6c 65 61 73 74 20 69 6e 20 4b 44 45 29 ting.disappear.(at.least.in.KDE)
9580 2e 22 0a 20 20 28 6c 65 74 2a 20 28 28 77 6d 2d 68 69 6e 74 73 20 28 61 70 70 65 6e 64 20 28 78 ."...(let*.((wm-hints.(append.(x
95a0 2d 77 69 6e 64 6f 77 2d 70 72 6f 70 65 72 74 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 -window-property................
95c0 20 20 20 20 20 20 20 20 20 20 20 20 20 22 57 4d 5f 48 49 4e 54 53 22 20 66 72 61 6d 65 20 22 57 ............."WM_HINTS".frame."W
95e0 4d 5f 48 49 4e 54 53 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 M_HINTS"........................
9600 20 20 20 20 20 73 6f 75 72 63 65 20 6e 69 6c 20 74 29 20 6e 69 6c 29 29 0a 20 20 20 20 20 20 20 .....source.nil.t).nil))........
9620 20 20 28 66 6c 61 67 73 20 28 63 61 72 20 77 6d 2d 68 69 6e 74 73 29 29 29 0a 20 20 20 20 28 73 ..(flags.(car.wm-hints))).....(s
9640 65 74 63 61 72 20 77 6d 2d 68 69 6e 74 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 61 etcar.wm-hints.............(if.a
9660 72 67 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 6f 67 69 6f 72 20 66 6c 61 67 73 rg.................(logior.flags
9680 20 23 78 30 30 30 30 30 31 30 30 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 6f 67 61 .#x00000100)...............(loga
96a0 6e 64 20 66 6c 61 67 73 20 23 78 31 66 66 66 66 65 66 66 29 29 29 0a 20 20 20 20 28 78 2d 63 68 nd.flags.#x1ffffeff))).....(x-ch
96c0 61 6e 67 65 2d 77 69 6e 64 6f 77 2d 70 72 6f 70 65 72 74 79 20 22 57 4d 5f 48 49 4e 54 53 22 20 ange-window-property."WM_HINTS".
96e0 77 6d 2d 68 69 6e 74 73 20 66 72 61 6d 65 20 22 57 4d 5f 48 49 4e 54 53 22 20 33 32 20 74 29 29 wm-hints.frame."WM_HINTS".32.t))
9700 29 0a 0a 28 64 65 66 75 6e 20 78 2d 75 72 67 65 6e 74 20 28 26 6f 70 74 69 6f 6e 61 6c 20 61 72 )..(defun.x-urgent.(&optional.ar
9720 67 29 0a 20 20 22 4d 61 72 6b 20 74 68 65 20 63 75 72 72 65 6e 74 20 45 6d 61 63 73 20 66 72 61 g)..."Mark.the.current.Emacs.fra
9740 6d 65 20 61 73 20 72 65 71 75 69 72 69 6e 67 20 75 72 67 65 6e 74 20 61 74 74 65 6e 74 69 6f 6e me.as.requiring.urgent.attention
9760 2e 0a 0a 57 69 74 68 20 6e 6f 6e 2d 6e 69 6c 20 41 52 47 2c 20 72 65 6d 6f 76 65 20 74 68 65 20 ...With.non-nil.ARG,.remove.the.
9780 75 72 67 65 6e 63 79 20 66 6c 61 67 20 28 77 68 69 63 68 20 6d 69 67 68 74 20 6f 72 20 6d 69 67 urgency.flag.(which.might.or.mig
97a0 68 74 0a 6e 6f 74 20 63 68 61 6e 67 65 20 64 69 73 70 6c 61 79 2c 20 64 65 70 65 6e 64 69 6e 67 ht.not.change.display,.depending
97c0 20 6f 6e 20 74 68 65 20 77 69 6e 64 6f 77 20 6d 61 6e 61 67 65 72 29 2e 22 0a 20 20 28 69 6e 74 .on.the.window.manager)."...(int
97e0 65 72 61 63 74 69 76 65 20 22 50 22 29 0a 20 20 28 6c 65 74 20 28 28 66 72 61 6d 65 20 28 63 61 eractive."P")...(let.((frame.(ca
9800 72 20 28 63 61 72 20 28 63 64 72 20 28 63 75 72 72 65 6e 74 2d 66 72 61 6d 65 2d 63 6f 6e 66 69 r.(car.(cdr.(current-frame-confi
9820 67 75 72 61 74 69 6f 6e 29 29 29 29 29 29 0a 20 20 20 20 28 78 2d 75 72 67 65 6e 63 79 2d 68 69 guration)))))).....(x-urgency-hi
9840 6e 74 20 66 72 61 6d 65 20 28 6e 6f 74 20 61 72 67 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 61 6c nt.frame.(not.arg))))..(defun.al
9860 65 72 74 2d 78 31 31 2d 6e 6f 74 69 66 79 20 28 5f 69 6e 66 6f 29 0a 20 20 22 43 61 6c 6c 20 60 ert-x11-notify.(_info)..."Call.`
9880 78 2d 75 72 67 65 6e 74 27 2e 22 0a 20 20 28 78 2d 75 72 67 65 6e 74 29 29 0a 0a 28 61 6c 65 72 x-urgent'."...(x-urgent))..(aler
98a0 74 2d 64 65 66 69 6e 65 2d 73 74 79 6c 65 20 27 78 31 31 20 3a 74 69 74 6c 65 20 22 53 65 74 20 t-define-style.'x11.:title."Set.
98c0 74 68 65 20 58 31 31 20 77 69 6e 64 6f 77 20 70 72 6f 70 65 72 74 79 22 0a 20 20 20 20 20 20 20 the.X11.window.property"........
98e0 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 6e 6f 74 69 66 69 65 72 20 23 27 61 6c 65 72 74 2d 78 .............:notifier.#'alert-x
9900 31 31 2d 6e 6f 74 69 66 79 29 0a 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 61 6c 65 72 74 2d 74 6f 11-notify)...(defcustom.alert-to
9920 61 73 74 65 72 2d 64 65 66 61 75 6c 74 2d 69 63 6f 6e 0a 20 20 28 6c 65 74 20 28 28 65 78 65 63 aster-default-icon...(let.((exec
9940 2d 62 69 6e 20 28 65 78 65 63 75 74 61 62 6c 65 2d 66 69 6e 64 20 22 65 6d 61 63 73 2e 65 78 65 -bin.(executable-find."emacs.exe
9960 22 29 29 29 0a 20 20 20 20 28 63 6f 6e 64 20 28 65 78 65 63 2d 62 69 6e 0a 20 20 20 20 20 20 20 "))).....(cond.(exec-bin........
9980 20 20 20 20 28 63 6f 6e 63 61 74 20 28 66 69 6c 65 2d 6e 61 6d 65 2d 64 69 72 65 63 74 6f 72 79 ....(concat.(file-name-directory
99a0 20 65 78 65 63 2d 62 69 6e 29 20 22 2e 2e 2f 73 68 61 72 65 2f 69 63 6f 6e 73 2f 68 69 63 6f 6c .exec-bin)."../share/icons/hicol
99c0 6f 72 2f 31 32 38 78 31 32 38 2f 61 70 70 73 2f 65 6d 61 63 73 2e 70 6e 67 22 29 29 0a 20 20 20 or/128x128/apps/emacs.png"))....
99e0 20 20 20 20 20 20 20 28 74 20 6e 69 6c 29 29 29 0a 20 20 22 49 63 6f 6e 20 66 69 6c 65 20 75 73 .......(t.nil)))..."Icon.file.us
9a00 69 6e 67 20 74 6f 61 73 74 65 72 2e 22 0a 20 20 3a 74 79 70 65 20 27 73 74 72 69 6e 67 0a 20 20 ing.toaster."...:type.'string...
9a20 3a 67 72 6f 75 70 20 27 61 6c 65 72 74 0a 20 20 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 61 6c :group.'alert...)..(defcustom.al
9a40 65 72 74 2d 74 6f 61 73 74 65 72 2d 63 6f 6d 6d 61 6e 64 20 28 65 78 65 63 75 74 61 62 6c 65 2d ert-toaster-command.(executable-
9a60 66 69 6e 64 20 22 74 6f 61 73 74 22 29 0a 20 20 22 50 61 74 68 20 74 6f 20 74 68 65 20 74 6f 61 find."toast")..."Path.to.the.toa
9a80 73 74 20 63 6f 6d 6d 61 6e 64 2e 0a 54 68 69 73 20 69 73 20 66 6f 75 6e 64 20 61 74 20 68 74 74 st.command..This.is.found.at.htt
9aa0 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 6e 65 6c 73 2d 6f 2f 74 6f 61 73 74 65 72 2e 22 ps://github.com/nels-o/toaster."
9ac0 0a 20 20 3a 74 79 70 65 20 27 66 69 6c 65 0a 20 20 3a 67 72 6f 75 70 20 27 61 6c 65 72 74 0a 20 ...:type.'file...:group.'alert..
9ae0 20 29 0a 0a 28 64 65 66 75 6e 20 61 6c 65 72 74 2d 74 6f 61 73 74 65 72 2d 6e 6f 74 69 66 79 20 .)..(defun.alert-toaster-notify.
9b00 28 69 6e 66 6f 29 0a 20 20 28 69 66 20 61 6c 65 72 74 2d 74 6f 61 73 74 65 72 2d 63 6f 6d 6d 61 (info)...(if.alert-toaster-comma
9b20 6e 64 0a 20 20 20 20 20 20 28 6c 65 74 20 28 28 61 72 67 73 20 28 6c 69 73 74 0a 20 20 20 20 20 nd.......(let.((args.(list......
9b40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 2d 74 22 20 28 61 6c 65 72 74 2d 65 6e 63 6f 64 65 .............."-t".(alert-encode
9b60 2d 73 74 72 69 6e 67 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 74 69 74 6c 65 29 29 -string.(plist-get.info.:title))
9b80 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 2d 6d 22 20 28 61 6c 65 72 74 2d ...................."-m".(alert-
9ba0 65 6e 63 6f 64 65 2d 73 74 72 69 6e 67 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 6d encode-string.(plist-get.info.:m
9bc0 65 73 73 61 67 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 2d 70 22 essage))...................."-p"
9be0 20 28 65 78 70 61 6e 64 2d 66 69 6c 65 2d 6e 61 6d 65 20 28 6f 72 20 28 70 6c 69 73 74 2d 67 65 .(expand-file-name.(or.(plist-ge
9c00 74 20 69 6e 66 6f 20 3a 69 63 6f 6e 29 20 61 6c 65 72 74 2d 74 6f 61 73 74 65 72 2d 64 65 66 61 t.info.:icon).alert-toaster-defa
9c20 75 6c 74 2d 69 63 6f 6e 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 29 29 ult-icon))....................))
9c40 29 0a 20 20 20 20 20 20 20 20 28 61 70 70 6c 79 20 23 27 63 61 6c 6c 2d 70 72 6f 63 65 73 73 20 ).........(apply.#'call-process.
9c60 61 6c 65 72 74 2d 74 6f 61 73 74 65 72 2d 63 6f 6d 6d 61 6e 64 20 6e 69 6c 20 6e 69 6c 20 6e 69 alert-toaster-command.nil.nil.ni
9c80 6c 20 61 72 67 73 29 29 0a 20 20 20 20 28 61 6c 65 72 74 2d 6d 65 73 73 61 67 65 2d 6e 6f 74 69 l.args)).....(alert-message-noti
9ca0 66 79 20 69 6e 66 6f 29 29 29 0a 0a 28 61 6c 65 72 74 2d 64 65 66 69 6e 65 2d 73 74 79 6c 65 20 fy.info)))..(alert-define-style.
9cc0 27 74 6f 61 73 74 65 72 20 3a 74 69 74 6c 65 20 22 4e 6f 74 69 66 79 20 75 73 69 6e 67 20 54 6f 'toaster.:title."Notify.using.To
9ce0 61 73 74 65 72 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 6e 6f 74 69 aster".....................:noti
9d00 66 69 65 72 20 23 27 61 6c 65 72 74 2d 74 6f 61 73 74 65 72 2d 6e 6f 74 69 66 79 29 0a 0a 28 64 fier.#'alert-toaster-notify)..(d
9d20 65 66 63 75 73 74 6f 6d 20 61 6c 65 72 74 2d 74 65 72 6d 75 78 2d 63 6f 6d 6d 61 6e 64 20 28 65 efcustom.alert-termux-command.(e
9d40 78 65 63 75 74 61 62 6c 65 2d 66 69 6e 64 20 22 74 65 72 6d 75 78 2d 6e 6f 74 69 66 69 63 61 74 xecutable-find."termux-notificat
9d60 69 6f 6e 22 29 0a 20 20 22 50 61 74 68 20 74 6f 20 74 68 65 20 74 65 72 6d 75 78 2d 6e 6f 74 69 ion")..."Path.to.the.termux-noti
9d80 66 69 63 61 74 69 6f 6e 20 63 6f 6d 6d 61 6e 64 2e 0a 54 68 69 73 20 69 73 20 66 6f 75 6e 64 20 fication.command..This.is.found.
9da0 69 6e 20 74 68 65 20 74 65 72 6d 75 78 2d 61 70 69 20 70 61 63 6b 61 67 65 2c 20 61 6e 64 20 69 in.the.termux-api.package,.and.i
9dc0 74 20 72 65 71 75 69 72 65 73 20 74 68 65 20 54 65 72 6d 75 78 0a 41 50 49 20 61 64 64 6f 6e 20 t.requires.the.Termux.API.addon.
9de0 61 70 70 20 74 6f 20 62 65 20 69 6e 73 74 61 6c 6c 65 64 2e 22 0a 20 20 3a 74 79 70 65 20 27 66 app.to.be.installed."...:type.'f
9e00 69 6c 65 0a 20 20 3a 67 72 6f 75 70 20 27 61 6c 65 72 74 29 0a 0a 28 64 65 66 75 6e 20 61 6c 65 ile...:group.'alert)..(defun.ale
9e20 72 74 2d 74 65 72 6d 75 78 2d 6e 6f 74 69 66 79 20 28 69 6e 66 6f 29 0a 20 20 22 53 65 6e 64 20 rt-termux-notify.(info)..."Send.
9e40 49 4e 46 4f 20 75 73 69 6e 67 20 74 65 72 6d 75 78 2d 6e 6f 74 69 66 69 63 61 74 69 6f 6e 2e 0a INFO.using.termux-notification..
9e60 48 61 6e 64 6c 65 73 20 3a 54 49 54 4c 45 20 61 6e 64 20 3a 4d 45 53 53 41 47 45 20 6b 65 79 77 Handles.:TITLE.and.:MESSAGE.keyw
9e80 6f 72 64 73 20 66 72 6f 6d 20 74 68 65 0a 49 4e 46 4f 20 70 6c 69 73 74 2e 22 0a 20 20 28 69 66 ords.from.the.INFO.plist."...(if
9ea0 20 61 6c 65 72 74 2d 74 65 72 6d 75 78 2d 63 6f 6d 6d 61 6e 64 0a 20 20 20 20 20 20 28 6c 65 74 .alert-termux-command.......(let
9ec0 20 28 28 61 72 67 73 20 28 6e 63 6f 6e 63 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .((args.(nconc..................
9ee0 20 20 28 77 68 65 6e 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 74 69 74 6c 65 29 0a ..(when.(plist-get.info.:title).
9f00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 73 74 20 22 2d 74 22 20 .....................(list."-t".
9f20 28 61 6c 65 72 74 2d 65 6e 63 6f 64 65 2d 73 74 72 69 6e 67 20 28 70 6c 69 73 74 2d 67 65 74 20 (alert-encode-string.(plist-get.
9f40 69 6e 66 6f 20 3a 74 69 74 6c 65 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 info.:title)))).................
9f60 20 20 20 28 6c 69 73 74 20 22 2d 63 22 20 28 61 6c 65 72 74 2d 65 6e 63 6f 64 65 2d 73 74 72 69 ...(list."-c".(alert-encode-stri
9f80 6e 67 20 28 70 6c 69 73 74 2d 67 65 74 20 69 6e 66 6f 20 3a 6d 65 73 73 61 67 65 29 29 29 29 29 ng.(plist-get.info.:message)))))
9fa0 29 0a 20 20 20 20 20 20 20 20 28 61 70 70 6c 79 20 23 27 63 61 6c 6c 2d 70 72 6f 63 65 73 73 20 ).........(apply.#'call-process.
9fc0 61 6c 65 72 74 2d 74 65 72 6d 75 78 2d 63 6f 6d 6d 61 6e 64 20 6e 69 6c 0a 20 20 20 20 20 20 20 alert-termux-command.nil........
9fe0 20 20 20 20 20 20 20 20 28 6c 69 73 74 20 28 67 65 74 2d 62 75 66 66 65 72 2d 63 72 65 61 74 65 ........(list.(get-buffer-create
a000 20 22 20 2a 74 65 72 6d 75 78 2d 6e 6f 74 69 66 69 63 61 74 69 6f 6e 20 6f 75 74 70 75 74 2a 22 .".*termux-notification.output*"
a020 29 20 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 69 6c 20 61 72 67 73 29 29 0a 20 ).t)................nil.args))..
a040 20 20 20 28 61 6c 65 72 74 2d 6d 65 73 73 61 67 65 2d 6e 6f 74 69 66 79 20 69 6e 66 6f 29 29 29 ...(alert-message-notify.info)))
a060 0a 0a 28 61 6c 65 72 74 2d 64 65 66 69 6e 65 2d 73 74 79 6c 65 20 27 74 65 72 6d 75 78 20 3a 74 ..(alert-define-style.'termux.:t
a080 69 74 6c 65 20 22 4e 6f 74 69 66 79 20 75 73 69 6e 67 20 74 65 72 6d 75 78 22 0a 20 20 20 20 20 itle."Notify.using.termux"......
a0a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 6e 6f 74 69 66 69 65 72 20 23 27 61 6c 65 72 74 ...............:notifier.#'alert
a0c0 2d 74 65 72 6d 75 78 2d 6e 6f 74 69 66 79 29 0a 0a 3b 3b 20 6a 77 77 20 28 32 30 31 31 2d 30 38 -termux-notify)..;;.jww.(2011-08
a0e0 2d 32 35 29 3a 20 4e 6f 74 20 71 75 69 74 65 20 77 6f 72 6b 69 6e 67 20 79 65 74 0a 3b 3b 28 61 -25):.Not.quite.working.yet.;;(a
a100 6c 65 72 74 2d 64 65 66 69 6e 65 2d 73 74 79 6c 65 20 27 66 72 61 6d 65 20 3a 74 69 74 6c 65 20 lert-define-style.'frame.:title.
a120 22 50 6f 70 75 70 20 62 75 66 66 65 72 20 69 6e 20 61 20 66 72 61 6d 65 22 0a 3b 3b 20 20 20 20 "Popup.buffer.in.a.frame".;;....
a140 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 6e 6f 74 69 66 69 65 72 20 23 27 61 6c 65 72 ................:notifier.#'aler
a160 74 2d 66 72 61 6d 65 2d 6e 6f 74 69 66 79 0a 3b 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 t-frame-notify.;;...............
a180 20 20 20 20 20 3a 72 65 6d 6f 76 65 72 20 23 27 61 6c 65 72 74 2d 66 72 61 6d 65 2d 72 65 6d 6f .....:remover.#'alert-frame-remo
a1a0 76 65 29 0a 0c 0a 28 64 65 66 75 6e 20 61 6c 65 72 74 2d 62 75 66 66 65 72 2d 73 74 61 74 75 73 ve)...(defun.alert-buffer-status
a1c0 20 28 26 6f 70 74 69 6f 6e 61 6c 20 62 75 66 66 65 72 29 0a 20 20 28 77 69 74 68 2d 63 75 72 72 .(&optional.buffer)...(with-curr
a1e0 65 6e 74 2d 62 75 66 66 65 72 20 28 6f 72 20 62 75 66 66 65 72 20 28 63 75 72 72 65 6e 74 2d 62 ent-buffer.(or.buffer.(current-b
a200 75 66 66 65 72 29 29 0a 20 20 20 20 28 6c 65 74 20 28 28 77 69 6e 64 20 28 67 65 74 2d 62 75 66 uffer)).....(let.((wind.(get-buf
a220 66 65 72 2d 77 69 6e 64 6f 77 29 29 29 0a 20 20 20 20 20 20 28 69 66 20 77 69 6e 64 0a 20 20 20 fer-window))).......(if.wind....
a240 20 20 20 20 20 20 20 28 69 66 20 28 65 71 20 77 69 6e 64 20 28 73 65 6c 65 63 74 65 64 2d 77 69 .......(if.(eq.wind.(selected-wi
a260 6e 64 6f 77 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 61 6e 64 20 28 63 ndow))...............(if.(and.(c
a280 75 72 72 65 6e 74 2d 69 64 6c 65 2d 74 69 6d 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 urrent-idle-time)...............
a2a0 20 20 20 20 20 20 20 20 20 28 3e 20 28 66 6c 6f 61 74 2d 74 69 6d 65 20 28 63 75 72 72 65 6e 74 .........(>.(float-time.(current
a2c0 2d 69 64 6c 65 2d 74 69 6d 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 -idle-time))....................
a2e0 20 20 20 20 20 20 20 61 6c 65 72 74 2d 72 65 76 65 61 6c 2d 69 64 6c 65 2d 74 69 6d 65 29 29 0a .......alert-reveal-idle-time)).
a300 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 69 64 6c 65 0a 20 20 20 20 20 20 20 20 ..................'idle.........
a320 20 20 20 20 20 20 20 20 27 73 65 6c 65 63 74 65 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 27 ........'selected).............'
a340 76 69 73 69 62 6c 65 29 0a 20 20 20 20 20 20 20 20 27 62 75 72 69 65 64 29 29 29 29 0a 0a 28 64 visible).........'buried))))..(d
a360 65 66 76 61 72 20 61 6c 65 72 74 2d 61 63 74 69 76 65 2d 61 6c 65 72 74 73 20 6e 69 6c 29 0a 0a efvar.alert-active-alerts.nil)..
a380 28 64 65 66 75 6e 20 61 6c 65 72 74 2d 72 65 6d 6f 76 65 2d 77 68 65 6e 2d 61 63 74 69 76 65 20 (defun.alert-remove-when-active.
a3a0 28 72 65 6d 6f 76 65 72 20 69 6e 66 6f 29 0a 20 20 28 6c 65 74 20 28 28 69 64 6c 65 2d 74 69 6d (remover.info)...(let.((idle-tim
a3c0 65 20 28 61 6e 64 20 28 63 75 72 72 65 6e 74 2d 69 64 6c 65 2d 74 69 6d 65 29 0a 20 20 20 20 20 e.(and.(current-idle-time)......
a3e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 6c 6f 61 74 2d 74 69 6d 65 20 28 ...................(float-time.(
a400 63 75 72 72 65 6e 74 2d 69 64 6c 65 2d 74 69 6d 65 29 29 29 29 29 0a 20 20 20 20 28 63 6f 6e 64 current-idle-time))))).....(cond
a420 0a 20 20 20 20 20 28 28 61 6e 64 20 69 64 6c 65 2d 74 69 6d 65 20 28 3e 20 69 64 6c 65 2d 74 69 ......((and.idle-time.(>.idle-ti
a440 6d 65 20 61 6c 65 72 74 2d 70 65 72 73 69 73 74 2d 69 64 6c 65 2d 74 69 6d 65 29 29 29 0a 20 20 me.alert-persist-idle-time)))...
a460 20 20 20 28 28 61 6e 64 20 69 64 6c 65 2d 74 69 6d 65 20 28 3e 20 69 64 6c 65 2d 74 69 6d 65 20 ...((and.idle-time.(>.idle-time.
a480 61 6c 65 72 74 2d 72 65 76 65 61 6c 2d 69 64 6c 65 2d 74 69 6d 65 29 29 0a 20 20 20 20 20 20 28 alert-reveal-idle-time)).......(
a4a0 72 75 6e 2d 77 69 74 68 2d 74 69 6d 65 72 20 61 6c 65 72 74 2d 66 61 64 65 2d 74 69 6d 65 20 6e run-with-timer.alert-fade-time.n
a4c0 69 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 27 61 6c 65 72 74 il.......................#'alert
a4e0 2d 72 65 6d 6f 76 65 2d 77 68 65 6e 2d 61 63 74 69 76 65 20 72 65 6d 6f 76 65 72 20 69 6e 66 6f -remove-when-active.remover.info
a500 29 29 0a 20 20 20 20 20 28 74 0a 20 20 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 72 65 6d 6f 76 65 ))......(t.......(funcall.remove
a520 72 20 69 6e 66 6f 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 61 6c 65 72 74 2d 72 65 6d 6f 76 65 r.info)))))..(defun.alert-remove
a540 2d 6f 6e 2d 63 6f 6d 6d 61 6e 64 20 28 29 0a 20 20 28 6c 65 74 20 28 74 6f 2d 64 65 6c 65 74 65 -on-command.()...(let.(to-delete
a560 29 0a 20 20 20 20 28 64 6f 6c 69 73 74 20 28 61 6c 65 72 74 20 61 6c 65 72 74 2d 61 63 74 69 76 ).....(dolist.(alert.alert-activ
a580 65 2d 61 6c 65 72 74 73 29 0a 20 20 20 20 20 20 28 77 68 65 6e 20 28 65 71 20 28 63 75 72 72 65 e-alerts).......(when.(eq.(curre
a5a0 6e 74 2d 62 75 66 66 65 72 29 20 28 6e 74 68 20 30 20 61 6c 65 72 74 29 29 0a 20 20 20 20 20 20 nt-buffer).(nth.0.alert)).......
a5c0 20 20 28 70 75 73 68 20 61 6c 65 72 74 20 74 6f 2d 64 65 6c 65 74 65 29 0a 20 20 20 20 20 20 20 ..(push.alert.to-delete)........
a5e0 20 28 69 66 20 28 6e 74 68 20 32 20 61 6c 65 72 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 .(if.(nth.2.alert).............(
a600 66 75 6e 63 61 6c 6c 20 28 6e 74 68 20 32 20 61 6c 65 72 74 29 20 28 6e 74 68 20 31 20 61 6c 65 funcall.(nth.2.alert).(nth.1.ale
a620 72 74 29 29 29 29 29 0a 20 20 20 20 28 64 6f 6c 69 73 74 20 28 61 6c 65 72 74 20 74 6f 2d 64 65 rt))))).....(dolist.(alert.to-de
a640 6c 65 74 65 29 0a 20 20 20 20 20 20 28 73 65 74 71 20 61 6c 65 72 74 2d 61 63 74 69 76 65 2d 61 lete).......(setq.alert-active-a
a660 6c 65 72 74 73 20 28 64 65 6c 71 20 61 6c 65 72 74 20 61 6c 65 72 74 2d 61 63 74 69 76 65 2d 61 lerts.(delq.alert.alert-active-a
a680 6c 65 72 74 73 29 29 29 29 29 0a 0c 0a 28 64 65 66 75 6e 20 61 6c 65 72 74 2d 73 65 6e 64 2d 6e lerts)))))...(defun.alert-send-n
a6a0 6f 74 69 66 69 63 61 74 69 6f 6e 0a 20 20 20 20 28 61 6c 65 72 74 2d 62 75 66 66 65 72 20 69 6e otification.....(alert-buffer.in
a6c0 66 6f 20 73 74 79 6c 65 2d 64 65 66 20 26 6f 70 74 69 6f 6e 61 6c 20 70 65 72 73 69 73 74 20 6e fo.style-def.&optional.persist.n
a6e0 65 76 65 72 2d 70 65 72 29 0a 20 20 28 6c 65 74 20 28 28 6e 6f 74 69 66 69 65 72 20 28 70 6c 69 ever-per)...(let.((notifier.(pli
a700 73 74 2d 67 65 74 20 73 74 79 6c 65 2d 64 65 66 20 3a 6e 6f 74 69 66 69 65 72 29 29 29 0a 20 20 st-get.style-def.:notifier)))...
a720 20 20 28 69 66 20 6e 6f 74 69 66 69 65 72 0a 20 20 20 20 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 ..(if.notifier.........(funcall.
a740 6e 6f 74 69 66 69 65 72 20 69 6e 66 6f 29 29 29 0a 20 20 28 6c 65 74 20 28 28 72 65 6d 6f 76 65 notifier.info)))...(let.((remove
a760 72 20 28 70 6c 69 73 74 2d 67 65 74 20 73 74 79 6c 65 2d 64 65 66 20 3a 72 65 6d 6f 76 65 72 29 r.(plist-get.style-def.:remover)
a780 29 29 0a 20 20 20 20 28 61 64 64 2d 74 6f 2d 6c 69 73 74 20 27 61 6c 65 72 74 2d 61 63 74 69 76 )).....(add-to-list.'alert-activ
a7a0 65 2d 61 6c 65 72 74 73 20 28 6c 69 73 74 20 61 6c 65 72 74 2d 62 75 66 66 65 72 20 69 6e 66 6f e-alerts.(list.alert-buffer.info
a7c0 20 72 65 6d 6f 76 65 72 29 29 0a 20 20 20 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 .remover)).....(with-current-buf
a7e0 66 65 72 20 61 6c 65 72 74 2d 62 75 66 66 65 72 0a 20 20 20 20 20 20 28 61 64 64 2d 68 6f 6f 6b fer.alert-buffer.......(add-hook
a800 20 27 70 6f 73 74 2d 63 6f 6d 6d 61 6e 64 2d 68 6f 6f 6b 20 23 27 61 6c 65 72 74 2d 72 65 6d 6f .'post-command-hook.#'alert-remo
a820 76 65 2d 6f 6e 2d 63 6f 6d 6d 61 6e 64 20 6e 69 6c 20 74 29 29 0a 20 20 20 20 28 69 66 20 28 61 ve-on-command.nil.t)).....(if.(a
a840 6e 64 20 72 65 6d 6f 76 65 72 20 28 6f 72 20 28 6e 6f 74 20 70 65 72 73 69 73 74 29 20 6e 65 76 nd.remover.(or.(not.persist).nev
a860 65 72 2d 70 65 72 29 29 0a 20 20 20 20 20 20 20 20 28 72 75 6e 2d 77 69 74 68 2d 74 69 6d 65 72 er-per)).........(run-with-timer
a880 20 61 6c 65 72 74 2d 66 61 64 65 2d 74 69 6d 65 20 6e 69 6c 0a 20 20 20 20 20 20 20 20 20 20 20 .alert-fade-time.nil............
a8a0 20 20 20 20 20 20 20 20 20 20 20 20 20 23 27 61 6c 65 72 74 2d 72 65 6d 6f 76 65 2d 77 68 65 6e .............#'alert-remove-when
a8c0 2d 61 63 74 69 76 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 -active.........................
a8e0 72 65 6d 6f 76 65 72 20 69 6e 66 6f 29 29 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 remover.info))))..;;;###autoload
a900 0a 28 63 6c 2d 64 65 66 75 6e 20 61 6c 65 72 74 20 28 6d 65 73 73 61 67 65 20 26 6b 65 79 20 28 .(cl-defun.alert.(message.&key.(
a920 73 65 76 65 72 69 74 79 20 27 6e 6f 72 6d 61 6c 29 20 74 69 74 6c 65 20 69 63 6f 6e 20 63 61 74 severity.'normal).title.icon.cat
a940 65 67 6f 72 79 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 62 egory..........................b
a960 75 66 66 65 72 20 6d 6f 64 65 20 64 61 74 61 20 73 74 79 6c 65 20 70 65 72 73 69 73 74 65 6e 74 uffer.mode.data.style.persistent
a980 20 6e 65 76 65 72 2d 70 65 72 73 69 73 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .never-persist..................
a9a0 20 20 20 20 20 20 20 20 69 64 29 0a 20 20 22 41 6c 65 72 74 20 74 68 65 20 75 73 65 72 20 74 68 ........id)..."Alert.the.user.th
a9c0 61 74 20 73 6f 6d 65 74 68 69 6e 67 20 68 61 73 20 68 61 70 70 65 6e 65 64 2e 0a 4d 45 53 53 41 at.something.has.happened..MESSA
a9e0 47 45 20 69 73 20 77 68 61 74 20 74 68 65 20 75 73 65 72 20 77 69 6c 6c 20 73 65 65 2e 20 20 59 GE.is.what.the.user.will.see...Y
aa00 6f 75 20 6d 61 79 20 61 6c 73 6f 20 75 73 65 20 6b 65 79 77 6f 72 64 0a 61 72 67 75 6d 65 6e 74 ou.may.also.use.keyword.argument
aa20 73 20 74 6f 20 73 70 65 63 69 66 79 20 61 64 64 69 74 69 6f 6e 61 6c 20 64 65 74 61 69 6c 73 2e s.to.specify.additional.details.
aa40 20 20 48 65 72 65 20 69 73 20 61 20 66 75 6c 6c 20 65 78 61 6d 70 6c 65 3a 0a 0a 5c 28 61 6c 65 ..Here.is.a.full.example:..\(ale
aa60 72 74 20 5c 22 54 68 69 73 20 69 73 20 61 20 6d 65 73 73 61 67 65 5c 22 0a 20 20 20 20 20 20 20 rt.\"This.is.a.message\"........
aa80 3a 73 65 76 65 72 69 74 79 20 5c 5c 3d 27 68 69 67 68 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b :severity.\\='high............;;
aaa0 20 54 68 65 20 64 65 66 61 75 6c 74 20 73 65 76 65 72 69 74 79 20 69 73 20 60 6e 6f 72 6d 61 6c .The.default.severity.is.`normal
aac0 27 0a 20 20 20 20 20 20 20 3a 74 69 74 6c 65 20 5c 22 54 69 74 6c 65 5c 22 20 20 20 20 20 20 20 '........:title.\"Title\".......
aae0 20 20 20 20 20 20 20 3b 3b 20 41 6e 20 6f 70 74 69 6f 6e 61 6c 20 74 69 74 6c 65 0a 20 20 20 20 .......;;.An.optional.title.....
ab00 20 20 20 3a 63 61 74 65 67 6f 72 79 20 5c 5c 3d 27 65 78 61 6d 70 6c 65 20 20 20 20 20 20 20 20 ...:category.\\='example........
ab20 20 3b 3b 20 41 20 73 79 6d 62 6f 6c 20 74 6f 20 69 64 65 6e 74 69 66 79 20 74 68 65 20 6d 65 73 .;;.A.symbol.to.identify.the.mes
ab40 73 61 67 65 0a 20 20 20 20 20 20 20 3a 6d 6f 64 65 20 5c 5c 3d 27 74 65 78 74 2d 6d 6f 64 65 20 sage........:mode.\\='text-mode.
ab60 20 20 20 20 20 20 20 20 20 20 3b 3b 20 4e 6f 72 6d 61 6c 6c 79 20 64 65 74 65 72 6d 69 6e 65 64 ..........;;.Normally.determined
ab80 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 0a 20 20 20 20 20 20 20 3a 62 75 66 66 65 72 20 28 63 .automatically........:buffer.(c
aba0 75 72 72 65 6e 74 2d 62 75 66 66 65 72 29 20 20 20 20 20 20 3b 3b 20 54 68 69 73 20 69 73 20 74 urrent-buffer)......;;.This.is.t
abc0 68 65 20 64 65 66 61 75 6c 74 0a 20 20 20 20 20 20 20 3a 64 61 74 61 20 6e 69 6c 20 20 20 20 20 he.default........:data.nil.....
abe0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 55 6e 75 73 65 64 20 62 79 20 61 6c 65 ................;;.Unused.by.ale
ac00 72 74 2e 65 6c 20 69 74 73 65 6c 66 0a 20 20 20 20 20 20 20 3a 70 65 72 73 69 73 74 65 6e 74 20 rt.el.itself........:persistent.
ac20 6e 69 6c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 46 6f 72 63 65 20 74 68 65 20 61 nil...............;;.Force.the.a
ac40 6c 65 72 74 20 74 6f 20 62 65 20 70 65 72 73 69 73 74 65 6e 74 3b 0a 20 20 20 20 20 20 20 20 20 lert.to.be.persistent;..........
ac60 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 3b 3b 20 69 ............................;;.i
ac80 74 20 69 73 20 62 65 73 74 20 6e 6f 74 20 74 6f 20 75 73 65 20 74 68 69 73 0a 20 20 20 20 20 20 t.is.best.not.to.use.this.......
aca0 20 3a 6e 65 76 65 72 2d 70 65 72 73 69 73 74 20 6e 69 6c 20 20 20 20 20 20 20 20 20 20 20 20 3b .:never-persist.nil............;
acc0 3b 20 46 6f 72 63 65 20 74 68 69 73 20 61 6c 65 72 74 20 74 6f 20 6e 65 76 65 72 20 70 65 72 73 ;.Force.this.alert.to.never.pers
ace0 69 73 74 0a 20 20 20 20 20 20 20 3a 69 64 20 5c 5c 3d 27 6d 79 2d 69 64 29 20 20 20 20 20 20 20 ist........:id.\\='my-id).......
ad00 20 20 20 20 20 20 20 20 20 3b 3b 20 55 73 65 64 20 74 6f 20 72 65 70 6c 61 63 65 20 70 72 65 76 .........;;.Used.to.replace.prev
ad20 69 6f 75 73 20 6d 65 73 73 61 67 65 20 6f 66 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ious.message.of.................
ad40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 74 68 65 20 73 61 6d 65 .....................;;.the.same
ad60 20 69 64 20 69 6e 20 73 74 79 6c 65 73 20 74 68 61 74 20 73 75 70 70 6f 72 74 20 69 74 0a 20 20 .id.in.styles.that.support.it...
ad80 20 20 20 20 20 3a 73 74 79 6c 65 20 5c 5c 3d 27 66 72 69 6e 67 65 29 20 20 20 20 20 20 20 20 20 .....:style.\\='fringe).........
ada0 20 20 20 3b 3b 20 46 6f 72 63 65 20 61 20 67 69 76 65 6e 20 73 74 79 6c 65 20 74 6f 20 62 65 20 ...;;.Force.a.given.style.to.be.
adc0 75 73 65 64 3b 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 used;...........................
ade0 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 74 68 69 73 20 69 73 20 6f 6e 6c 79 20 66 6f 72 20 64 ...........;;.this.is.only.for.d
ae00 65 62 75 67 67 69 6e 67 21 0a 20 20 20 20 20 20 20 3a 69 63 6f 6e 20 5c 5c 3d 5c 22 6d 61 69 6c ebugging!........:icon.\\=\"mail
ae20 2d 6d 65 73 73 61 67 65 2d 6e 65 77 5c 22 20 3b 3b 20 69 66 20 73 74 79 6c 65 20 73 75 70 70 6f -message-new\".;;.if.style.suppo
ae40 72 74 73 20 69 63 6f 6e 20 74 68 65 6e 20 61 64 64 20 69 63 6f 6e 0a 20 20 20 20 20 20 20 20 20 rts.icon.then.add.icon..........
ae60 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 3b 3b 20 6e ............................;;.n
ae80 61 6d 65 20 6f 72 20 70 61 74 68 20 68 65 72 65 0a 0a 49 66 20 6e 6f 20 3a 74 69 74 6c 65 20 69 ame.or.path.here..If.no.:title.i
aea0 73 20 67 69 76 65 6e 2c 20 74 68 65 20 62 75 66 66 65 72 2d 6e 61 6d 65 20 6f 66 20 3a 62 75 66 s.given,.the.buffer-name.of.:buf
aec0 66 65 72 20 69 73 20 75 73 65 64 2e 20 20 49 66 0a 3a 62 75 66 66 65 72 20 69 73 20 6e 69 6c 2c fer.is.used...If.:buffer.is.nil,
aee0 20 69 74 20 69 73 20 74 68 65 20 63 75 72 72 65 6e 74 20 62 75 66 66 65 72 20 61 74 20 74 68 65 .it.is.the.current.buffer.at.the
af00 20 70 6f 69 6e 74 20 6f 66 20 63 61 6c 6c 2e 0a 0a 3a 64 61 74 61 20 69 73 20 61 6e 20 6f 70 61 .point.of.call...:data.is.an.opa
af20 71 75 65 20 76 61 6c 75 65 20 77 68 69 63 68 20 6d 6f 64 75 6c 65 73 20 63 61 6e 20 70 61 73 73 que.value.which.modules.can.pass
af40 20 74 68 72 6f 75 67 68 20 74 6f 20 74 68 65 69 72 0a 6f 77 6e 20 73 74 79 6c 65 73 20 69 66 20 .through.to.their.own.styles.if.
af60 74 68 65 79 20 77 69 73 68 2e 0a 0a 48 65 72 65 20 61 72 65 20 73 6f 6d 65 20 6d 6f 72 65 20 74 they.wish...Here.are.some.more.t
af80 79 70 69 63 61 6c 20 65 78 61 6d 70 6c 65 73 20 6f 66 20 75 73 61 67 65 3a 0a 0a 20 20 3b 3b 20 ypical.examples.of.usage:....;;.
afa0 54 68 69 73 20 69 73 20 74 68 65 20 6d 6f 73 74 20 62 61 73 69 63 20 66 6f 72 6d 20 75 73 61 67 This.is.the.most.basic.form.usag
afc0 65 0a 20 20 28 61 6c 65 72 74 20 5c 22 54 68 69 73 20 69 73 20 61 6e 20 61 6c 65 72 74 5c 22 29 e...(alert.\"This.is.an.alert\")
afe0 0a 0a 20 20 3b 3b 20 59 6f 75 20 63 61 6e 20 61 64 6a 75 73 74 20 74 68 65 20 73 65 76 65 72 69 ....;;.You.can.adjust.the.severi
b000 74 79 20 66 6f 72 20 6d 6f 72 65 20 69 6d 70 6f 72 74 61 6e 74 20 6d 65 73 73 61 67 65 73 0a 20 ty.for.more.important.messages..
b020 20 28 61 6c 65 72 74 20 5c 22 54 68 69 73 20 69 73 20 61 6e 20 61 6c 65 72 74 5c 22 20 3a 73 65 .(alert.\"This.is.an.alert\".:se
b040 76 65 72 69 74 79 20 5c 5c 3d 27 68 69 67 68 29 0a 0a 20 20 3b 3b 20 4f 72 20 64 65 63 72 65 61 verity.\\='high)....;;.Or.decrea
b060 73 65 20 69 74 20 66 6f 72 20 70 75 72 65 6c 79 20 69 6e 66 6f 72 6d 61 74 69 76 65 20 6f 6e 65 se.it.for.purely.informative.one
b080 73 0a 20 20 28 61 6c 65 72 74 20 5c 22 54 68 69 73 20 69 73 20 61 6e 20 61 6c 65 72 74 5c 22 20 s...(alert.\"This.is.an.alert\".
b0a0 3a 73 65 76 65 72 69 74 79 20 5c 5c 3d 27 74 72 69 76 69 61 6c 29 0a 0a 20 20 3b 3b 20 41 6c 65 :severity.\\='trivial)....;;.Ale
b0c0 72 74 73 20 63 61 6e 20 68 61 76 65 20 6f 70 74 69 6f 6e 61 6c 20 74 69 74 6c 65 73 2e 20 20 4f rts.can.have.optional.titles...O
b0e0 74 68 65 72 77 69 73 65 2c 20 74 68 65 20 74 69 74 6c 65 20 69 73 20 74 68 65 0a 20 20 3b 3b 20 therwise,.the.title.is.the...;;.
b100 62 75 66 66 65 72 2d 6e 61 6d 65 20 6f 66 20 74 68 65 20 28 63 75 72 72 65 6e 74 2d 62 75 66 66 buffer-name.of.the.(current-buff
b120 65 72 29 20 77 68 65 72 65 20 74 68 65 20 61 6c 65 72 74 20 6f 72 69 67 69 6e 61 74 65 64 2e 0a er).where.the.alert.originated..
b140 20 20 28 61 6c 65 72 74 20 5c 22 54 68 69 73 20 69 73 20 61 6e 20 61 6c 65 72 74 5c 22 20 3a 74 ..(alert.\"This.is.an.alert\".:t
b160 69 74 6c 65 20 5c 22 4d 79 20 41 6c 65 72 74 5c 22 29 0a 0a 20 20 3b 3b 20 46 75 72 74 68 65 72 itle.\"My.Alert\")....;;.Further
b180 2c 20 61 6c 65 72 74 73 20 63 61 6e 20 68 61 76 65 20 63 61 74 65 67 6f 72 69 65 73 2e 20 20 54 ,.alerts.can.have.categories...T
b1a0 68 69 73 20 61 6c 6c 6f 77 73 20 75 73 65 72 73 20 74 6f 0a 20 20 3b 3b 20 73 65 6c 65 63 74 69 his.allows.users.to...;;.selecti
b1c0 76 65 6c 79 20 66 69 6c 74 65 72 20 6f 6e 20 74 68 65 6d 2e 0a 20 20 28 61 6c 65 72 74 20 5c 22 vely.filter.on.them....(alert.\"
b1e0 54 68 69 73 20 69 73 20 61 6e 20 61 6c 65 72 74 5c 22 20 3a 74 69 74 6c 65 20 5c 22 4d 79 20 41 This.is.an.alert\".:title.\"My.A
b200 6c 65 72 74 5c 22 0a 20 20 20 20 20 20 20 20 20 3a 63 61 74 65 67 6f 72 79 20 5c 5c 3d 27 73 6f lert\"..........:category.\\='so
b220 6d 65 2d 63 61 74 65 67 6f 72 79 2d 6f 72 2d 6f 74 68 65 72 29 22 0a 20 20 28 63 6c 2d 64 65 73 me-category-or-other)"...(cl-des
b240 74 72 75 63 74 75 72 69 6e 67 2d 62 69 6e 64 0a 20 20 20 20 20 20 28 61 6c 65 72 74 2d 62 75 66 tructuring-bind.......(alert-buf
b260 66 65 72 20 63 75 72 72 65 6e 74 2d 6d 61 6a 6f 72 2d 6d 6f 64 65 20 63 75 72 72 65 6e 74 2d 62 fer.current-major-mode.current-b
b280 75 66 66 65 72 2d 73 74 61 74 75 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 uffer-status....................
b2a0 20 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 2d 6e 61 6d 65 29 0a 20 20 20 20 20 20 28 77 69 74 .current-buffer-name).......(wit
b2c0 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 28 6f 72 20 62 75 66 66 65 72 20 28 63 75 72 h-current-buffer.(or.buffer.(cur
b2e0 72 65 6e 74 2d 62 75 66 66 65 72 29 29 0a 20 20 20 20 20 20 20 20 28 6c 69 73 74 20 28 63 75 72 rent-buffer)).........(list.(cur
b300 72 65 6e 74 2d 62 75 66 66 65 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 20 6d rent-buffer)...............(or.m
b320 6f 64 65 20 6d 61 6a 6f 72 2d 6d 6f 64 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 ode.major-mode)...............(a
b340 6c 65 72 74 2d 62 75 66 66 65 72 2d 73 74 61 74 75 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 lert-buffer-status).............
b360 20 20 28 62 75 66 66 65 72 2d 6e 61 6d 65 29 29 29 0a 0a 20 20 20 20 28 6c 65 74 20 28 28 62 61 ..(buffer-name)))......(let.((ba
b380 73 65 2d 69 6e 66 6f 20 28 6c 69 73 74 20 3a 6d 65 73 73 61 67 65 20 6d 65 73 73 61 67 65 0a 20 se-info.(list.:message.message..
b3a0 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 3a 74 69 74 6c 65 ..........................:title
b3c0 20 28 6f 72 20 74 69 74 6c 65 20 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 2d 6e 61 6d 65 29 0a .(or.title.current-buffer-name).
b3e0 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 3a 69 63 6f 6e ...........................:icon
b400 20 69 63 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .icon...........................
b420 20 3a 73 65 76 65 72 69 74 79 20 73 65 76 65 72 69 74 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 .:severity.severity.............
b440 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 63 61 74 65 67 6f 72 79 20 63 61 74 65 67 6f 72 ...............:category.categor
b460 79 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 3a 62 75 y............................:bu
b480 66 66 65 72 20 61 6c 65 72 74 2d 62 75 66 66 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ffer.alert-buffer...............
b4a0 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 70 65 72 73 69 73 74 65 6e 74 20 70 65 72 73 69 73 74 .............:persistent.persist
b4c0 65 6e 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a ent............................:
b4e0 6d 6f 64 65 20 63 75 72 72 65 6e 74 2d 6d 61 6a 6f 72 2d 6d 6f 64 65 0a 20 20 20 20 20 20 20 20 mode.current-major-mode.........
b500 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 69 64 20 69 64 0a 20 20 20 20 20 20 ...................:id.id.......
b520 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 64 61 74 61 20 64 61 74 61 0a .....................:data.data.
b540 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 3a 70 65 72 73 ...........................:pers
b560 69 73 74 65 6e 74 20 70 65 72 73 69 73 74 65 6e 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 6d 61 istent.persistent))...........ma
b580 74 63 68 65 64 29 0a 0a 20 20 20 20 20 20 28 69 66 20 61 6c 65 72 74 2d 6c 6f 67 2d 6d 65 73 73 tched)........(if.alert-log-mess
b5a0 61 67 65 73 0a 20 20 20 20 20 20 20 20 20 20 28 61 6c 65 72 74 2d 6c 6f 67 2d 6e 6f 74 69 66 79 ages...........(alert-log-notify
b5c0 20 62 61 73 65 2d 69 6e 66 6f 29 29 0a 0a 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 61 6c 65 72 .base-info))........(unless.aler
b5e0 74 2d 68 69 64 65 2d 61 6c 6c 2d 6e 6f 74 69 66 69 63 61 74 69 6f 6e 73 0a 20 20 20 20 20 20 20 t-hide-all-notifications........
b600 20 28 63 61 74 63 68 20 27 66 69 6e 69 73 68 0a 20 20 20 20 20 20 20 20 20 20 28 64 6f 6c 69 73 .(catch.'finish...........(dolis
b620 74 20 28 63 6f 6e 66 69 67 20 28 6f 72 20 28 61 70 70 65 6e 64 20 61 6c 65 72 74 2d 75 73 65 72 t.(config.(or.(append.alert-user
b640 2d 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 -configuration..................
b660 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 6c 65 72 74 2d 69 6e 74 65 72 .....................alert-inter
b680 6e 61 6c 2d 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 nal-configuration)..............
b6a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 73 74 79 6c 65 20 27 28 6e .................(when.style.'(n
b6c0 69 6c 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 2a 20 28 28 73 74 79 6c 65 il)))).............(let*.((style
b6e0 2d 64 65 66 20 28 63 64 72 20 28 61 73 73 71 20 28 6f 72 20 73 74 79 6c 65 20 28 6e 74 68 20 31 -def.(cdr.(assq.(or.style.(nth.1
b700 20 63 6f 6e 66 69 67 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 .config)).......................
b720 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 6c 65 72 74 2d 73 74 79 6c 65 73 29 ...................alert-styles)
b740 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 70 74 69 6f 6e 73 20 28 ))....................(options.(
b760 6e 74 68 20 32 20 63 6f 6e 66 69 67 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nth.2.config))..................
b780 20 20 28 70 65 72 73 69 73 74 2d 70 20 28 6f 72 20 70 65 72 73 69 73 74 65 6e 74 0a 20 20 20 20 ..(persist-p.(or.persistent.....
b7a0 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 28 63 ..............................(c
b7c0 64 72 20 28 61 73 73 71 20 3a 70 65 72 73 69 73 74 65 6e 74 20 6f 70 74 69 6f 6e 73 29 29 29 29 dr.(assq.:persistent.options))))
b7e0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 65 72 73 69 73 74 20 28 69 66 ....................(persist.(if
b800 20 28 66 75 6e 63 74 69 6f 6e 70 20 70 65 72 73 69 73 74 2d 70 29 0a 20 20 20 20 20 20 20 20 20 .(functionp.persist-p)..........
b820 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 .......................(funcall.
b840 70 65 72 73 69 73 74 2d 70 20 62 61 73 65 2d 69 6e 66 6f 29 0a 20 20 20 20 20 20 20 20 20 20 20 persist-p.base-info)............
b860 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 65 72 73 69 73 74 2d 70 29 29 0a 20 ...................persist-p))..
b880 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e 65 76 65 72 2d 70 65 72 73 69 73 74 ..................(never-persist
b8a0 2d 70 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 20 6e 65 76 65 72 -p.....................(or.never
b8c0 2d 70 65 72 73 69 73 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 -persist........................
b8e0 20 28 63 64 72 20 28 61 73 73 71 20 3a 6e 65 76 65 72 2d 70 65 72 73 69 73 74 20 6f 70 74 69 6f .(cdr.(assq.:never-persist.optio
b900 6e 73 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e 65 76 65 72 ns))))....................(never
b920 2d 70 65 72 20 28 69 66 20 28 66 75 6e 63 74 69 6f 6e 70 20 6e 65 76 65 72 2d 70 65 72 73 69 73 -per.(if.(functionp.never-persis
b940 74 2d 70 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 t-p)............................
b960 20 20 20 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 6e 65 76 65 72 2d 70 65 72 73 69 73 74 2d 70 20 .......(funcall.never-persist-p.
b980 62 61 73 65 2d 69 6e 66 6f 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 base-info)......................
b9a0 20 20 20 20 20 20 20 20 20 20 20 6e 65 76 65 72 2d 70 65 72 73 69 73 74 2d 70 29 29 0a 20 20 20 ...........never-persist-p))....
b9c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 74 69 6e 75 65 20 28 63 64 72 20 28 ................(continue.(cdr.(
b9e0 61 73 73 71 20 3a 63 6f 6e 74 69 6e 75 65 20 6f 70 74 69 6f 6e 73 29 29 29 0a 20 20 20 20 20 20 assq.:continue.options))).......
ba00 20 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 66 6f 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 .............info)..............
ba20 20 28 73 65 74 71 20 69 6e 66 6f 20 28 69 66 20 28 6e 6f 74 20 28 6d 65 6d 71 20 3a 70 65 72 73 .(setq.info.(if.(not.(memq.:pers
ba40 69 73 74 65 6e 74 20 62 61 73 65 2d 69 6e 66 6f 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 istent.base-info))..............
ba60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 70 70 65 6e 64 20 62 61 73 65 2d 69 6e 66 ................(append.base-inf
ba80 6f 20 28 6c 69 73 74 20 3a 70 65 72 73 69 73 74 65 6e 74 20 70 65 72 73 69 73 74 29 29 0a 20 20 o.(list.:persistent.persist))...
baa0 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 62 61 73 65 2d 69 6e .........................base-in
bac0 66 6f 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 66 6f 20 28 69 66 fo).....................info.(if
bae0 20 28 6e 6f 74 20 28 6d 65 6d 71 20 3a 6e 65 76 65 72 2d 70 65 72 73 69 73 74 20 69 6e 66 6f 29 .(not.(memq.:never-persist.info)
bb00 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 )..............................(
bb20 61 70 70 65 6e 64 20 69 6e 66 6f 20 28 6c 69 73 74 20 3a 6e 65 76 65 72 2d 70 65 72 73 69 73 74 append.info.(list.:never-persist
bb40 20 6e 65 76 65 72 2d 70 65 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .never-per))....................
bb60 20 20 20 20 20 20 20 20 69 6e 66 6f 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 ........info))...............(wh
bb80 65 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 20 73 74 79 6c 65 20 20 en...................(or.style..
bba0 20 20 20 20 20 20 20 20 20 3b 20 3a 73 74 79 6c 65 20 61 6c 77 61 79 73 20 22 6d 61 74 63 68 65 .........;.:style.always."matche
bbc0 73 22 2c 20 66 6f 72 20 74 65 73 74 69 6e 67 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 s",.for.testing.................
bbe0 20 20 20 20 20 20 28 6e 6f 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ......(not......................
bc00 20 20 28 6d 65 6d 71 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 ..(memq.........................
bc20 6e 69 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 61 70 nil.........................(map
bc40 63 61 72 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 23 27 28 car..........................#'(
bc60 6c 61 6d 62 64 61 20 28 63 6f 6e 64 69 74 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 lambda.(condition)..............
bc80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6c 2d 63 61 73 65 20 28 63 61 72 20 63 6f ................(cl-case.(car.co
bca0 6e 64 69 74 69 6f 6e 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 ndition)........................
bcc0 20 20 20 20 20 20 20 20 28 3a 73 65 76 65 72 69 74 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ........(:severity..............
bce0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 65 6d 71 20 73 65 76 65 72 69 74 ...................(memq.severit
bd00 79 20 28 63 64 72 20 63 6f 6e 64 69 74 69 6f 6e 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 y.(cdr.condition))).............
bd20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 3a 73 74 61 74 75 73 0a 20 20 20 20 ...................(:status.....
bd40 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 6d 65 6d ............................(mem
bd60 71 20 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 2d 73 74 61 74 75 73 20 28 63 64 72 20 63 6f 6e q.current-buffer-status.(cdr.con
bd80 64 69 74 69 6f 6e 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 dition))).......................
bda0 20 20 20 20 20 20 20 20 20 28 3a 6d 6f 64 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .........(:mode.................
bdc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 74 72 69 6e 67 2d 6d 61 74 63 68 0a 20 20 ................(string-match...
bde0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 ...............................(
be00 63 64 72 20 63 6f 6e 64 69 74 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 cdr.condition)..................
be20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 79 6d 62 6f 6c 2d 6e 61 6d 65 20 63 75 72 ................(symbol-name.cur
be40 72 65 6e 74 2d 6d 61 6a 6f 72 2d 6d 6f 64 65 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 rent-major-mode)))..............
be60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 3a 63 61 74 65 67 6f 72 79 0a 20 20 20 ..................(:category....
be80 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 61 6e .............................(an
bea0 64 20 63 61 74 65 67 6f 72 79 20 28 73 74 72 69 6e 67 2d 6d 61 74 63 68 0a 20 20 20 20 20 20 20 d.category.(string-match........
bec0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
bee0 20 20 20 20 20 20 20 20 28 63 64 72 20 63 6f 6e 64 69 74 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 ........(cdr.condition).........
bf00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
bf20 20 20 20 20 20 20 20 28 69 66 20 28 73 74 72 69 6e 67 70 20 63 61 74 65 67 6f 72 79 29 0a 20 20 .......(if.(stringp.category)...
bf40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
bf60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 61 74 65 67 6f 72 79 0a 20 20 20 20 20 20 .................category.......
bf80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
bfa0 20 20 20 20 20 20 20 20 20 20 20 28 73 79 6d 62 6f 6c 2d 6e 61 6d 65 20 63 61 74 65 67 6f 72 79 ...........(symbol-name.category
bfc0 29 29 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 20 20 20 20 )))))...........................
bfe0 20 20 20 20 20 28 3a 74 69 74 6c 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .....(:title....................
c000 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 6e 64 20 74 69 74 6c 65 0a 20 20 20 20 20 20 20 20 .............(and.title.........
c020 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 73 74 .............................(st
c040 72 69 6e 67 2d 6d 61 74 63 68 20 28 63 64 72 20 63 6f 6e 64 69 74 69 6f 6e 29 20 74 69 74 6c 65 ring-match.(cdr.condition).title
c060 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 20 20 20 20 20 20 ))).............................
c080 20 20 20 28 3a 6d 65 73 73 61 67 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...(:message....................
c0a0 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 74 72 69 6e 67 2d 6d 61 74 63 68 20 28 63 64 72 20 .............(string-match.(cdr.
c0c0 63 6f 6e 64 69 74 69 6f 6e 29 20 6d 65 73 73 61 67 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 condition).message))............
c0e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 3a 70 72 65 64 69 63 61 74 65 0a ....................(:predicate.
c100 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
c120 28 66 75 6e 63 61 6c 6c 20 28 63 64 72 20 63 6f 6e 64 69 74 69 6f 6e 29 20 69 6e 66 6f 29 29 0a (funcall.(cdr.condition).info)).
c140 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 ...............................(
c160 3a 69 63 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 :icon...........................
c180 20 20 20 20 20 20 28 73 74 72 69 6e 67 2d 6d 61 74 63 68 20 28 63 64 72 20 63 6f 6e 64 69 74 69 ......(string-match.(cdr.conditi
c1a0 6f 6e 29 20 69 63 6f 6e 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 on).icon))))....................
c1c0 20 20 20 20 20 20 28 6e 74 68 20 30 20 63 6f 6e 66 69 67 29 29 29 29 29 0a 0a 20 20 20 20 20 20 ......(nth.0.config)))))........
c1e0 20 20 20 20 20 20 20 20 20 20 28 61 6c 65 72 74 2d 73 65 6e 64 2d 6e 6f 74 69 66 69 63 61 74 69 ..........(alert-send-notificati
c200 6f 6e 20 61 6c 65 72 74 2d 62 75 66 66 65 72 20 69 6e 66 6f 20 73 74 79 6c 65 2d 64 65 66 0a 20 on.alert-buffer.info.style-def..
c220 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
c240 20 20 20 20 20 20 20 20 70 65 72 73 69 73 74 20 6e 65 76 65 72 2d 70 65 72 29 0a 20 20 20 20 20 ........persist.never-per)......
c260 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 6d 61 74 63 68 65 64 20 74 29 0a 20 20 20 20 ...........(setq.matched.t).....
c280 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 6f 72 20 73 74 79 6c 65 20 28 6e 6f 74 20 28 ............(if.(or.style.(not.(
c2a0 69 66 20 28 66 75 6e 63 74 69 6f 6e 70 20 63 6f 6e 74 69 6e 75 65 29 0a 20 20 20 20 20 20 20 20 if.(functionp.continue).........
c2c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 ...............................(
c2e0 66 75 6e 63 61 6c 6c 20 63 6f 6e 74 69 6e 75 65 20 69 6e 66 6f 29 0a 20 20 20 20 20 20 20 20 20 funcall.continue.info)..........
c300 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 63 6f 6e 74 ............................cont
c320 69 6e 75 65 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 74 68 72 inue))).....................(thr
c340 6f 77 20 27 66 69 6e 69 73 68 20 74 29 29 29 29 29 29 29 0a 0a 20 20 20 20 20 20 28 69 66 20 28 ow.'finish.t)))))))........(if.(
c360 61 6e 64 20 28 6e 6f 74 20 6d 61 74 63 68 65 64 29 20 61 6c 65 72 74 2d 64 65 66 61 75 6c 74 2d and.(not.matched).alert-default-
c380 73 74 79 6c 65 29 0a 20 20 20 20 20 20 20 20 20 20 28 61 6c 65 72 74 2d 73 65 6e 64 2d 6e 6f 74 style)...........(alert-send-not
c3a0 69 66 69 63 61 74 69 6f 6e 20 61 6c 65 72 74 2d 62 75 66 66 65 72 20 62 61 73 65 2d 69 6e 66 6f ification.alert-buffer.base-info
c3c0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
c3e0 20 20 20 20 28 63 64 72 20 28 61 73 73 71 20 61 6c 65 72 74 2d 64 65 66 61 75 6c 74 2d 73 74 79 ....(cdr.(assq.alert-default-sty
c400 6c 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 le..............................
c420 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 6c 65 72 74 2d 73 74 79 6c 65 73 29 29 29 .................alert-styles)))
c440 29 29 29 29 0a 0c 0a 28 70 72 6f 76 69 64 65 20 27 61 6c 65 72 74 29 0a 0a 3b 3b 3b 20 61 6c 65 ))))...(provide.'alert)..;;;.ale
c460 72 74 2e 65 6c 20 65 6e 64 73 20 68 65 72 65 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 rt.el.ends.here.................
c480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c4a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c4c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c4e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c500 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c520 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c5a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c5c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c5e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c600 61 6c 65 72 74 2d 32 30 32 32 31 32 31 33 2e 31 36 31 39 2f 61 6c 65 72 74 2d 70 6b 67 2e 65 6c alert-20221213.1619/alert-pkg.el
c620 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c660 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
c680 30 30 30 30 37 37 35 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 34 33 33 36 00 20 30 00 00 00 0000775.00000000000.014336..0...
c6a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c6c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c6e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c700 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...................
c720 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...................
c740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c7a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c7c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c7e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
c800 28 64 65 66 69 6e 65 2d 70 61 63 6b 61 67 65 20 22 61 6c 65 72 74 22 20 22 32 30 32 32 31 32 31 (define-package."alert"."2022121
c820 33 2e 31 36 31 39 22 20 22 47 72 6f 77 6c 2d 73 74 79 6c 65 20 6e 6f 74 69 66 69 63 61 74 69 6f 3.1619"."Growl-style.notificatio
c840 6e 20 73 79 73 74 65 6d 20 66 6f 72 20 45 6d 61 63 73 22 0a 20 20 27 28 28 67 6e 74 70 20 22 30 n.system.for.Emacs"...'((gntp."0
c860 2e 31 22 29 0a 20 20 20 20 28 6c 6f 67 34 65 20 22 30 2e 33 2e 30 22 29 0a 20 20 20 20 28 63 6c .1").....(log4e."0.3.0").....(cl
c880 2d 6c 69 62 20 22 30 2e 35 22 29 29 0a 20 20 3a 63 6f 6d 6d 69 74 20 22 63 37 36 32 33 38 30 66 -lib."0.5"))...:commit."c762380f
c8a0 66 37 31 63 34 32 39 66 61 66 34 37 35 35 32 61 38 33 36 30 35 62 32 35 37 38 36 35 36 33 38 30 f71c429faf47552a83605b2578656380
c8c0 22 20 3a 61 75 74 68 6f 72 73 0a 20 20 27 28 28 22 4a 6f 68 6e 20 57 69 65 67 6c 65 79 22 20 2e ".:authors...'(("John.Wiegley"..
c8e0 20 22 6a 77 69 65 67 6c 65 79 40 67 6d 61 69 6c 2e 63 6f 6d 22 29 29 0a 20 20 3a 6d 61 69 6e 74 ."jwiegley@gmail.com"))...:maint
c900 61 69 6e 65 72 73 0a 20 20 27 28 28 22 4a 6f 68 6e 20 57 69 65 67 6c 65 79 22 20 2e 20 22 6a 77 ainers...'(("John.Wiegley"..."jw
c920 69 65 67 6c 65 79 40 67 6d 61 69 6c 2e 63 6f 6d 22 29 29 0a 20 20 3a 6d 61 69 6e 74 61 69 6e 65 iegley@gmail.com"))...:maintaine
c940 72 0a 20 20 27 28 22 4a 6f 68 6e 20 57 69 65 67 6c 65 79 22 20 2e 20 22 6a 77 69 65 67 6c 65 79 r...'("John.Wiegley"..."jwiegley
c960 40 67 6d 61 69 6c 2e 63 6f 6d 22 29 0a 20 20 3a 6b 65 79 77 6f 72 64 73 0a 20 20 27 28 22 6e 6f @gmail.com")...:keywords...'("no
c980 74 69 66 69 63 61 74 69 6f 6e 22 20 22 65 6d 61 63 73 22 20 22 6d 65 73 73 61 67 65 22 29 0a 20 tification"."emacs"."message")..
c9a0 20 3a 75 72 6c 20 22 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 6a 77 69 65 67 6c .:url."https://github.com/jwiegl
c9c0 65 79 2f 61 6c 65 72 74 22 29 0a 3b 3b 20 4c 6f 63 61 6c 20 56 61 72 69 61 62 6c 65 73 3a 0a 3b ey/alert").;;.Local.Variables:.;
c9e0 3b 20 6e 6f 2d 62 79 74 65 2d 63 6f 6d 70 69 6c 65 3a 20 74 0a 3b 3b 20 45 6e 64 3a 0a 00 00 00 ;.no-byte-compile:.t.;;.End:....
ca00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
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 ................................