summaryrefslogtreecommitdiff
path: root/.localrepo/org-contacts-1.1.tar
blob: 35065a14b0e56650f7230ec5ef423341613258a7 (plain)
ofshex dumpascii
0000 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 31 2e 31 2f 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 org-contacts-1.1/...............
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 34 31 35 00 20 35 00 00 00 0000000.00000000000.012415..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 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 31 2e 31 2f 52 45 41 44 4d 45 2e 6f 72 67 00 00 00 00 00 org-contacts-1.1/README.org.....
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 30 30 31 31 35 33 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 34 30 36 33 00 20 30 00 00 00 0001153.00000000000.014063..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 2a 20 49 6e 74 72 6f 0a 0a 43 6f 6e 74 61 63 74 73 20 6d 61 6e 61 67 65 6d 65 6e 74 20 73 79 73 *.Intro..Contacts.management.sys
0420 74 65 6d 20 66 6f 72 20 4f 72 67 20 4d 6f 64 65 2e 0a 0a 28 54 68 65 20 70 75 62 6c 69 63 20 72 tem.for.Org.Mode...(The.public.r
0440 65 70 6f 20 6f 66 20 6f 72 69 67 69 6e 61 6c 20 3d 6f 72 67 2d 6d 6f 64 65 2f 63 6f 6e 74 72 69 epo.of.original.=org-mode/contri
0460 62 2f 6c 69 73 70 2f 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2e 65 6c 3d 2e 29 0a 0a 4d 61 6e 61 67 b/lisp/org-contacts.el=.)..Manag
0480 65 20 79 6f 75 72 20 63 6f 6e 74 61 63 74 73 20 66 72 6f 6d 20 4f 72 67 20 6d 6f 64 65 20 61 6e e.your.contacts.from.Org.mode.an
04a0 64 20 69 6e 20 4f 72 67 20 6d 6f 64 65 20 63 6f 6e 76 65 6e 69 65 6e 74 20 77 61 79 2e 20 59 6f d.in.Org.mode.convenient.way..Yo
04c0 75 20 63 61 6e 20 61 75 74 6f 20 63 6f 6d 70 6c 65 74 65 20 65 6d 61 69 6c 0a 61 64 64 72 65 73 u.can.auto.complete.email.addres
04e0 73 65 73 2c 20 65 78 70 6f 72 74 20 63 6f 6e 74 61 63 74 73 20 74 6f 20 61 20 76 43 61 72 64 20 ses,.export.contacts.to.a.vCard.
0500 66 69 6c 65 2c 20 70 75 74 20 62 69 72 74 68 64 61 79 73 20 69 6e 20 79 6f 75 72 20 4f 72 67 20 file,.put.birthdays.in.your.Org.
0520 41 67 65 6e 64 61 2c 20 61 6e 64 20 6d 6f 72 65 2e 0a 0a 2a 20 53 63 72 65 65 6e 73 68 6f 74 73 Agenda,.and.more...*.Screenshots
0540 0a 0a 2a 20 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 0a 0a 50 61 63 6b 61 67 65 20 77 69 6c 6c 20 62 ..*.Installation..Package.will.b
0560 65 20 73 75 62 6d 69 74 74 65 64 20 74 6f 20 4e 6f 6e 47 4e 55 20 6f 72 20 4d 45 4c 50 41 2e 20 e.submitted.to.NonGNU.or.MELPA..
0580 57 61 69 74 20 6d 65 20 68 61 76 65 20 74 69 6d 65 20 74 6f 20 64 6f 20 74 68 69 73 20 77 6f 72 Wait.me.have.time.to.do.this.wor
05a0 6b 2e 0a 0a 2a 20 55 73 61 67 65 0a 0a 2a 2a 20 46 69 6e 64 20 63 6f 6e 74 61 63 74 20 69 6e 20 k...*.Usage..**.Find.contact.in.
05c0 6f 72 67 2d 63 6f 6e 74 61 63 74 73 20 64 61 74 61 62 73 65 0a 0a 55 73 65 20 63 6f 6d 6d 61 6e org-contacts.databse..Use.comman
05e0 64 20 3d 5b 4d 2d 78 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 5d 3d 20 74 6f 20 73 65 61 72 63 68 d.=[M-x.org-contacts]=.to.search
0600 2e 0a 0a 2a 2a 20 43 6f 6d 70 6c 65 74 65 20 63 6f 6e 74 61 63 74 20 70 72 6f 70 65 72 74 79 20 ...**.Complete.contact.property.
0620 77 69 74 68 20 73 6f 6d 65 20 66 75 6e 63 74 69 6f 6e 73 20 73 75 70 70 6f 72 74 0a 0a 2a 2a 2a with.some.functions.support..***
0640 20 4e 41 4d 45 0a 0a 2a 2a 2a 20 4e 49 43 4b 0a 0a 2a 2a 2a 20 45 4d 41 49 4c 0a 0a 2a 2a 2a 20 .NAME..***.NICK..***.EMAIL..***.
0660 42 49 52 54 48 44 41 59 0a 0a 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 BIRTHDAY........................
0680 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
06a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
06c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
06e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0700 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0720 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
07a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
07c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
07e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0800 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 31 2e 31 2f 52 45 41 44 4d 45 2d 65 6c 70 61 00 00 00 00 org-contacts-1.1/README-elpa....
0820 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0860 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
0880 30 30 30 32 37 32 37 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 34 32 32 34 00 20 30 00 00 00 0002727.00000000000.014224..0...
08a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
08c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
08e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0900 00 75 73 74 61 72 20 20 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...root...................
0920 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
0940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
09a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
09c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
09e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0a00 54 61 62 6c 65 20 6f 66 20 43 6f 6e 74 65 6e 74 73 0a e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 Table.of.Contents...............
0a20 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 ................................
0a40 94 80 e2 94 80 0a 0a 31 2e 20 49 6e 74 72 6f 0a 32 2e 20 53 63 72 65 65 6e 73 68 6f 74 73 0a 33 .......1..Intro.2..Screenshots.3
0a60 2e 20 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 0a 34 2e 20 55 73 61 67 65 0a 2e 2e 20 31 2e 20 46 69 ..Installation.4..Usage....1..Fi
0a80 6e 64 20 63 6f 6e 74 61 63 74 20 69 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 20 64 61 74 61 62 nd.contact.in.org-contacts.datab
0aa0 73 65 0a 2e 2e 20 32 2e 20 43 6f 6d 70 6c 65 74 65 20 63 6f 6e 74 61 63 74 20 70 72 6f 70 65 72 se....2..Complete.contact.proper
0ac0 74 79 20 77 69 74 68 20 73 6f 6d 65 20 66 75 6e 63 74 69 6f 6e 73 20 73 75 70 70 6f 72 74 0a 2e ty.with.some.functions.support..
0ae0 2e 2e 2e 2e 20 31 2e 20 4e 41 4d 45 0a 2e 2e 2e 2e 2e 20 32 2e 20 4e 49 43 4b 0a 2e 2e 2e 2e 2e .....1..NAME.......2..NICK......
0b00 20 33 2e 20 45 4d 41 49 4c 0a 2e 2e 2e 2e 2e 20 34 2e 20 42 49 52 54 48 44 41 59 0a 0a 0a 31 20 .3..EMAIL.......4..BIRTHDAY...1.
0b20 49 6e 74 72 6f 0a e2 95 90 e2 95 90 e2 95 90 e2 95 90 e2 95 90 e2 95 90 e2 95 90 0a 0a 20 20 43 Intro..........................C
0b40 6f 6e 74 61 63 74 73 20 6d 61 6e 61 67 65 6d 65 6e 74 20 73 79 73 74 65 6d 20 66 6f 72 20 4f 72 ontacts.management.system.for.Or
0b60 67 20 4d 6f 64 65 2e 0a 0a 20 20 28 54 68 65 20 70 75 62 6c 69 63 20 72 65 70 6f 20 6f 66 20 6f g.Mode.....(The.public.repo.of.o
0b80 72 69 67 69 6e 61 6c 20 60 6f 72 67 2d 6d 6f 64 65 2f 63 6f 6e 74 72 69 62 2f 6c 69 73 70 2f 6f riginal.`org-mode/contrib/lisp/o
0ba0 72 67 2d 63 6f 6e 74 61 63 74 73 2e 65 6c 27 2e 29 0a 0a 20 20 4d 61 6e 61 67 65 20 79 6f 75 72 rg-contacts.el'.)....Manage.your
0bc0 20 63 6f 6e 74 61 63 74 73 20 66 72 6f 6d 20 4f 72 67 20 6d 6f 64 65 20 61 6e 64 20 69 6e 20 4f .contacts.from.Org.mode.and.in.O
0be0 72 67 20 6d 6f 64 65 20 63 6f 6e 76 65 6e 69 65 6e 74 20 77 61 79 2e 20 59 6f 75 0a 20 20 63 61 rg.mode.convenient.way..You...ca
0c00 6e 20 61 75 74 6f 20 63 6f 6d 70 6c 65 74 65 20 65 6d 61 69 6c 20 61 64 64 72 65 73 73 65 73 2c n.auto.complete.email.addresses,
0c20 20 65 78 70 6f 72 74 20 63 6f 6e 74 61 63 74 73 20 74 6f 20 61 20 76 43 61 72 64 20 66 69 6c 65 .export.contacts.to.a.vCard.file
0c40 2c 0a 20 20 70 75 74 20 62 69 72 74 68 64 61 79 73 20 69 6e 20 79 6f 75 72 20 4f 72 67 20 41 67 ,...put.birthdays.in.your.Org.Ag
0c60 65 6e 64 61 2c 20 61 6e 64 20 6d 6f 72 65 2e 0a 0a 0a 32 20 53 63 72 65 65 6e 73 68 6f 74 73 0a enda,.and.more....2.Screenshots.
0c80 e2 95 90 e2 95 90 e2 95 90 e2 95 90 e2 95 90 e2 95 90 e2 95 90 e2 95 90 e2 95 90 e2 95 90 e2 95 ................................
0ca0 90 e2 95 90 e2 95 90 0a 0a 0a 33 20 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 0a e2 95 90 e2 95 90 e2 ..........3.Installation........
0cc0 95 90 e2 95 90 e2 95 90 e2 95 90 e2 95 90 e2 95 90 e2 95 90 e2 95 90 e2 95 90 e2 95 90 e2 95 90 ................................
0ce0 e2 95 90 0a 0a 20 20 50 61 63 6b 61 67 65 20 77 69 6c 6c 20 62 65 20 73 75 62 6d 69 74 74 65 64 .......Package.will.be.submitted
0d00 20 74 6f 20 4e 6f 6e 47 4e 55 20 6f 72 20 4d 45 4c 50 41 2e 20 57 61 69 74 20 6d 65 20 68 61 76 .to.NonGNU.or.MELPA..Wait.me.hav
0d20 65 20 74 69 6d 65 20 74 6f 20 64 6f 0a 20 20 74 68 69 73 20 77 6f 72 6b 2e 0a 0a 0a 34 20 55 73 e.time.to.do...this.work....4.Us
0d40 61 67 65 0a e2 95 90 e2 95 90 e2 95 90 e2 95 90 e2 95 90 e2 95 90 e2 95 90 0a 0a 34 2e 31 20 46 age........................4.1.F
0d60 69 6e 64 20 63 6f 6e 74 61 63 74 20 69 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 20 64 61 74 61 ind.contact.in.org-contacts.data
0d80 62 73 65 0a e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 bse.............................
0da0 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 ................................
0dc0 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 ................................
0de0 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 0a 0a 20 20 ................................
0e00 55 73 65 20 63 6f 6d 6d 61 6e 64 20 60 5b 4d 2d 78 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 5d 27 Use.command.`[M-x.org-contacts]'
0e20 20 74 6f 20 73 65 61 72 63 68 2e 0a 0a 0a 34 2e 32 20 43 6f 6d 70 6c 65 74 65 20 63 6f 6e 74 61 .to.search....4.2.Complete.conta
0e40 63 74 20 70 72 6f 70 65 72 74 79 20 77 69 74 68 20 73 6f 6d 65 20 66 75 6e 63 74 69 6f 6e 73 20 ct.property.with.some.functions.
0e60 73 75 70 70 6f 72 74 0a e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 support.........................
0e80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 ................................
0ea0 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 ................................
0ec0 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 ................................
0ee0 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 ................................
0f00 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 e2 94 80 0a 0a 34 2e 32 2e 31 20 4e 41 4d 45 0a .....................4.2.1.NAME.
0f20 e2 95 8c e2 95 8c e2 95 8c e2 95 8c e2 95 8c e2 95 8c e2 95 8c e2 95 8c e2 95 8c e2 95 8c 0a 0a ................................
0f40 0a 34 2e 32 2e 32 20 4e 49 43 4b 0a e2 95 8c e2 95 8c e2 95 8c e2 95 8c e2 95 8c e2 95 8c e2 95 .4.2.2.NICK.....................
0f60 8c e2 95 8c e2 95 8c e2 95 8c 0a 0a 0a 34 2e 32 2e 33 20 45 4d 41 49 4c 0a e2 95 8c e2 95 8c e2 .............4.2.3.EMAIL........
0f80 95 8c e2 95 8c e2 95 8c e2 95 8c e2 95 8c e2 95 8c e2 95 8c e2 95 8c e2 95 8c 0a 0a 0a 34 2e 32 .............................4.2
0fa0 2e 34 20 42 49 52 54 48 44 41 59 0a e2 95 8c e2 95 8c e2 95 8c e2 95 8c e2 95 8c e2 95 8c e2 95 .4.BIRTHDAY.....................
0fc0 8c e2 95 8c e2 95 8c e2 95 8c e2 95 8c e2 95 8c e2 95 8c e2 95 8c 0a 00 00 00 00 00 00 00 00 00 ................................
0fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1000 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 31 2e 31 2f 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 70 6b org-contacts-1.1/org-contacts-pk
1020 67 2e 65 6c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 g.el............................
1040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1060 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
1080 30 30 30 30 37 32 30 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 36 31 32 30 00 20 30 00 00 00 0000720.00000000000.016120..0...
10a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1100 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...................
1120 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...................
1140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1200 3b 3b 20 47 65 6e 65 72 61 74 65 64 20 70 61 63 6b 61 67 65 20 64 65 73 63 72 69 70 74 69 6f 6e ;;.Generated.package.description
1220 20 66 72 6f 6d 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2e 65 6c 20 20 2d 2a 2d 20 6e 6f 2d 62 79 .from.org-contacts.el..-*-.no-by
1240 74 65 2d 63 6f 6d 70 69 6c 65 3a 20 74 20 2d 2a 2d 0a 28 64 65 66 69 6e 65 2d 70 61 63 6b 61 67 te-compile:.t.-*-.(define-packag
1260 65 20 22 6f 72 67 2d 63 6f 6e 74 61 63 74 73 22 20 22 31 2e 31 22 20 22 43 6f 6e 74 61 63 74 73 e."org-contacts"."1.1"."Contacts
1280 20 6d 61 6e 61 67 65 6d 65 6e 74 20 73 79 73 74 65 6d 20 66 6f 72 20 4f 72 67 20 4d 6f 64 65 22 .management.system.for.Org.Mode"
12a0 20 27 28 28 65 6d 61 63 73 20 22 32 37 2e 31 22 29 20 28 6f 72 67 20 22 39 2e 33 2e 34 22 29 29 .'((emacs."27.1").(org."9.3.4"))
12c0 20 3a 63 6f 6d 6d 69 74 20 22 32 31 37 62 61 30 34 63 39 64 36 33 38 30 36 37 61 36 63 63 62 30 .:commit."217ba04c9d638067a6ccb0
12e0 38 32 39 63 66 31 38 38 35 66 35 34 63 31 64 35 36 38 22 20 3a 61 75 74 68 6f 72 73 20 27 28 28 829cf1885f54c1d568".:authors.'((
1300 22 4a 75 6c 69 65 6e 20 44 61 6e 6a 6f 75 22 20 2e 20 22 6a 75 6c 69 65 6e 40 64 61 6e 6a 6f 75 "Julien.Danjou"..."julien@danjou
1320 2e 69 6e 66 6f 22 29 29 20 3a 6d 61 69 6e 74 61 69 6e 65 72 20 27 28 22 73 74 61 72 64 69 76 69 .info")).:maintainer.'("stardivi
1340 6e 65 72 22 20 2e 20 22 6e 75 6d 62 63 68 69 6c 64 40 67 6d 61 69 6c 2e 63 6f 6d 22 29 20 3a 6b ner"..."numbchild@gmail.com").:k
1360 65 79 77 6f 72 64 73 20 27 28 22 63 6f 6e 74 61 63 74 73 22 20 22 6f 72 67 2d 6d 6f 64 65 22 20 eywords.'("contacts"."org-mode".
1380 22 6f 75 74 6c 69 6e 65 73 22 20 22 68 79 70 65 72 6d 65 64 69 61 22 20 22 63 61 6c 65 6e 64 61 "outlines"."hypermedia"."calenda
13a0 72 22 29 20 3a 75 72 6c 20 22 68 74 74 70 73 3a 2f 2f 72 65 70 6f 2e 6f 72 2e 63 7a 2f 6f 72 67 r").:url."https://repo.or.cz/org
13c0 2d 63 6f 6e 74 61 63 74 73 2e 67 69 74 22 29 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 -contacts.git").................
13e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1400 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 31 2e 31 2f 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2e 65 6c org-contacts-1.1/org-contacts.el
1420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1460 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
1480 30 31 36 35 36 37 33 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 35 33 36 34 00 20 30 00 00 00 0165673.00000000000.015364..0...
14a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
14e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1500 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...................
1520 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...................
1540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
15e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1600 3b 3b 3b 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2e 65 6c 20 2d 2d 2d 20 43 6f 6e 74 61 63 74 73 ;;;.org-contacts.el.---.Contacts
1620 20 6d 61 6e 61 67 65 6d 65 6e 74 20 73 79 73 74 65 6d 20 66 6f 72 20 4f 72 67 20 4d 6f 64 65 20 .management.system.for.Org.Mode.
1640 2d 2a 2d 20 6c 65 78 69 63 61 6c 2d 62 69 6e 64 69 6e 67 3a 20 74 3b 20 2d 2a 2d 0a 0a 3b 3b 20 -*-.lexical-binding:.t;.-*-..;;.
1660 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 31 30 2d 32 30 32 32 20 20 46 72 65 65 20 53 6f Copyright.(C).2010-2022..Free.So
1680 66 74 77 61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 2c 20 49 6e 63 2e 0a 0a 3b 3b 20 41 75 74 68 ftware.Foundation,.Inc...;;.Auth
16a0 6f 72 3a 20 4a 75 6c 69 65 6e 20 44 61 6e 6a 6f 75 20 3c 6a 75 6c 69 65 6e 40 64 61 6e 6a 6f 75 or:.Julien.Danjou.<julien@danjou
16c0 2e 69 6e 66 6f 3e 0a 3b 3b 20 4d 61 69 6e 74 61 69 6e 65 72 3a 20 73 74 61 72 64 69 76 69 6e 65 .info>.;;.Maintainer:.stardivine
16e0 72 20 3c 6e 75 6d 62 63 68 69 6c 64 40 67 6d 61 69 6c 2e 63 6f 6d 3e 0a 3b 3b 20 4b 65 79 77 6f r.<numbchild@gmail.com>.;;.Keywo
1700 72 64 73 3a 20 63 6f 6e 74 61 63 74 73 2c 20 6f 72 67 2d 6d 6f 64 65 2c 20 6f 75 74 6c 69 6e 65 rds:.contacts,.org-mode,.outline
1720 73 2c 20 68 79 70 65 72 6d 65 64 69 61 2c 20 63 61 6c 65 6e 64 61 72 0a 3b 3b 20 56 65 72 73 69 s,.hypermedia,.calendar.;;.Versi
1740 6f 6e 3a 20 31 2e 31 0a 3b 3b 20 50 61 63 6b 61 67 65 2d 52 65 71 75 69 72 65 73 3a 20 28 28 65 on:.1.1.;;.Package-Requires:.((e
1760 6d 61 63 73 20 22 32 37 2e 31 22 29 20 28 6f 72 67 20 22 39 2e 33 2e 34 22 29 29 0a 3b 3b 20 48 macs."27.1").(org."9.3.4")).;;.H
1780 6f 6d 65 70 61 67 65 3a 20 68 74 74 70 73 3a 2f 2f 72 65 70 6f 2e 6f 72 2e 63 7a 2f 6f 72 67 2d omepage:.https://repo.or.cz/org-
17a0 63 6f 6e 74 61 63 74 73 2e 67 69 74 0a 3b 3b 0a 3b 3b 20 54 68 69 73 20 66 69 6c 65 20 69 73 20 contacts.git.;;.;;.This.file.is.
17c0 6e 6f 74 20 70 61 72 74 20 6f 66 20 47 4e 55 20 45 6d 61 63 73 2e 0a 3b 3b 0a 3b 3b 20 54 68 69 not.part.of.GNU.Emacs..;;.;;.Thi
17e0 73 20 70 72 6f 67 72 61 6d 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3a 20 79 6f 75 20 s.program.is.free.software:.you.
1800 63 61 6e 20 72 65 64 69 73 74 72 69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 66 can.redistribute.it.and/or.modif
1820 79 0a 3b 3b 20 69 74 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68 65 20 47 y.;;.it.under.the.terms.of.the.G
1840 4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 61 73 20 70 75 62 NU.General.Public.License.as.pub
1860 6c 69 73 68 65 64 20 62 79 0a 3b 3b 20 74 68 65 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20 46 lished.by.;;.the.Free.Software.F
1880 6f 75 6e 64 61 74 69 6f 6e 2c 20 65 69 74 68 65 72 20 76 65 72 73 69 6f 6e 20 33 20 6f 66 20 74 oundation,.either.version.3.of.t
18a0 68 65 20 4c 69 63 65 6e 73 65 2c 20 6f 72 0a 3b 3b 20 28 61 74 20 79 6f 75 72 20 6f 70 74 69 6f he.License,.or.;;.(at.your.optio
18c0 6e 29 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 n).any.later.version...;;.This.p
18e0 72 6f 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 rogram.is.distributed.in.the.hop
1900 65 20 74 68 61 74 20 69 74 20 77 69 6c 6c 20 62 65 20 75 73 65 66 75 6c 2c 0a 3b 3b 20 62 75 74 e.that.it.will.be.useful,.;;.but
1920 20 57 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 .WITHOUT.ANY.WARRANTY;.without.e
1940 76 65 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 ven.the.implied.warranty.of.;;.M
1960 45 52 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 ERCHANTABILITY.or.FITNESS.FOR.A.
1980 50 41 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 0a 3b 3b 20 PARTICULAR.PURPOSE...See.the.;;.
19a0 47 4e 55 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 GNU.General.Public.License.for.m
19c0 6f 72 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 ore.details...;;.You.should.have
19e0 20 72 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 .received.a.copy.of.the.GNU.Gene
1a00 72 61 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 ral.Public.License.;;.along.with
1a20 20 47 4e 55 20 45 6d 61 63 73 2e 20 20 49 66 20 6e 6f 74 2c 20 73 65 65 20 3c 68 74 74 70 73 3a .GNU.Emacs...If.not,.see.<https:
1a40 2f 2f 77 77 77 2e 67 6e 75 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 3e 2e 0a 3b 3b 3b 3b 3b 3b //www.gnu.org/licenses/>..;;;;;;
1a60 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1a80 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1aa0 3b 3b 3b 3b 3b 3b 3b 0a 3b 3b 0a 3b 3b 3b 20 43 6f 6d 6d 65 6e 74 61 72 79 3a 0a 0a 3b 3b 20 54 ;;;;;;;.;;.;;;.Commentary:..;;.T
1ac0 68 69 73 20 66 69 6c 65 20 63 6f 6e 74 61 69 6e 73 20 74 68 65 20 63 6f 64 65 20 66 6f 72 20 6d his.file.contains.the.code.for.m
1ae0 61 6e 61 67 69 6e 67 20 79 6f 75 72 20 63 6f 6e 74 61 63 74 73 20 69 6e 74 6f 20 4f 72 67 2d 6d anaging.your.contacts.into.Org-m
1b00 6f 64 65 2e 0a 0a 3b 3b 20 54 6f 20 65 6e 74 65 72 20 6e 65 77 20 63 6f 6e 74 61 63 74 73 2c 20 ode...;;.To.enter.new.contacts,.
1b20 79 6f 75 20 63 61 6e 20 75 73 65 20 60 6f 72 67 2d 63 61 70 74 75 72 65 27 20 61 6e 64 20 61 20 you.can.use.`org-capture'.and.a.
1b40 6d 69 6e 69 6d 61 6c 20 74 65 6d 70 6c 61 74 65 20 6a 75 73 74 20 6c 69 6b 65 0a 3b 3b 20 74 68 minimal.template.just.like.;;.th
1b60 69 73 3a 0a 0a 3b 3b 20 20 20 20 20 20 20 20 20 28 22 63 22 20 22 43 6f 6e 74 61 63 74 73 22 20 is:..;;.........("c"."Contacts".
1b80 65 6e 74 72 79 20 28 66 69 6c 65 20 22 7e 2f 4f 72 67 2f 63 6f 6e 74 61 63 74 73 2e 6f 72 67 22 entry.(file."~/Org/contacts.org"
1ba0 29 0a 3b 3b 20 20 20 20 20 20 20 20 20 20 22 2a 20 25 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d ).;;.........."*.%(org-contacts-
1bc0 74 65 6d 70 6c 61 74 65 2d 6e 61 6d 65 29 0a 3b 3b 20 3a 50 52 4f 50 45 52 54 49 45 53 3a 0a 3b template-name).;;.:PROPERTIES:.;
1be0 3b 20 3a 45 4d 41 49 4c 3a 20 25 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 74 65 6d 70 6c 61 74 ;.:EMAIL:.%(org-contacts-templat
1c00 65 2d 65 6d 61 69 6c 29 0a 3b 3b 20 3a 45 4e 44 3a 22 29 29 29 0a 3b 3b 0a 3b 3b 20 59 6f 75 20 e-email).;;.:END:"))).;;.;;.You.
1c20 63 61 6e 20 61 6c 73 6f 20 75 73 65 20 61 20 63 6f 6d 70 6c 65 78 20 74 65 6d 70 6c 61 74 65 2c can.also.use.a.complex.template,
1c40 20 66 6f 72 20 65 78 61 6d 70 6c 65 3a 0a 3b 3b 0a 3b 3b 20 20 20 20 20 20 20 20 20 28 22 63 22 .for.example:.;;.;;.........("c"
1c60 20 22 43 6f 6e 74 61 63 74 73 22 20 65 6e 74 72 79 20 28 66 69 6c 65 20 22 7e 2f 4f 72 67 2f 63 ."Contacts".entry.(file."~/Org/c
1c80 6f 6e 74 61 63 74 73 2e 6f 72 67 22 29 0a 3b 3b 20 20 20 20 20 20 20 20 20 20 22 2a 20 25 28 6f ontacts.org").;;.........."*.%(o
1ca0 72 67 2d 63 6f 6e 74 61 63 74 73 2d 74 65 6d 70 6c 61 74 65 2d 6e 61 6d 65 29 0a 3b 3b 20 3a 50 rg-contacts-template-name).;;.:P
1cc0 52 4f 50 45 52 54 49 45 53 3a 0a 3b 3b 20 3a 45 4d 41 49 4c 3a 20 25 28 6f 72 67 2d 63 6f 6e 74 ROPERTIES:.;;.:EMAIL:.%(org-cont
1ce0 61 63 74 73 2d 74 65 6d 70 6c 61 74 65 2d 65 6d 61 69 6c 29 0a 3b 3b 20 3a 50 48 4f 4e 45 3a 0a acts-template-email).;;.:PHONE:.
1d00 3b 3b 20 3a 41 4c 49 41 53 3a 0a 3b 3b 20 3a 4e 49 43 4b 4e 41 4d 45 3a 0a 3b 3b 20 3a 49 47 4e ;;.:ALIAS:.;;.:NICKNAME:.;;.:IGN
1d20 4f 52 45 3a 0a 3b 3b 20 3a 49 43 4f 4e 3a 0a 3b 3b 20 3a 4e 4f 54 45 3a 0a 3b 3b 20 3a 41 44 44 ORE:.;;.:ICON:.;;.:NOTE:.;;.:ADD
1d40 52 45 53 53 3a 0a 3b 3b 20 3a 42 49 52 54 48 44 41 59 3a 0a 3b 3b 20 3a 45 4e 44 3a 22 29 29 29 RESS:.;;.:BIRTHDAY:.;;.:END:")))
1d60 0a 0a 3b 3b 3b 3b 20 55 73 61 67 65 3a 0a 0a 3b 3b 20 48 6f 77 20 74 6f 20 73 65 61 72 63 68 3f ..;;;;.Usage:..;;.How.to.search?
1d80 0a 3b 3b 20 2d 20 59 6f 75 20 63 61 6e 20 75 73 65 20 5b 4d 2d 78 20 6f 72 67 2d 63 6f 6e 74 61 .;;.-.You.can.use.[M-x.org-conta
1da0 63 74 73 5d 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 73 65 61 72 63 68 2e 0a 3b 3b 0a 3b 3b 20 2d 20 cts].command.to.search..;;.;;.-.
1dc0 59 6f 75 20 63 61 6e 20 75 73 65 20 60 6f 72 67 2d 73 70 61 72 73 65 2d 74 72 65 65 27 20 5b 43 You.can.use.`org-sparse-tree'.[C
1de0 2d 63 20 2f 20 70 5d 20 74 6f 20 66 69 6c 74 65 72 20 62 61 73 65 64 20 6f 6e 20 61 0a 3b 3b 20 -c./.p].to.filter.based.on.a.;;.
1e00 20 20 73 70 65 63 69 66 69 63 20 70 72 6f 70 65 72 74 79 2e 20 4f 72 20 6f 74 68 65 72 20 6d 61 ..specific.property..Or.other.ma
1e20 74 63 68 65 72 20 6f 6e 20 60 6f 72 67 2d 73 70 61 72 73 65 2d 74 72 65 65 27 2e 0a 0a 3b 3b 3b tcher.on.`org-sparse-tree'...;;;
1e40 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 69 .Code:..(require.'cl-lib).(requi
1e60 72 65 20 27 6f 72 67 29 0a 28 72 65 71 75 69 72 65 20 27 67 6e 75 73 2d 75 74 69 6c 29 0a 28 72 re.'org).(require.'gnus-util).(r
1e80 65 71 75 69 72 65 20 27 67 6e 75 73 2d 61 72 74 29 0a 28 72 65 71 75 69 72 65 20 27 6d 61 69 6c equire.'gnus-art).(require.'mail
1ea0 2d 75 74 69 6c 73 29 0a 28 72 65 71 75 69 72 65 20 27 6f 72 67 2d 61 67 65 6e 64 61 29 0a 28 72 -utils).(require.'org-agenda).(r
1ec0 65 71 75 69 72 65 20 27 6f 72 67 2d 63 61 70 74 75 72 65 29 0a 28 72 65 71 75 69 72 65 20 27 6f equire.'org-capture).(require.'o
1ee0 6c 29 0a 0a 28 64 65 66 67 72 6f 75 70 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 20 6e 69 6c 0a 20 l)..(defgroup.org-contacts.nil..
1f00 20 22 4f 70 74 69 6f 6e 73 20 61 62 6f 75 74 20 63 6f 6e 74 61 63 74 73 20 6d 61 6e 61 67 65 6d ."Options.about.contacts.managem
1f20 65 6e 74 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 6f 72 67 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d ent."...:group.'org)..(defcustom
1f40 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 66 69 6c 65 73 20 6e 69 6c 0a 20 20 22 4c 69 73 74 20 .org-contacts-files.nil..."List.
1f60 6f 66 20 4f 72 67 20 66 69 6c 65 73 20 74 6f 20 75 73 65 20 61 73 20 63 6f 6e 74 61 63 74 73 20 of.Org.files.to.use.as.contacts.
1f80 73 6f 75 72 63 65 2e 0a 57 68 65 6e 20 73 65 74 20 74 6f 20 6e 69 6c 2c 20 61 6c 6c 20 79 6f 75 source..When.set.to.nil,.all.you
1fa0 72 20 4f 72 67 20 66 69 6c 65 73 20 77 69 6c 6c 20 62 65 20 75 73 65 64 2e 22 0a 20 20 3a 74 79 r.Org.files.will.be.used."...:ty
1fc0 70 65 20 27 28 72 65 70 65 61 74 20 66 69 6c 65 29 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6f pe.'(repeat.file))..(defcustom.o
1fe0 72 67 2d 63 6f 6e 74 61 63 74 73 2d 65 6d 61 69 6c 2d 70 72 6f 70 65 72 74 79 20 22 45 4d 41 49 rg-contacts-email-property."EMAI
2000 4c 22 0a 20 20 22 4e 61 6d 65 20 6f 66 20 74 68 65 20 70 72 6f 70 65 72 74 79 20 66 6f 72 20 63 L"..."Name.of.the.property.for.c
2020 6f 6e 74 61 63 74 20 65 6d 61 69 6c 20 61 64 64 72 65 73 73 2e 22 0a 20 20 3a 74 79 70 65 20 27 ontact.email.address."...:type.'
2040 73 74 72 69 6e 67 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 string)..(defcustom.org-contacts
2060 2d 74 65 6c 2d 70 72 6f 70 65 72 74 79 20 22 50 48 4f 4e 45 22 0a 20 20 22 4e 61 6d 65 20 6f 66 -tel-property."PHONE"..."Name.of
2080 20 74 68 65 20 70 72 6f 70 65 72 74 79 20 66 6f 72 20 63 6f 6e 74 61 63 74 20 70 68 6f 6e 65 20 .the.property.for.contact.phone.
20a0 6e 75 6d 62 65 72 2e 22 0a 20 20 3a 74 79 70 65 20 27 73 74 72 69 6e 67 29 0a 0a 28 64 65 66 63 number."...:type.'string)..(defc
20c0 75 73 74 6f 6d 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 61 64 64 72 65 73 73 2d 70 72 6f 70 65 ustom.org-contacts-address-prope
20e0 72 74 79 20 22 41 44 44 52 45 53 53 22 0a 20 20 22 4e 61 6d 65 20 6f 66 20 74 68 65 20 70 72 6f rty."ADDRESS"..."Name.of.the.pro
2100 70 65 72 74 79 20 66 6f 72 20 63 6f 6e 74 61 63 74 20 61 64 64 72 65 73 73 2e 22 0a 20 20 3a 74 perty.for.contact.address."...:t
2120 79 70 65 20 27 73 74 72 69 6e 67 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6f 72 67 2d 63 6f 6e ype.'string)..(defcustom.org-con
2140 74 61 63 74 73 2d 62 69 72 74 68 64 61 79 2d 70 72 6f 70 65 72 74 79 20 22 42 49 52 54 48 44 41 tacts-birthday-property."BIRTHDA
2160 59 22 0a 20 20 22 4e 61 6d 65 20 6f 66 20 74 68 65 20 70 72 6f 70 65 72 74 79 20 66 6f 72 20 63 Y"..."Name.of.the.property.for.c
2180 6f 6e 74 61 63 74 20 62 69 72 74 68 64 61 79 20 64 61 74 65 2e 22 0a 20 20 3a 74 79 70 65 20 27 ontact.birthday.date."...:type.'
21a0 73 74 72 69 6e 67 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 string)..(defcustom.org-contacts
21c0 2d 6e 6f 74 65 2d 70 72 6f 70 65 72 74 79 20 22 4e 4f 54 45 22 0a 20 20 22 4e 61 6d 65 20 6f 66 -note-property."NOTE"..."Name.of
21e0 20 74 68 65 20 70 72 6f 70 65 72 74 79 20 66 6f 72 20 63 6f 6e 74 61 63 74 20 6e 6f 74 65 2e 22 .the.property.for.contact.note."
2200 0a 20 20 3a 74 79 70 65 20 27 73 74 72 69 6e 67 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6f 72 ...:type.'string)..(defcustom.or
2220 67 2d 63 6f 6e 74 61 63 74 73 2d 61 6c 69 61 73 2d 70 72 6f 70 65 72 74 79 20 22 41 4c 49 41 53 g-contacts-alias-property."ALIAS
2240 22 0a 20 20 22 4e 61 6d 65 20 6f 66 20 74 68 65 20 70 72 6f 70 65 72 74 79 20 66 6f 72 20 63 6f "..."Name.of.the.property.for.co
2260 6e 74 61 63 74 20 6e 61 6d 65 20 61 6c 69 61 73 2e 22 0a 20 20 3a 74 79 70 65 20 27 73 74 72 69 ntact.name.alias."...:type.'stri
2280 6e 67 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 69 67 6e ng)..(defcustom.org-contacts-ign
22a0 6f 72 65 2d 70 72 6f 70 65 72 74 79 20 22 49 47 4e 4f 52 45 22 0a 20 20 22 4e 61 6d 65 20 6f 66 ore-property."IGNORE"..."Name.of
22c0 20 74 68 65 20 70 72 6f 70 65 72 74 79 2c 20 77 68 69 63 68 20 76 61 6c 75 65 73 20 77 69 6c 6c .the.property,.which.values.will
22e0 20 62 65 20 69 67 6e 6f 72 65 64 20 77 68 65 6e 0a 63 6f 6d 70 6c 65 74 69 6e 67 20 6f 72 20 65 .be.ignored.when.completing.or.e
2300 78 70 6f 72 74 69 6e 67 20 74 6f 20 76 63 61 72 64 2e 22 0a 20 20 3a 74 79 70 65 20 27 73 74 72 xporting.to.vcard."...:type.'str
2320 69 6e 67 29 0a 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 62 ing)...(defcustom.org-contacts-b
2340 69 72 74 68 64 61 79 2d 66 6f 72 6d 61 74 20 22 42 69 72 74 68 64 61 79 3a 20 25 6c 20 28 25 59 irthday-format."Birthday:.%l.(%Y
2360 29 22 0a 20 20 22 46 6f 72 6d 61 74 20 6f 66 20 74 68 65 20 61 6e 6e 69 76 65 72 73 61 72 79 20 )"..."Format.of.the.anniversary.
2380 61 67 65 6e 64 61 20 65 6e 74 72 79 2e 0a 54 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 72 65 70 6c agenda.entry..The.following.repl
23a0 61 63 65 6d 65 6e 74 73 20 61 72 65 20 61 76 61 69 6c 61 62 6c 65 3a 0a 0a 20 20 25 68 20 2d 20 acements.are.available:....%h.-.
23c0 48 65 61 64 69 6e 67 20 6e 61 6d 65 0a 20 20 25 6c 20 2d 20 4c 69 6e 6b 20 74 6f 20 74 68 65 20 Heading.name...%l.-.Link.to.the.
23e0 68 65 61 64 69 6e 67 0a 20 20 25 79 20 2d 20 4e 75 6d 62 65 72 20 6f 66 20 79 65 61 72 0a 20 20 heading...%y.-.Number.of.year...
2400 25 59 20 2d 20 4e 75 6d 62 65 72 20 6f 66 20 79 65 61 72 20 28 6f 72 64 69 6e 61 6c 29 22 0a 20 %Y.-.Number.of.year.(ordinal)"..
2420 20 3a 74 79 70 65 20 27 73 74 72 69 6e 67 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6f 72 67 2d .:type.'string)..(defcustom.org-
2440 63 6f 6e 74 61 63 74 73 2d 6c 61 73 74 2d 72 65 61 64 2d 6d 61 69 6c 2d 70 72 6f 70 65 72 74 79 contacts-last-read-mail-property
2460 20 22 4c 41 53 54 5f 52 45 41 44 5f 4d 41 49 4c 22 0a 20 20 22 4e 61 6d 65 20 6f 66 20 74 68 65 ."LAST_READ_MAIL"..."Name.of.the
2480 20 70 72 6f 70 65 72 74 79 20 66 6f 72 20 63 6f 6e 74 61 63 74 20 6c 61 73 74 20 72 65 61 64 20 .property.for.contact.last.read.
24a0 65 6d 61 69 6c 20 6c 69 6e 6b 20 73 74 6f 72 61 67 65 2e 22 0a 20 20 3a 74 79 70 65 20 27 73 74 email.link.storage."...:type.'st
24c0 72 69 6e 67 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 69 ring)..(defcustom.org-contacts-i
24e0 63 6f 6e 2d 70 72 6f 70 65 72 74 79 20 22 49 43 4f 4e 22 0a 20 20 22 4e 61 6d 65 20 6f 66 20 74 con-property."ICON"..."Name.of.t
2500 68 65 20 70 72 6f 70 65 72 74 79 20 66 6f 72 20 63 6f 6e 74 61 63 74 20 69 63 6f 6e 2e 22 0a 20 he.property.for.contact.icon."..
2520 20 3a 74 79 70 65 20 27 73 74 72 69 6e 67 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6f 72 67 2d .:type.'string)..(defcustom.org-
2540 63 6f 6e 74 61 63 74 73 2d 6e 69 63 6b 6e 61 6d 65 2d 70 72 6f 70 65 72 74 79 20 22 4e 49 43 4b contacts-nickname-property."NICK
2560 4e 41 4d 45 22 0a 20 20 22 4e 61 6d 65 20 6f 66 20 74 68 65 20 70 72 6f 70 65 72 74 79 20 66 6f NAME"..."Name.of.the.property.fo
2580 72 20 49 52 43 20 6e 69 63 6b 6e 61 6d 65 20 6d 61 74 63 68 2e 22 0a 20 20 3a 74 79 70 65 20 27 r.IRC.nickname.match."...:type.'
25a0 73 74 72 69 6e 67 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 string)..(defcustom.org-contacts
25c0 2d 69 63 6f 6e 2d 73 69 7a 65 20 33 32 0a 20 20 22 53 69 7a 65 20 6f 66 20 74 68 65 20 63 6f 6e -icon-size.32..."Size.of.the.con
25e0 74 61 63 74 73 20 69 63 6f 6e 73 2e 22 0a 20 20 3a 74 79 70 65 20 27 73 74 72 69 6e 67 29 0a 0a tacts.icons."...:type.'string)..
2600 28 64 65 66 63 75 73 74 6f 6d 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 69 63 6f 6e 2d 75 73 65 (defcustom.org-contacts-icon-use
2620 2d 67 72 61 76 61 74 61 72 20 28 66 62 6f 75 6e 64 70 20 27 67 72 61 76 61 74 61 72 2d 72 65 74 -gravatar.(fboundp.'gravatar-ret
2640 72 69 65 76 65 29 0a 20 20 22 57 68 65 74 68 65 72 20 75 73 65 20 47 72 61 76 61 74 61 72 20 74 rieve)..."Whether.use.Gravatar.t
2660 6f 20 66 65 74 63 68 20 63 6f 6e 74 61 63 74 20 69 63 6f 6e 73 2e 22 0a 20 20 3a 74 79 70 65 20 o.fetch.contact.icons."...:type.
2680 27 62 6f 6f 6c 65 61 6e 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6f 72 67 2d 63 6f 6e 74 61 63 'boolean)..(defcustom.org-contac
26a0 74 73 2d 63 6f 6d 70 6c 65 74 69 6f 6e 2d 69 67 6e 6f 72 65 2d 63 61 73 65 20 74 0a 20 20 22 49 ts-completion-ignore-case.t..."I
26c0 67 6e 6f 72 65 20 63 61 73 65 20 77 68 65 6e 20 63 6f 6d 70 6c 65 74 69 6e 67 20 63 6f 6e 74 61 gnore.case.when.completing.conta
26e0 63 74 73 2e 22 0a 20 20 3a 74 79 70 65 20 27 62 6f 6f 6c 65 61 6e 29 0a 0a 28 64 65 66 63 75 73 cts."...:type.'boolean)..(defcus
2700 74 6f 6d 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 67 72 6f 75 70 2d 70 72 65 66 69 78 20 22 2b tom.org-contacts-group-prefix."+
2720 22 0a 20 20 22 47 72 6f 75 70 20 70 72 65 66 69 78 2e 22 0a 20 20 3a 74 79 70 65 20 27 73 74 72 "..."Group.prefix."...:type.'str
2740 69 6e 67 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 74 61 ing)..(defcustom.org-contacts-ta
2760 67 73 2d 70 72 6f 70 73 2d 70 72 65 66 69 78 20 22 23 22 0a 20 20 22 54 61 67 73 20 61 6e 64 20 gs-props-prefix."#"..."Tags.and.
2780 70 72 6f 70 65 72 74 69 65 73 20 70 72 65 66 69 78 2e 22 0a 20 20 3a 74 79 70 65 20 27 73 74 72 properties.prefix."...:type.'str
27a0 69 6e 67 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 6d 61 ing)..(defcustom.org-contacts-ma
27c0 74 63 68 65 72 0a 20 20 28 6d 61 70 63 6f 6e 63 61 74 20 23 27 69 64 65 6e 74 69 74 79 0a 20 20 tcher...(mapconcat.#'identity...
27e0 20 20 20 20 20 20 20 20 20 20 20 28 6d 61 70 63 61 72 20 28 6c 61 6d 62 64 61 20 28 78 29 20 28 ...........(mapcar.(lambda.(x).(
2800 63 6f 6e 63 61 74 20 78 20 22 3c 3e 5c 22 5c 22 22 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 concat.x."<>\"\"")).............
2820 20 20 20 20 20 20 20 20 20 28 6c 69 73 74 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 65 6d 61 69 .........(list.org-contacts-emai
2840 6c 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 20 20 20 20 20 20 l-property......................
2860 20 20 20 20 20 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 61 6c 69 61 73 2d 70 72 6f 70 65 72 74 ......org-contacts-alias-propert
2880 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 6f 72 67 y............................org
28a0 2d 63 6f 6e 74 61 63 74 73 2d 74 65 6c 2d 70 72 6f 70 65 72 74 79 0a 20 20 20 20 20 20 20 20 20 -contacts-tel-property..........
28c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 61 ..................org-contacts-a
28e0 64 64 72 65 73 73 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 20 ddress-property.................
2900 20 20 20 20 20 20 20 20 20 20 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 62 69 72 74 68 64 61 79 ...........org-contacts-birthday
2920 2d 70 72 6f 70 65 72 74 79 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 22 7c 22 29 0a 20 20 -property)).............."|")...
2940 22 4d 61 74 63 68 69 6e 67 20 72 75 6c 65 20 66 6f 72 20 66 69 6e 64 69 6e 67 20 68 65 61 64 69 "Matching.rule.for.finding.headi
2960 6e 67 20 74 68 61 74 20 61 72 65 20 63 6f 6e 74 61 63 74 73 2e 0a 54 68 69 73 20 63 61 6e 20 62 ng.that.are.contacts..This.can.b
2980 65 20 61 20 74 61 67 20 6e 61 6d 65 2c 20 6f 72 20 61 20 70 72 6f 70 65 72 74 79 20 63 68 65 63 e.a.tag.name,.or.a.property.chec
29a0 6b 2e 22 0a 20 20 3a 74 79 70 65 20 27 73 74 72 69 6e 67 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d k."...:type.'string)..(defcustom
29c0 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 65 6d 61 69 6c 2d 6c 69 6e 6b 2d 64 65 73 63 72 69 70 .org-contacts-email-link-descrip
29e0 74 69 6f 6e 2d 66 6f 72 6d 61 74 20 22 25 73 20 28 25 64 29 22 0a 20 20 22 46 6f 72 6d 61 74 20 tion-format."%s.(%d)"..."Format.
2a00 75 73 65 64 20 74 6f 20 73 74 6f 72 65 20 6c 69 6e 6b 73 20 74 6f 20 65 6d 61 69 6c 2e 0a 54 68 used.to.store.links.to.email..Th
2a20 69 73 20 6f 76 65 72 72 69 64 65 73 20 60 6f 72 67 2d 65 6d 61 69 6c 2d 6c 69 6e 6b 2d 64 65 73 is.overrides.`org-email-link-des
2a40 63 72 69 70 74 69 6f 6e 2d 66 6f 72 6d 61 74 27 20 69 66 20 73 65 74 2e 22 0a 20 20 3a 74 79 70 cription-format'.if.set."...:typ
2a60 65 20 27 73 74 72 69 6e 67 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6f 72 67 2d 63 6f 6e 74 61 e.'string)..(defcustom.org-conta
2a80 63 74 73 2d 76 63 61 72 64 2d 66 69 6c 65 20 22 63 6f 6e 74 61 63 74 73 2e 76 63 66 22 0a 20 20 cts-vcard-file."contacts.vcf"...
2aa0 22 44 65 66 61 75 6c 74 20 66 69 6c 65 20 66 6f 72 20 76 63 61 72 64 20 65 78 70 6f 72 74 2e 22 "Default.file.for.vcard.export."
2ac0 0a 20 20 3a 74 79 70 65 20 27 66 69 6c 65 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6f 72 67 2d ...:type.'file)..(defcustom.org-
2ae0 63 6f 6e 74 61 63 74 73 2d 65 6e 61 62 6c 65 2d 63 6f 6d 70 6c 65 74 69 6f 6e 20 74 0a 20 20 22 contacts-enable-completion.t..."
2b00 45 6e 61 62 6c 65 20 6f 72 20 6e 6f 74 20 74 68 65 20 63 6f 6d 70 6c 65 74 69 6f 6e 20 69 6e 20 Enable.or.not.the.completion.in.
2b20 60 6d 65 73 73 61 67 65 2d 6d 6f 64 65 27 20 77 69 74 68 20 60 6f 72 67 2d 63 6f 6e 74 61 63 74 `message-mode'.with.`org-contact
2b40 73 27 2e 22 0a 20 20 3a 74 79 70 65 20 27 62 6f 6f 6c 65 61 6e 29 0a 0a 28 64 65 66 63 75 73 74 s'."...:type.'boolean)..(defcust
2b60 6f 6d 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 63 6f 6d 70 6c 65 74 65 2d 66 75 6e 63 74 69 6f om.org-contacts-complete-functio
2b80 6e 73 0a 20 20 27 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 63 6f 6d 70 6c 65 74 65 2d 67 72 6f ns...'(org-contacts-complete-gro
2ba0 75 70 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 63 6f 6d 70 6c 65 74 65 2d 74 61 67 73 2d 70 72 up.org-contacts-complete-tags-pr
2bc0 6f 70 73 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 63 6f 6d 70 6c 65 74 65 2d 6e 61 6d 65 29 0a ops.org-contacts-complete-name).
2be0 20 20 22 4c 69 73 74 20 6f 66 20 66 75 6e 63 74 69 6f 6e 73 20 75 73 65 64 20 74 6f 20 63 6f 6d .."List.of.functions.used.to.com
2c00 70 6c 65 74 65 20 63 6f 6e 74 61 63 74 73 20 69 6e 20 60 6d 65 73 73 61 67 65 2d 6d 6f 64 65 27 plete.contacts.in.`message-mode'
2c20 2e 22 0a 20 20 3a 74 79 70 65 20 27 68 6f 6f 6b 29 0a 0a 3b 3b 20 44 65 63 61 6c 72 65 20 65 78 ."...:type.'hook)..;;.Decalre.ex
2c40 74 65 72 6e 61 6c 20 66 75 6e 63 74 69 6f 6e 73 20 61 6e 64 20 76 61 72 69 61 62 6c 65 73 0a 28 ternal.functions.and.variables.(
2c60 64 65 63 6c 61 72 65 2d 66 75 6e 63 74 69 6f 6e 20 6f 72 67 2d 72 65 76 65 72 73 65 2d 73 74 72 declare-function.org-reverse-str
2c80 69 6e 67 20 22 6f 72 67 22 29 0a 28 64 65 63 6c 61 72 65 2d 66 75 6e 63 74 69 6f 6e 20 64 69 61 ing."org").(declare-function.dia
2ca0 72 79 2d 6f 72 64 69 6e 61 6c 2d 73 75 66 66 69 78 20 22 65 78 74 3a 64 69 61 72 79 2d 6c 69 62 ry-ordinal-suffix."ext:diary-lib
2cc0 22 29 0a 28 64 65 63 6c 61 72 65 2d 66 75 6e 63 74 69 6f 6e 20 77 6c 2d 73 75 6d 6d 61 72 79 2d ").(declare-function.wl-summary-
2ce0 6d 65 73 73 61 67 65 2d 6e 75 6d 62 65 72 20 22 65 78 74 3a 77 6c 2d 73 75 6d 6d 61 72 79 22 29 message-number."ext:wl-summary")
2d00 0a 28 64 65 63 6c 61 72 65 2d 66 75 6e 63 74 69 6f 6e 20 77 6c 2d 61 64 64 72 65 73 73 2d 68 65 .(declare-function.wl-address-he
2d20 61 64 65 72 2d 65 78 74 72 61 63 74 2d 61 64 64 72 65 73 73 20 22 65 78 74 3a 77 6c 2d 61 64 64 ader-extract-address."ext:wl-add
2d40 72 65 73 73 22 29 0a 28 64 65 63 6c 61 72 65 2d 66 75 6e 63 74 69 6f 6e 20 77 6c 2d 61 64 64 72 ress").(declare-function.wl-addr
2d60 65 73 73 2d 68 65 61 64 65 72 2d 65 78 74 72 61 63 74 2d 72 65 61 6c 6e 61 6d 65 20 22 65 78 74 ess-header-extract-realname."ext
2d80 3a 77 6c 2d 61 64 64 72 65 73 73 22 29 0a 28 64 65 63 6c 61 72 65 2d 66 75 6e 63 74 69 6f 6e 20 :wl-address").(declare-function.
2da0 65 72 63 2d 62 75 66 66 65 72 2d 6c 69 73 74 20 22 65 78 74 3a 65 72 63 22 29 0a 28 64 65 63 6c erc-buffer-list."ext:erc").(decl
2dc0 61 72 65 2d 66 75 6e 63 74 69 6f 6e 20 65 72 63 2d 67 65 74 2d 63 68 61 6e 6e 65 6c 2d 75 73 65 are-function.erc-get-channel-use
2de0 72 2d 6c 69 73 74 20 22 65 78 74 3a 65 72 63 22 29 0a 28 64 65 63 6c 61 72 65 2d 66 75 6e 63 74 r-list."ext:erc").(declare-funct
2e00 69 6f 6e 20 67 6f 6f 67 6c 65 2d 6d 61 70 73 2d 73 74 61 74 69 63 2d 73 68 6f 77 20 22 65 78 74 ion.google-maps-static-show."ext
2e20 3a 67 6f 6f 67 6c 65 2d 6d 61 70 73 2d 73 74 61 74 69 63 22 29 0a 28 64 65 63 6c 61 72 65 2d 66 :google-maps-static").(declare-f
2e40 75 6e 63 74 69 6f 6e 20 65 6c 6d 6f 2d 6d 65 73 73 61 67 65 2d 66 69 65 6c 64 20 22 65 78 74 3a unction.elmo-message-field."ext:
2e60 65 6c 6d 6f 2d 70 69 70 65 22 29 0a 28 64 65 63 6c 61 72 65 2d 66 75 6e 63 74 69 6f 6e 20 73 74 elmo-pipe").(declare-function.st
2e80 64 31 31 2d 6e 61 72 72 6f 77 2d 74 6f 2d 68 65 61 64 65 72 20 22 65 78 74 3a 73 74 64 31 31 22 d11-narrow-to-header."ext:std11"
2ea0 29 0a 28 64 65 63 6c 61 72 65 2d 66 75 6e 63 74 69 6f 6e 20 73 74 64 31 31 2d 66 65 74 63 68 2d ).(declare-function.std11-fetch-
2ec0 66 69 65 6c 64 20 22 65 78 74 3a 73 74 64 31 31 22 29 0a 0a 28 64 65 66 63 6f 6e 73 74 20 6f 72 field."ext:std11")..(defconst.or
2ee0 67 2d 63 6f 6e 74 61 63 74 73 2d 70 72 6f 70 65 72 74 79 2d 76 61 6c 75 65 73 2d 73 65 70 61 72 g-contacts-property-values-separ
2f00 61 74 6f 72 73 20 22 5b 2c 3b 20 5c 66 5c 74 5c 6e 5c 72 5c 76 5d 2b 22 0a 20 20 22 54 68 65 20 ators."[,;.\f\t\n\r\v]+"..."The.
2f20 64 65 66 61 75 6c 74 20 76 61 6c 75 65 20 6f 66 20 73 65 70 61 72 61 74 6f 72 73 20 66 6f 72 20 default.value.of.separators.for.
2f40 60 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 73 70 6c 69 74 2d 70 72 6f 70 65 72 74 79 27 2e 0a 0a `org-contacts-split-property'...
2f60 41 20 72 65 67 65 78 70 20 6d 61 74 63 68 69 6e 67 20 73 74 72 69 6e 67 73 20 6f 66 20 77 68 69 A.regexp.matching.strings.of.whi
2f80 74 65 73 70 61 63 65 2c 20 60 2c 27 20 61 6e 64 20 60 3b 27 2e 22 29 0a 0a 28 64 65 66 76 61 72 tespace,.`,'.and.`;'.")..(defvar
2fa0 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 6b 65 79 6d 61 70 0a 20 20 28 6c 65 74 20 28 28 6d 61 .org-contacts-keymap...(let.((ma
2fc0 70 20 28 6d 61 6b 65 2d 73 70 61 72 73 65 2d 6b 65 79 6d 61 70 29 29 29 0a 20 20 20 20 28 64 65 p.(make-sparse-keymap))).....(de
2fe0 66 69 6e 65 2d 6b 65 79 20 6d 61 70 20 22 4d 22 20 23 27 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d fine-key.map."M".#'org-contacts-
3000 76 69 65 77 2d 73 65 6e 64 2d 65 6d 61 69 6c 29 0a 20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65 79 view-send-email).....(define-key
3020 20 6d 61 70 20 22 69 22 20 23 27 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 76 69 65 77 2d 73 77 69 .map."i".#'org-contacts-view-swi
3040 74 63 68 2d 74 6f 2d 69 72 63 2d 62 75 66 66 65 72 29 0a 20 20 20 20 6d 61 70 29 0a 20 20 22 54 tch-to-irc-buffer).....map)..."T
3060 68 65 20 6b 65 79 6d 61 70 20 75 73 65 64 20 69 6e 20 60 6f 72 67 2d 63 6f 6e 74 61 63 74 73 27 he.keymap.used.in.`org-contacts'
3080 20 72 65 73 75 6c 74 20 6c 69 73 74 2e 22 29 0a 0a 28 64 65 66 76 61 72 20 6f 72 67 2d 63 6f 6e .result.list.")..(defvar.org-con
30a0 74 61 63 74 73 2d 64 62 20 6e 69 6c 0a 20 20 22 4f 72 67 20 43 6f 6e 74 61 63 74 73 20 64 61 74 tacts-db.nil..."Org.Contacts.dat
30c0 61 62 61 73 65 2e 22 29 0a 0a 28 64 65 66 76 61 72 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 6c abase.")..(defvar.org-contacts-l
30e0 61 73 74 2d 75 70 64 61 74 65 20 6e 69 6c 0a 20 20 22 4c 61 73 74 20 74 69 6d 65 20 74 68 65 20 ast-update.nil..."Last.time.the.
3100 4f 72 67 20 43 6f 6e 74 61 63 74 73 20 64 61 74 61 62 61 73 65 20 68 61 73 20 62 65 65 6e 20 75 Org.Contacts.database.has.been.u
3120 70 64 61 74 65 64 2e 22 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 66 pdated.")..(defun.org-contacts-f
3140 69 6c 65 73 20 28 29 0a 20 20 22 52 65 74 75 72 6e 20 6c 69 73 74 20 6f 66 20 4f 72 67 20 66 69 iles.()..."Return.list.of.Org.fi
3160 6c 65 73 20 74 6f 20 75 73 65 20 66 6f 72 20 63 6f 6e 74 61 63 74 20 6d 61 6e 61 67 65 6d 65 6e les.to.use.for.contact.managemen
3180 74 2e 22 0a 20 20 28 69 66 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 66 69 6c 65 73 0a 20 20 20 t."...(if.org-contacts-files....
31a0 20 20 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 66 69 6c 65 73 0a 20 20 20 20 28 6d 65 73 73 61 ...org-contacts-files.....(messa
31c0 67 65 20 22 5b 45 52 52 4f 52 5d 20 59 6f 75 72 20 63 75 73 74 6f 6d 20 76 61 72 69 61 62 6c 65 ge."[ERROR].Your.custom.variable
31e0 20 60 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 66 69 6c 65 73 27 20 69 73 20 6e 69 6c 2e 20 52 65 .`org-contacts-files'.is.nil..Re
3200 76 65 72 74 20 74 6f 20 60 6f 72 67 2d 61 67 65 6e 64 61 2d 66 69 6c 65 73 27 20 6e 6f 77 2e 22 vert.to.`org-agenda-files'.now."
3220 29 0a 20 20 20 20 28 6f 72 67 2d 61 67 65 6e 64 61 2d 66 69 6c 65 73 20 74 20 27 69 66 6d 6f 64 ).....(org-agenda-files.t.'ifmod
3240 65 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 64 62 2d 6e 65 65 e)))..(defun.org-contacts-db-nee
3260 64 2d 75 70 64 61 74 65 2d 70 20 28 29 0a 20 20 22 44 65 74 65 72 6d 69 6e 65 20 77 68 65 74 68 d-update-p.()..."Determine.wheth
3280 65 72 20 60 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 64 62 27 20 6e 65 65 64 73 20 74 6f 20 62 65 er.`org-contacts-db'.needs.to.be
32a0 20 72 65 66 72 65 73 68 65 64 2e 22 0a 20 20 28 6f 72 20 28 6e 75 6c 6c 20 6f 72 67 2d 63 6f 6e .refreshed."...(or.(null.org-con
32c0 74 61 63 74 73 2d 6c 61 73 74 2d 75 70 64 61 74 65 29 0a 20 20 20 20 20 20 28 63 6c 2d 66 69 6e tacts-last-update).......(cl-fin
32e0 64 2d 69 66 20 28 6c 61 6d 62 64 61 20 28 66 69 6c 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 d-if.(lambda.(file).............
3300 20 20 20 20 20 20 20 20 28 6f 72 20 28 74 69 6d 65 2d 6c 65 73 73 2d 70 20 6f 72 67 2d 63 6f 6e ........(or.(time-less-p.org-con
3320 74 61 63 74 73 2d 6c 61 73 74 2d 75 70 64 61 74 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 tacts-last-update...............
3340 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 6c 74 20 28 66 69 6c .......................(elt.(fil
3360 65 2d 61 74 74 72 69 62 75 74 65 73 20 66 69 6c 65 29 20 35 29 29 29 29 0a 20 20 20 20 20 20 20 e-attributes.file).5))))........
3380 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 66 69 6c 65 73 29 29 ...........(org-contacts-files))
33a0 0a 20 20 20 20 20 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 64 62 2d 68 61 73 2d 64 65 61 64 .......(org-contacts-db-has-dead
33c0 2d 6d 61 72 6b 65 72 73 2d 70 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 64 62 29 29 29 0a 0a 28 -markers-p.org-contacts-db)))..(
33e0 64 65 66 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 64 62 2d 68 61 73 2d 64 65 61 64 2d 6d defun.org-contacts-db-has-dead-m
3400 61 72 6b 65 72 73 2d 70 20 28 64 62 29 0a 20 20 22 52 65 74 75 72 6e 20 74 20 69 66 20 61 74 20 arkers-p.(db)..."Return.t.if.at.
3420 6c 65 61 73 74 20 6f 6e 65 20 64 65 61 64 20 6d 61 72 6b 65 72 20 69 73 20 66 6f 75 6e 64 20 69 least.one.dead.marker.is.found.i
3440 6e 20 44 42 2e 0a 41 20 64 65 61 64 20 6d 61 72 6b 65 72 20 69 6e 20 74 68 69 73 20 63 61 73 65 n.DB..A.dead.marker.in.this.case
3460 20 69 73 20 61 20 6d 61 72 6b 65 72 20 70 6f 69 6e 74 69 6e 67 20 74 6f 20 64 65 61 64 20 6f 72 .is.a.marker.pointing.to.dead.or
3480 20 6e 6f 0a 62 75 66 66 65 72 2e 22 0a 20 20 3b 3b 20 53 63 61 6e 20 63 6f 6e 74 61 63 74 73 20 .no.buffer."...;;.Scan.contacts.
34a0 6c 69 73 74 20 6c 6f 6f 6b 69 6e 67 20 66 6f 72 20 64 65 61 64 20 6d 61 72 6b 65 72 73 2c 20 61 list.looking.for.dead.markers,.a
34c0 6e 64 20 72 65 74 75 72 6e 20 74 20 61 74 20 66 69 72 73 74 20 66 6f 75 6e 64 2e 0a 20 20 28 63 nd.return.t.at.first.found....(c
34e0 61 74 63 68 20 27 64 65 61 64 2d 6d 61 72 6b 65 72 2d 66 6f 75 6e 64 0a 20 20 20 20 28 77 68 69 atch.'dead-marker-found.....(whi
3500 6c 65 20 64 62 0a 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 28 6d 61 72 6b 65 72 2d 62 75 66 66 le.db.......(unless.(marker-buff
3520 65 72 20 28 6e 74 68 20 31 20 28 63 61 72 20 64 62 29 29 29 0a 20 20 20 20 20 20 20 20 28 74 68 er.(nth.1.(car.db))).........(th
3540 72 6f 77 20 27 64 65 61 64 2d 6d 61 72 6b 65 72 2d 66 6f 75 6e 64 20 74 29 29 0a 20 20 20 20 20 row.'dead-marker-found.t))......
3560 20 28 73 65 74 71 20 64 62 20 28 63 64 72 20 64 62 29 29 29 0a 20 20 20 20 6e 69 6c 29 29 0a 0a .(setq.db.(cdr.db))).....nil))..
3580 28 64 65 66 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 64 62 20 28 29 0a 20 20 22 52 65 74 (defun.org-contacts-db.()..."Ret
35a0 75 72 6e 20 74 68 65 20 6c 61 74 65 73 74 20 4f 72 67 20 43 6f 6e 74 61 63 74 73 20 44 61 74 61 urn.the.latest.Org.Contacts.Data
35c0 62 61 73 65 2e 22 0a 20 20 28 6c 65 74 2a 20 28 28 6f 72 67 2d 2d 6d 61 74 63 68 65 72 2d 74 61 base."...(let*.((org--matcher-ta
35e0 67 73 2d 74 6f 64 6f 2d 6f 6e 6c 79 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 20 28 63 6f 6e 74 gs-todo-only.nil)..........(cont
3600 61 63 74 73 2d 6d 61 74 63 68 65 72 20 28 63 64 72 20 28 6f 72 67 2d 6d 61 6b 65 2d 74 61 67 73 acts-matcher.(cdr.(org-make-tags
3620 2d 6d 61 74 63 68 65 72 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 6d 61 74 63 68 65 72 29 29 29 -matcher.org-contacts-matcher)))
3640 0a 20 20 20 20 20 20 20 20 20 72 65 73 75 6c 74 29 0a 20 20 20 20 28 77 68 65 6e 20 28 6f 72 67 ..........result).....(when.(org
3660 2d 63 6f 6e 74 61 63 74 73 2d 64 62 2d 6e 65 65 64 2d 75 70 64 61 74 65 2d 70 29 0a 20 20 20 20 -contacts-db-need-update-p).....
3680 20 20 28 6c 65 74 20 28 28 70 72 6f 67 72 65 73 73 2d 72 65 70 6f 72 74 65 72 0a 20 20 20 20 20 ..(let.((progress-reporter......
36a0 20 20 20 20 20 20 20 20 28 6d 61 6b 65 2d 70 72 6f 67 72 65 73 73 2d 72 65 70 6f 72 74 65 72 20 ........(make-progress-reporter.
36c0 22 55 70 64 61 74 69 6e 67 20 4f 72 67 20 43 6f 6e 74 61 63 74 73 20 44 61 74 61 62 61 73 65 2e "Updating.Org.Contacts.Database.
36e0 2e 2e 22 20 30 20 28 6c 65 6e 67 74 68 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 66 69 6c 65 ..".0.(length.(org-contacts-file
3700 73 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 69 20 30 29 29 0a 20 20 20 20 20 20 20 s)))).............(i.0))........
3720 20 28 64 6f 6c 69 73 74 20 28 66 69 6c 65 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 66 69 6c .(dolist.(file.(org-contacts-fil
3740 65 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 63 61 74 63 68 20 27 6e 65 78 74 66 es))...........(if.(catch.'nextf
3760 69 6c 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 69 66 20 66 69 6c 65 20 64 ile.................;;.if.file.d
3780 6f 65 73 6e 27 74 20 65 78 69 73 74 20 61 6e 64 20 74 68 65 20 75 73 65 72 20 61 67 72 65 65 73 oesn't.exist.and.the.user.agrees
37a0 20 74 6f 20 72 65 6d 6f 76 69 6e 67 20 69 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .to.removing.it.................
37c0 3b 3b 20 66 72 6f 6d 20 6f 72 67 2d 61 67 65 6e 64 61 73 2d 6c 69 73 74 2c 20 27 6e 65 78 74 66 ;;.from.org-agendas-list,.'nextf
37e0 69 6c 65 20 69 73 20 74 68 72 6f 77 6e 2e 20 20 43 61 74 63 68 20 69 74 20 68 65 72 65 0a 20 20 ile.is.thrown...Catch.it.here...
3800 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 61 6e 64 20 73 6b 69 70 20 70 72 6f 63 65 73 ..............;;.and.skip.proces
3820 73 69 6e 67 20 74 68 65 20 66 69 6c 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b sing.the.file..................;
3840 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 54 4f 44 4f 3a 20 73 75 70 70 6f ;.................;;.TODO:.suppo
3860 73 65 20 74 68 61 74 20 74 68 65 20 75 73 65 72 20 68 61 73 20 73 65 74 20 61 6e 20 6f 72 67 2d se.that.the.user.has.set.an.org-
3880 63 6f 6e 74 61 63 74 73 2d 66 69 6c 65 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b contacts-files.................;
38a0 3b 20 6c 69 73 74 20 74 68 61 74 20 63 6f 6e 74 61 69 6e 73 20 61 6e 20 65 6c 65 6d 65 6e 74 20 ;.list.that.contains.an.element.
38c0 74 68 61 74 20 64 6f 65 73 6e 27 74 20 65 78 69 73 74 20 69 6e 20 74 68 65 0a 20 20 20 20 20 20 that.doesn't.exist.in.the.......
38e0 20 20 20 20 20 20 20 20 20 20 3b 3b 20 66 69 6c 65 20 73 79 73 74 65 6d 3a 20 69 6e 20 74 68 61 ..........;;.file.system:.in.tha
3900 74 20 63 61 73 65 2c 20 74 68 65 20 6f 72 67 2d 61 67 65 6e 64 61 2d 66 69 6c 65 73 20 6c 69 73 t.case,.the.org-agenda-files.lis
3920 74 20 63 6f 75 6c 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 62 65 20 75 70 t.could.................;;.be.up
3940 64 61 74 65 64 20 28 61 6e 64 20 73 61 76 65 64 20 74 6f 20 74 68 65 20 63 75 73 74 6f 6d 69 7a dated.(and.saved.to.the.customiz
3960 61 74 69 6f 6e 73 20 6f 66 20 74 68 65 20 75 73 65 72 29 20 69 66 0a 20 20 20 20 20 20 20 20 20 ations.of.the.user).if..........
3980 20 20 20 20 20 20 20 3b 3b 20 69 74 20 63 6f 6e 74 61 69 6e 65 64 20 74 68 65 20 73 61 6d 65 20 .......;;.it.contained.the.same.
39a0 66 69 6c 65 20 65 76 65 6e 20 74 68 6f 75 67 68 20 74 68 65 20 6f 72 67 2d 61 67 65 6e 64 61 2d file.even.though.the.org-agenda-
39c0 66 69 6c 65 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 6c 69 73 74 20 77 61 files.................;;.list.wa
39e0 73 6e 27 74 20 61 63 74 75 61 6c 6c 79 20 75 73 65 64 2e 20 20 49 20 64 6f 6e 27 74 20 74 68 69 sn't.actually.used...I.don't.thi
3a00 6e 6b 20 69 74 20 69 73 20 6e 6f 72 6d 61 6c 20 74 68 61 74 0a 20 20 20 20 20 20 20 20 20 20 20 nk.it.is.normal.that............
3a20 20 20 20 20 20 3b 3b 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 20 75 70 64 61 74 65 73 20 6f 72 67 .....;;.org-contacts.updates.org
3a40 2d 61 67 65 6e 64 61 2d 66 69 6c 65 73 20 69 6e 20 74 68 69 73 20 63 61 73 65 2c 20 62 75 74 0a -agenda-files.in.this.case,.but.
3a60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 73 68 6f 72 74 20 6f 66 20 64 75 70 6c ................;;.short.of.dupl
3a80 69 63 61 74 69 6e 67 20 6f 72 67 2d 63 68 65 63 6b 2d 61 67 65 6e 64 61 2d 66 69 6c 65 73 20 61 icating.org-check-agenda-files.a
3aa0 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 6f 72 67 2d 72 65 6d 6f 76 65 nd.................;;.org-remove
3ac0 2d 66 69 6c 65 73 2c 20 49 20 64 6f 6e 27 74 20 6b 6e 6f 77 20 68 6f 77 20 74 6f 20 61 76 6f 69 -files,.I.don't.know.how.to.avoi
3ae0 64 20 69 74 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 0a 20 20 20 20 20 20 20 d.it..................;;........
3b00 20 20 20 20 20 20 20 20 20 3b 3b 20 41 20 73 69 64 65 20 65 66 66 65 63 74 20 6f 66 20 74 68 65 .........;;.A.side.effect.of.the
3b20 20 54 4f 44 4f 20 69 73 20 74 68 61 74 20 74 68 65 20 66 61 75 6c 74 79 0a 20 20 20 20 20 20 20 .TODO.is.that.the.faulty........
3b40 20 20 20 20 20 20 20 20 20 3b 3b 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 66 69 6c 65 73 20 6c .........;;.org-contacts-files.l
3b60 69 73 74 20 6e 65 76 65 72 20 67 65 74 73 20 75 70 64 61 74 65 64 20 61 6e 64 20 74 68 75 73 20 ist.never.gets.updated.and.thus.
3b80 74 68 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 75 73 65 72 20 69 73 20 61 the.................;;.user.is.a
3ba0 6c 77 61 79 73 20 71 75 65 72 69 65 64 20 61 62 6f 75 74 20 74 68 65 20 6d 69 73 73 69 6e 67 20 lways.queried.about.the.missing.
3bc0 66 69 6c 65 73 20 77 68 65 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 6f 72 files.when.................;;.or
3be0 67 2d 63 6f 6e 74 61 63 74 73 2d 64 62 2d 6e 65 65 64 2d 75 70 64 61 74 65 2d 70 20 72 65 74 75 g-contacts-db-need-update-p.retu
3c00 72 6e 73 20 74 72 75 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 63 rns.true..................(org-c
3c20 68 65 63 6b 2d 61 67 65 6e 64 61 2d 66 69 6c 65 20 66 69 6c 65 29 29 0a 20 20 20 20 20 20 20 20 heck-agenda-file.file)).........
3c40 20 20 20 20 20 20 28 6d 65 73 73 61 67 65 20 22 53 6b 69 70 70 65 64 20 25 73 20 72 65 6d 6f 76 ......(message."Skipped.%s.remov
3c60 65 64 20 66 72 6f 6d 20 6f 72 67 2d 61 67 65 6e 64 61 2d 66 69 6c 65 73 20 6c 69 73 74 2e 22 0a ed.from.org-agenda-files.list.".
3c80 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 62 62 72 65 76 69 61 .......................(abbrevia
3ca0 74 65 2d 66 69 6c 65 2d 6e 61 6d 65 20 66 69 6c 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 te-file-name.file)).............
3cc0 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 28 6f 72 67 2d 67 65 74 2d 61 67 (with-current-buffer.(org-get-ag
3ce0 65 6e 64 61 2d 66 69 6c 65 2d 62 75 66 66 65 72 20 66 69 6c 65 29 0a 20 20 20 20 20 20 20 20 20 enda-file-buffer.file)..........
3d00 20 20 20 20 20 28 75 6e 6c 65 73 73 20 28 65 71 20 6d 61 6a 6f 72 2d 6d 6f 64 65 20 27 6f 72 67 .....(unless.(eq.major-mode.'org
3d20 2d 6d 6f 64 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 72 72 6f 72 20 22 46 -mode).................(error."F
3d40 69 6c 65 20 25 73 20 69 73 20 6e 6f 74 20 69 6e 20 60 6f 72 67 2d 6d 6f 64 65 27 22 20 66 69 6c ile.%s.is.not.in.`org-mode'".fil
3d60 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 66 20 72 65 73 75 6c 74 0a 20 e))...............(setf.result..
3d80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 70 70 65 6e 64 20 72 65 73 75 6c ...................(append.resul
3da0 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f t.............................(o
3dc0 72 67 2d 73 63 61 6e 2d 74 61 67 73 20 27 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 61 74 2d 70 6f rg-scan-tags.'org-contacts-at-po
3de0 69 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 20 int.............................
3e00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 74 61 63 74 73 2d 6d 61 74 63 68 65 72 0a ...............contacts-matcher.
3e20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
3e40 20 20 20 20 20 20 20 20 20 20 20 6f 72 67 2d 2d 6d 61 74 63 68 65 72 2d 74 61 67 73 2d 74 6f 64 ...........org--matcher-tags-tod
3e60 6f 2d 6f 6e 6c 79 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 67 72 65 73 73 2d o-only)))))...........(progress-
3e80 72 65 70 6f 72 74 65 72 2d 75 70 64 61 74 65 20 70 72 6f 67 72 65 73 73 2d 72 65 70 6f 72 74 65 reporter-update.progress-reporte
3ea0 72 20 28 73 65 74 71 20 69 20 28 31 2b 20 69 29 29 29 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 r.(setq.i.(1+.i)))).........(set
3ec0 66 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 64 62 20 72 65 73 75 6c 74 0a 20 20 20 20 20 20 20 f.org-contacts-db.result........
3ee0 20 20 20 20 20 20 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 6c 61 73 74 2d 75 70 64 61 74 65 20 .......org-contacts-last-update.
3f00 28 63 75 72 72 65 6e 74 2d 74 69 6d 65 29 29 0a 20 20 20 20 20 20 20 20 28 70 72 6f 67 72 65 73 (current-time)).........(progres
3f20 73 2d 72 65 70 6f 72 74 65 72 2d 64 6f 6e 65 20 70 72 6f 67 72 65 73 73 2d 72 65 70 6f 72 74 65 s-reporter-done.progress-reporte
3f40 72 29 29 29 0a 20 20 20 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 64 62 29 29 0a 0a 28 64 65 66 r))).....org-contacts-db))..(def
3f60 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 61 74 2d 70 6f 69 6e 74 20 28 26 6f 70 74 69 6f un.org-contacts-at-point.(&optio
3f80 6e 61 6c 20 70 6f 6d 29 0a 20 20 22 52 65 74 75 72 6e 20 74 68 65 20 63 6f 6e 74 61 63 74 73 20 nal.pom)..."Return.the.contacts.
3fa0 61 74 20 70 6f 69 6e 74 2d 6f 72 2d 6d 61 72 6b 65 72 20 50 4f 4d 20 6f 72 20 63 75 72 72 65 6e at.point-or-marker.POM.or.curren
3fc0 74 20 70 6f 73 69 74 69 6f 6e 0a 69 66 20 6e 69 6c 2e 22 0a 20 20 28 73 65 74 71 20 70 6f 6d 20 t.position.if.nil."...(setq.pom.
3fe0 28 6f 72 20 70 6f 6d 20 28 70 6f 69 6e 74 29 29 29 0a 20 20 28 6f 72 67 2d 77 69 74 68 2d 70 6f (or.pom.(point)))...(org-with-po
4000 69 6e 74 2d 61 74 20 70 6f 6d 0a 20 20 20 20 28 6c 69 73 74 20 28 6f 72 67 2d 67 65 74 2d 68 65 int-at.pom.....(list.(org-get-he
4020 61 64 69 6e 67 20 74 29 20 28 73 65 74 2d 6d 61 72 6b 65 72 20 28 6d 61 6b 65 2d 6d 61 72 6b 65 ading.t).(set-marker.(make-marke
4040 72 29 20 70 6f 6d 29 20 28 6f 72 67 2d 65 6e 74 72 79 2d 70 72 6f 70 65 72 74 69 65 73 20 70 6f r).pom).(org-entry-properties.po
4060 6d 20 27 61 6c 6c 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d m.'all))))..(defun.org-contacts-
4080 66 69 6c 74 65 72 20 28 26 6f 70 74 69 6f 6e 61 6c 20 6e 61 6d 65 2d 6d 61 74 63 68 20 74 61 67 filter.(&optional.name-match.tag
40a0 73 2d 6d 61 74 63 68 20 70 72 6f 70 2d 6d 61 74 63 68 29 0a 20 20 22 53 65 61 72 63 68 20 66 6f s-match.prop-match)..."Search.fo
40c0 72 20 61 20 63 6f 6e 74 61 63 74 20 6d 61 74 63 68 69 6e 67 20 61 6e 79 20 6f 66 20 4e 41 4d 45 r.a.contact.matching.any.of.NAME
40e0 2d 4d 41 54 43 48 2c 20 54 41 47 53 2d 4d 41 54 43 48 2c 20 50 52 4f 50 2d 4d 41 54 43 48 2e 0a -MATCH,.TAGS-MATCH,.PROP-MATCH..
4100 49 66 20 61 6c 6c 20 6d 61 74 63 68 20 76 61 6c 75 65 73 20 61 72 65 20 6e 69 6c 2c 20 72 65 74 If.all.match.values.are.nil,.ret
4120 75 72 6e 20 61 6c 6c 20 63 6f 6e 74 61 63 74 73 2e 0a 0a 54 68 65 20 6f 70 74 69 6f 6e 61 6c 20 urn.all.contacts...The.optional.
4140 50 52 4f 50 2d 4d 41 54 43 48 20 61 72 67 75 6d 65 6e 74 20 69 73 20 61 20 73 69 6e 67 6c 65 20 PROP-MATCH.argument.is.a.single.
4160 28 50 52 4f 50 20 2e 20 56 41 4c 55 45 29 20 63 6f 6e 73 0a 63 65 6c 6c 20 63 6f 72 72 65 73 70 (PROP...VALUE).cons.cell.corresp
4180 6f 6e 64 69 6e 67 20 74 6f 20 74 68 65 20 63 6f 6e 74 61 63 74 20 70 72 6f 70 65 72 74 69 65 73 onding.to.the.contact.properties
41a0 2e 0a 22 0a 20 20 28 69 66 20 28 61 6e 64 20 28 6e 75 6c 6c 20 6e 61 6d 65 2d 6d 61 74 63 68 29 .."...(if.(and.(null.name-match)
41c0 0a 20 20 20 20 20 20 20 20 20 20 20 28 6e 75 6c 6c 20 70 72 6f 70 2d 6d 61 74 63 68 29 0a 20 20 ............(null.prop-match)...
41e0 20 20 20 20 20 20 20 20 20 28 6e 75 6c 6c 20 74 61 67 73 2d 6d 61 74 63 68 29 29 0a 20 20 20 20 .........(null.tags-match)).....
4200 20 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 64 62 29 0a 20 20 20 20 28 63 6c 2d 6c 6f 6f 70 ..(org-contacts-db).....(cl-loop
4220 20 66 6f 72 20 63 6f 6e 74 61 63 74 20 69 6e 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 64 62 .for.contact.in.(org-contacts-db
4240 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6f 72 0a 20 20 20 20 20 20 20 20 20 20 )..............if.(or...........
4260 20 20 20 20 20 20 20 28 61 6e 64 20 6e 61 6d 65 2d 6d 61 74 63 68 0a 20 20 20 20 20 20 20 20 20 .......(and.name-match..........
4280 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 2d 70 20 6e 61 6d .............(string-match-p.nam
42a0 65 2d 6d 61 74 63 68 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 e-match.........................
42c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6c 2d 66 69 72 73 74 20 63 6f 6e 74 61 63 74 29 ..............(cl-first.contact)
42e0 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 6e 64 20 70 72 6f 70 2d 6d 61 ))..................(and.prop-ma
4300 74 63 68 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6c 2d 66 69 tch.......................(cl-fi
4320 6e 64 2d 69 66 20 28 6c 61 6d 62 64 61 20 28 70 72 6f 70 29 0a 20 20 20 20 20 20 20 20 20 20 20 nd-if.(lambda.(prop)............
4340 20 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 64 20 28 73 .........................(and.(s
4360 74 72 69 6e 67 3d 20 28 63 61 72 20 70 72 6f 70 2d 6d 61 74 63 68 29 20 28 63 61 72 20 70 72 6f tring=.(car.prop-match).(car.pro
4380 70 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 p)).............................
43a0 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 2d 70 20 28 63 64 .............(string-match-p.(cd
43c0 72 20 70 72 6f 70 2d 6d 61 74 63 68 29 20 28 63 64 72 20 70 72 6f 70 29 29 29 29 0a 20 20 20 20 r.prop-match).(cdr.prop)))).....
43e0 20 20 20 20 20 20 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
4400 61 64 64 72 20 63 6f 6e 74 61 63 74 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 addr.contact))).................
4420 20 28 61 6e 64 20 74 61 67 73 2d 6d 61 74 63 68 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .(and.tags-match................
4440 20 20 20 20 20 20 20 28 63 6c 2d 66 69 6e 64 2d 69 66 20 28 6c 61 6d 62 64 61 20 28 74 61 67 29 .......(cl-find-if.(lambda.(tag)
4460 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 ................................
4480 20 20 20 20 20 28 73 74 72 69 6e 67 2d 6d 61 74 63 68 2d 70 20 74 61 67 73 2d 6d 61 74 63 68 20 .....(string-match-p.tags-match.
44a0 74 61 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 20 20 20 20 tag))...........................
44c0 20 20 20 20 20 20 20 20 28 6f 72 67 2d 73 70 6c 69 74 2d 73 74 72 69 6e 67 0a 20 20 20 20 20 20 ........(org-split-string.......
44e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 .............................(or
4500 20 28 63 64 72 20 28 61 73 73 6f 63 2d 73 74 72 69 6e 67 20 22 41 4c 4c 54 41 47 53 22 20 28 63 .(cdr.(assoc-string."ALLTAGS".(c
4520 61 64 64 72 20 63 6f 6e 74 61 63 74 29 29 29 20 22 22 29 20 22 3a 22 29 29 29 29 0a 20 20 20 20 addr.contact)))."").":")))).....
4540 20 20 20 20 20 20 20 20 20 63 6f 6c 6c 65 63 74 20 63 6f 6e 74 61 63 74 29 29 29 0a 0a 28 64 65 .........collect.contact)))..(de
4560 66 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 74 72 79 2d 63 6f 6d 70 6c 65 74 69 6f 6e 2d fun.org-contacts-try-completion-
4580 70 72 65 66 69 78 20 28 74 6f 2d 6d 61 74 63 68 20 63 6f 6c 6c 65 63 74 69 6f 6e 20 26 6f 70 74 prefix.(to-match.collection.&opt
45a0 69 6f 6e 61 6c 20 70 72 65 64 69 63 61 74 65 29 0a 20 20 22 43 75 73 74 6f 6d 20 69 6d 70 6c 65 ional.predicate)..."Custom.imple
45c0 6d 65 6e 74 61 74 69 6f 6e 20 6f 66 20 60 74 72 79 2d 63 6f 6d 70 6c 65 74 69 6f 6e 27 2e 0a 54 mentation.of.`try-completion'..T
45e0 68 69 73 20 76 65 72 73 69 6f 6e 20 77 6f 72 6b 73 20 6f 6e 6c 79 20 77 69 74 68 20 6c 69 73 74 his.version.works.only.with.list
4600 20 61 6e 64 20 61 6c 69 73 74 20 61 6e 64 20 69 74 20 6c 6f 6f 6b 73 20 61 74 20 61 6c 6c 0a 70 .and.alist.and.it.looks.at.all.p
4620 72 65 66 69 78 65 73 20 72 61 74 68 65 72 20 74 68 61 6e 20 6a 75 73 74 20 74 68 65 20 62 65 67 refixes.rather.than.just.the.beg
4640 69 6e 6e 69 6e 67 20 6f 66 20 74 68 65 20 73 74 72 69 6e 67 2e 22 0a 20 20 28 63 6c 2d 6c 6f 6f inning.of.the.string."...(cl-loo
4660 70 20 77 69 74 68 20 72 65 67 65 78 70 20 3d 20 28 63 6f 6e 63 61 74 20 22 5c 5c 62 22 20 28 72 p.with.regexp.=.(concat."\\b".(r
4680 65 67 65 78 70 2d 71 75 6f 74 65 20 74 6f 2d 6d 61 74 63 68 29 29 0a 20 20 20 20 20 20 20 20 20 egexp-quote.to-match))..........
46a0 20 20 77 69 74 68 20 72 65 74 20 3d 20 6e 69 6c 0a 20 20 20 20 20 20 20 20 20 20 20 77 69 74 68 ..with.ret.=.nil............with
46c0 20 72 65 74 2d 73 74 61 72 74 20 3d 20 6e 69 6c 0a 20 20 20 20 20 20 20 20 20 20 20 77 69 74 68 .ret-start.=.nil............with
46e0 20 72 65 74 2d 65 6e 64 20 3d 20 6e 69 6c 0a 0a 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 65 .ret-end.=.nil.............for.e
4700 6c 20 69 6e 20 63 6f 6c 6c 65 63 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 73 l.in.collection............for.s
4720 74 72 69 6e 67 20 3d 20 28 69 66 20 28 6c 69 73 74 70 20 65 6c 29 20 28 63 61 72 20 65 6c 29 20 tring.=.(if.(listp.el).(car.el).
4740 65 6c 29 0a 0a 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 73 74 61 72 74 20 3d 20 28 77 68 65 el).............for.start.=.(whe
4760 6e 20 28 6f 72 20 28 6e 75 6c 6c 20 70 72 65 64 69 63 61 74 65 29 20 28 66 75 6e 63 61 6c 6c 20 n.(or.(null.predicate).(funcall.
4780 70 72 65 64 69 63 61 74 65 20 73 74 72 69 6e 67 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 predicate.string))..............
47a0 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 72 65 67 65 78 70 ............(string-match.regexp
47c0 20 73 74 72 69 6e 67 29 29 0a 0a 20 20 20 20 20 20 20 20 20 20 20 69 66 20 73 74 61 72 74 0a 20 .string)).............if.start..
47e0 20 20 20 20 20 20 20 20 20 20 64 6f 20 28 6c 65 74 20 28 28 65 6e 64 20 28 6d 61 74 63 68 2d 65 ..........do.(let.((end.(match-e
4800 6e 64 20 30 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 6e 20 nd.0)).....................(len.
4820 28 6c 65 6e 67 74 68 20 73 74 72 69 6e 67 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 (length.string)))...............
4840 20 20 28 69 66 20 28 3d 20 65 6e 64 20 6c 65 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..(if.(=.end.len)...............
4860 20 20 20 20 20 20 28 63 6c 2d 72 65 74 75 72 6e 20 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 ......(cl-return.t).............
4880 20 20 20 20 20 20 28 63 6c 2d 64 65 73 74 72 75 63 74 75 72 69 6e 67 2d 62 69 6e 64 20 28 73 74 ......(cl-destructuring-bind.(st
48a0 72 69 6e 67 20 73 74 61 72 74 20 65 6e 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ring.start.end).................
48c0 20 20 20 20 20 20 28 69 66 20 28 6e 75 6c 6c 20 72 65 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 ......(if.(null.ret)............
48e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6c 2d 76 61 6c 75 65 73 20 73 74 72 69 6e 67 ...............(cl-values.string
4900 20 73 74 61 72 74 20 65 6e 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .start.end).....................
4920 20 20 20 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 63 6f 6d 6d 6f 6e 2d 73 75 62 73 74 72 69 ....(org-contacts-common-substri
4940 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 20 20 20 72 65 74 20 ng..........................ret.
4960 72 65 74 2d 73 74 61 72 74 20 72 65 74 2d 65 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ret-start.ret-end...............
4980 20 20 20 20 20 20 20 20 20 20 20 73 74 72 69 6e 67 20 73 74 61 72 74 20 65 6e 64 29 29 0a 20 20 ...........string.start.end))...
49a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 66 20 72 65 74 20 73 74 72 69 ..................(setf.ret.stri
49c0 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 20 20 20 20 72 65 74 ng...........................ret
49e0 2d 73 74 61 72 74 20 73 74 61 72 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 -start.start....................
4a00 20 20 20 20 20 20 20 72 65 74 2d 65 6e 64 20 65 6e 64 29 29 29 29 0a 0a 20 20 20 20 20 20 20 20 .......ret-end.end))))..........
4a20 20 20 20 66 69 6e 61 6c 6c 79 20 28 63 6c 2d 72 65 74 75 72 6e 0a 20 20 20 20 20 20 20 20 20 20 ...finally.(cl-return...........
4a40 20 20 20 20 20 20 20 20 20 20 28 72 65 70 6c 61 63 65 2d 72 65 67 65 78 70 2d 69 6e 2d 73 74 72 ..........(replace-regexp-in-str
4a60 69 6e 67 20 22 5c 5c 60 5b 20 5c 74 5c 6e 5d 2a 22 20 22 22 20 72 65 74 29 29 29 29 0a 0a 28 64 ing."\\`[.\t\n]*"."".ret))))..(d
4a80 65 66 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 63 6f 6d 70 61 72 65 2d 73 74 72 69 6e 67 efun.org-contacts-compare-string
4aa0 73 20 28 73 31 20 73 74 61 72 74 31 20 65 6e 64 31 20 73 32 20 73 74 61 72 74 32 20 65 6e 64 32 s.(s1.start1.end1.s2.start2.end2
4ac0 20 26 6f 70 74 69 6f 6e 61 6c 20 69 67 6e 6f 72 65 2d 63 61 73 65 29 0a 20 20 22 43 6f 6d 70 61 .&optional.ignore-case)..."Compa
4ae0 72 65 20 74 68 65 20 63 6f 6e 74 65 6e 74 73 20 6f 66 20 74 77 6f 20 73 74 72 69 6e 67 73 2c 20 re.the.contents.of.two.strings,.
4b00 75 73 69 6e 67 20 60 63 6f 6d 70 61 72 65 2d 73 74 72 69 6e 67 73 27 2e 0a 0a 54 68 69 73 20 66 using.`compare-strings'...This.f
4b20 75 6e 63 74 69 6f 6e 20 77 6f 72 6b 73 20 6c 69 6b 65 20 60 63 6f 6d 70 61 72 65 2d 73 74 72 69 unction.works.like.`compare-stri
4b40 6e 67 73 27 20 65 78 63 65 70 74 65 64 20 74 68 61 74 20 69 74 0a 72 65 74 75 72 6e 73 20 61 20 ngs'.excepted.that.it.returns.a.
4b60 63 6f 6e 73 2e 0a 2d 20 54 68 65 20 43 41 52 20 69 73 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 cons..-.The.CAR.is.the.number.of
4b80 20 63 68 61 72 61 63 74 65 72 73 20 74 68 61 74 20 6d 61 74 63 68 20 61 74 20 74 68 65 20 62 65 .characters.that.match.at.the.be
4ba0 67 69 6e 6e 69 6e 67 2e 0a 2d 20 54 68 65 20 43 44 52 20 69 73 20 54 20 69 73 20 74 68 65 20 74 ginning..-.The.CDR.is.T.is.the.t
4bc0 77 6f 20 73 74 72 69 6e 67 73 20 61 72 65 20 74 68 65 20 73 61 6d 65 20 61 6e 64 20 4e 49 4c 20 wo.strings.are.the.same.and.NIL.
4be0 6f 74 68 65 72 77 69 73 65 2e 22 0a 20 20 28 6c 65 74 20 28 28 72 65 74 20 28 63 6f 6d 70 61 72 otherwise."...(let.((ret.(compar
4c00 65 2d 73 74 72 69 6e 67 73 20 73 31 20 73 74 61 72 74 31 20 65 6e 64 31 20 73 32 20 73 74 61 72 e-strings.s1.start1.end1.s2.star
4c20 74 32 20 65 6e 64 32 20 69 67 6e 6f 72 65 2d 63 61 73 65 29 29 29 0a 20 20 20 20 28 69 66 20 28 t2.end2.ignore-case))).....(if.(
4c40 65 71 20 72 65 74 20 74 29 0a 20 20 20 20 20 20 20 20 28 63 6f 6e 73 20 28 6f 72 20 65 6e 64 31 eq.ret.t).........(cons.(or.end1
4c60 20 28 6c 65 6e 67 74 68 20 73 31 29 29 20 74 29 0a 20 20 20 20 20 20 28 63 6f 6e 73 20 28 31 2d .(length.s1)).t).......(cons.(1-
4c80 20 28 61 62 73 20 72 65 74 29 29 20 6e 69 6c 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d .(abs.ret)).nil))))..(defun.org-
4ca0 63 6f 6e 74 61 63 74 73 2d 63 6f 6d 6d 6f 6e 2d 73 75 62 73 74 72 69 6e 67 20 28 73 31 20 73 74 contacts-common-substring.(s1.st
4cc0 61 72 74 31 20 65 6e 64 31 20 73 32 20 73 74 61 72 74 32 20 65 6e 64 32 29 0a 20 20 22 45 78 74 art1.end1.s2.start2.end2)..."Ext
4ce0 72 61 63 74 20 74 68 65 20 63 6f 6d 6d 6f 6e 20 73 75 62 73 74 72 69 6e 67 20 62 65 74 77 65 65 ract.the.common.substring.betwee
4d00 6e 20 53 31 20 61 6e 64 20 53 32 2e 0a 0a 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 65 78 74 72 n.S1.and.S2...This.function.extr
4d20 61 63 74 73 20 74 68 65 20 63 6f 6d 6d 6f 6e 20 73 75 62 73 74 72 69 6e 67 20 62 65 74 77 65 65 acts.the.common.substring.betwee
4d40 6e 20 53 31 20 61 6e 64 20 53 32 20 61 6e 64 0a 61 64 6a 75 73 74 20 74 68 65 20 70 61 72 74 20 n.S1.and.S2.and.adjust.the.part.
4d60 74 68 61 74 20 72 65 6d 61 69 6e 73 20 63 6f 6d 6d 6f 6e 2e 0a 0a 53 54 41 52 54 31 20 61 6e 64 that.remains.common...START1.and
4d80 20 45 4e 44 31 20 64 65 6c 69 6d 69 74 20 74 68 65 20 70 61 72 74 20 69 6e 20 53 31 20 74 68 61 .END1.delimit.the.part.in.S1.tha
4da0 74 20 77 65 20 6b 6e 6f 77 20 69 73 20 63 6f 6d 6d 6f 6e 0a 62 65 74 77 65 65 6e 20 74 68 65 20 t.we.know.is.common.between.the.
4dc0 74 77 6f 20 73 74 72 69 6e 67 73 2e 20 54 68 69 73 20 61 70 70 6c 69 65 73 20 74 6f 20 53 54 41 two.strings..This.applies.to.STA
4de0 52 54 32 20 61 6e 64 20 45 4e 44 32 20 66 6f 72 20 53 32 2e 0a 0a 54 68 69 73 20 66 75 6e 63 74 RT2.and.END2.for.S2...This.funct
4e00 69 6f 6e 20 72 65 74 75 72 6e 73 20 61 20 6c 69 73 74 20 77 68 6f 73 65 20 63 6f 6e 74 61 69 6e ion.returns.a.list.whose.contain
4e20 73 3a 0a 2d 20 54 68 65 20 63 6f 6d 6d 6f 6e 20 73 75 62 73 74 72 69 6e 67 20 66 6f 75 6e 64 2e s:.-.The.common.substring.found.
4e40 0a 2d 20 54 68 65 20 6e 65 77 20 76 61 6c 75 65 20 6f 66 20 74 68 65 20 73 74 61 72 74 20 6f 66 .-.The.new.value.of.the.start.of
4e60 20 74 68 65 20 6b 6e 6f 77 6e 20 69 6e 6e 65 72 20 73 75 62 73 74 72 69 6e 67 2e 0a 2d 20 54 68 .the.known.inner.substring..-.Th
4e80 65 20 6e 65 77 20 76 61 6c 75 65 20 6f 66 20 74 68 65 20 65 6e 64 20 6f 66 20 74 68 65 20 6b 6e e.new.value.of.the.end.of.the.kn
4ea0 6f 77 6e 20 69 6e 6e 65 72 20 73 75 62 73 74 72 69 6e 67 2e 22 0a 20 20 3b 3b 20 47 69 76 65 6e own.inner.substring."...;;.Given
4ec0 20 74 77 6f 20 73 74 72 69 6e 67 73 3a 0a 20 20 3b 3b 20 73 31 3a 20 22 66 6f 6f 20 62 61 72 20 .two.strings:...;;.s1:."foo.bar.
4ee0 62 61 7a 22 0a 20 20 3b 3b 20 73 32 3a 20 22 66 6f 6f 6f 20 62 61 72 20 62 61 7a 22 0a 20 20 3b baz"...;;.s2:."fooo.bar.baz"...;
4f00 3b 20 61 6e 64 20 74 68 65 20 69 6e 6e 65 72 20 73 75 62 73 74 72 69 6e 67 20 69 73 20 22 62 61 ;.and.the.inner.substring.is."ba
4f20 72 22 0a 20 20 3b 3b 20 74 68 65 6e 3a 20 73 74 61 72 74 31 20 3d 20 34 2c 20 65 6e 64 31 20 3d r"...;;.then:.start1.=.4,.end1.=
4f40 20 36 2c 20 73 74 61 72 74 32 20 3d 20 35 2c 20 65 6e 64 32 20 3d 20 37 0a 20 20 3b 3b 0a 20 20 .6,.start2.=.5,.end2.=.7...;;...
4f60 3b 3b 20 54 6f 20 66 69 6e 64 20 74 68 65 20 63 6f 6d 6d 6f 6e 20 73 75 62 73 74 72 69 6e 67 20 ;;.To.find.the.common.substring.
4f80 77 65 20 77 69 6c 6c 20 63 6f 6d 70 61 72 65 20 74 77 6f 20 73 75 62 73 74 72 69 6e 67 73 3a 0a we.will.compare.two.substrings:.
4fa0 20 20 3b 3b 20 22 20 6f 6f 66 22 20 61 6e 64 20 22 20 6f 6f 6f 66 22 20 74 6f 20 66 69 6e 64 20 ..;;.".oof".and.".ooof".to.find.
4fc0 74 68 65 20 62 65 67 69 6e 6e 69 6e 67 20 6f 66 20 74 68 65 20 63 6f 6d 6d 6f 6e 20 73 75 62 73 the.beginning.of.the.common.subs
4fe0 74 72 69 6e 67 2e 0a 20 20 3b 3b 20 22 20 62 61 7a 22 20 61 6e 64 20 22 20 62 61 7a 22 20 74 6f tring....;;.".baz".and.".baz".to
5000 20 66 69 6e 64 20 74 68 65 20 65 6e 64 20 6f 66 20 74 68 65 20 63 6f 6d 6d 6f 6e 20 73 75 62 73 .find.the.end.of.the.common.subs
5020 74 72 69 6e 67 2e 0a 20 20 28 6c 65 74 2a 20 28 28 6c 65 6e 31 20 28 6c 65 6e 67 74 68 20 73 31 tring....(let*.((len1.(length.s1
5040 29 29 0a 20 20 20 20 20 20 20 20 20 28 73 74 61 72 74 31 20 28 6f 72 20 73 74 61 72 74 31 20 30 ))..........(start1.(or.start1.0
5060 29 29 0a 20 20 20 20 20 20 20 20 20 28 65 6e 64 31 20 28 6f 72 20 65 6e 64 31 20 6c 65 6e 31 29 ))..........(end1.(or.end1.len1)
5080 29 0a 0a 20 20 20 20 20 20 20 20 20 28 6c 65 6e 32 20 28 6c 65 6e 67 74 68 20 73 32 29 29 0a 20 )...........(len2.(length.s2))..
50a0 20 20 20 20 20 20 20 20 28 73 74 61 72 74 32 20 28 6f 72 20 73 74 61 72 74 32 20 30 29 29 0a 20 ........(start2.(or.start2.0))..
50c0 20 20 20 20 20 20 20 20 28 65 6e 64 32 20 28 6f 72 20 65 6e 64 32 20 6c 65 6e 32 29 29 0a 0a 20 ........(end2.(or.end2.len2))...
50e0 20 20 20 20 20 20 20 20 28 6e 65 77 2d 73 74 61 72 74 20 28 63 61 72 20 28 6f 72 67 2d 63 6f 6e ........(new-start.(car.(org-con
5100 74 61 63 74 73 2d 63 6f 6d 70 61 72 65 2d 73 74 72 69 6e 67 73 0a 20 20 20 20 20 20 20 20 20 20 tacts-compare-strings...........
5120 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 75 62 73 74 72 69 6e 67 20 28 6f 72 67 2d ................(substring.(org-
5140 72 65 76 65 72 73 65 2d 73 74 72 69 6e 67 20 73 31 29 20 28 2d 20 6c 65 6e 31 20 73 74 61 72 74 reverse-string.s1).(-.len1.start
5160 31 29 29 20 6e 69 6c 20 6e 69 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 1)).nil.nil.....................
5180 20 20 20 20 20 20 28 73 75 62 73 74 72 69 6e 67 20 28 6f 72 67 2d 72 65 76 65 72 73 65 2d 73 74 ......(substring.(org-reverse-st
51a0 72 69 6e 67 20 73 32 29 20 28 2d 20 6c 65 6e 32 20 73 74 61 72 74 32 29 29 20 6e 69 6c 20 6e 69 ring.s2).(-.len2.start2)).nil.ni
51c0 6c 29 29 29 0a 0a 20 20 20 20 20 20 20 20 20 28 6e 65 77 2d 65 6e 64 20 28 2b 20 65 6e 64 31 20 l)))...........(new-end.(+.end1.
51e0 28 63 61 72 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 63 6f 6d 70 61 72 65 2d 73 74 72 69 6e (car.(org-contacts-compare-strin
5200 67 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 gs..............................
5220 20 20 20 28 73 75 62 73 74 72 69 6e 67 20 73 31 20 65 6e 64 31 29 20 6e 69 6c 20 6e 69 6c 0a 20 ...(substring.s1.end1).nil.nil..
5240 20 20 20 20 20 20 20 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 ...............................(
5260 73 75 62 73 74 72 69 6e 67 20 73 32 20 65 6e 64 32 29 20 6e 69 6c 20 6e 69 6c 29 29 29 29 29 0a substring.s2.end2).nil.nil))))).
5280 20 20 20 20 28 6c 69 73 74 20 28 73 75 62 73 74 72 69 6e 67 20 73 31 20 28 2d 20 73 74 61 72 74 ....(list.(substring.s1.(-.start
52a0 31 20 6e 65 77 2d 73 74 61 72 74 29 20 6e 65 77 2d 65 6e 64 29 0a 20 20 20 20 20 20 20 20 20 20 1.new-start).new-end)...........
52c0 6e 65 77 2d 73 74 61 72 74 0a 20 20 20 20 20 20 20 20 20 20 28 2b 20 6e 65 77 2d 73 74 61 72 74 new-start...........(+.new-start
52e0 20 28 2d 20 65 6e 64 31 20 73 74 61 72 74 31 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 .(-.end1.start1)))))..(defun.org
5300 2d 63 6f 6e 74 61 63 74 73 2d 61 6c 6c 2d 63 6f 6d 70 6c 65 74 69 6f 6e 73 2d 70 72 65 66 69 78 -contacts-all-completions-prefix
5320 20 28 74 6f 2d 6d 61 74 63 68 20 63 6f 6c 6c 65 63 74 69 6f 6e 20 26 6f 70 74 69 6f 6e 61 6c 20 .(to-match.collection.&optional.
5340 70 72 65 64 69 63 61 74 65 29 0a 20 20 22 43 75 73 74 6f 6d 20 76 65 72 73 69 6f 6e 20 6f 66 20 predicate)..."Custom.version.of.
5360 60 61 6c 6c 2d 63 6f 6d 70 6c 65 74 69 6f 6e 73 27 2e 0a 54 68 69 73 20 76 65 72 73 69 6f 6e 20 `all-completions'..This.version.
5380 77 6f 72 6b 73 20 6f 6e 6c 79 20 77 69 74 68 20 6c 69 73 74 20 61 6e 64 20 61 6c 69 73 74 20 61 works.only.with.list.and.alist.a
53a0 6e 64 20 69 74 20 6c 6f 6f 6b 73 20 61 74 20 61 6c 6c 0a 70 72 65 66 69 78 65 73 20 72 61 74 68 nd.it.looks.at.all.prefixes.rath
53c0 65 72 20 74 68 61 6e 20 6a 75 73 74 20 74 68 65 20 62 65 67 69 6e 6e 69 6e 67 20 6f 66 20 74 68 er.than.just.the.beginning.of.th
53e0 65 20 73 74 72 69 6e 67 2e 22 0a 20 20 28 63 6c 2d 6c 6f 6f 70 20 77 69 74 68 20 72 65 67 65 78 e.string."...(cl-loop.with.regex
5400 70 20 3d 20 28 63 6f 6e 63 61 74 20 22 5c 5c 62 22 20 28 72 65 67 65 78 70 2d 71 75 6f 74 65 20 p.=.(concat."\\b".(regexp-quote.
5420 74 6f 2d 6d 61 74 63 68 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 65 6c 20 69 6e 20 to-match))............for.el.in.
5440 63 6f 6c 6c 65 63 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 73 74 72 69 6e 67 collection............for.string
5460 20 3d 20 28 69 66 20 28 6c 69 73 74 70 20 65 6c 29 20 28 63 61 72 20 65 6c 29 20 65 6c 29 0a 20 .=.(if.(listp.el).(car.el).el)..
5480 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 6d 61 74 63 68 3f 20 3d 20 28 77 68 65 6e 20 28 61 6e ..........for.match?.=.(when.(an
54a0 64 20 28 6f 72 20 28 6e 75 6c 6c 20 70 72 65 64 69 63 61 74 65 29 20 28 66 75 6e 63 61 6c 6c 20 d.(or.(null.predicate).(funcall.
54c0 70 72 65 64 69 63 61 74 65 20 73 74 72 69 6e 67 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 predicate.string))).............
54e0 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 72 65 67 65 ..............(string-match.rege
5500 78 70 20 73 74 72 69 6e 67 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 69 66 20 6d 61 74 63 68 3f xp.string))............if.match?
5520 0a 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6c 65 63 74 20 28 70 72 6f 67 6e 0a 20 20 20 20 20 ............collect.(progn......
5540 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 65 6e 64 20 28 6d 61 74 63 ................(let.((end.(matc
5560 68 2d 65 6e 64 20 30 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 h-end.0)))......................
5580 20 20 28 6f 72 67 2d 6e 6f 2d 70 72 6f 70 65 72 74 69 65 73 20 73 74 72 69 6e 67 29 0a 20 20 20 ..(org-no-properties.string)....
55a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 3c 20 65 6e 64 ....................(when.(<.end
55c0 20 28 6c 65 6e 67 74 68 20 73 74 72 69 6e 67 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .(length.string))...............
55e0 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 48 65 72 65 20 77 65 20 61 64 64 20 61 20 74 65 78 74 ...........;;.Here.we.add.a.text
5600 20 70 72 6f 70 65 72 74 79 20 74 68 61 74 20 77 69 6c 6c 20 62 65 20 75 73 65 64 0a 20 20 20 20 .property.that.will.be.used.....
5620 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 6c 61 74 65 72 20 74 6f .....................;;.later.to
5640 20 68 69 67 68 6c 69 67 68 74 20 74 68 65 20 63 68 61 72 61 63 74 65 72 20 72 69 67 68 74 20 61 .highlight.the.character.right.a
5660 66 74 65 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 3b 3b fter..........................;;
5680 20 74 68 65 20 63 6f 6d 6d 6f 6e 20 70 61 72 74 20 62 65 74 77 65 65 6e 20 65 61 63 68 20 61 64 .the.common.part.between.each.ad
56a0 64 72 65 73 73 65 73 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 dresses.........................
56c0 20 20 3b 3b 20 53 65 65 20 60 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 64 69 73 70 6c 61 79 2d 73 ..;;.See.`org-contacts-display-s
56e0 6f 72 74 2d 66 75 6e 63 74 69 6f 6e 27 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ort-function'...................
5700 20 20 20 20 20 20 20 20 28 70 75 74 2d 74 65 78 74 2d 70 72 6f 70 65 72 74 79 20 65 6e 64 20 28 ........(put-text-property.end.(
5720 31 2b 20 65 6e 64 29 20 27 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 70 72 65 66 69 78 20 27 74 20 1+.end).'org-contacts-prefix.'t.
5740 73 74 72 69 6e 67 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 73 string)))......................s
5760 74 72 69 6e 67 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 6d 61 tring)))..(defun.org-contacts-ma
5780 6b 65 2d 63 6f 6c 6c 65 63 74 69 6f 6e 2d 70 72 65 66 69 78 20 28 63 6f 6c 6c 65 63 74 69 6f 6e ke-collection-prefix.(collection
57a0 29 0a 20 20 22 4d 61 6b 65 20 61 20 63 6f 6c 6c 65 63 74 69 6f 6e 20 66 75 6e 63 74 69 6f 6e 20 )..."Make.a.collection.function.
57c0 66 72 6f 6d 20 43 4f 4c 4c 45 43 54 49 4f 4e 20 77 68 69 63 68 20 77 69 6c 6c 20 6d 61 74 63 68 from.COLLECTION.which.will.match
57e0 20 6f 6e 20 70 72 65 66 69 78 65 73 2e 22 0a 20 20 28 6c 65 74 20 28 28 63 6f 6c 6c 65 63 74 69 .on.prefixes."...(let.((collecti
5800 6f 6e 20 63 6f 6c 6c 65 63 74 69 6f 6e 29 29 0a 20 20 20 20 28 6c 61 6d 62 64 61 20 28 73 74 72 on.collection)).....(lambda.(str
5820 69 6e 67 20 70 72 65 64 69 63 61 74 65 20 66 6c 61 67 29 0a 20 20 20 20 20 20 28 63 6f 6e 64 20 ing.predicate.flag).......(cond.
5840 28 28 65 71 20 66 6c 61 67 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 ((eq.flag.nil)..............(org
5860 2d 63 6f 6e 74 61 63 74 73 2d 74 72 79 2d 63 6f 6d 70 6c 65 74 69 6f 6e 2d 70 72 65 66 69 78 20 -contacts-try-completion-prefix.
5880 73 74 72 69 6e 67 20 63 6f 6c 6c 65 63 74 69 6f 6e 20 70 72 65 64 69 63 61 74 65 29 29 0a 20 20 string.collection.predicate))...
58a0 20 20 20 20 20 20 20 20 20 20 28 28 65 71 20 66 6c 61 67 20 74 29 0a 20 20 20 20 20 20 20 20 20 ..........((eq.flag.t)..........
58c0 20 20 20 20 3b 3b 20 60 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 61 6c 6c 2d 63 6f 6d 70 6c 65 74 ....;;.`org-contacts-all-complet
58e0 69 6f 6e 73 2d 70 72 65 66 69 78 27 20 68 61 73 20 61 6c 72 65 61 64 79 20 62 65 65 6e 0a 20 20 ions-prefix'.has.already.been...
5900 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 75 73 65 64 20 74 6f 20 63 6f 6d 70 75 74 65 20 60 61 ...........;;.used.to.compute.`a
5920 6c 6c 2d 63 6f 6d 70 6c 65 74 69 6f 6e 73 27 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f ll-completions'...............co
5940 6c 6c 65 63 74 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 28 65 71 20 66 6c 61 67 20 llection).............((eq.flag.
5960 27 6c 61 6d 62 64 61 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 63 6f 6e 74 61 'lambda)..............(org-conta
5980 63 74 73 2d 74 65 73 74 2d 63 6f 6d 70 6c 65 74 69 6f 6e 2d 70 72 65 66 69 78 20 73 74 72 69 6e cts-test-completion-prefix.strin
59a0 67 20 63 6f 6c 6c 65 63 74 69 6f 6e 20 70 72 65 64 69 63 61 74 65 29 29 0a 20 20 20 20 20 20 20 g.collection.predicate))........
59c0 20 20 20 20 20 28 28 61 6e 64 20 28 6c 69 73 74 70 20 66 6c 61 67 29 20 28 65 71 20 28 63 61 72 .....((and.(listp.flag).(eq.(car
59e0 20 66 6c 61 67 29 20 27 62 6f 75 6e 64 61 72 69 65 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 .flag).'boundaries))............
5a00 20 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 62 6f 75 6e 64 61 72 69 65 73 2d 70 72 65 66 69 ..(org-contacts-boundaries-prefi
5a20 78 20 73 74 72 69 6e 67 20 63 6f 6c 6c 65 63 74 69 6f 6e 20 70 72 65 64 69 63 61 74 65 20 28 63 x.string.collection.predicate.(c
5a40 64 72 20 66 6c 61 67 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 28 65 71 20 66 6c 61 67 dr.flag))).............((eq.flag
5a60 20 27 6d 65 74 61 64 61 74 61 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 63 6f .'metadata)..............(org-co
5a80 6e 74 61 63 74 73 2d 6d 65 74 61 64 61 74 61 2d 70 72 65 66 69 78 29 29 0a 20 20 20 20 20 20 20 ntacts-metadata-prefix))........
5aa0 20 20 20 20 20 28 74 20 6e 69 6c 20 20 20 20 20 20 20 20 20 20 3b 20 6f 70 65 72 61 74 69 6f 6e .....(t.nil..........;.operation
5ac0 20 75 6e 73 75 70 70 6f 72 74 65 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 29 29 29 29 .unsupported................))))
5ae0 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 64 69 73 70 6c 61 79 2d 73 )..(defun.org-contacts-display-s
5b00 6f 72 74 2d 66 75 6e 63 74 69 6f 6e 20 28 63 6f 6d 70 6c 65 74 69 6f 6e 73 29 0a 20 20 22 53 6f ort-function.(completions)..."So
5b20 72 74 20 66 75 6e 63 74 69 6f 6e 20 66 6f 72 20 63 6f 6e 74 61 63 74 73 20 64 69 73 70 6c 61 79 rt.function.for.contacts.display
5b40 2e 22 0a 20 20 28 6d 61 70 63 61 72 20 28 6c 61 6d 62 64 61 20 28 73 74 72 69 6e 67 29 0a 20 20 ."...(mapcar.(lambda.(string)...
5b60 20 20 20 20 20 20 20 20 20 20 28 63 6c 2d 6c 6f 6f 70 20 77 69 74 68 20 6c 65 6e 20 3d 20 28 31 ..........(cl-loop.with.len.=.(1
5b80 2d 20 28 6c 65 6e 67 74 68 20 73 74 72 69 6e 67 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 -.(length.string))..............
5ba0 20 20 20 20 20 20 20 20 66 6f 72 20 69 20 75 70 66 72 6f 6d 20 30 20 74 6f 20 6c 65 6e 0a 20 20 ........for.i.upfrom.0.to.len...
5bc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 65 6d 71 20 27 6f 72 67 ...................if.(memq.'org
5be0 2d 63 6f 6e 74 61 63 74 73 2d 70 72 65 66 69 78 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 -contacts-prefix................
5c00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 74 65 78 74 2d 70 72 6f 70 65 72 74 69 65 73 2d ...............(text-properties-
5c20 61 74 20 69 20 73 74 72 69 6e 67 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 at.i.string))...................
5c40 20 20 20 64 6f 20 28 73 65 74 2d 74 65 78 74 2d 70 72 6f 70 65 72 74 69 65 73 0a 20 20 20 20 20 ...do.(set-text-properties......
5c60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 20 28 31 2b 20 69 29 0a 20 20 20 ....................i.(1+.i)....
5c80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 73 74 20 27 66 6f 6e ......................(list.'fon
5ca0 74 2d 6c 6f 63 6b 2d 66 61 63 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 t-lock-face.....................
5cc0 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 63 68 61 72 2d 65 71 75 61 6c 20 28 61 72 65 66 ...........(if.(char-equal.(aref
5ce0 20 73 74 72 69 6e 67 20 69 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .string.i)......................
5d00 20 20 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 72 69 6e ..........................(strin
5d20 67 2d 74 6f 2d 63 68 61 72 20 22 20 22 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 g-to-char.".")).................
5d40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 53 70 61 63 65 73 20 63 61 6e ...................;;.Spaces.can
5d60 27 74 20 62 65 20 62 6f 6c 64 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 't.be.bold......................
5d80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 75 6e 64 65 72 6c 69 6e 65 0a 20 20 20 20 20 20 ...............'underline.......
5da0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 62 6f 6c 64 ...........................'bold
5dc0 29 29 20 73 74 72 69 6e 67 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 )).string)......................
5de0 65 6c 73 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 6f 20 28 73 65 else......................do.(se
5e00 74 2d 74 65 78 74 2d 70 72 6f 70 65 72 74 69 65 73 20 69 20 28 31 2b 20 69 29 20 6e 69 6c 20 73 t-text-properties.i.(1+.i).nil.s
5e20 74 72 69 6e 67 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 69 6e 61 tring)......................fina
5e40 6c 6c 79 20 28 63 6c 2d 72 65 74 75 72 6e 20 73 74 72 69 6e 67 29 29 29 0a 20 20 20 20 20 20 20 lly.(cl-return.string)))........
5e60 20 20 20 63 6f 6d 70 6c 65 74 69 6f 6e 73 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 63 6f 6e ...completions))..(defun.org-con
5e80 74 61 63 74 73 2d 74 65 73 74 2d 63 6f 6d 70 6c 65 74 69 6f 6e 2d 70 72 65 66 69 78 20 28 73 74 tacts-test-completion-prefix.(st
5ea0 72 69 6e 67 20 63 6f 6c 6c 65 63 74 69 6f 6e 20 70 72 65 64 69 63 61 74 65 29 0a 20 20 28 63 6c ring.collection.predicate)...(cl
5ec0 2d 66 69 6e 64 2d 69 66 20 28 6c 61 6d 62 64 61 20 28 65 6c 29 0a 20 20 20 20 20 20 20 20 20 20 -find-if.(lambda.(el)...........
5ee0 20 20 20 20 20 20 28 61 6e 64 20 28 6f 72 20 28 6e 75 6c 6c 20 70 72 65 64 69 63 61 74 65 29 20 ......(and.(or.(null.predicate).
5f00 28 66 75 6e 63 61 6c 6c 20 70 72 65 64 69 63 61 74 65 20 65 6c 29 29 0a 20 20 20 20 20 20 20 20 (funcall.predicate.el)).........
5f20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 74 72 69 6e 67 3d 20 73 74 72 69 6e 67 20 65 6c 29 .............(string=.string.el)
5f40 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6c 65 63 74 69 6f 6e 29 29 0a 0a 28 ))...............collection))..(
5f60 64 65 66 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 62 6f 75 6e 64 61 72 69 65 73 2d 70 72 defun.org-contacts-boundaries-pr
5f80 65 66 69 78 20 28 73 74 72 69 6e 67 20 63 6f 6c 6c 65 63 74 69 6f 6e 20 70 72 65 64 69 63 61 74 efix.(string.collection.predicat
5fa0 65 20 73 75 66 66 69 78 29 0a 20 20 28 63 6c 2d 6c 69 73 74 2a 20 27 62 6f 75 6e 64 61 72 69 65 e.suffix)...(cl-list*.'boundarie
5fc0 73 20 28 63 6f 6d 70 6c 65 74 69 6f 6e 2d 62 6f 75 6e 64 61 72 69 65 73 20 73 74 72 69 6e 67 20 s.(completion-boundaries.string.
5fe0 63 6f 6c 6c 65 63 74 69 6f 6e 20 70 72 65 64 69 63 61 74 65 20 73 75 66 66 69 78 29 29 29 0a 0a collection.predicate.suffix)))..
6000 28 64 65 66 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 6d 65 74 61 64 61 74 61 2d 70 72 65 (defun.org-contacts-metadata-pre
6020 66 69 78 20 28 26 72 65 73 74 20 5f 29 0a 20 20 27 28 6d 65 74 61 64 61 74 61 20 2e 0a 20 20 20 fix.(&rest._)...'(metadata......
6040 20 20 20 20 20 20 20 20 20 20 28 28 63 79 63 6c 65 2d 73 6f 72 74 2d 66 75 6e 63 74 69 6f 6e 20 ..........((cycle-sort-function.
6060 2e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 64 69 73 70 6c 61 79 2d 73 6f 72 74 2d 66 75 6e 63 ..org-contacts-display-sort-func
6080 74 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 69 73 70 6c 61 79 2d 73 6f 72 tion)...............(display-sor
60a0 74 2d 66 75 6e 63 74 69 6f 6e 20 2e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 64 69 73 70 6c 61 t-function...org-contacts-displa
60c0 79 2d 73 6f 72 74 2d 66 75 6e 63 74 69 6f 6e 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d y-sort-function))))..(defun.org-
60e0 63 6f 6e 74 61 63 74 73 2d 63 6f 6d 70 6c 65 74 65 2d 67 72 6f 75 70 20 28 73 74 72 69 6e 67 29 contacts-complete-group.(string)
6100 0a 20 20 22 43 6f 6d 70 6c 65 74 65 20 74 65 78 74 20 61 74 20 53 54 41 52 54 20 66 72 6f 6d 20 ..."Complete.text.at.START.from.
6120 61 20 67 72 6f 75 70 2e 0a 0a 41 20 67 72 6f 75 70 20 46 4f 4f 20 69 73 20 63 6f 6d 70 6f 73 65 a.group...A.group.FOO.is.compose
6140 64 20 6f 66 20 63 6f 6e 74 61 63 74 73 20 77 69 74 68 20 74 68 65 20 74 61 67 20 46 4f 4f 2e 22 d.of.contacts.with.the.tag.FOO."
6160 0a 20 20 28 6c 65 74 2a 20 28 28 63 6f 6d 70 6c 65 74 69 6f 6e 2d 69 67 6e 6f 72 65 2d 63 61 73 ...(let*.((completion-ignore-cas
6180 65 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 63 6f 6d 70 6c 65 74 69 6f 6e 2d 69 67 6e 6f 72 65 e.org-contacts-completion-ignore
61a0 2d 63 61 73 65 29 0a 20 20 20 20 20 20 20 20 20 28 67 72 6f 75 70 2d 63 6f 6d 70 6c 65 74 69 6f -case)..........(group-completio
61c0 6e 2d 70 20 28 73 74 72 69 6e 67 2d 6d 61 74 63 68 2d 70 0a 20 20 20 20 20 20 20 20 20 20 20 20 n-p.(string-match-p.............
61e0 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 5e 22 20 6f 72 ..................(concat."^".or
6200 67 2d 63 6f 6e 74 61 63 74 73 2d 67 72 6f 75 70 2d 70 72 65 66 69 78 29 20 73 74 72 69 6e 67 29 g-contacts-group-prefix).string)
6220 29 29 0a 20 20 20 20 28 77 68 65 6e 20 67 72 6f 75 70 2d 63 6f 6d 70 6c 65 74 69 6f 6e 2d 70 0a )).....(when.group-completion-p.
6240 20 20 20 20 20 20 28 6c 65 74 20 28 28 63 6f 6d 70 6c 65 74 69 6f 6e 2d 6c 69 73 74 0a 20 20 20 ......(let.((completion-list....
6260 20 20 20 20 20 20 20 20 20 20 28 61 6c 6c 2d 63 6f 6d 70 6c 65 74 69 6f 6e 73 0a 20 20 20 20 20 ..........(all-completions......
6280 20 20 20 20 20 20 20 20 20 73 74 72 69 6e 67 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d .........string...............(m
62a0 61 70 63 61 72 20 28 6c 61 6d 62 64 61 20 28 67 72 6f 75 70 29 0a 20 20 20 20 20 20 20 20 20 20 apcar.(lambda.(group)...........
62c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 70 65 72 74 69 7a 65 20 28 63 6f 6e 63 61 ..............(propertize.(conca
62e0 74 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 67 72 6f 75 70 2d 70 72 65 66 69 78 20 67 72 6f 75 t.org-contacts-group-prefix.grou
6300 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 20 20 p)..............................
6320 20 20 20 20 20 20 20 27 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 67 72 6f 75 70 20 67 72 6f 75 70 .......'org-contacts-group.group
6340 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 75 6e )).......................(org-un
6360 69 71 75 69 66 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 28 63 iquify........................(c
6380 6c 2d 6c 6f 6f 70 20 66 6f 72 20 63 6f 6e 74 61 63 74 20 69 6e 20 28 6f 72 67 2d 63 6f 6e 74 61 l-loop.for.contact.in.(org-conta
63a0 63 74 73 2d 66 69 6c 74 65 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 cts-filter).....................
63c0 20 20 20 20 20 20 20 20 20 20 20 20 6e 63 6f 6e 63 20 28 6f 72 67 2d 73 70 6c 69 74 2d 73 74 72 ............nconc.(org-split-str
63e0 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 20 20 20 20 20 20 ing.............................
6400 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 20 28 63 64 72 20 28 61 73 73 6f 63 2d 73 74 72 69 6e ...........(or.(cdr.(assoc-strin
6420 67 20 22 41 4c 4c 54 41 47 53 22 20 28 63 61 64 64 72 20 63 6f 6e 74 61 63 74 29 29 29 20 22 22 g."ALLTAGS".(caddr.contact))).""
6440 29 20 22 3a 22 29 29 29 29 29 29 29 0a 0a 20 20 20 20 20 20 20 20 28 69 66 20 28 3d 20 28 6c 65 ).":")))))))..........(if.(=.(le
6460 6e 67 74 68 20 63 6f 6d 70 6c 65 74 69 6f 6e 2d 6c 69 73 74 29 20 31 29 0a 20 20 20 20 20 20 20 ngth.completion-list).1)........
6480 20 20 20 20 20 3b 3b 20 57 65 27 76 65 20 66 6f 75 6e 64 20 74 68 65 20 63 6f 72 72 65 63 74 20 .....;;.We've.found.the.correct.
64a0 67 72 6f 75 70 2c 20 72 65 74 75 72 6e 73 20 74 68 65 20 61 64 64 72 65 73 73 0a 20 20 20 20 20 group,.returns.the.address......
64c0 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 74 61 67 20 28 67 65 74 2d 74 65 78 74 2d 70 72 6f 70 .......(let.((tag.(get-text-prop
64e0 65 72 74 79 20 30 20 27 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 67 72 6f 75 70 0a 20 20 20 20 20 erty.0.'org-contacts-group......
6500 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
6520 20 20 20 20 20 28 63 61 72 20 63 6f 6d 70 6c 65 74 69 6f 6e 2d 6c 69 73 74 29 29 29 29 0a 20 20 .....(car.completion-list))))...
6540 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 61 70 63 6f 6e 63 61 74 20 23 27 69 64 65 6e 74 69 74 ............(mapconcat.#'identit
6560 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 28 63 6c 2d 6c y..........................(cl-l
6580 6f 6f 70 20 66 6f 72 20 63 6f 6e 74 61 63 74 20 69 6e 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 oop.for.contact.in.(org-contacts
65a0 2d 66 69 6c 74 65 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 -filter.........................
65c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 69 6c 0a 20 20 ..........................nil...
65e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
6600 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 61 67 29 0a 20 20 20 20 20 20 20 20 20 20 20 ................tag)............
6620 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 63 6f .......................;;.The.co
6640 6e 74 61 63 74 20 6e 61 6d 65 20 69 73 20 61 6c 77 61 79 73 20 74 68 65 20 63 61 72 20 6f 66 20 ntact.name.is.always.the.car.of.
6660 74 68 65 20 61 73 73 6f 63 2d 6c 69 73 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 the.assoc-list..................
6680 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 72 65 74 75 72 6e 65 64 20 62 79 20 .................;;.returned.by.
66a0 60 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 66 69 6c 74 65 72 27 2e 0a 20 20 20 20 20 20 20 20 20 `org-contacts-filter'...........
66c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 63 6f 6e .........................for.con
66e0 74 61 63 74 2d 6e 61 6d 65 20 3d 20 28 63 61 72 20 63 6f 6e 74 61 63 74 29 0a 20 20 20 20 20 20 tact-name.=.(car.contact).......
6700 20 20 20 20 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 47 ............................;;.G
6720 72 61 62 20 74 68 65 20 66 69 72 73 74 20 65 6d 61 69 6c 20 6f 66 20 74 68 65 20 63 6f 6e 74 61 rab.the.first.email.of.the.conta
6740 63 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ct..............................
6760 20 20 20 20 20 66 6f 72 20 65 6d 61 69 6c 20 3d 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 73 .....for.email.=.(org-contacts-s
6780 74 72 69 70 2d 6c 69 6e 6b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 trip-link.......................
67a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 20 28 63 61 .........................(or.(ca
67c0 72 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 73 70 6c 69 74 2d 70 72 6f 70 65 72 74 79 0a 20 r.(org-contacts-split-property..
67e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
6800 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 0a 20 20 20 20 ........................(or.....
6820 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
6840 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 64 72 20 28 61 73 73 6f ......................(cdr.(asso
6860 63 2d 73 74 72 69 6e 67 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 65 6d 61 69 6c 2d 70 72 6f 70 c-string.org-contacts-email-prop
6880 65 72 74 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 erty............................
68a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
68c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6c 2d 63 61 64 64 72 20 63 6f 6e 74 ..................(cl-caddr.cont
68e0 61 63 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 20 20 act)))..........................
6900 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
6920 20 22 22 29 29 29 20 22 22 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ."")))."")).....................
6940 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 49 66 20 74 68 65 20 75 73 65 72 20 68 61 73 ..............;;.If.the.user.has
6960 20 61 6e 20 65 6d 61 69 6c 20 61 64 64 72 65 73 73 2c 20 61 70 70 65 6e 64 20 55 53 45 52 20 3c .an.email.address,.append.USER.<
6980 45 4d 41 49 4c 3e 2e 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 EMAIL>..........................
69a0 20 20 20 20 20 20 20 20 20 20 69 66 20 65 6d 61 69 6c 20 63 6f 6c 6c 65 63 74 20 28 6f 72 67 2d ..........if.email.collect.(org-
69c0 63 6f 6e 74 61 63 74 73 2d 66 6f 72 6d 61 74 2d 65 6d 61 69 6c 20 63 6f 6e 74 61 63 74 2d 6e 61 contacts-format-email.contact-na
69e0 6d 65 20 65 6d 61 69 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 me.email))......................
6a00 20 20 20 20 22 2c 20 22 29 29 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 57 65 20 68 61 76 65 6e ....",."))...........;;.We.haven
6a20 27 74 20 66 6f 75 6e 64 20 74 68 65 20 63 6f 72 72 65 63 74 20 67 72 6f 75 70 0a 20 20 20 20 20 't.found.the.correct.group......
6a40 20 20 20 20 20 28 63 6f 6d 70 6c 65 74 69 6f 6e 2d 74 61 62 6c 65 2d 63 61 73 65 2d 66 6f 6c 64 .....(completion-table-case-fold
6a60 20 63 6f 6d 70 6c 65 74 69 6f 6e 2d 6c 69 73 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .completion-list................
6a80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e 6f 74 20 6f 72 67 2d .......................(not.org-
6aa0 63 6f 6e 74 61 63 74 73 2d 63 6f 6d 70 6c 65 74 69 6f 6e 2d 69 67 6e 6f 72 65 2d 63 61 73 65 29 contacts-completion-ignore-case)
6ac0 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 63 6f 6d 70 ))))))..(defun.org-contacts-comp
6ae0 6c 65 74 65 2d 74 61 67 73 2d 70 72 6f 70 73 20 28 73 74 72 69 6e 67 29 0a 20 20 22 49 6e 73 65 lete-tags-props.(string)..."Inse
6b00 72 74 20 65 6d 61 69 6c 73 20 74 68 61 74 20 6d 61 74 63 68 20 74 68 65 20 74 61 67 73 20 65 78 rt.emails.that.match.the.tags.ex
6b20 70 72 65 73 73 69 6f 6e 2e 0a 0a 46 6f 72 20 65 78 61 6d 70 6c 65 3a 20 46 4f 4f 2d 42 41 52 20 pression...For.example:.FOO-BAR.
6b40 77 69 6c 6c 20 6d 61 74 63 68 20 65 6e 74 72 69 65 73 20 74 61 67 67 65 64 20 77 69 74 68 20 46 will.match.entries.tagged.with.F
6b60 4f 4f 20 62 75 74 20 6e 6f 74 0a 77 69 74 68 20 42 41 52 2e 0a 0a 53 65 65 20 28 6f 72 67 29 20 OO.but.not.with.BAR...See.(org).
6b80 4d 61 74 63 68 69 6e 67 20 74 61 67 73 20 61 6e 64 20 70 72 6f 70 65 72 74 69 65 73 20 66 6f 72 Matching.tags.and.properties.for
6ba0 20 61 20 63 6f 6d 70 6c 65 74 65 0a 64 65 73 63 72 69 70 74 69 6f 6e 2e 22 0a 20 20 28 6c 65 74 .a.complete.description."...(let
6bc0 2a 20 28 28 63 6f 6d 70 6c 65 74 69 6f 6e 2d 69 67 6e 6f 72 65 2d 63 61 73 65 20 6f 72 67 2d 63 *.((completion-ignore-case.org-c
6be0 6f 6e 74 61 63 74 73 2d 63 6f 6d 70 6c 65 74 69 6f 6e 2d 69 67 6e 6f 72 65 2d 63 61 73 65 29 0a ontacts-completion-ignore-case).
6c00 20 20 20 20 20 20 20 20 20 28 63 6f 6d 70 6c 65 74 69 6f 6e 2d 70 20 28 73 74 72 69 6e 67 2d 6d .........(completion-p.(string-m
6c20 61 74 63 68 2d 70 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 atch-p.........................(
6c40 63 6f 6e 63 61 74 20 22 5e 22 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 74 61 67 73 2d 70 72 6f concat."^".org-contacts-tags-pro
6c60 70 73 2d 70 72 65 66 69 78 29 20 73 74 72 69 6e 67 29 29 29 0a 20 20 20 20 28 77 68 65 6e 20 63 ps-prefix).string))).....(when.c
6c80 6f 6d 70 6c 65 74 69 6f 6e 2d 70 0a 20 20 20 20 20 20 28 6c 65 74 20 28 28 72 65 73 75 6c 74 0a ompletion-p.......(let.((result.
6ca0 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 61 70 63 6f 6e 63 61 74 0a 20 20 20 20 20 20 20 20 .............(mapconcat.........
6cc0 20 20 20 20 20 20 23 27 69 64 65 6e 74 69 74 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 ......#'identity...............(
6ce0 63 6c 2d 6c 6f 6f 70 20 66 6f 72 20 63 6f 6e 74 61 63 74 20 69 6e 20 28 6f 72 67 2d 63 6f 6e 74 cl-loop.for.contact.in.(org-cont
6d00 61 63 74 73 2d 64 62 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 acts-db)........................
6d20 66 6f 72 20 63 6f 6e 74 61 63 74 2d 6e 61 6d 65 20 3d 20 28 63 61 72 20 63 6f 6e 74 61 63 74 29 for.contact-name.=.(car.contact)
6d40 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 65 6d 61 69 ........................for.emai
6d60 6c 20 3d 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 73 74 72 69 70 2d 6c 69 6e 6b 0a 20 20 20 l.=.(org-contacts-strip-link....
6d80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
6da0 20 28 6f 72 20 28 63 61 72 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 73 70 6c 69 74 2d 70 72 .(or.(car.(org-contacts-split-pr
6dc0 6f 70 65 72 74 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 operty..........................
6de0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 0a 20 20 20 20 20 20 20 .....................(or........
6e00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
6e20 20 20 20 20 20 20 20 20 28 63 64 72 20 28 61 73 73 6f 63 2d 73 74 72 69 6e 67 20 6f 72 67 2d 63 ........(cdr.(assoc-string.org-c
6e40 6f 6e 74 61 63 74 73 2d 65 6d 61 69 6c 2d 70 72 6f 70 65 72 74 79 0a 20 20 20 20 20 20 20 20 20 ontacts-email-property..........
6e60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
6e80 20 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 6c 2d 63 61 64 .........................(cl-cad
6ea0 64 72 20 63 6f 6e 74 61 63 74 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 dr.contact)))...................
6ec0 20 20 20 20 20 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 22 29 ............................."")
6ee0 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ))..............................
6f00 20 20 20 20 20 20 20 20 20 20 20 22 22 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..........."")).................
6f20 20 20 20 20 20 20 20 3b 3b 20 66 6f 72 20 74 61 67 73 20 3d 20 28 63 64 72 20 28 61 73 73 6f 63 .......;;.for.tags.=.(cdr.(assoc
6f40 20 22 54 41 47 53 22 20 28 6e 74 68 20 32 20 63 6f 6e 74 61 63 74 29 29 29 0a 20 20 20 20 20 20 ."TAGS".(nth.2.contact))).......
6f60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 66 6f 72 20 74 61 67 73 2d 6c 69 73 .................;;.for.tags-lis
6f80 74 20 3d 20 28 69 66 20 74 61 67 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 t.=.(if.tags....................
6fa0 20 20 20 20 3b 3b 20 20 20 20 20 20 28 73 70 6c 69 74 2d 73 74 72 69 6e 67 20 28 73 75 62 73 74 ....;;......(split-string.(subst
6fc0 72 69 6e 67 20 28 63 64 72 20 28 61 73 73 6f 63 20 22 54 41 47 53 22 20 28 6e 74 68 20 32 20 63 ring.(cdr.(assoc."TAGS".(nth.2.c
6fe0 6f 6e 74 61 63 74 29 29 29 20 31 20 2d 31 29 20 22 3a 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 ontact))).1.-1).":")............
7000 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 20 20 20 27 28 29 29 0a 20 20 20 20 20 20 20 20 20 ............;;....'())..........
7020 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 6d 61 72 6b 65 72 20 3d 20 28 6e 74 68 20 ..............for.marker.=.(nth.
7040 31 20 63 6f 6e 74 61 63 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 1.contact)......................
7060 20 20 69 66 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 28 6d 61 72 6b 65 ..if.(with-current-buffer.(marke
7080 72 2d 62 75 66 66 65 72 20 6d 61 72 6b 65 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 r-buffer.marker)................
70a0 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e 0a 20 20 20 .............(save-excursion....
70c0 20 20 20 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 67 6f 74 6f ...........................(goto
70e0 2d 63 68 61 72 20 6d 61 72 6b 65 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 -char.marker)...................
7100 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 46 49 58 4d 45 3a 20 41 46 41 49 4b 2c 20 60 6f 72 ............;;.FIXME:.AFAIK,.`or
7120 67 2d 6d 61 6b 65 2d 74 61 67 73 2d 6d 61 74 63 68 65 72 27 20 72 65 74 75 72 6e 73 0a 20 20 20 g-make-tags-matcher'.returns....
7140 20 20 20 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 61 20 ...........................;;.a.
7160 63 6f 6e 73 20 77 68 6f 73 65 20 63 64 72 20 69 73 20 61 20 66 75 6e 63 74 69 6f 6e 2c 20 73 6f cons.whose.cdr.is.a.function,.so
7180 20 77 68 79 20 64 6f 20 77 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .why.do.we......................
71a0 20 20 20 20 20 20 20 20 20 3b 3b 20 70 61 73 73 20 69 74 20 74 6f 20 60 65 76 61 6c 27 3f 0a 20 .........;;.pass.it.to.`eval'?..
71c0 20 20 20 20 20 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 76 .............................(ev
71e0 61 6c 20 28 63 64 72 20 28 6f 72 67 2d 6d 61 6b 65 2d 74 61 67 73 2d 6d 61 74 63 68 65 72 20 28 al.(cdr.(org-make-tags-matcher.(
7200 63 6c 2d 73 75 62 73 65 71 20 73 74 72 69 6e 67 20 31 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 cl-subseq.string.1)))...........
7220 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 29 29 29 0a 20 ..........................t)))..
7240 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6c 65 63 74 20 28 6f ......................collect.(o
7260 72 67 2d 63 6f 6e 74 61 63 74 73 2d 66 6f 72 6d 61 74 2d 65 6d 61 69 6c 20 63 6f 6e 74 61 63 74 rg-contacts-format-email.contact
7280 2d 6e 61 6d 65 20 65 6d 61 69 6c 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 2c 22 29 -name.email))...............",")
72a0 29 29 0a 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 6e 6f 74 20 28 73 74 72 69 6e 67 3d 20 22 )).........(when.(not.(string=."
72c0 22 20 72 65 73 75 6c 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 72 65 73 75 6c 74 29 29 29 29 29 ".result))...........result)))))
72e0 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 72 65 6d 6f 76 65 2d 69 67 6e ..(defun.org-contacts-remove-ign
7300 6f 72 65 64 2d 70 72 6f 70 65 72 74 79 2d 76 61 6c 75 65 73 20 28 69 67 6e 6f 72 65 2d 6c 69 73 ored-property-values.(ignore-lis
7320 74 20 6c 69 73 74 29 0a 20 20 22 52 65 6d 6f 76 65 20 61 6c 6c 20 69 67 6e 6f 72 65 2d 6c 69 73 t.list)..."Remove.all.ignore-lis
7340 74 27 73 20 65 6c 65 6d 65 6e 74 73 20 66 72 6f 6d 20 6c 69 73 74 20 61 6e 64 20 79 6f 75 20 63 t's.elements.from.list.and.you.c
7360 61 6e 20 75 73 65 0a 20 20 20 72 65 67 75 6c 61 72 20 65 78 70 72 65 73 73 69 6f 6e 73 20 69 6e an.use....regular.expressions.in
7380 20 74 68 65 20 69 67 6e 6f 72 65 20 6c 69 73 74 2e 22 0a 20 20 28 63 6c 2d 72 65 6d 6f 76 65 2d .the.ignore.list."...(cl-remove-
73a0 69 66 20 28 6c 61 6d 62 64 61 20 28 65 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 if.(lambda.(el).................
73c0 20 20 28 63 6c 2d 66 69 6e 64 2d 69 66 20 28 6c 61 6d 62 64 61 20 28 78 29 0a 20 20 20 20 20 20 ..(cl-find-if.(lambda.(x).......
73e0 20 20 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 72 69 6e ..........................(strin
7400 67 2d 6d 61 74 63 68 2d 70 20 78 20 65 6c 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 g-match-p.x.el))................
7420 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 67 6e 6f 72 65 2d 6c 69 73 74 29 29 0a 20 20 20 ...............ignore-list))....
7440 20 20 20 20 20 20 20 20 20 20 20 20 20 6c 69 73 74 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d .............list))..(defun.org-
7460 63 6f 6e 74 61 63 74 73 2d 63 6f 6d 70 6c 65 74 65 2d 6e 61 6d 65 20 28 73 74 72 69 6e 67 29 0a contacts-complete-name.(string).
7480 20 20 22 43 6f 6d 70 6c 65 74 65 20 74 65 78 74 20 61 74 20 53 54 41 52 54 20 77 69 74 68 20 61 .."Complete.text.at.START.with.a
74a0 20 75 73 65 72 20 6e 61 6d 65 20 61 6e 64 20 65 6d 61 69 6c 2e 22 0a 20 20 28 6c 65 74 2a 20 28 .user.name.and.email."...(let*.(
74c0 28 63 6f 6d 70 6c 65 74 69 6f 6e 2d 69 67 6e 6f 72 65 2d 63 61 73 65 20 6f 72 67 2d 63 6f 6e 74 (completion-ignore-case.org-cont
74e0 61 63 74 73 2d 63 6f 6d 70 6c 65 74 69 6f 6e 2d 69 67 6e 6f 72 65 2d 63 61 73 65 29 0a 20 20 20 acts-completion-ignore-case)....
7500 20 20 20 20 20 20 28 63 6f 6d 70 6c 65 74 69 6f 6e 2d 6c 69 73 74 0a 20 20 20 20 20 20 20 20 20 ......(completion-list..........
7520 20 28 63 6c 2d 6c 6f 6f 70 20 66 6f 72 20 63 6f 6e 74 61 63 74 20 69 6e 20 28 6f 72 67 2d 63 6f .(cl-loop.for.contact.in.(org-co
7540 6e 74 61 63 74 73 2d 66 69 6c 74 65 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ntacts-filter)..................
7560 20 20 3b 3b 20 54 68 65 20 63 6f 6e 74 61 63 74 20 6e 61 6d 65 20 69 73 20 61 6c 77 61 79 73 20 ..;;.The.contact.name.is.always.
7580 74 68 65 20 63 61 72 20 6f 66 20 74 68 65 20 61 73 73 6f 63 2d 6c 69 73 74 0a 20 20 20 20 20 20 the.car.of.the.assoc-list.......
75a0 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 72 65 74 75 72 6e 65 64 20 62 79 20 60 6f 72 67 .............;;.returned.by.`org
75c0 2d 63 6f 6e 74 61 63 74 73 2d 66 69 6c 74 65 72 27 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 -contacts-filter'...............
75e0 20 20 20 20 20 20 66 6f 72 20 63 6f 6e 74 61 63 74 2d 6e 61 6d 65 20 3d 20 28 63 61 72 20 63 6f ......for.contact-name.=.(car.co
7600 6e 74 61 63 74 29 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 42 75 ntact).....................;;.Bu
7620 69 6c 64 20 74 68 65 20 6c 69 73 74 20 6f 66 20 74 68 65 20 65 6d 61 69 6c 20 61 64 64 72 65 73 ild.the.list.of.the.email.addres
7640 73 65 73 20 77 68 69 63 68 20 68 61 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ses.which.has...................
7660 20 3b 3b 20 62 65 65 6e 20 65 78 70 69 72 65 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .;;.been.expired................
7680 20 20 20 20 66 6f 72 20 69 67 6e 6f 72 65 2d 6c 69 73 74 20 3d 20 28 6f 72 67 2d 63 6f 6e 74 61 ....for.ignore-list.=.(org-conta
76a0 63 74 73 2d 73 70 6c 69 74 2d 70 72 6f 70 65 72 74 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 cts-split-property..............
76c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 20 28 63 64 .........................(or.(cd
76e0 72 20 28 61 73 73 6f 63 2d 73 74 72 69 6e 67 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 69 67 6e r.(assoc-string.org-contacts-ign
7700 6f 72 65 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 20 20 20 20 ore-property....................
7720 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
7740 20 20 20 20 20 20 20 20 20 20 28 6e 74 68 20 32 20 63 6f 6e 74 61 63 74 29 29 29 20 22 22 29 29 ..........(nth.2.contact))).""))
7760 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 42 75 69 6c 64 20 74 68 65 ....................;;.Build.the
7780 20 6c 69 73 74 20 6f 66 20 74 68 65 20 75 73 65 72 20 65 6d 61 69 6c 20 61 64 64 72 65 73 73 65 .list.of.the.user.email.addresse
77a0 73 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 65 6d 61 69 6c 2d s.....................for.email-
77c0 6c 69 73 74 20 3d 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 72 65 6d 6f 76 65 2d 69 67 6e 6f list.=.(org-contacts-remove-igno
77e0 72 65 64 2d 70 72 6f 70 65 72 74 79 2d 76 61 6c 75 65 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 red-property-values.............
7800 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 67 6e 6f 72 65 2d .........................ignore-
7820 6c 69 73 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 list............................
7840 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 73 70 6c 69 74 2d 70 72 ..........(org-contacts-split-pr
7860 6f 70 65 72 74 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 operty..........................
7880 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 20 28 63 64 72 20 28 61 73 73 6f 63 2d 73 74 72 .............(or.(cdr.(assoc-str
78a0 69 6e 67 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 65 6d 61 69 6c 2d 70 72 6f 70 65 72 74 79 0a ing.org-contacts-email-property.
78c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
78e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e 74 .............................(nt
7900 68 20 32 20 63 6f 6e 74 61 63 74 29 29 29 20 22 22 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 h.2.contact)))."")))............
7920 20 20 20 20 20 20 20 20 3b 3b 20 49 66 20 74 68 65 20 75 73 65 72 20 68 61 73 20 65 6d 61 69 6c ........;;.If.the.user.has.email
7940 20 61 64 64 72 65 73 73 65 73 e2 80 a6 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .addresses......................
7960 20 69 66 20 65 6d 61 69 6c 2d 6c 69 73 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .if.email-list..................
7980 20 20 3b 3b 20 e2 80 a6 20 61 70 70 65 6e 64 20 61 20 6c 69 73 74 20 6f 66 20 55 53 45 52 20 3c ..;;.....append.a.list.of.USER.<
79a0 45 4d 41 49 4c 3e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 63 6f 6e 63 EMAIL>.....................nconc
79c0 20 28 63 6c 2d 6c 6f 6f 70 20 66 6f 72 20 65 6d 61 69 6c 20 69 6e 20 65 6d 61 69 6c 2d 6c 69 73 .(cl-loop.for.email.in.email-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 20 20 20 20 20 20 20 20 20 t...............................
7a00 20 20 20 20 63 6f 6c 6c 65 63 74 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 66 6f 72 6d 61 74 ....collect.(org-contacts-format
7a20 2d 65 6d 61 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 20 -email..........................
7a40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6e 74 61 63 74 2d 6e 61 6d 65 20 28 ..................contact-name.(
7a60 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 73 74 72 69 70 2d 6c 69 6e 6b 20 65 6d 61 69 6c 29 29 29 org-contacts-strip-link.email)))
7a80 29 29 0a 20 20 20 20 20 20 20 20 20 28 63 6f 6d 70 6c 65 74 69 6f 6e 2d 6c 69 73 74 20 28 6f 72 ))..........(completion-list.(or
7aa0 67 2d 63 6f 6e 74 61 63 74 73 2d 61 6c 6c 2d 63 6f 6d 70 6c 65 74 69 6f 6e 73 2d 70 72 65 66 69 g-contacts-all-completions-prefi
7ac0 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 73 74 72 x............................str
7ae0 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 20 20 20 20 20 28 ing............................(
7b00 6f 72 67 2d 75 6e 69 71 75 69 66 79 20 63 6f 6d 70 6c 65 74 69 6f 6e 2d 6c 69 73 74 29 29 29 29 org-uniquify.completion-list))))
7b20 0a 20 20 20 20 28 77 68 65 6e 20 63 6f 6d 70 6c 65 74 69 6f 6e 2d 6c 69 73 74 0a 20 20 20 20 20 .....(when.completion-list......
7b40 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 6d 61 6b 65 2d 63 6f 6c 6c 65 63 74 69 6f 6e 2d 70 .(org-contacts-make-collection-p
7b60 72 65 66 69 78 20 63 6f 6d 70 6c 65 74 69 6f 6e 2d 6c 69 73 74 29 29 29 29 0a 0a 28 64 65 66 75 refix.completion-list))))..(defu
7b80 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 6d 65 73 73 61 67 65 2d 63 6f 6d 70 6c 65 74 65 2d n.org-contacts-message-complete-
7ba0 66 75 6e 63 74 69 6f 6e 20 28 29 0a 20 20 22 46 75 6e 63 74 69 6f 6e 20 75 73 65 64 20 69 6e 20 function.()..."Function.used.in.
7bc0 60 63 6f 6d 70 6c 65 74 69 6f 6e 2d 61 74 2d 70 6f 69 6e 74 2d 66 75 6e 63 74 69 6f 6e 73 27 20 `completion-at-point-functions'.
7be0 69 6e 20 60 6d 65 73 73 61 67 65 2d 6d 6f 64 65 27 2e 22 0a 20 20 28 6c 65 74 20 28 28 6d 61 69 in.`message-mode'."...(let.((mai
7c00 6c 2d 61 62 62 72 65 76 2d 6d 6f 64 65 2d 72 65 67 65 78 70 0a 20 20 20 20 20 20 20 20 20 22 5e l-abbrev-mode-regexp.........."^
7c20 5c 5c 28 52 65 73 65 6e 74 2d 54 6f 5c 5c 7c 54 6f 5c 5c 7c 42 3f 43 63 5c 5c 7c 52 65 70 6c 79 \\(Resent-To\\|To\\|B?Cc\\|Reply
7c40 2d 54 6f 5c 5c 7c 46 72 6f 6d 5c 5c 7c 4d 61 69 6c 2d 46 6f 6c 6c 6f 77 75 70 2d 54 6f 5c 5c 7c -To\\|From\\|Mail-Followup-To\\|
7c60 4d 61 69 6c 2d 43 6f 70 69 65 73 2d 54 6f 5c 5c 7c 44 69 73 70 6f 73 69 74 69 6f 6e 2d 4e 6f 74 Mail-Copies-To\\|Disposition-Not
7c80 69 66 69 63 61 74 69 6f 6e 2d 54 6f 5c 5c 7c 52 65 74 75 72 6e 2d 52 65 63 65 69 70 74 2d 54 6f ification-To\\|Return-Receipt-To
7ca0 5c 5c 29 3a 22 29 29 0a 20 20 20 20 28 77 68 65 6e 20 28 6d 61 69 6c 2d 61 62 62 72 65 76 2d 69 \\):")).....(when.(mail-abbrev-i
7cc0 6e 2d 65 78 70 61 6e 73 69 6f 6e 2d 68 65 61 64 65 72 2d 70 29 0a 20 20 20 20 20 20 28 6c 65 74 n-expansion-header-p).......(let
7ce0 0a 20 20 20 20 20 20 20 20 20 20 28 28 62 65 67 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 73 61 ...........((beg.............(sa
7d00 76 65 2d 65 78 63 75 72 73 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 72 65 2d 73 ve-excursion...............(re-s
7d20 65 61 72 63 68 2d 62 61 63 6b 77 61 72 64 20 22 5c 5c 28 5c 5c 60 5c 5c 7c 5b 5c 6e 3a 2c 5d 5c earch-backward."\\(\\`\\|[\n:,]\
7d40 5c 29 5b 20 5c 74 5d 2a 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 67 6f 74 6f 2d 63 \)[.\t]*")...............(goto-c
7d60 68 61 72 20 28 6d 61 74 63 68 2d 65 6e 64 20 30 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 har.(match-end.0))..............
7d80 20 28 70 6f 69 6e 74 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 65 6e 64 20 28 70 6f 69 6e .(point)))............(end.(poin
7da0 74 29 29 29 0a 20 20 20 20 20 20 20 20 28 6c 69 73 74 20 62 65 67 0a 20 20 20 20 20 20 20 20 20 t))).........(list.beg..........
7dc0 20 20 20 20 20 65 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6d 70 6c 65 74 69 .....end...............(completi
7de0 6f 6e 2d 74 61 62 6c 65 2d 64 79 6e 61 6d 69 63 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 on-table-dynamic................
7e00 28 6c 61 6d 62 64 61 20 28 73 74 72 69 6e 67 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 (lambda.(string)................
7e20 20 20 28 72 75 6e 2d 68 6f 6f 6b 2d 77 69 74 68 2d 61 72 67 73 2d 75 6e 74 69 6c 2d 73 75 63 63 ..(run-hook-with-args-until-succ
7e40 65 73 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 6f 72 67 2d 63 6f 6e 74 61 ess...................'org-conta
7e60 63 74 73 2d 63 6f 6d 70 6c 65 74 65 2d 66 75 6e 63 74 69 6f 6e 73 20 73 74 72 69 6e 67 29 29 29 cts-complete-functions.string)))
7e80 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 6f 72 67 2d 63 )))))..(defun.org-contacts-org-c
7ea0 6f 6d 70 6c 65 74 65 2d 2d 61 6e 6e 6f 74 61 74 69 6f 6e 2d 66 75 6e 63 74 69 6f 6e 20 28 63 61 omplete--annotation-function.(ca
7ec0 6e 64 69 64 61 74 65 29 0a 20 20 22 52 65 74 75 72 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 20 ndidate)..."Return.org-contacts.
7ee0 74 61 67 73 20 6f 66 20 63 6f 6e 74 61 63 74 20 63 61 6e 64 69 64 61 74 65 2e 22 0a 20 20 3b 3b tags.of.contact.candidate."...;;
7f00 20 54 4f 44 4f 0a 20 20 22 54 61 67 73 3a 20 22 20 3b 3b 20 46 49 58 4d 45 3a 20 49 67 6e 6f 72 .TODO..."Tags:.".;;.FIXME:.Ignor
7f20 65 64 21 0a 20 20 28 69 67 6e 6f 72 65 20 63 61 6e 64 69 64 61 74 65 29 29 0a 0a 28 64 65 66 75 ed!...(ignore.candidate))..(defu
7f40 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 6f 72 67 2d 63 6f 6d 70 6c 65 74 65 2d 2d 64 6f 63 n.org-contacts-org-complete--doc
7f60 2d 66 75 6e 63 74 69 6f 6e 20 28 63 61 6e 64 69 64 61 74 65 29 0a 20 20 22 52 65 74 75 72 6e 20 -function.(candidate)..."Return.
7f80 6f 72 67 2d 63 6f 6e 74 61 63 74 73 20 63 6f 6e 74 65 6e 74 20 6f 66 20 63 6f 6e 74 61 63 74 20 org-contacts.content.of.contact.
7fa0 63 61 6e 64 69 64 61 74 65 2e 22 0a 20 20 28 6c 65 74 2a 20 28 28 63 61 6e 64 69 64 61 74 65 20 candidate."...(let*.((candidate.
7fc0 28 73 75 62 73 74 72 69 6e 67 2d 6e 6f 2d 70 72 6f 70 65 72 74 69 65 73 20 63 61 6e 64 69 64 61 (substring-no-properties.candida
7fe0 74 65 20 31 20 6e 69 6c 29 29 0a 20 20 20 20 20 20 20 20 20 28 63 6f 6e 74 61 63 74 20 28 73 65 te.1.nil))..........(contact.(se
8000 71 2d 66 69 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 q-find....................(lambd
8020 61 20 28 63 6f 6e 74 61 63 74 29 20 28 73 74 72 69 6e 67 2d 65 71 75 61 6c 20 28 70 6c 69 73 74 a.(contact).(string-equal.(plist
8040 2d 67 65 74 20 63 6f 6e 74 61 63 74 20 3a 6e 61 6d 65 29 20 63 61 6e 64 69 64 61 74 65 29 29 0a -get.contact.:name).candidate)).
8060 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 ...................(org-contacts
8080 2d 2d 61 6c 6c 2d 63 6f 6e 74 61 63 74 73 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 6e 61 6d 65 --all-contacts)))..........(name
80a0 20 28 70 6c 69 73 74 2d 67 65 74 20 63 6f 6e 74 61 63 74 20 3a 6e 61 6d 65 29 29 0a 20 20 20 20 .(plist-get.contact.:name)).....
80c0 20 20 20 20 20 28 66 69 6c 65 20 28 70 6c 69 73 74 2d 67 65 74 20 63 6f 6e 74 61 63 74 20 3a 66 .....(file.(plist-get.contact.:f
80e0 69 6c 65 29 29 0a 20 20 20 20 20 20 20 20 20 28 70 6f 73 69 74 69 6f 6e 20 28 70 6c 69 73 74 2d ile))..........(position.(plist-
8100 67 65 74 20 63 6f 6e 74 61 63 74 20 3a 70 6f 73 69 74 69 6f 6e 29 29 0a 20 20 20 20 20 20 20 20 get.contact.:position)).........
8120 20 28 64 6f 63 2d 62 75 66 66 65 72 20 28 67 65 74 2d 62 75 66 66 65 72 2d 63 72 65 61 74 65 20 .(doc-buffer.(get-buffer-create.
8140 22 20 2a 6f 72 67 2d 63 6f 6e 74 61 63 74 2a 22 29 29 0a 20 20 20 20 20 20 20 20 20 28 6f 72 67 ".*org-contact*"))..........(org
8160 2d 63 6f 6e 74 61 63 74 2d 62 75 66 66 65 72 20 28 67 65 74 2d 62 75 66 66 65 72 20 28 66 69 6e -contact-buffer.(get-buffer.(fin
8180 64 2d 66 69 6c 65 2d 6e 6f 73 65 6c 65 63 74 20 66 69 6c 65 29 29 29 0a 20 20 20 20 20 20 20 20 d-file-noselect.file))).........
81a0 20 3b 3b 20 67 65 74 20 6f 72 67 2d 63 6f 6e 74 61 63 74 20 68 65 61 64 6c 69 6e 65 20 61 6e 64 .;;.get.org-contact.headline.and
81c0 20 70 72 6f 70 65 72 74 79 20 64 72 61 77 65 72 2e 0a 20 20 20 20 20 20 20 20 20 28 63 6f 6e 74 .property.drawer...........(cont
81e0 65 6e 74 73 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 6f 72 67 2d 63 6f ents.(with-current-buffer.org-co
8200 6e 74 61 63 74 2d 62 75 66 66 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ntact-buffer....................
8220 20 20 28 77 68 65 6e 20 28 64 65 72 69 76 65 64 2d 6d 6f 64 65 2d 70 20 27 6f 72 67 2d 6d 6f 64 ..(when.(derived-mode-p.'org-mod
8240 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 73 61 76 65 2d e)........................(save-
8260 65 78 63 75 72 73 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 excursion.......................
8280 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 70 6f 73 69 74 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 ...(goto-char.position).........
82a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 64 20 28 28 69 67 6e 6f 72 65 2d .................(cond.((ignore-
82c0 65 72 72 6f 72 73 20 28 6f 72 67 2d 65 64 69 74 2d 73 72 63 2d 63 6f 64 65 29 29 0a 20 20 20 20 errors.(org-edit-src-code)).....
82e0 20 20 20 20 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 64 65 6c ............................(del
8300 65 74 65 2d 6f 74 68 65 72 2d 77 69 6e 64 6f 77 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 ete-other-windows)).............
8320 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 6f 72 67 2d 61 74 2d 62 6c 6f 63 ...................((org-at-bloc
8340 6b 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 k-p)............................
8360 20 20 20 20 20 28 6f 72 67 2d 6e 61 72 72 6f 77 2d 74 6f 2d 62 6c 6f 63 6b 29 29 0a 20 20 20 20 .....(org-narrow-to-block)).....
8380 20 20 20 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 74 20 28 6f ...........................(t.(o
83a0 72 67 2d 6e 61 72 72 6f 77 2d 74 6f 2d 73 75 62 74 72 65 65 29 29 29 0a 20 20 20 20 20 20 20 20 rg-narrow-to-subtree))).........
83c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 63 6f 6e 74 65 6e 74 20 .................(let.((content.
83e0 28 62 75 66 66 65 72 2d 73 75 62 73 74 72 69 6e 67 20 28 70 6f 69 6e 74 2d 6d 69 6e 29 20 28 70 (buffer-substring.(point-min).(p
8400 6f 69 6e 74 2d 6d 61 78 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 oint-max))))....................
8420 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 62 75 66 66 65 72 2d 6e 61 72 72 6f 77 65 64 2d 70 ........(when.(buffer-narrowed-p
8440 29 20 28 77 69 64 65 6e 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ).(widen))......................
8460 20 20 20 20 20 20 63 6f 6e 74 65 6e 74 29 29 29 29 29 29 0a 20 20 20 20 28 69 67 6e 6f 72 65 20 ......content)))))).....(ignore.
8480 6e 61 6d 65 29 0a 20 20 20 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 64 name).....(with-current-buffer.d
84a0 6f 63 2d 62 75 66 66 65 72 0a 20 20 20 20 20 20 28 72 65 61 64 2d 6f 6e 6c 79 2d 6d 6f 64 65 20 oc-buffer.......(read-only-mode.
84c0 31 29 0a 20 20 20 20 20 20 28 6c 65 74 20 28 28 69 6e 68 69 62 69 74 2d 72 65 61 64 2d 6f 6e 6c 1).......(let.((inhibit-read-onl
84e0 79 20 74 29 29 0a 20 20 20 20 20 20 20 20 28 65 72 61 73 65 2d 62 75 66 66 65 72 29 0a 20 20 20 y.t)).........(erase-buffer)....
8500 20 20 20 20 20 28 69 6e 73 65 72 74 20 63 6f 6e 74 65 6e 74 73 29 0a 20 20 20 20 20 20 20 20 28 .....(insert.contents).........(
8520 6f 72 67 2d 6d 6f 64 65 29 0a 20 20 20 20 20 20 20 20 28 6f 72 67 2d 73 68 6f 77 2d 61 6c 6c 29 org-mode).........(org-show-all)
8540 0a 20 20 20 20 20 20 20 20 28 66 6f 6e 74 2d 6c 6f 63 6b 2d 65 6e 73 75 72 65 29 29 29 0a 20 20 .........(font-lock-ensure)))...
8560 20 20 64 6f 63 2d 62 75 66 66 65 72 29 29 0a 0a 3b 3b 3b 20 64 69 73 70 6c 61 79 20 63 6f 6d 70 ..doc-buffer))..;;;.display.comp
8580 61 6e 79 2d 6d 6f 64 65 20 64 6f 63 20 62 75 66 66 65 72 20 62 65 6c 6c 6f 77 20 63 75 72 72 65 any-mode.doc.buffer.bellow.curre
85a0 6e 74 20 77 69 6e 64 6f 77 2e 0a 28 61 64 64 2d 74 6f 2d 6c 69 73 74 20 27 64 69 73 70 6c 61 79 nt.window..(add-to-list.'display
85c0 2d 62 75 66 66 65 72 2d 61 6c 69 73 74 20 27 28 22 5e 20 5c 5c 2a 6f 72 67 2d 63 6f 6e 74 61 63 -buffer-alist.'("^.\\*org-contac
85e0 74 5c 5c 2a 22 20 2e 20 28 64 69 73 70 6c 61 79 2d 62 75 66 66 65 72 2d 62 65 6c 6f 77 2d 73 65 t\\*"...(display-buffer-below-se
8600 6c 65 63 74 65 64 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 6f lected)))..(defun.org-contacts-o
8620 72 67 2d 63 6f 6d 70 6c 65 74 65 2d 2d 6c 6f 63 61 74 69 6f 6e 2d 66 75 6e 63 74 69 6f 6e 20 28 rg-complete--location-function.(
8640 63 61 6e 64 69 64 61 74 65 29 0a 20 20 22 52 65 74 75 72 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 candidate)..."Return.org-contact
8660 73 20 6c 6f 63 61 74 69 6f 6e 20 6f 66 20 63 6f 6e 74 61 63 74 20 63 61 6e 64 69 64 61 74 65 2e s.location.of.contact.candidate.
8680 22 0a 20 20 28 6c 65 74 2a 20 28 28 63 61 6e 64 69 64 61 74 65 20 28 73 75 62 73 74 72 69 6e 67 "...(let*.((candidate.(substring
86a0 2d 6e 6f 2d 70 72 6f 70 65 72 74 69 65 73 20 63 61 6e 64 69 64 61 74 65 20 31 20 6e 69 6c 29 29 -no-properties.candidate.1.nil))
86c0 0a 20 20 20 20 20 20 20 20 20 28 63 6f 6e 74 61 63 74 20 28 73 65 71 2d 66 69 6e 64 0a 20 20 20 ..........(contact.(seq-find....
86e0 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 63 6f 6e 74 61 63 74 ................(lambda.(contact
8700 29 20 28 73 74 72 69 6e 67 2d 65 71 75 61 6c 20 28 70 6c 69 73 74 2d 67 65 74 20 63 6f 6e 74 61 ).(string-equal.(plist-get.conta
8720 63 74 20 3a 6e 61 6d 65 29 20 63 61 6e 64 69 64 61 74 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 ct.:name).candidate))...........
8740 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 2d 61 6c 6c 2d 63 6f 6e 74 .........(org-contacts--all-cont
8760 61 63 74 73 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 6e 61 6d 65 20 28 70 6c 69 73 74 2d 67 65 acts)))..........(name.(plist-ge
8780 74 20 63 6f 6e 74 61 63 74 20 3a 6e 61 6d 65 29 29 0a 20 20 20 20 20 20 20 20 20 28 66 69 6c 65 t.contact.:name))..........(file
87a0 20 28 70 6c 69 73 74 2d 67 65 74 20 63 6f 6e 74 61 63 74 20 3a 66 69 6c 65 29 29 0a 20 20 20 20 .(plist-get.contact.:file)).....
87c0 20 20 20 20 20 28 70 6f 73 69 74 69 6f 6e 20 28 70 6c 69 73 74 2d 67 65 74 20 63 6f 6e 74 61 63 .....(position.(plist-get.contac
87e0 74 20 3a 70 6f 73 69 74 69 6f 6e 29 29 29 0a 20 20 20 20 28 69 67 6e 6f 72 65 20 6e 61 6d 65 29 t.:position))).....(ignore.name)
8800 0a 20 20 20 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 28 66 69 6e 64 2d .....(with-current-buffer.(find-
8820 66 69 6c 65 2d 6e 6f 73 65 6c 65 63 74 20 66 69 6c 65 29 0a 20 20 20 20 20 20 28 67 6f 74 6f 2d file-noselect.file).......(goto-
8840 63 68 61 72 20 70 6f 73 69 74 69 6f 6e 29 0a 20 20 20 20 20 20 28 63 6f 6e 73 20 28 63 75 72 72 char.position).......(cons.(curr
8860 65 6e 74 2d 62 75 66 66 65 72 29 20 70 6f 73 69 74 69 6f 6e 29 29 29 29 0a 0a 3b 3b 3b 23 23 23 ent-buffer).position))))..;;;###
8880 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 6f 72 67 autoload.(defun.org-contacts-org
88a0 2d 63 6f 6d 70 6c 65 74 65 2d 66 75 6e 63 74 69 6f 6e 20 28 29 0a 20 20 22 63 6f 6d 70 6c 65 74 -complete-function.()..."complet
88c0 69 6f 6e 2d 61 74 2d 70 6f 69 6e 74 20 66 75 6e 63 74 69 6f 6e 20 74 6f 20 63 6f 6d 70 6c 65 74 ion-at-point.function.to.complet
88e0 65 20 40 6e 61 6d 65 20 69 6e 20 60 6f 72 67 2d 6d 6f 64 65 27 2e 0a 55 73 61 67 65 3a 20 28 61 e.@name.in.`org-mode'..Usage:.(a
8900 64 64 2d 68 6f 6f 6b 20 5c 5c 3d 27 63 6f 6d 70 6c 65 74 69 6f 6e 2d 61 74 2d 70 6f 69 6e 74 2d dd-hook.\\='completion-at-point-
8920 66 75 6e 63 74 69 6f 6e 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 5c 5c 3d 27 functions..................#\\='
8940 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 6f 72 67 2d 63 6f 6d 70 6c 65 74 65 2d 66 75 6e 63 74 69 org-contacts-org-complete-functi
8960 6f 6e 20 6e 69 6c 20 5c 5c 3d 27 6c 6f 63 61 6c 29 22 0a 20 20 28 77 68 65 6e 2d 6c 65 74 2a 20 on.nil.\\='local)"...(when-let*.
8980 28 28 65 6e 64 20 28 70 6f 69 6e 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 62 65 ((end.(point))...............(be
89a0 67 69 6e 20 28 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e 20 28 73 6b 69 70 2d 63 68 61 72 73 2d gin.(save-excursion.(skip-chars-
89c0 62 61 63 6b 77 61 72 64 20 22 5b 3a 61 6c 6e 75 6d 3a 5d 40 22 29 20 28 70 6f 69 6e 74 29 29 29 backward."[:alnum:]@").(point)))
89e0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 79 6d 62 6f 6c 20 28 62 75 66 66 65 72 2d 73 ...............(symbol.(buffer-s
8a00 75 62 73 74 72 69 6e 67 2d 6e 6f 2d 70 72 6f 70 65 72 74 69 65 73 20 62 65 67 69 6e 20 65 6e 64 ubstring-no-properties.begin.end
8a20 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 70 ))...............(org-contacts-p
8a40 72 65 66 69 78 2d 70 20 28 73 74 72 69 6e 67 2d 70 72 65 66 69 78 2d 70 20 22 40 22 20 73 79 6d refix-p.(string-prefix-p."@".sym
8a60 62 6f 6c 29 29 29 0a 20 20 20 20 28 77 68 65 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 70 72 bol))).....(when.org-contacts-pr
8a80 65 66 69 78 2d 70 0a 20 20 20 20 20 20 28 6c 69 73 74 20 62 65 67 69 6e 0a 20 20 20 20 20 20 20 efix-p.......(list.begin........
8aa0 20 20 20 20 20 65 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6d 70 6c 65 74 69 6f 6e .....end.............(completion
8ac0 2d 74 61 62 6c 65 2d 64 79 6e 61 6d 69 63 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d -table-dynamic..............(lam
8ae0 62 64 61 20 28 5f 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 61 70 63 61 72 0a 20 bda.(_)................(mapcar..
8b00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 63 6f 6e 74 61 63 74 29 ...............(lambda.(contact)
8b20 20 28 63 6f 6e 63 61 74 20 22 40 22 20 28 70 6c 69 73 74 2d 67 65 74 20 63 6f 6e 74 61 63 74 20 .(concat."@".(plist-get.contact.
8b40 3a 6e 61 6d 65 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 63 6f :name))).................(org-co
8b60 6e 74 61 63 74 73 2d 2d 61 6c 6c 2d 63 6f 6e 74 61 63 74 73 29 29 29 29 0a 0a 20 20 20 20 20 20 ntacts--all-contacts))))........
8b80 20 20 20 20 20 20 3a 70 72 65 64 69 63 61 74 65 20 27 73 74 72 69 6e 67 70 0a 20 20 20 20 20 20 ......:predicate.'stringp.......
8ba0 20 20 20 20 20 20 3a 65 78 63 6c 75 73 69 76 65 20 27 6e 6f 0a 20 20 20 20 20 20 20 20 20 20 20 ......:exclusive.'no............
8bc0 20 3b 3b 20 70 72 6f 70 65 72 74 69 65 73 20 63 68 65 63 6b 20 6f 75 74 20 60 63 6f 6d 70 6c 65 .;;.properties.check.out.`comple
8be0 74 69 6f 6e 2d 65 78 74 72 61 2d 70 72 6f 70 65 72 74 69 65 73 27 0a 20 20 20 20 20 20 20 20 20 tion-extra-properties'..........
8c00 20 20 20 3a 61 6e 6e 6f 74 61 74 69 6f 6e 2d 66 75 6e 63 74 69 6f 6e 20 23 27 6f 72 67 2d 63 6f ...:annotation-function.#'org-co
8c20 6e 74 61 63 74 73 2d 6f 72 67 2d 63 6f 6d 70 6c 65 74 65 2d 2d 61 6e 6e 6f 74 61 74 69 6f 6e 2d ntacts-org-complete--annotation-
8c40 66 75 6e 63 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 3a 65 78 69 74 2d 66 75 function.............;;.:exit-fu
8c60 6e 63 74 69 6f 6e 20 3b 20 54 4f 44 4f 20 63 68 61 6e 67 65 20 63 6f 6d 70 6c 65 74 69 6f 6e 20 nction.;.TODO.change.completion.
8c80 63 61 6e 64 69 64 61 74 65 20 69 6e 73 65 72 74 65 64 20 63 6f 6e 74 61 63 74 20 6e 61 6d 65 20 candidate.inserted.contact.name.
8ca0 69 6e 74 6f 20 6f 72 67 2d 63 6f 6e 74 61 63 74 20 6c 69 6e 6b 3f 3f 0a 0a 20 20 20 20 20 20 20 into.org-contact.link??.........
8cc0 20 20 20 20 20 3a 63 6f 6d 70 61 6e 79 2d 64 6f 63 73 69 67 20 23 27 69 64 65 6e 74 69 74 79 20 .....:company-docsig.#'identity.
8ce0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
8d00 20 20 20 3b 20 6d 65 74 61 64 61 74 61 0a 20 20 20 20 20 20 20 20 20 20 20 20 3a 63 6f 6d 70 61 ...;.metadata.............:compa
8d20 6e 79 2d 64 6f 63 2d 62 75 66 66 65 72 20 23 27 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 6f 72 67 ny-doc-buffer.#'org-contacts-org
8d40 2d 63 6f 6d 70 6c 65 74 65 2d 2d 64 6f 63 2d 66 75 6e 63 74 69 6f 6e 20 3b 20 64 6f 63 20 70 6f -complete--doc-function.;.doc.po
8d60 70 75 70 0a 20 20 20 20 20 20 20 20 20 20 20 20 3a 63 6f 6d 70 61 6e 79 2d 6c 6f 63 61 74 69 6f pup.............:company-locatio
8d80 6e 20 23 27 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 6f 72 67 2d 63 6f 6d 70 6c 65 74 65 2d 2d 6c n.#'org-contacts-org-complete--l
8da0 6f 63 61 74 69 6f 6e 2d 66 75 6e 63 74 69 6f 6e 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 ocation-function))))..(defun.org
8dc0 2d 63 6f 6e 74 61 63 74 73 2d 67 6e 75 73 2d 67 65 74 2d 6e 61 6d 65 2d 65 6d 61 69 6c 20 28 29 -contacts-gnus-get-name-email.()
8de0 0a 20 20 22 47 65 74 20 6e 61 6d 65 20 61 6e 64 20 65 6d 61 69 6c 20 61 64 64 72 65 73 73 20 66 ..."Get.name.and.email.address.f
8e00 72 6f 6d 20 47 6e 75 73 20 6d 65 73 73 61 67 65 2e 22 0a 20 20 28 69 66 20 28 67 6e 75 73 2d 61 rom.Gnus.message."...(if.(gnus-a
8e20 6c 69 76 65 2d 70 29 0a 20 20 20 20 20 20 28 67 6e 75 73 2d 77 69 74 68 2d 61 72 74 69 63 6c 65 live-p).......(gnus-with-article
8e40 2d 68 65 61 64 65 72 73 0a 20 20 20 20 20 20 20 20 28 6d 61 69 6c 2d 65 78 74 72 61 63 74 2d 61 -headers.........(mail-extract-a
8e60 64 64 72 65 73 73 2d 63 6f 6d 70 6f 6e 65 6e 74 73 0a 20 20 20 20 20 20 20 20 20 28 6f 72 20 28 ddress-components..........(or.(
8e80 6d 61 69 6c 2d 66 65 74 63 68 2d 66 69 65 6c 64 20 22 46 72 6f 6d 22 29 20 22 22 29 29 29 29 29 mail-fetch-field."From")."")))))
8ea0 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 67 6e 75 73 2d 61 72 74 69 63 ..(defun.org-contacts-gnus-artic
8ec0 6c 65 2d 66 72 6f 6d 2d 67 65 74 2d 6d 61 72 6b 65 72 20 28 29 0a 20 20 22 52 65 74 75 72 6e 20 le-from-get-marker.()..."Return.
8ee0 61 20 6d 61 72 6b 65 72 20 66 6f 72 20 61 20 63 6f 6e 74 61 63 74 20 62 61 73 65 64 20 6f 6e 20 a.marker.for.a.contact.based.on.
8f00 46 72 6f 6d 2e 22 0a 20 20 28 6c 65 74 2a 20 28 28 61 64 64 72 65 73 73 20 28 6f 72 67 2d 63 6f From."...(let*.((address.(org-co
8f20 6e 74 61 63 74 73 2d 67 6e 75 73 2d 67 65 74 2d 6e 61 6d 65 2d 65 6d 61 69 6c 29 29 0a 20 20 20 ntacts-gnus-get-name-email))....
8f40 20 20 20 20 20 20 28 6e 61 6d 65 20 28 63 61 72 20 61 64 64 72 65 73 73 29 29 0a 20 20 20 20 20 ......(name.(car.address))......
8f60 20 20 20 20 28 65 6d 61 69 6c 20 28 63 61 64 72 20 61 64 64 72 65 73 73 29 29 29 0a 20 20 20 20 ....(email.(cadr.address))).....
8f80 28 63 6c 2d 63 61 64 61 72 20 28 6f 72 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 66 69 6c 74 (cl-cadar.(or.(org-contacts-filt
8fa0 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 69 6c 0a 20 20 20 20 20 20 er....................nil.......
8fc0 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 69 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .............nil................
8fe0 20 20 20 20 28 63 6f 6e 73 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 65 6d 61 69 6c 2d 70 72 6f ....(cons.org-contacts-email-pro
9000 70 65 72 74 79 20 28 63 6f 6e 63 61 74 20 22 5c 5c 62 22 20 28 72 65 67 65 78 70 2d 71 75 6f 74 perty.(concat."\\b".(regexp-quot
9020 65 20 65 6d 61 69 6c 29 20 22 5c 5c 62 22 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 e.email)."\\b")))...............
9040 20 20 20 20 28 77 68 65 6e 20 6e 61 6d 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ....(when.name..................
9060 20 20 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 66 69 6c 74 65 72 0a 20 20 20 20 20 20 20 20 ...(org-contacts-filter.........
9080 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 63 61 74 20 22 5e 22 20 6e 61 6d 65 20 22 24 .............(concat."^".name."$
90a0 22 29 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 67 6e ")))))))..(defun.org-contacts-gn
90c0 75 73 2d 61 72 74 69 63 6c 65 2d 66 72 6f 6d 2d 67 6f 74 6f 20 28 29 0a 20 20 22 47 6f 20 74 6f us-article-from-goto.()..."Go.to
90e0 20 63 6f 6e 74 61 63 74 20 69 6e 20 74 68 65 20 46 72 6f 6d 20 61 64 64 72 65 73 73 20 6f 66 20 .contact.in.the.From.address.of.
9100 63 75 72 72 65 6e 74 20 47 6e 75 73 20 6d 65 73 73 61 67 65 2e 22 0a 20 20 28 69 6e 74 65 72 61 current.Gnus.message."...(intera
9120 63 74 69 76 65 29 0a 20 20 28 6c 65 74 20 28 28 6d 61 72 6b 65 72 20 28 6f 72 67 2d 63 6f 6e 74 ctive)...(let.((marker.(org-cont
9140 61 63 74 73 2d 67 6e 75 73 2d 61 72 74 69 63 6c 65 2d 66 72 6f 6d 2d 67 65 74 2d 6d 61 72 6b 65 acts-gnus-article-from-get-marke
9160 72 29 29 29 0a 20 20 20 20 28 77 68 65 6e 20 6d 61 72 6b 65 72 0a 20 20 20 20 20 20 28 73 77 69 r))).....(when.marker.......(swi
9180 74 63 68 2d 74 6f 2d 62 75 66 66 65 72 2d 6f 74 68 65 72 2d 77 69 6e 64 6f 77 20 28 6d 61 72 6b tch-to-buffer-other-window.(mark
91a0 65 72 2d 62 75 66 66 65 72 20 6d 61 72 6b 65 72 29 29 0a 20 20 20 20 20 20 28 67 6f 74 6f 2d 63 er-buffer.marker)).......(goto-c
91c0 68 61 72 20 6d 61 72 6b 65 72 29 0a 20 20 20 20 20 20 28 77 68 65 6e 20 28 65 71 20 6d 61 6a 6f har.marker).......(when.(eq.majo
91e0 72 2d 6d 6f 64 65 20 27 6f 72 67 2d 6d 6f 64 65 29 0a 20 20 20 20 20 20 20 20 28 69 66 20 28 66 r-mode.'org-mode).........(if.(f
9200 62 6f 75 6e 64 70 20 27 6f 72 67 2d 66 6f 6c 64 2d 73 68 6f 77 2d 63 6f 6e 74 65 78 74 29 0a 20 boundp.'org-fold-show-context)..
9220 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 66 6f 6c 64 2d 73 68 6f 77 2d 63 6f 6e 74 65 78 ...........(org-fold-show-contex
9240 74 20 27 61 67 65 6e 64 61 29 0a 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 73 68 6f 77 2d 63 t.'agenda)...........(org-show-c
9260 6f 6e 74 65 78 74 20 27 61 67 65 6e 64 61 29 29 29 29 29 29 0a 0a 28 77 69 74 68 2d 6e 6f 2d 77 ontext.'agenda))))))..(with-no-w
9280 61 72 6e 69 6e 67 73 20 28 64 65 66 76 61 72 20 64 61 74 65 29 29 20 3b 3b 20 75 6e 70 72 65 66 arnings.(defvar.date)).;;.unpref
92a0 69 78 65 64 2c 20 66 72 6f 6d 20 63 61 6c 65 6e 64 61 72 2e 65 6c 0a 28 64 65 66 75 6e 20 6f 72 ixed,.from.calendar.el.(defun.or
92c0 67 2d 63 6f 6e 74 61 63 74 73 2d 61 6e 6e 69 76 65 72 73 61 72 69 65 73 20 28 26 6f 70 74 69 6f g-contacts-anniversaries.(&optio
92e0 6e 61 6c 20 66 69 65 6c 64 20 66 6f 72 6d 61 74 29 0a 20 20 22 43 6f 6d 70 75 74 65 20 46 49 45 nal.field.format)..."Compute.FIE
9300 4c 44 20 61 6e 6e 69 76 65 72 73 61 72 79 20 66 6f 72 20 65 61 63 68 20 63 6f 6e 74 61 63 74 2c LD.anniversary.for.each.contact,
9320 20 72 65 74 75 72 6e 69 6e 67 20 46 4f 52 4d 41 54 2e 0a 44 65 66 61 75 6c 74 20 46 49 45 4c 44 .returning.FORMAT..Default.FIELD
9340 20 76 61 6c 75 65 20 69 73 20 5c 22 42 49 52 54 48 44 41 59 5c 22 2e 0a 0a 46 6f 72 6d 61 74 20 .value.is.\"BIRTHDAY\"...Format.
9360 69 73 20 61 20 73 74 72 69 6e 67 20 6d 61 74 63 68 69 6e 67 20 74 68 65 20 66 6f 6c 6c 6f 77 69 is.a.string.matching.the.followi
9380 6e 67 20 66 6f 72 6d 61 74 20 73 70 65 63 69 66 69 63 61 74 69 6f 6e 3a 0a 0a 20 20 25 68 20 2d ng.format.specification:....%h.-
93a0 20 48 65 61 64 69 6e 67 20 6e 61 6d 65 0a 20 20 25 6c 20 2d 20 4c 69 6e 6b 20 74 6f 20 74 68 65 .Heading.name...%l.-.Link.to.the
93c0 20 68 65 61 64 69 6e 67 0a 20 20 25 79 20 2d 20 4e 75 6d 62 65 72 20 6f 66 20 79 65 61 72 0a 20 .heading...%y.-.Number.of.year..
93e0 20 25 59 20 2d 20 4e 75 6d 62 65 72 20 6f 66 20 79 65 61 72 20 28 6f 72 64 69 6e 61 6c 29 22 0a .%Y.-.Number.of.year.(ordinal)".
9400 20 20 28 6c 65 74 20 28 28 63 61 6c 65 6e 64 61 72 2d 64 61 74 65 2d 73 74 79 6c 65 20 27 61 6d ..(let.((calendar-date-style.'am
9420 65 72 69 63 61 6e 29 29 0a 20 20 20 20 28 75 6e 6c 65 73 73 20 66 6f 72 6d 61 74 20 28 73 65 74 erican)).....(unless.format.(set
9440 71 20 66 6f 72 6d 61 74 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 62 69 72 74 68 64 61 79 2d 66 q.format.org-contacts-birthday-f
9460 6f 72 6d 61 74 29 29 0a 20 20 20 20 28 63 6c 2d 6c 6f 6f 70 20 66 6f 72 20 63 6f 6e 74 61 63 74 ormat)).....(cl-loop.for.contact
9480 20 69 6e 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 66 69 6c 74 65 72 29 0a 20 20 20 20 20 20 .in.(org-contacts-filter).......
94a0 20 20 20 20 20 20 20 66 6f 72 20 61 6e 6e 69 76 20 3d 20 28 6c 65 74 20 28 28 61 6e 6e 69 76 20 .......for.anniv.=.(let.((anniv.
94c0 28 63 64 72 20 28 61 73 73 6f 63 2d 73 74 72 69 6e 67 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 (cdr.(assoc-string..............
94e0 20 20 20 20 20 20 20 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 ...............................(
9500 6f 72 20 66 69 65 6c 64 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 62 69 72 74 68 64 61 79 2d 70 or.field.org-contacts-birthday-p
9520 72 6f 70 65 72 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 roperty)........................
9540 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e 74 68 20 32 20 63 6f 6e 74 .....................(nth.2.cont
9560 61 63 74 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 act)))))........................
9580 20 20 20 20 28 77 68 65 6e 20 61 6e 6e 69 76 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ....(when.anniv.................
95a0 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 61 6c 65 6e 64 61 72 2d 67 72 65 67 6f 72 69 61 6e .............(calendar-gregorian
95c0 2d 66 72 6f 6d 2d 61 62 73 6f 6c 75 74 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 -from-absolute..................
95e0 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 74 69 6d 65 2d 73 74 72 69 6e 67 2d 74 6f .............(org-time-string-to
9600 2d 61 62 73 6f 6c 75 74 65 20 61 6e 6e 69 76 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 -absolute.anniv)))).............
9620 20 3b 3b 20 55 73 65 20 60 64 69 61 72 79 2d 61 6e 6e 69 76 65 72 73 61 72 79 27 20 74 6f 20 63 .;;.Use.`diary-anniversary'.to.c
9640 6f 6d 70 75 74 65 20 61 6e 6e 69 76 65 72 73 61 72 79 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 ompute.anniversary..............
9660 20 3b 3b 20 46 49 58 4d 45 3a 20 73 68 6f 75 6c 64 20 77 65 20 72 65 71 75 69 72 65 20 60 64 69 .;;.FIXME:.should.we.require.`di
9680 61 72 79 2d 6c 69 62 27 20 73 6f 6d 65 77 68 65 72 65 20 74 6f 20 62 65 20 73 75 72 65 0a 20 20 ary-lib'.somewhere.to.be.sure...
96a0 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 60 64 69 61 72 79 2d 61 6e 6e 69 76 65 72 73 61 72 79 ...........;;.`diary-anniversary
96c0 27 20 69 73 20 64 65 66 69 6e 65 64 20 77 68 65 6e 20 77 65 20 67 65 74 20 68 65 72 65 3f 0a 20 '.is.defined.when.we.get.here?..
96e0 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 61 6e 64 20 61 6e 6e 69 76 20 28 61 70 70 6c 79 ............if.(and.anniv.(apply
9700 20 23 27 64 69 61 72 79 2d 61 6e 6e 69 76 65 72 73 61 72 79 20 61 6e 6e 69 76 29 29 0a 20 20 20 .#'diary-anniversary.anniv))....
9720 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6c 65 63 74 20 28 66 6f 72 6d 61 74 2d 73 70 65 63 20 66 ..........collect.(format-spec.f
9740 6f 72 6d 61 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 ormat...........................
9760 20 20 20 20 20 20 20 20 60 28 28 3f 6c 20 2e 20 2c 28 6f 72 67 2d 77 69 74 68 2d 70 6f 69 6e 74 ........`((?l...,(org-with-point
9780 2d 61 74 20 28 63 61 64 72 20 63 6f 6e 74 61 63 74 29 20 28 6f 72 67 2d 73 74 6f 72 65 2d 6c 69 -at.(cadr.contact).(org-store-li
97a0 6e 6b 20 6e 69 6c 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 nk.nil))).......................
97c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 3f 68 20 2e 20 2c 28 63 61 72 20 63 6f 6e 74 61 63 ..............(?h...,(car.contac
97e0 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 20 t)).............................
9800 20 20 20 20 20 20 20 20 28 3f 79 20 2e 20 2c 28 2d 20 28 63 61 6c 65 6e 64 61 72 2d 65 78 74 72 ........(?y...,(-.(calendar-extr
9820 61 63 74 2d 79 65 61 72 20 64 61 74 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 act-year.date)..................
9840 20 20 20 20 20 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 61 .............................(ca
9860 6c 65 6e 64 61 72 2d 65 78 74 72 61 63 74 2d 79 65 61 72 20 61 6e 6e 69 76 29 29 29 0a 20 20 20 lendar-extract-year.anniv)))....
9880 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
98a0 20 28 3f 59 20 2e 20 2c 28 6c 65 74 20 28 28 79 65 61 72 73 20 28 2d 20 28 63 61 6c 65 6e 64 61 .(?Y...,(let.((years.(-.(calenda
98c0 72 2d 65 78 74 72 61 63 74 2d 79 65 61 72 20 64 61 74 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 r-extract-year.date)............
98e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
9900 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 61 6c 65 6e 64 61 72 2d 65 78 74 72 61 63 ................(calendar-extrac
9920 74 2d 79 65 61 72 20 61 6e 6e 69 76 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 t-year.anniv))))................
9940 20 20 20 20 20 20 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
9960 6f 72 6d 61 74 20 22 25 64 25 73 22 20 79 65 61 72 73 20 28 64 69 61 72 79 2d 6f 72 64 69 6e 61 ormat."%d%s".years.(diary-ordina
9980 6c 2d 73 75 66 66 69 78 20 79 65 61 72 73 29 29 29 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 l-suffix.years)))))))))..(defun.
99a0 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 2d 63 6f 6d 70 6c 65 74 69 6e 67 2d 72 65 61 64 2d 64 61 org-contacts--completing-read-da
99c0 74 65 20 28 20 70 72 6f 6d 70 74 20 5f 63 6f 6c 6c 65 63 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 te.(.prompt._collection.........
99e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6f 70 74 69 6f ..........................&optio
9a00 6e 61 6c 20 5f 70 72 65 64 69 63 61 74 65 20 5f 72 65 71 75 69 72 65 2d 6d 61 74 63 68 20 5f 69 nal._predicate._require-match._i
9a20 6e 69 74 69 61 6c 2d 69 6e 70 75 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nitial-input....................
9a40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 5f 68 69 73 74 20 64 65 66 20 5f 69 6e 68 65 72 69 ..............._hist.def._inheri
9a60 74 2d 69 6e 70 75 74 2d 6d 65 74 68 6f 64 29 0a 20 20 22 4c 69 6b 65 20 60 63 6f 6d 70 6c 65 74 t-input-method)..."Like.`complet
9a80 69 6e 67 2d 72 65 61 64 27 20 62 75 74 20 72 65 61 64 73 20 61 20 64 61 74 65 2e 0a 4f 6e 6c 79 ing-read'.but.reads.a.date..Only
9aa0 20 50 52 4f 4d 50 54 20 61 6e 64 20 44 45 46 20 61 72 65 20 72 65 61 6c 6c 79 20 75 73 65 64 2e .PROMPT.and.DEF.are.really.used.
9ac0 22 0a 20 20 28 6f 72 67 2d 72 65 61 64 2d 64 61 74 65 20 6e 69 6c 20 6e 69 6c 20 6e 69 6c 20 70 "...(org-read-date.nil.nil.nil.p
9ae0 72 6f 6d 70 74 20 6e 69 6c 20 64 65 66 29 29 0a 0a 28 61 64 64 2d 74 6f 2d 6c 69 73 74 20 27 6f rompt.nil.def))..(add-to-list.'o
9b00 72 67 2d 70 72 6f 70 65 72 74 79 2d 73 65 74 2d 66 75 6e 63 74 69 6f 6e 73 2d 61 6c 69 73 74 0a rg-property-set-functions-alist.
9b20 20 20 20 20 20 20 20 20 20 20 20 20 20 60 28 2c 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 62 69 72 .............`(,org-contacts-bir
9b40 74 68 64 61 79 2d 70 72 6f 70 65 72 74 79 20 2e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 2d 63 thday-property...org-contacts--c
9b60 6f 6d 70 6c 65 74 69 6e 67 2d 72 65 61 64 2d 64 61 74 65 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 ompleting-read-date))..(defun.or
9b80 67 2d 63 6f 6e 74 61 63 74 73 2d 74 65 6d 70 6c 61 74 65 2d 6e 61 6d 65 20 28 26 6f 70 74 69 6f g-contacts-template-name.(&optio
9ba0 6e 61 6c 20 72 65 74 75 72 6e 2d 76 61 6c 75 65 29 0a 20 20 22 54 72 79 20 74 6f 20 72 65 74 75 nal.return-value)..."Try.to.retu
9bc0 72 6e 20 74 68 65 20 63 6f 6e 74 61 63 74 20 6e 61 6d 65 20 66 6f 72 20 61 20 74 65 6d 70 6c 61 rn.the.contact.name.for.a.templa
9be0 74 65 2e 0a 49 66 20 6e 6f 74 20 66 6f 75 6e 64 20 72 65 74 75 72 6e 20 52 45 54 55 52 4e 2d 56 te..If.not.found.return.RETURN-V
9c00 41 4c 55 45 20 6f 72 20 73 6f 6d 65 74 68 69 6e 67 20 74 68 61 74 20 77 6f 75 6c 64 20 61 73 6b ALUE.or.something.that.would.ask
9c20 20 74 68 65 20 75 73 65 72 2e 22 0a 20 20 28 6f 72 20 28 63 61 72 20 28 6f 72 67 2d 63 6f 6e 74 .the.user."...(or.(car.(org-cont
9c40 61 63 74 73 2d 67 6e 75 73 2d 67 65 74 2d 6e 61 6d 65 2d 65 6d 61 69 6c 29 29 0a 20 20 20 20 20 acts-gnus-get-name-email))......
9c60 20 72 65 74 75 72 6e 2d 76 61 6c 75 65 0a 20 20 20 20 20 20 22 25 5e 7b 4e 61 6d 65 7d 22 29 29 .return-value......."%^{Name}"))
9c80 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 74 65 6d 70 6c 61 74 65 2d 65 ..(defun.org-contacts-template-e
9ca0 6d 61 69 6c 20 28 26 6f 70 74 69 6f 6e 61 6c 20 72 65 74 75 72 6e 2d 76 61 6c 75 65 29 0a 20 20 mail.(&optional.return-value)...
9cc0 22 54 72 79 20 74 6f 20 72 65 74 75 72 6e 20 74 68 65 20 63 6f 6e 74 61 63 74 20 65 6d 61 69 6c "Try.to.return.the.contact.email
9ce0 20 66 6f 72 20 61 20 74 65 6d 70 6c 61 74 65 2e 0a 49 66 20 6e 6f 74 20 66 6f 75 6e 64 20 72 65 .for.a.template..If.not.found.re
9d00 74 75 72 6e 20 52 45 54 55 52 4e 2d 56 41 4c 55 45 20 6f 72 20 73 6f 6d 65 74 68 69 6e 67 20 74 turn.RETURN-VALUE.or.something.t
9d20 68 61 74 20 77 6f 75 6c 64 20 61 73 6b 20 74 68 65 20 75 73 65 72 2e 22 0a 20 20 28 6f 72 20 28 hat.would.ask.the.user."...(or.(
9d40 63 61 64 72 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 67 6e 75 73 2d 67 65 74 2d 6e 61 6d 65 cadr.(org-contacts-gnus-get-name
9d60 2d 65 6d 61 69 6c 29 29 0a 20 20 20 20 20 20 72 65 74 75 72 6e 2d 76 61 6c 75 65 0a 20 20 20 20 -email)).......return-value.....
9d80 20 20 28 63 6f 6e 63 61 74 20 22 25 5e 7b 22 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 65 6d 61 ..(concat."%^{".org-contacts-ema
9da0 69 6c 2d 70 72 6f 70 65 72 74 79 20 22 7d 70 22 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d il-property."}p")))..(defun.org-
9dc0 63 6f 6e 74 61 63 74 73 2d 67 6e 75 73 2d 73 74 6f 72 65 2d 6c 61 73 74 2d 6d 61 69 6c 20 28 29 contacts-gnus-store-last-mail.()
9de0 0a 20 20 22 53 74 6f 72 65 20 61 20 6c 69 6e 6b 20 62 65 74 77 65 65 6e 20 6d 61 69 6c 73 20 61 ..."Store.a.link.between.mails.a
9e00 6e 64 20 63 6f 6e 74 61 63 74 73 2e 0a 0a 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 73 68 6f 75 nd.contacts...This.function.shou
9e20 6c 64 20 62 65 20 63 61 6c 6c 65 64 20 66 72 6f 6d 20 60 67 6e 75 73 2d 61 72 74 69 63 6c 65 2d ld.be.called.from.`gnus-article-
9e40 70 72 65 70 61 72 65 2d 68 6f 6f 6b 27 2e 22 0a 20 20 28 6c 65 74 20 28 28 6d 61 72 6b 65 72 20 prepare-hook'."...(let.((marker.
9e60 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 67 6e 75 73 2d 61 72 74 69 63 6c 65 2d 66 72 6f 6d 2d (org-contacts-gnus-article-from-
9e80 67 65 74 2d 6d 61 72 6b 65 72 29 29 29 0a 20 20 20 20 28 77 68 65 6e 20 6d 61 72 6b 65 72 0a 20 get-marker))).....(when.marker..
9ea0 20 20 20 20 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 28 6d 61 72 6b 65 .....(with-current-buffer.(marke
9ec0 72 2d 62 75 66 66 65 72 20 6d 61 72 6b 65 72 29 0a 20 20 20 20 20 20 20 20 28 73 61 76 65 2d 65 r-buffer.marker).........(save-e
9ee0 78 63 75 72 73 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 6d 61 xcursion...........(goto-char.ma
9f00 72 6b 65 72 29 0a 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 2a 20 28 28 6f 72 67 2d 6c 69 6e 6b rker)...........(let*.((org-link
9f20 2d 65 6d 61 69 6c 2d 64 65 73 63 72 69 70 74 69 6f 6e 2d 66 6f 72 6d 61 74 20 28 6f 72 20 6f 72 -email-description-format.(or.or
9f40 67 2d 63 6f 6e 74 61 63 74 73 2d 65 6d 61 69 6c 2d 6c 69 6e 6b 2d 64 65 73 63 72 69 70 74 69 6f g-contacts-email-link-descriptio
9f60 6e 2d 66 6f 72 6d 61 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 n-format........................
9f80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
9fa0 20 6f 72 67 2d 6c 69 6e 6b 2d 65 6d 61 69 6c 2d 64 65 73 63 72 69 70 74 69 6f 6e 2d 66 6f 72 6d .org-link-email-description-form
9fc0 61 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 6e 6b 20 28 67 6e 75 at))..................(link.(gnu
9fe0 73 2d 77 69 74 68 2d 61 72 74 69 63 6c 65 2d 62 75 66 66 65 72 20 28 6f 72 67 2d 73 74 6f 72 65 s-with-article-buffer.(org-store
a000 2d 6c 69 6e 6b 20 6e 69 6c 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 73 -link.nil)))).............(org-s
a020 65 74 2d 70 72 6f 70 65 72 74 79 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 6c 61 73 74 2d 72 65 et-property.org-contacts-last-re
a040 61 64 2d 6d 61 69 6c 2d 70 72 6f 70 65 72 74 79 20 6c 69 6e 6b 29 29 29 29 29 29 29 0a 0a 28 64 ad-mail-property.link)))))))..(d
a060 65 66 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 69 63 6f 6e 2d 61 73 2d 73 74 72 69 6e 67 efun.org-contacts-icon-as-string
a080 20 28 29 0a 20 20 22 52 65 74 75 72 6e 20 74 68 65 20 63 6f 6e 74 61 63 74 20 69 63 6f 6e 20 61 .()..."Return.the.contact.icon.a
a0a0 73 20 61 20 73 74 72 69 6e 67 2e 22 0a 20 20 28 6c 65 74 20 28 28 69 6d 61 67 65 20 28 6f 72 67 s.a.string."...(let.((image.(org
a0c0 2d 63 6f 6e 74 61 63 74 73 2d 67 65 74 2d 69 63 6f 6e 29 29 29 0a 20 20 20 20 28 63 6f 6e 63 61 -contacts-get-icon))).....(conca
a0e0 74 0a 20 20 20 20 20 28 70 72 6f 70 65 72 74 69 7a 65 20 22 2d 22 20 27 64 69 73 70 6c 61 79 0a t......(propertize."-".'display.
a100 20 20 20 20 20 20 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 .................(append........
a120 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 69 6d 61 67 65 0a 20 20 20 20 20 20 20 20 20 20 20 ...........(if.image............
a140 20 20 20 20 20 20 20 20 20 20 20 69 6d 61 67 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...........image................
a160 20 20 20 20 20 60 27 28 73 70 61 63 65 20 3a 77 69 64 74 68 20 28 2c 6f 72 67 2d 63 6f 6e 74 61 .....`'(space.:width.(,org-conta
a180 63 74 73 2d 69 63 6f 6e 2d 73 69 7a 65 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 cts-icon-size)))................
a1a0 20 20 20 27 28 3a 61 73 63 65 6e 74 20 63 65 6e 74 65 72 29 29 29 0a 20 20 20 20 20 22 20 22 29 ...'(:ascent.center)))......".")
a1c0 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 6f 72 67 2d 63 6f ))..;;;###autoload.(defun.org-co
a1e0 6e 74 61 63 74 73 20 28 6e 61 6d 65 29 0a 20 20 22 43 72 65 61 74 65 20 61 67 65 6e 64 61 20 76 ntacts.(name)..."Create.agenda.v
a200 69 65 77 20 66 6f 72 20 63 6f 6e 74 61 63 74 73 20 6d 61 74 63 68 69 6e 67 20 4e 41 4d 45 2e 22 iew.for.contacts.matching.NAME."
a220 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 20 28 6c 69 73 74 20 28 72 65 61 64 2d 73 74 72 69 ...(interactive.(list.(read-stri
a240 6e 67 20 22 4e 61 6d 65 3a 20 22 29 29 29 0a 20 20 28 6c 65 74 20 28 28 6f 72 67 2d 61 67 65 6e ng."Name:.")))...(let.((org-agen
a260 64 61 2d 66 69 6c 65 73 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 66 69 6c 65 73 29 29 0a 20 da-files.(org-contacts-files))..
a280 20 20 20 20 20 20 20 28 6f 72 67 2d 61 67 65 6e 64 61 2d 73 6b 69 70 2d 66 75 6e 63 74 69 6f 6e .......(org-agenda-skip-function
a2a0 0a 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 29 20 28 6f 72 67 2d 61 67 65 6e 64 61 ..........(lambda.().(org-agenda
a2c0 2d 73 6b 69 70 2d 69 66 20 6e 69 6c 20 60 28 6e 6f 74 72 65 67 65 78 70 20 2c 6e 61 6d 65 29 29 -skip-if.nil.`(notregexp.,name))
a2e0 29 29 0a 20 20 20 20 20 20 20 20 28 6f 72 67 2d 61 67 65 6e 64 61 2d 70 72 65 66 69 78 2d 66 6f )).........(org-agenda-prefix-fo
a300 72 6d 61 74 0a 20 20 20 20 20 20 20 20 20 28 70 72 6f 70 65 72 74 69 7a 65 0a 20 20 20 20 20 20 rmat..........(propertize.......
a320 20 20 20 20 22 25 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 69 63 6f 6e 2d 61 73 2d 73 74 72 69 ...."%(org-contacts-icon-as-stri
a340 6e 67 29 25 20 73 25 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 69 72 63 2d 6e 75 6d 62 65 72 2d ng)%.s%(org-contacts-irc-number-
a360 6f 66 2d 75 6e 72 65 61 64 2d 6d 65 73 73 61 67 65 73 29 20 22 0a 20 20 20 20 20 20 20 20 20 20 of-unread-messages)."...........
a380 27 6b 65 79 6d 61 70 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 6b 65 79 6d 61 70 29 29 0a 20 20 'keymap.org-contacts-keymap))...
a3a0 20 20 20 20 20 20 28 6f 72 67 2d 61 67 65 6e 64 61 2d 6f 76 65 72 72 69 64 69 6e 67 2d 68 65 61 ......(org-agenda-overriding-hea
a3c0 64 65 72 0a 20 20 20 20 20 20 20 20 20 28 6f 72 20 6f 72 67 2d 61 67 65 6e 64 61 2d 6f 76 65 72 der..........(or.org-agenda-over
a3e0 72 69 64 69 6e 67 2d 68 65 61 64 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 63 riding-header..............(conc
a400 61 74 20 22 4c 69 73 74 20 6f 66 20 63 6f 6e 74 61 63 74 73 20 6d 61 74 63 68 69 6e 67 20 60 22 at."List.of.contacts.matching.`"
a420 20 6e 61 6d 65 20 22 27 3a 22 29 29 29 29 0a 20 20 20 20 28 73 65 74 71 20 6f 72 67 2d 61 67 65 .name."':")))).....(setq.org-age
a440 6e 64 61 2d 73 6b 69 70 2d 72 65 67 65 78 70 20 6e 61 6d 65 29 0a 20 20 20 20 28 6f 72 67 2d 74 nda-skip-regexp.name).....(org-t
a460 61 67 73 2d 76 69 65 77 20 6e 69 6c 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 6d 61 74 63 68 65 ags-view.nil.org-contacts-matche
a480 72 29 0a 20 20 20 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 6f 72 67 2d r).....(with-current-buffer.org-
a4a0 61 67 65 6e 64 61 2d 62 75 66 66 65 72 2d 6e 61 6d 65 0a 20 20 20 20 20 20 28 73 65 74 71 20 6f agenda-buffer-name.......(setq.o
a4c0 72 67 2d 61 67 65 6e 64 61 2d 72 65 64 6f 2d 63 6f 6d 6d 61 6e 64 0a 20 20 20 20 20 20 20 20 20 rg-agenda-redo-command..........
a4e0 20 20 20 28 6c 69 73 74 20 27 6f 72 67 2d 63 6f 6e 74 61 63 74 73 20 6e 61 6d 65 29 29 29 29 29 ...(list.'org-contacts.name)))))
a500 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 63 6f 6d 70 6c 65 74 69 6e 67 ..(defun.org-contacts-completing
a520 2d 72 65 61 64 20 28 70 72 6f 6d 70 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 -read.(prompt...................
a540 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 6f 70 74 69 6f 6e 61 6c 20 70 72 65 ...................&optional.pre
a560 64 69 63 61 74 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 dicate..........................
a580 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 69 74 69 61 6c 2d 69 6e 70 75 74 20 68 69 73 74 20 64 ............initial-input.hist.d
a5a0 65 66 20 69 6e 68 65 72 69 74 2d 69 6e 70 75 74 2d 6d 65 74 68 6f 64 29 0a 20 20 22 43 61 6c 6c ef.inherit-input-method)..."Call
a5c0 20 60 63 6f 6d 70 6c 65 74 69 6e 67 2d 72 65 61 64 27 20 77 69 74 68 20 63 6f 6e 74 61 63 74 73 .`completing-read'.with.contacts
a5e0 20 6e 61 6d 65 20 61 73 20 63 6f 6c 6c 65 63 74 69 6f 6e 2e 22 0a 20 20 28 6f 72 67 2d 63 6f 6d .name.as.collection."...(org-com
a600 70 6c 65 74 69 6e 67 2d 72 65 61 64 0a 20 20 20 70 72 6f 6d 70 74 20 28 6f 72 67 2d 63 6f 6e 74 pleting-read....prompt.(org-cont
a620 61 63 74 73 2d 66 69 6c 74 65 72 29 20 70 72 65 64 69 63 61 74 65 20 74 20 69 6e 69 74 69 61 6c acts-filter).predicate.t.initial
a640 2d 69 6e 70 75 74 20 68 69 73 74 20 64 65 66 20 69 6e 68 65 72 69 74 2d 69 6e 70 75 74 2d 6d 65 -input.hist.def.inherit-input-me
a660 74 68 6f 64 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 66 6f 72 6d thod))..(defun.org-contacts-form
a680 61 74 2d 6e 61 6d 65 20 28 6e 61 6d 65 29 0a 20 20 22 54 72 69 6d 20 61 6e 79 20 6c 6f 63 61 6c at-name.(name)..."Trim.any.local
a6a0 20 66 6f 72 6d 61 74 74 69 6e 67 20 74 6f 20 67 65 74 20 61 20 62 61 72 65 20 4e 41 4d 45 2e 22 .formatting.to.get.a.bare.NAME."
a6c0 0a 20 20 3b 3b 20 52 65 6d 6f 76 65 20 72 61 64 69 6f 20 74 61 72 67 65 74 73 20 63 68 61 72 61 ...;;.Remove.radio.targets.chara
a6e0 63 74 65 72 73 0a 20 20 28 72 65 70 6c 61 63 65 2d 72 65 67 65 78 70 2d 69 6e 2d 73 74 72 69 6e cters...(replace-regexp-in-strin
a700 67 20 6f 72 67 2d 72 61 64 69 6f 2d 74 61 72 67 65 74 2d 72 65 67 65 78 70 20 22 5c 5c 31 22 20 g.org-radio-target-regexp."\\1".
a720 6e 61 6d 65 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 66 6f 72 6d name))..(defun.org-contacts-form
a740 61 74 2d 65 6d 61 69 6c 20 28 6e 61 6d 65 20 65 6d 61 69 6c 29 0a 20 20 22 46 6f 72 6d 61 74 20 at-email.(name.email)..."Format.
a760 61 6e 20 45 4d 41 49 4c 20 61 64 64 72 65 73 73 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 74 an.EMAIL.address.corresponding.t
a780 6f 20 4e 41 4d 45 2e 22 0a 20 20 28 75 6e 6c 65 73 73 20 65 6d 61 69 6c 0a 20 20 20 20 28 65 72 o.NAME."...(unless.email.....(er
a7a0 72 6f 72 20 22 60 65 6d 61 69 6c 27 20 63 61 6e 6e 6f 74 20 62 65 20 6e 75 6c 22 29 29 0a 20 20 ror."`email'.cannot.be.nul"))...
a7c0 28 69 66 20 6e 61 6d 65 0a 20 20 20 20 20 20 28 63 6f 6e 63 61 74 20 28 6f 72 67 2d 63 6f 6e 74 (if.name.......(concat.(org-cont
a7e0 61 63 74 73 2d 66 6f 72 6d 61 74 2d 6e 61 6d 65 20 6e 61 6d 65 29 20 22 20 3c 22 20 65 6d 61 69 acts-format-name.name).".<".emai
a800 6c 20 22 3e 22 29 0a 20 20 20 20 65 6d 61 69 6c 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 63 l.">").....email))..(defun.org-c
a820 6f 6e 74 61 63 74 73 2d 63 68 65 63 6b 2d 6d 61 69 6c 2d 61 64 64 72 65 73 73 20 28 6d 61 69 6c ontacts-check-mail-address.(mail
a840 29 0a 20 20 22 41 64 64 20 4d 41 49 4c 20 61 64 64 72 65 73 73 20 74 6f 20 63 6f 6e 74 61 63 74 )..."Add.MAIL.address.to.contact
a860 20 61 74 20 70 6f 69 6e 74 20 69 66 20 69 74 20 64 6f 65 73 20 6e 6f 74 20 68 61 76 65 20 69 74 .at.point.if.it.does.not.have.it
a880 2e 22 0a 20 20 28 6c 65 74 20 28 28 6d 61 69 6c 73 20 28 6f 72 67 2d 65 6e 74 72 79 2d 67 65 74 ."...(let.((mails.(org-entry-get
a8a0 20 28 70 6f 69 6e 74 29 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 65 6d 61 69 6c 2d 70 72 6f 70 .(point).org-contacts-email-prop
a8c0 65 72 74 79 29 29 29 0a 20 20 20 20 28 75 6e 6c 65 73 73 20 28 6d 65 6d 62 65 72 20 6d 61 69 6c erty))).....(unless.(member.mail
a8e0 20 28 73 70 6c 69 74 2d 73 74 72 69 6e 67 20 6d 61 69 6c 73 29 29 0a 20 20 20 20 20 20 28 77 68 .(split-string.mails)).......(wh
a900 65 6e 20 28 79 65 73 2d 6f 72 2d 6e 6f 2d 70 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 6f en.(yes-or-no-p..............(fo
a920 72 6d 61 74 20 22 44 6f 20 79 6f 75 20 77 61 6e 74 20 74 6f 20 61 64 64 20 74 68 69 73 20 61 64 rmat."Do.you.want.to.add.this.ad
a940 64 72 65 73 73 20 74 6f 20 25 73 3f 22 20 28 6f 72 67 2d 67 65 74 2d 68 65 61 64 69 6e 67 20 74 dress.to.%s?".(org-get-heading.t
a960 29 29 29 0a 20 20 20 20 20 20 20 20 28 6f 72 67 2d 73 65 74 2d 70 72 6f 70 65 72 74 79 20 6f 72 ))).........(org-set-property.or
a980 67 2d 63 6f 6e 74 61 63 74 73 2d 65 6d 61 69 6c 2d 70 72 6f 70 65 72 74 79 20 28 63 6f 6e 63 61 g-contacts-email-property.(conca
a9a0 74 20 6d 61 69 6c 73 20 22 20 22 20 6d 61 69 6c 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f t.mails.".".mail))))))..(defun.o
a9c0 72 67 2d 63 6f 6e 74 61 63 74 73 2d 67 6e 75 73 2d 63 68 65 63 6b 2d 6d 61 69 6c 2d 61 64 64 72 rg-contacts-gnus-check-mail-addr
a9e0 65 73 73 20 28 29 0a 20 20 22 43 68 65 63 6b 20 74 68 61 74 20 63 6f 6e 74 61 63 74 20 68 61 73 ess.()..."Check.that.contact.has
aa00 20 74 68 65 20 63 75 72 72 65 6e 74 20 61 64 64 72 65 73 73 20 72 65 63 6f 72 64 65 64 2e 0a 54 .the.current.address.recorded..T
aa20 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 73 68 6f 75 6c 64 20 62 65 20 63 61 6c 6c 65 64 20 66 72 his.function.should.be.called.fr
aa40 6f 6d 20 60 67 6e 75 73 2d 61 72 74 69 63 6c 65 2d 70 72 65 70 61 72 65 2d 68 6f 6f 6b 27 2e 22 om.`gnus-article-prepare-hook'."
aa60 0a 20 20 28 6c 65 74 20 28 28 6d 61 72 6b 65 72 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 67 ...(let.((marker.(org-contacts-g
aa80 6e 75 73 2d 61 72 74 69 63 6c 65 2d 66 72 6f 6d 2d 67 65 74 2d 6d 61 72 6b 65 72 29 29 29 0a 20 nus-article-from-get-marker)))..
aaa0 20 20 20 28 77 68 65 6e 20 6d 61 72 6b 65 72 0a 20 20 20 20 20 20 28 6f 72 67 2d 77 69 74 68 2d ...(when.marker.......(org-with-
aac0 70 6f 69 6e 74 2d 61 74 20 6d 61 72 6b 65 72 0a 20 20 20 20 20 20 20 20 28 6f 72 67 2d 63 6f 6e point-at.marker.........(org-con
aae0 74 61 63 74 73 2d 63 68 65 63 6b 2d 6d 61 69 6c 2d 61 64 64 72 65 73 73 20 28 63 61 64 72 20 28 tacts-check-mail-address.(cadr.(
ab00 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 67 6e 75 73 2d 67 65 74 2d 6e 61 6d 65 2d 65 6d 61 69 6c org-contacts-gnus-get-name-email
ab20 29 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 67 6e 75 )))))))..(defun.org-contacts-gnu
ab40 73 2d 69 6e 73 69 6e 75 61 74 65 20 28 29 0a 20 20 22 41 64 64 20 73 6f 6d 65 20 68 6f 6f 6b 73 s-insinuate.()..."Add.some.hooks
ab60 20 66 6f 72 20 47 6e 75 73 20 75 73 65 72 2e 0a 54 68 69 73 20 61 64 64 73 20 60 6f 72 67 2d 63 .for.Gnus.user..This.adds.`org-c
ab80 6f 6e 74 61 63 74 73 2d 67 6e 75 73 2d 63 68 65 63 6b 2d 6d 61 69 6c 2d 61 64 64 72 65 73 73 27 ontacts-gnus-check-mail-address'
aba0 20 61 6e 64 0a 60 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 67 6e 75 73 2d 73 74 6f 72 65 2d 6c 61 .and.`org-contacts-gnus-store-la
abc0 73 74 2d 6d 61 69 6c 27 20 74 6f 0a 60 67 6e 75 73 2d 61 72 74 69 63 6c 65 2d 70 72 65 70 61 72 st-mail'.to.`gnus-article-prepar
abe0 65 2d 68 6f 6f 6b 27 2e 20 20 49 74 20 61 6c 73 6f 20 61 64 64 73 20 61 20 62 69 6e 64 69 6e 67 e-hook'...It.also.adds.a.binding
ac00 20 6f 6e 20 60 3b 27 20 69 6e 0a 60 67 6e 75 73 2d 73 75 6d 6d 61 72 79 2d 6d 6f 64 65 2d 6d 61 .on.`;'.in.`gnus-summary-mode-ma
ac20 70 27 20 74 6f 20 60 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 67 6e 75 73 2d 61 72 74 69 63 6c 65 p'.to.`org-contacts-gnus-article
ac40 2d 66 72 6f 6d 2d 67 6f 74 6f 27 22 0a 20 20 28 72 65 71 75 69 72 65 20 27 67 6e 75 73 29 0a 20 -from-goto'"...(require.'gnus)..
ac60 20 28 72 65 71 75 69 72 65 20 27 67 6e 75 73 2d 61 72 74 29 0a 20 20 28 64 65 66 69 6e 65 2d 6b .(require.'gnus-art)...(define-k
ac80 65 79 20 67 6e 75 73 2d 73 75 6d 6d 61 72 79 2d 6d 6f 64 65 2d 6d 61 70 20 22 3b 22 20 23 27 6f ey.gnus-summary-mode-map.";".#'o
aca0 72 67 2d 63 6f 6e 74 61 63 74 73 2d 67 6e 75 73 2d 61 72 74 69 63 6c 65 2d 66 72 6f 6d 2d 67 6f rg-contacts-gnus-article-from-go
acc0 74 6f 29 0a 20 20 28 61 64 64 2d 68 6f 6f 6b 20 27 67 6e 75 73 2d 61 72 74 69 63 6c 65 2d 70 72 to)...(add-hook.'gnus-article-pr
ace0 65 70 61 72 65 2d 68 6f 6f 6b 20 23 27 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 67 6e 75 73 2d 63 epare-hook.#'org-contacts-gnus-c
ad00 68 65 63 6b 2d 6d 61 69 6c 2d 61 64 64 72 65 73 73 29 0a 20 20 28 61 64 64 2d 68 6f 6f 6b 20 27 heck-mail-address)...(add-hook.'
ad20 67 6e 75 73 2d 61 72 74 69 63 6c 65 2d 70 72 65 70 61 72 65 2d 68 6f 6f 6b 20 23 27 6f 72 67 2d gnus-article-prepare-hook.#'org-
ad40 63 6f 6e 74 61 63 74 73 2d 67 6e 75 73 2d 73 74 6f 72 65 2d 6c 61 73 74 2d 6d 61 69 6c 29 29 0a contacts-gnus-store-last-mail)).
ad60 0a 28 64 65 66 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 73 65 74 75 70 2d 63 6f 6d 70 6c .(defun.org-contacts-setup-compl
ad80 65 74 69 6f 6e 2d 61 74 2d 70 6f 69 6e 74 20 28 29 0a 20 20 22 41 64 64 20 60 6f 72 67 2d 63 6f etion-at-point.()..."Add.`org-co
ada0 6e 74 61 63 74 73 2d 6d 65 73 73 61 67 65 2d 63 6f 6d 70 6c 65 74 65 2d 66 75 6e 63 74 69 6f 6e ntacts-message-complete-function
adc0 27 20 61 73 20 61 20 6e 65 77 20 66 75 6e 63 74 69 6f 6e 0a 74 6f 20 63 6f 6d 70 6c 65 74 65 20 '.as.a.new.function.to.complete.
ade0 74 68 65 20 74 68 69 6e 67 20 61 74 20 70 6f 69 6e 74 2e 22 0a 20 20 28 61 64 64 2d 74 6f 2d 6c the.thing.at.point."...(add-to-l
ae00 69 73 74 20 27 63 6f 6d 70 6c 65 74 69 6f 6e 2d 61 74 2d 70 6f 69 6e 74 2d 66 75 6e 63 74 69 6f ist.'completion-at-point-functio
ae20 6e 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d ns................'org-contacts-
ae40 6d 65 73 73 61 67 65 2d 63 6f 6d 70 6c 65 74 65 2d 66 75 6e 63 74 69 6f 6e 29 29 0a 0a 28 64 65 message-complete-function))..(de
ae60 66 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 75 6e 6c 6f 61 64 2d 68 6f 6f 6b 20 28 29 0a fun.org-contacts-unload-hook.().
ae80 20 20 28 72 65 6d 6f 76 65 2d 68 6f 6f 6b 20 27 6d 65 73 73 61 67 65 2d 6d 6f 64 65 2d 68 6f 6f ..(remove-hook.'message-mode-hoo
aea0 6b 20 23 27 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 73 65 74 75 70 2d 63 6f 6d 70 6c 65 74 69 6f k.#'org-contacts-setup-completio
aec0 6e 2d 61 74 2d 70 6f 69 6e 74 29 29 0a 0a 28 77 68 65 6e 20 28 61 6e 64 20 6f 72 67 2d 63 6f 6e n-at-point))..(when.(and.org-con
aee0 74 61 63 74 73 2d 65 6e 61 62 6c 65 2d 63 6f 6d 70 6c 65 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 tacts-enable-completion.........
af00 20 20 20 28 62 6f 75 6e 64 70 20 27 63 6f 6d 70 6c 65 74 69 6f 6e 2d 61 74 2d 70 6f 69 6e 74 2d ...(boundp.'completion-at-point-
af20 66 75 6e 63 74 69 6f 6e 73 29 29 0a 20 20 28 61 64 64 2d 68 6f 6f 6b 20 27 6d 65 73 73 61 67 65 functions))...(add-hook.'message
af40 2d 6d 6f 64 65 2d 68 6f 6f 6b 20 23 27 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 73 65 74 75 70 2d -mode-hook.#'org-contacts-setup-
af60 63 6f 6d 70 6c 65 74 69 6f 6e 2d 61 74 2d 70 6f 69 6e 74 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 completion-at-point))..(defun.or
af80 67 2d 63 6f 6e 74 61 63 74 73 2d 77 6c 2d 67 65 74 2d 66 72 6f 6d 2d 68 65 61 64 65 72 2d 63 6f g-contacts-wl-get-from-header-co
afa0 6e 74 65 6e 74 20 28 29 0a 20 20 22 52 65 74 72 69 65 76 65 20 74 68 65 20 63 6f 6e 74 65 6e 74 ntent.()..."Retrieve.the.content
afc0 20 6f 66 20 74 68 65 20 60 46 72 6f 6d 27 20 68 65 61 64 65 72 20 6f 66 20 61 6e 20 65 6d 61 69 .of.the.`From'.header.of.an.emai
afe0 6c 2e 0a 57 6f 72 6b 73 20 66 72 6f 6d 20 77 6c 2d 73 75 6d 6d 61 72 79 2d 6d 6f 64 65 20 61 6e l..Works.from.wl-summary-mode.an
b000 64 20 6d 69 6d 65 2d 76 69 65 77 2d 6d 6f 64 65 20 2d 20 74 68 61 74 20 69 73 20 77 68 69 6c 65 d.mime-view-mode.-.that.is.while
b020 20 76 69 65 77 69 6e 67 20 65 6d 61 69 6c 2e 0a 44 65 70 65 6e 64 73 20 6f 6e 20 57 61 6e 64 65 .viewing.email..Depends.on.Wande
b040 72 6c 75 73 74 20 62 65 65 6e 20 6c 6f 61 64 65 64 2e 22 0a 20 20 28 77 69 74 68 2d 63 75 72 72 rlust.been.loaded."...(with-curr
b060 65 6e 74 2d 62 75 66 66 65 72 20 28 6f 72 67 2d 63 61 70 74 75 72 65 2d 67 65 74 20 3a 6f 72 69 ent-buffer.(org-capture-get.:ori
b080 67 69 6e 61 6c 2d 62 75 66 66 65 72 29 0a 20 20 20 20 28 63 6f 6e 64 0a 20 20 20 20 20 28 28 65 ginal-buffer).....(cond......((e
b0a0 71 20 6d 61 6a 6f 72 2d 6d 6f 64 65 20 27 77 6c 2d 73 75 6d 6d 61 72 79 2d 6d 6f 64 65 29 20 28 q.major-mode.'wl-summary-mode).(
b0c0 77 68 65 6e 20 28 61 6e 64 20 28 62 6f 75 6e 64 70 20 27 77 6c 2d 73 75 6d 6d 61 72 79 2d 62 75 when.(and.(boundp.'wl-summary-bu
b0e0 66 66 65 72 2d 65 6c 6d 6f 2d 66 6f 6c 64 65 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ffer-elmo-folder)...............
b100 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
b120 20 20 20 20 77 6c 2d 73 75 6d 6d 61 72 79 2d 62 75 66 66 65 72 2d 65 6c 6d 6f 2d 66 6f 6c 64 65 ....wl-summary-buffer-elmo-folde
b140 72 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 r)..............................
b160 20 20 20 20 20 20 20 20 20 20 20 20 28 65 6c 6d 6f 2d 6d 65 73 73 61 67 65 2d 66 69 65 6c 64 0a ............(elmo-message-field.
b180 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
b1a0 20 20 20 20 20 20 20 20 20 20 77 6c 2d 73 75 6d 6d 61 72 79 2d 62 75 66 66 65 72 2d 65 6c 6d 6f ..........wl-summary-buffer-elmo
b1c0 2d 66 6f 6c 64 65 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 -folder.........................
b1e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 6c 2d 73 75 6d 6d 61 72 79 2d 6d 65 ..................(wl-summary-me
b200 73 73 61 67 65 2d 6e 75 6d 62 65 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ssage-number)...................
b220 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 66 72 6f 6d 29 29 29 ........................'from)))
b240 0a 20 20 20 20 20 28 28 65 71 20 6d 61 6a 6f 72 2d 6d 6f 64 65 20 27 6d 69 6d 65 2d 76 69 65 77 ......((eq.major-mode.'mime-view
b260 2d 6d 6f 64 65 29 20 28 73 74 64 31 31 2d 6e 61 72 72 6f 77 2d 74 6f 2d 68 65 61 64 65 72 29 0a -mode).(std11-narrow-to-header).
b280 20 20 20 20 20 20 28 70 72 6f 67 31 0a 20 20 20 20 20 20 20 20 20 20 28 73 74 64 31 31 2d 66 65 ......(prog1...........(std11-fe
b2a0 74 63 68 2d 66 69 65 6c 64 20 22 46 72 6f 6d 22 29 0a 20 20 20 20 20 20 20 20 28 77 69 64 65 6e tch-field."From").........(widen
b2c0 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 77 6c 2d 67 ))))))..(defun.org-contacts-wl-g
b2e0 65 74 2d 6e 61 6d 65 2d 65 6d 61 69 6c 20 28 29 0a 20 20 22 47 65 74 20 6e 61 6d 65 20 61 6e 64 et-name-email.()..."Get.name.and
b300 20 65 6d 61 69 6c 20 61 64 64 72 65 73 73 20 66 72 6f 6d 20 57 61 6e 64 65 72 6c 75 73 74 20 65 .email.address.from.Wanderlust.e
b320 6d 61 69 6c 2e 0a 53 65 65 20 60 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 77 6c 2d 67 65 74 2d 66 mail..See.`org-contacts-wl-get-f
b340 72 6f 6d 2d 68 65 61 64 65 72 2d 63 6f 6e 74 65 6e 74 27 20 66 6f 72 20 6c 69 6d 69 74 61 74 69 rom-header-content'.for.limitati
b360 6f 6e 73 2e 22 0a 20 20 28 6c 65 74 20 28 28 66 72 6f 6d 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 ons."...(let.((from.(org-contact
b380 73 2d 77 6c 2d 67 65 74 2d 66 72 6f 6d 2d 68 65 61 64 65 72 2d 63 6f 6e 74 65 6e 74 29 29 29 0a s-wl-get-from-header-content))).
b3a0 20 20 20 20 28 77 68 65 6e 20 66 72 6f 6d 0a 20 20 20 20 20 20 28 6c 69 73 74 20 28 77 6c 2d 61 ....(when.from.......(list.(wl-a
b3c0 64 64 72 65 73 73 2d 68 65 61 64 65 72 2d 65 78 74 72 61 63 74 2d 72 65 61 6c 6e 61 6d 65 20 66 ddress-header-extract-realname.f
b3e0 72 6f 6d 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 77 6c 2d 61 64 64 72 65 73 73 2d 68 65 61 rom).............(wl-address-hea
b400 64 65 72 2d 65 78 74 72 61 63 74 2d 61 64 64 72 65 73 73 20 66 72 6f 6d 29 29 29 29 29 0a 0a 28 der-extract-address.from)))))..(
b420 64 65 66 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 74 65 6d 70 6c 61 74 65 2d 77 6c 2d 6e defun.org-contacts-template-wl-n
b440 61 6d 65 20 28 26 6f 70 74 69 6f 6e 61 6c 20 72 65 74 75 72 6e 2d 76 61 6c 75 65 29 0a 20 20 22 ame.(&optional.return-value)..."
b460 54 72 79 20 74 6f 20 72 65 74 75 72 6e 20 74 68 65 20 63 6f 6e 74 61 63 74 20 6e 61 6d 65 20 66 Try.to.return.the.contact.name.f
b480 6f 72 20 61 20 74 65 6d 70 6c 61 74 65 20 66 72 6f 6d 20 77 6c 2e 0a 49 66 20 6e 6f 74 20 66 6f or.a.template.from.wl..If.not.fo
b4a0 75 6e 64 2c 20 72 65 74 75 72 6e 20 52 45 54 55 52 4e 2d 56 41 4c 55 45 20 6f 72 20 73 6f 6d 65 und,.return.RETURN-VALUE.or.some
b4c0 74 68 69 6e 67 20 74 68 61 74 20 77 6f 75 6c 64 20 61 73 6b 20 74 68 65 0a 75 73 65 72 2e 22 0a thing.that.would.ask.the.user.".
b4e0 20 20 28 6f 72 20 28 63 61 72 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 77 6c 2d 67 65 74 2d ..(or.(car.(org-contacts-wl-get-
b500 6e 61 6d 65 2d 65 6d 61 69 6c 29 29 0a 20 20 20 20 20 20 72 65 74 75 72 6e 2d 76 61 6c 75 65 0a name-email)).......return-value.
b520 20 20 20 20 20 20 22 25 5e 7b 4e 61 6d 65 7d 22 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 63 ......"%^{Name}"))..(defun.org-c
b540 6f 6e 74 61 63 74 73 2d 74 65 6d 70 6c 61 74 65 2d 77 6c 2d 65 6d 61 69 6c 20 28 26 6f 70 74 69 ontacts-template-wl-email.(&opti
b560 6f 6e 61 6c 20 72 65 74 75 72 6e 2d 76 61 6c 75 65 29 0a 20 20 22 54 72 79 20 74 6f 20 72 65 74 onal.return-value)..."Try.to.ret
b580 75 72 6e 20 74 68 65 20 63 6f 6e 74 61 63 74 20 65 6d 61 69 6c 20 66 6f 72 20 61 20 74 65 6d 70 urn.the.contact.email.for.a.temp
b5a0 6c 61 74 65 20 66 72 6f 6d 20 57 61 6e 64 65 72 6c 75 73 74 2e 0a 49 66 20 6e 6f 74 20 66 6f 75 late.from.Wanderlust..If.not.fou
b5c0 6e 64 20 72 65 74 75 72 6e 20 52 45 54 55 52 4e 2d 56 41 4c 55 45 20 6f 72 20 73 6f 6d 65 74 68 nd.return.RETURN-VALUE.or.someth
b5e0 69 6e 67 20 74 68 61 74 20 77 6f 75 6c 64 20 61 73 6b 20 74 68 65 20 75 73 65 72 2e 22 0a 20 20 ing.that.would.ask.the.user."...
b600 28 6f 72 20 28 63 61 64 72 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 77 6c 2d 67 65 74 2d 6e (or.(cadr.(org-contacts-wl-get-n
b620 61 6d 65 2d 65 6d 61 69 6c 29 29 0a 20 20 20 20 20 20 72 65 74 75 72 6e 2d 76 61 6c 75 65 0a 20 ame-email)).......return-value..
b640 20 20 20 20 20 28 63 6f 6e 63 61 74 20 22 25 5e 7b 22 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d .....(concat."%^{".org-contacts-
b660 65 6d 61 69 6c 2d 70 72 6f 70 65 72 74 79 20 22 7d 70 22 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f email-property."}p")))..(defun.o
b680 72 67 2d 63 6f 6e 74 61 63 74 73 2d 76 69 65 77 2d 73 65 6e 64 2d 65 6d 61 69 6c 20 28 26 6f 70 rg-contacts-view-send-email.(&op
b6a0 74 69 6f 6e 61 6c 20 61 73 6b 29 0a 20 20 22 53 65 6e 64 20 65 6d 61 69 6c 20 74 6f 20 74 68 65 tional.ask)..."Send.email.to.the
b6c0 20 63 6f 6e 74 61 63 74 20 61 74 20 70 6f 69 6e 74 2e 0a 49 66 20 41 53 4b 20 69 73 20 73 65 74 .contact.at.point..If.ASK.is.set
b6e0 2c 20 61 73 6b 20 66 6f 72 20 74 68 65 20 65 6d 61 69 6c 20 61 64 64 72 65 73 73 20 65 76 65 6e ,.ask.for.the.email.address.even
b700 20 69 66 20 74 68 65 72 65 27 73 20 6f 6e 6c 79 20 6f 6e 65 0a 61 64 64 72 65 73 73 2e 22 0a 20 .if.there's.only.one.address."..
b720 20 28 69 6e 74 65 72 61 63 74 69 76 65 20 22 50 22 29 0a 20 20 28 6c 65 74 20 28 28 6d 61 72 6b .(interactive."P")...(let.((mark
b740 65 72 20 28 6f 72 67 2d 67 65 74 2d 61 74 2d 62 6f 6c 20 27 6f 72 67 2d 68 64 2d 6d 61 72 6b 65 er.(org-get-at-bol.'org-hd-marke
b760 72 29 29 29 0a 20 20 20 20 28 6f 72 67 2d 77 69 74 68 2d 70 6f 69 6e 74 2d 61 74 20 6d 61 72 6b r))).....(org-with-point-at.mark
b780 65 72 0a 20 20 20 20 20 20 28 6c 65 74 20 28 28 65 6d 61 69 6c 73 20 28 6f 72 67 2d 65 6e 74 72 er.......(let.((emails.(org-entr
b7a0 79 2d 67 65 74 20 28 70 6f 69 6e 74 29 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 65 6d 61 69 6c y-get.(point).org-contacts-email
b7c0 2d 70 72 6f 70 65 72 74 79 29 29 29 0a 20 20 20 20 20 20 20 20 28 69 66 20 65 6d 61 69 6c 73 0a -property))).........(if.emails.
b7e0 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 65 6d 61 69 6c 2d 6c 69 73 74 20 28 6f ............(let.((email-list.(o
b800 72 67 2d 63 6f 6e 74 61 63 74 73 2d 73 70 6c 69 74 2d 70 72 6f 70 65 72 74 79 20 65 6d 61 69 6c rg-contacts-split-property.email
b820 73 29 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 3d 20 28 s)))...............(if.(and.(=.(
b840 6c 65 6e 67 74 68 20 65 6d 61 69 6c 2d 6c 69 73 74 29 20 31 29 20 28 6e 6f 74 20 61 73 6b 29 29 length.email-list).1).(not.ask))
b860 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6d 70 6f 73 65 2d 6d 61 69 6c ...................(compose-mail
b880 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 66 6f 72 6d 61 74 2d 65 6d 61 69 6c 0a 20 20 20 20 .(org-contacts-format-email.....
b8a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 .............................(or
b8c0 67 2d 67 65 74 2d 68 65 61 64 69 6e 67 20 74 29 20 65 6d 61 69 6c 73 29 29 0a 20 20 20 20 20 20 g-get-heading.t).emails)).......
b8e0 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 65 6d 61 69 6c 20 28 63 6f 6d 70 6c 65 74 69 ..........(let.((email.(completi
b900 6e 67 2d 72 65 61 64 20 22 53 65 6e 64 20 6d 61 69 6c 20 74 6f 20 77 68 69 63 68 20 61 64 64 72 ng-read."Send.mail.to.which.addr
b920 65 73 73 3a 20 22 20 65 6d 61 69 6c 2d 6c 69 73 74 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 ess:.".email-list)))............
b940 20 20 20 20 20 20 20 28 73 65 74 71 20 65 6d 61 69 6c 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 .......(setq.email.(org-contacts
b960 2d 73 74 72 69 70 2d 6c 69 6e 6b 20 65 6d 61 69 6c 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 -strip-link.email)).............
b980 20 20 20 20 20 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 63 68 65 63 6b 2d 6d 61 69 6c 2d 61 ......(org-contacts-check-mail-a
b9a0 64 64 72 65 73 73 20 65 6d 61 69 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ddress.email)...................
b9c0 28 63 6f 6d 70 6f 73 65 2d 6d 61 69 6c 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 66 6f 72 6d (compose-mail.(org-contacts-form
b9e0 61 74 2d 65 6d 61 69 6c 20 28 6f 72 67 2d 67 65 74 2d 68 65 61 64 69 6e 67 20 74 29 20 65 6d 61 at-email.(org-get-heading.t).ema
ba00 69 6c 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 65 72 72 6f 72 20 28 66 6f 72 6d 61 74 il)))))...........(error.(format
ba20 20 22 54 68 69 73 20 63 6f 6e 74 61 63 74 20 68 61 73 20 6e 6f 20 6d 61 69 6c 20 61 64 64 72 65 ."This.contact.has.no.mail.addre
ba40 73 73 20 73 65 74 20 28 6e 6f 20 25 73 20 70 72 6f 70 65 72 74 79 29 22 0a 20 20 20 20 20 20 20 ss.set.(no.%s.property)"........
ba60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 65 ..................org-contacts-e
ba80 6d 61 69 6c 2d 70 72 6f 70 65 72 74 79 29 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 mail-property)))))))..(defun.org
baa0 2d 63 6f 6e 74 61 63 74 73 2d 67 65 74 2d 69 63 6f 6e 20 28 26 6f 70 74 69 6f 6e 61 6c 20 70 6f -contacts-get-icon.(&optional.po
bac0 6d 29 0a 20 20 22 47 65 74 20 69 63 6f 6e 20 66 6f 72 20 63 6f 6e 74 61 63 74 20 61 74 20 50 4f m)..."Get.icon.for.contact.at.PO
bae0 4d 2e 22 0a 20 20 28 73 65 74 71 20 70 6f 6d 20 28 6f 72 20 70 6f 6d 20 28 70 6f 69 6e 74 29 29 M."...(setq.pom.(or.pom.(point))
bb00 29 0a 20 20 28 63 61 74 63 68 20 27 69 63 6f 6e 0a 20 20 20 20 3b 3b 20 55 73 65 20 60 6f 72 67 )...(catch.'icon.....;;.Use.`org
bb20 2d 63 6f 6e 74 61 63 74 73 2d 69 63 6f 6e 2d 70 72 6f 70 65 72 74 79 27 0a 20 20 20 20 28 6c 65 -contacts-icon-property'.....(le
bb40 74 2a 20 28 28 6c 69 6e 6b 2d 6d 61 74 63 68 65 72 2d 72 65 67 65 78 70 0a 20 20 20 20 20 20 20 t*.((link-matcher-regexp........
bb60 20 20 20 20 20 22 5c 5c 5b 5c 5c 5b 5c 5c 28 5b 5e 5d 5d 2a 5c 5c 29 5c 5c 5d 5c 5c 28 5c 5c 5b ....."\\[\\[\\([^]]*\\)\\]\\(\\[
bb80 5c 5c 28 2e 2a 5c 5c 29 5c 5c 5d 5c 5c 29 3f 5c 5c 5d 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 \\(.*\\)\\]\\)?\\]")............
bba0 28 63 6f 6e 74 61 63 74 73 2d 64 69 72 20 28 66 69 6c 65 2d 6e 61 6d 65 2d 64 69 72 65 63 74 6f (contacts-dir.(file-name-directo
bbc0 72 79 20 28 63 61 72 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 66 69 6c 65 73 29 29 29 29 0a ry.(car.(org-contacts-files)))).
bbe0 20 20 20 20 20 20 20 20 20 20 20 28 69 6d 61 67 65 2d 70 61 74 68 0a 20 20 20 20 20 20 20 20 20 ...........(image-path..........
bc00 20 20 20 28 69 66 2d 6c 65 74 20 28 28 61 76 61 74 61 72 20 28 6f 72 67 2d 65 6e 74 72 79 2d 67 ...(if-let.((avatar.(org-entry-g
bc20 65 74 20 70 6f 6d 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 69 63 6f 6e 2d 70 72 6f 70 65 72 74 et.pom.org-contacts-icon-propert
bc40 79 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 64 0a 20 20 20 20 20 y))).................(cond......
bc60 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 5b 5b 66 69 6c 65 3a 64 69 72 2f 66 69 6c 65 6e 61 ............;;.[[file:dir/filena
bc80 6d 65 2e 70 6e 67 5d 5d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 73 74 72 69 me.png]]..................((stri
bca0 6e 67 2d 6d 61 74 63 68 2d 70 20 22 5c 5c 5b 5c 5c 5b 2e 2a 5c 5c 5d 5c 5c 5d 22 20 61 76 61 74 ng-match-p."\\[\\[.*\\]\\]".avat
bcc0 61 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 46 49 58 4d 45 3a 20 ar)...................;;.FIXME:.
bce0 57 68 61 74 20 69 66 20 61 76 61 74 61 72 20 6d 61 74 63 68 65 73 20 74 68 65 20 61 62 6f 76 65 What.if.avatar.matches.the.above
bd00 20 72 65 67 65 78 70 20 62 75 74 20 74 68 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .regexp.but.the.................
bd20 20 20 3b 3b 20 6f 6e 65 20 62 65 6c 6f 77 3f 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..;;.one.below?.................
bd40 20 20 28 77 68 65 6e 20 28 73 74 72 69 6e 67 2d 6d 61 74 63 68 20 6c 69 6e 6b 2d 6d 61 74 63 68 ..(when.(string-match.link-match
bd60 65 72 2d 72 65 67 65 78 70 20 61 76 61 74 61 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 er-regexp.avatar)...............
bd80 20 20 20 20 20 20 3b 3b 20 46 49 58 4d 45 3a 20 35 20 73 65 65 6d 73 20 74 6f 20 62 65 20 74 68 ......;;.FIXME:.5.seems.to.be.th
bda0 65 20 6c 65 6e 67 74 68 20 6f 66 20 60 66 69 6c 65 3a 27 20 62 75 74 20 49 20 63 61 6e 27 74 0a e.length.of.`file:'.but.I.can't.
bdc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 73 65 65 20 61 6e 79 74 68 ....................;;.see.anyth
bde0 69 6e 67 20 74 68 61 74 20 67 75 61 72 61 6e 74 65 65 73 20 74 68 61 74 20 74 68 65 20 73 75 62 ing.that.guarantees.that.the.sub
be00 6d 61 74 63 68 20 31 20 73 74 61 72 74 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 match.1.starts..................
be20 20 20 20 3b 3b 20 77 69 74 68 20 60 66 69 6c 65 3a 27 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 ...;;.with.`file:'..............
be40 20 20 20 20 20 20 20 20 28 65 78 70 61 6e 64 2d 66 69 6c 65 2d 6e 61 6d 65 20 28 73 75 62 73 74 ........(expand-file-name.(subst
be60 72 69 6e 67 20 28 6d 61 74 63 68 2d 73 74 72 69 6e 67 2d 6e 6f 2d 70 72 6f 70 65 72 74 69 65 73 ring.(match-string-no-properties
be80 20 31 20 61 76 61 74 61 72 29 20 35 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .1.avatar).5.nil)...............
bea0 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 61 63 74 73 ........................contacts
bec0 2d 64 69 72 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 22 22 20 28 -dir)))..................;;."".(
bee0 65 6d 70 74 79 20 73 74 72 69 6e 67 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 empty.string)..................(
bf00 28 73 74 72 69 6e 67 2d 65 6d 70 74 79 2d 70 20 61 76 61 74 61 72 29 20 6e 69 6c 29 0a 20 20 20 (string-empty-p.avatar).nil)....
bf20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 74 20 28 65 78 70 61 6e 64 2d 66 69 6c 65 2d 6e 61 ..............(t.(expand-file-na
bf40 6d 65 20 61 76 61 74 61 72 20 63 6f 6e 74 61 63 74 73 2d 64 69 72 29 29 29 29 29 29 0a 20 20 20 me.avatar.contacts-dir))))))....
bf60 20 20 20 28 77 68 65 6e 20 69 6d 61 67 65 2d 70 61 74 68 0a 20 20 20 20 20 20 20 20 28 74 68 72 ...(when.image-path.........(thr
bf80 6f 77 20 27 69 63 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 66 65 61 ow.'icon................(if.(fea
bfa0 74 75 72 65 70 20 27 69 6d 61 67 65 6d 61 67 69 63 6b 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 turep.'imagemagick).............
bfc0 20 20 20 20 20 20 20 28 63 72 65 61 74 65 2d 69 6d 61 67 65 20 69 6d 61 67 65 2d 70 61 74 68 20 .......(create-image.image-path.
bfe0 27 69 6d 61 67 65 6d 61 67 69 63 6b 20 6e 69 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 'imagemagick.nil................
c000 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 68 65 69 67 68 74 20 6f 72 67 2d 63 6f ..................:height.org-co
c020 6e 74 61 63 74 73 2d 69 63 6f 6e 2d 73 69 7a 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ntacts-icon-size)...............
c040 20 20 20 28 63 72 65 61 74 65 2d 69 6d 61 67 65 20 69 6d 61 67 65 2d 70 61 74 68 20 6e 69 6c 20 ...(create-image.image-path.nil.
c060 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 20 20 20 20 nil.............................
c080 20 20 20 3a 68 65 69 67 68 74 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 69 63 6f 6e 2d 73 69 7a ...:height.org-contacts-icon-siz
c0a0 65 29 29 29 29 29 0a 20 20 20 20 3b 3b 20 4e 65 78 74 2c 20 74 72 79 20 47 72 61 76 61 74 61 72 e))))).....;;.Next,.try.Gravatar
c0c0 0a 20 20 20 20 28 77 68 65 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 69 63 6f 6e 2d 75 73 65 .....(when.org-contacts-icon-use
c0e0 2d 67 72 61 76 61 74 61 72 0a 20 20 20 20 20 20 28 64 65 66 76 61 72 20 67 72 61 76 61 74 61 72 -gravatar.......(defvar.gravatar
c100 2d 73 69 7a 65 29 0a 20 20 20 20 20 20 28 6c 65 74 2a 20 28 28 67 72 61 76 61 74 61 72 2d 73 69 -size).......(let*.((gravatar-si
c120 7a 65 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 69 63 6f 6e 2d 73 69 7a 65 29 0a 20 20 20 20 20 ze.org-contacts-icon-size)......
c140 20 20 20 20 20 20 20 20 28 65 6d 61 69 6c 2d 6c 69 73 74 20 28 6f 72 67 2d 65 6e 74 72 79 2d 67 ........(email-list.(org-entry-g
c160 65 74 20 70 6f 6d 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 65 6d 61 69 6c 2d 70 72 6f 70 65 72 et.pom.org-contacts-email-proper
c180 74 79 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 67 72 61 76 61 74 61 72 0a 20 20 20 20 ty))..............(gravatar.....
c1a0 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 65 6d 61 69 6c 2d 6c 69 73 74 0a 20 20 20 20 20 ..........(when.email-list......
c1c0 20 20 20 20 20 20 20 20 20 20 20 28 63 6c 2d 6c 6f 6f 70 20 66 6f 72 20 65 6d 61 69 6c 20 69 6e ...........(cl-loop.for.email.in
c1e0 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 73 70 6c 69 74 2d 70 72 6f 70 65 72 74 79 20 65 6d .(org-contacts-split-property.em
c200 61 69 6c 2d 6c 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 20 ail-list).......................
c220 20 20 20 66 6f 72 20 67 72 61 76 61 74 61 72 20 3d 20 28 67 72 61 76 61 74 61 72 2d 72 65 74 72 ...for.gravatar.=.(gravatar-retr
c240 69 65 76 65 2d 73 79 6e 63 68 72 6f 6e 6f 75 73 6c 79 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 ieve-synchronously.(org-contacts
c260 2d 73 74 72 69 70 2d 6c 69 6e 6b 20 65 6d 61 69 6c 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 -strip-link.email)).............
c280 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 61 6e 64 20 67 72 61 76 61 74 61 72 0a 20 20 .............if.(and.gravatar...
c2a0 20 20 20 20 20 20 20 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 ...............................(
c2c0 6e 6f 74 20 28 65 71 20 67 72 61 76 61 74 61 72 20 27 65 72 72 6f 72 29 29 29 0a 20 20 20 20 20 not.(eq.gravatar.'error)))......
c2e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 67 72 61 76 61 ....................return.grava
c300 74 61 72 29 29 29 29 0a 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 67 72 61 76 61 74 61 72 20 28 tar)))).........(when.gravatar.(
c320 74 68 72 6f 77 20 27 69 63 6f 6e 20 67 72 61 76 61 74 61 72 29 29 29 29 29 29 0a 0a 28 64 65 66 throw.'icon.gravatar))))))..(def
c340 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 69 72 63 2d 62 75 66 66 65 72 20 28 26 6f 70 74 un.org-contacts-irc-buffer.(&opt
c360 69 6f 6e 61 6c 20 70 6f 6d 29 0a 20 20 22 47 65 74 20 74 68 65 20 49 52 43 20 62 75 66 66 65 72 ional.pom)..."Get.the.IRC.buffer
c380 20 61 73 73 6f 63 69 61 74 65 64 20 77 69 74 68 20 74 68 65 20 65 6e 74 72 79 20 61 74 20 50 4f .associated.with.the.entry.at.PO
c3a0 4d 2e 22 0a 20 20 28 73 65 74 71 20 70 6f 6d 20 28 6f 72 20 70 6f 6d 20 28 70 6f 69 6e 74 29 29 M."...(setq.pom.(or.pom.(point))
c3c0 29 0a 20 20 28 6c 65 74 20 28 28 6e 69 63 6b 20 28 6f 72 67 2d 65 6e 74 72 79 2d 67 65 74 20 70 )...(let.((nick.(org-entry-get.p
c3e0 6f 6d 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 6e 69 63 6b 6e 61 6d 65 2d 70 72 6f 70 65 72 74 om.org-contacts-nickname-propert
c400 79 29 29 29 0a 20 20 20 20 28 77 68 65 6e 20 6e 69 63 6b 0a 20 20 20 20 20 20 28 6c 65 74 20 28 y))).....(when.nick.......(let.(
c420 28 62 75 66 66 65 72 20 28 67 65 74 2d 62 75 66 66 65 72 20 6e 69 63 6b 29 29 29 0a 20 20 20 20 (buffer.(get-buffer.nick))).....
c440 20 20 20 20 28 77 68 65 6e 20 62 75 66 66 65 72 0a 20 20 20 20 20 20 20 20 20 20 28 77 69 74 68 ....(when.buffer...........(with
c460 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 62 75 66 66 65 72 0a 20 20 20 20 20 20 20 20 20 -current-buffer.buffer..........
c480 20 20 20 28 77 68 65 6e 20 28 65 71 20 6d 61 6a 6f 72 2d 6d 6f 64 65 20 27 65 72 63 2d 6d 6f 64 ...(when.(eq.major-mode.'erc-mod
c4a0 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 75 66 66 65 72 29 29 29 29 29 29 29 0a 0a e)...............buffer)))))))..
c4c0 28 64 65 66 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 69 72 63 2d 6e 75 6d 62 65 72 2d 6f (defun.org-contacts-irc-number-o
c4e0 66 2d 75 6e 72 65 61 64 2d 6d 65 73 73 61 67 65 73 20 28 26 6f 70 74 69 6f 6e 61 6c 20 70 6f 6d f-unread-messages.(&optional.pom
c500 29 0a 20 20 22 52 65 74 75 72 6e 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20 75 6e 72 65 61 64 )..."Return.the.number.of.unread
c520 20 6d 65 73 73 61 67 65 73 20 66 6f 72 20 63 6f 6e 74 61 63 74 20 61 74 20 50 4f 4d 2e 22 0a 20 .messages.for.contact.at.POM."..
c540 20 28 77 68 65 6e 20 28 62 6f 75 6e 64 70 20 27 65 72 63 2d 6d 6f 64 69 66 69 65 64 2d 63 68 61 .(when.(boundp.'erc-modified-cha
c560 6e 6e 65 6c 73 2d 61 6c 69 73 74 29 0a 20 20 20 20 28 6c 65 74 20 28 28 6e 75 6d 62 65 72 20 28 nnels-alist).....(let.((number.(
c580 63 61 64 72 20 28 61 73 73 6f 63 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 69 72 63 2d 62 75 cadr.(assoc.(org-contacts-irc-bu
c5a0 66 66 65 72 20 70 6f 6d 29 20 65 72 63 2d 6d 6f 64 69 66 69 65 64 2d 63 68 61 6e 6e 65 6c 73 2d ffer.pom).erc-modified-channels-
c5c0 61 6c 69 73 74 29 29 29 29 0a 20 20 20 20 20 20 28 69 66 20 6e 75 6d 62 65 72 0a 20 20 20 20 20 alist)))).......(if.number......
c5e0 20 20 20 20 20 28 66 6f 72 6d 61 74 20 28 63 6f 6e 63 61 74 20 22 25 33 64 20 75 6e 72 65 61 64 .....(format.(concat."%3d.unread
c600 20 6d 65 73 73 61 67 65 22 20 28 69 66 20 28 3e 20 6e 75 6d 62 65 72 20 31 29 20 22 73 22 20 22 .message".(if.(>.number.1)."s"."
c620 20 22 29 20 22 20 22 29 20 6e 75 6d 62 65 72 29 0a 20 20 20 20 20 20 20 20 28 6d 61 6b 65 2d 73 .").".").number).........(make-s
c640 74 72 69 6e 67 20 32 31 20 3f 20 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 63 6f 6e tring.21.?.)))))..(defun.org-con
c660 74 61 63 74 73 2d 76 69 65 77 2d 73 77 69 74 63 68 2d 74 6f 2d 69 72 63 2d 62 75 66 66 65 72 20 tacts-view-switch-to-irc-buffer.
c680 28 29 0a 20 20 22 53 77 69 74 63 68 20 74 6f 20 74 68 65 20 49 52 43 20 62 75 66 66 65 72 20 6f ()..."Switch.to.the.IRC.buffer.o
c6a0 66 20 74 68 65 20 63 75 72 72 65 6e 74 20 63 6f 6e 74 61 63 74 20 69 66 20 69 74 20 68 61 73 20 f.the.current.contact.if.it.has.
c6c0 6f 6e 65 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20 28 6c 65 74 20 28 28 6d one."...(interactive)...(let.((m
c6e0 61 72 6b 65 72 20 28 6f 72 67 2d 67 65 74 2d 61 74 2d 62 6f 6c 20 27 6f 72 67 2d 68 64 2d 6d 61 arker.(org-get-at-bol.'org-hd-ma
c700 72 6b 65 72 29 29 29 0a 20 20 20 20 28 6f 72 67 2d 77 69 74 68 2d 70 6f 69 6e 74 2d 61 74 20 6d rker))).....(org-with-point-at.m
c720 61 72 6b 65 72 0a 20 20 20 20 20 20 28 73 77 69 74 63 68 2d 74 6f 2d 62 75 66 66 65 72 2d 6f 74 arker.......(switch-to-buffer-ot
c740 68 65 72 2d 77 69 6e 64 6f 77 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 69 72 63 2d 62 75 66 her-window.(org-contacts-irc-buf
c760 66 65 72 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 63 6f fer)))))..(defun.org-contacts-co
c780 6d 70 6c 65 74 69 6e 67 2d 72 65 61 64 2d 6e 69 63 6b 6e 61 6d 65 20 28 70 72 6f 6d 70 74 20 63 mpleting-read-nickname.(prompt.c
c7a0 6f 6c 6c 65 63 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ollection.......................
c7c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 26 ...............................&
c7e0 6f 70 74 69 6f 6e 61 6c 20 70 72 65 64 69 63 61 74 65 20 72 65 71 75 69 72 65 2d 6d 61 74 63 68 optional.predicate.require-match
c800 20 69 6e 69 74 69 61 6c 2d 69 6e 70 75 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .initial-input..................
c820 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
c840 20 20 20 20 68 69 73 74 20 64 65 66 20 69 6e 68 65 72 69 74 2d 69 6e 70 75 74 2d 6d 65 74 68 6f ....hist.def.inherit-input-metho
c860 64 29 0a 20 20 22 4c 69 6b 65 20 60 63 6f 6d 70 6c 65 74 69 6e 67 2d 72 65 61 64 27 20 62 75 74 d)..."Like.`completing-read'.but
c880 20 72 65 61 64 73 20 61 20 6e 69 63 6b 6e 61 6d 65 2e 22 0a 20 20 28 69 66 20 28 66 65 61 74 75 .reads.a.nickname."...(if.(featu
c8a0 72 65 70 20 27 65 72 63 29 0a 20 20 20 20 20 20 28 6f 72 67 2d 63 6f 6d 70 6c 65 74 69 6e 67 2d rep.'erc).......(org-completing-
c8c0 72 65 61 64 20 70 72 6f 6d 70 74 20 28 61 70 70 65 6e 64 20 63 6f 6c 6c 65 63 74 69 6f 6e 20 28 read.prompt.(append.collection.(
c8e0 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 65 72 63 2d 6e 69 63 6b 6e 61 6d 65 73 2d 6c 69 73 74 29 org-contacts-erc-nicknames-list)
c900 29 20 70 72 65 64 69 63 61 74 65 20 72 65 71 75 69 72 65 2d 6d 61 74 63 68 0a 20 20 20 20 20 20 ).predicate.require-match.......
c920 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 69 74 69 61 6c 2d 69 6e 70 .....................initial-inp
c940 75 74 20 68 69 73 74 20 64 65 66 20 69 6e 68 65 72 69 74 2d 69 6e 70 75 74 2d 6d 65 74 68 6f 64 ut.hist.def.inherit-input-method
c960 29 0a 20 20 20 20 28 6f 72 67 2d 63 6f 6d 70 6c 65 74 69 6e 67 2d 72 65 61 64 20 70 72 6f 6d 70 ).....(org-completing-read.promp
c980 74 20 63 6f 6c 6c 65 63 74 69 6f 6e 20 70 72 65 64 69 63 61 74 65 20 72 65 71 75 69 72 65 2d 6d t.collection.predicate.require-m
c9a0 61 74 63 68 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 6e atch..........................in
c9c0 69 74 69 61 6c 2d 69 6e 70 75 74 20 68 69 73 74 20 64 65 66 20 69 6e 68 65 72 69 74 2d 69 6e 70 itial-input.hist.def.inherit-inp
c9e0 75 74 2d 6d 65 74 68 6f 64 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 ut-method)))..(defun.org-contact
ca00 73 2d 65 72 63 2d 6e 69 63 6b 6e 61 6d 65 73 2d 6c 69 73 74 20 28 29 0a 20 20 22 52 65 74 75 72 s-erc-nicknames-list.()..."Retur
ca20 6e 20 61 6c 6c 20 6e 69 63 6b 6e 61 6d 65 73 20 6f 66 20 61 6c 6c 20 45 52 43 20 62 75 66 66 65 n.all.nicknames.of.all.ERC.buffe
ca40 72 73 2e 22 0a 20 20 28 63 6c 2d 6c 6f 6f 70 20 66 6f 72 20 62 75 66 66 65 72 20 69 6e 20 28 65 rs."...(cl-loop.for.buffer.in.(e
ca60 72 63 2d 62 75 66 66 65 72 2d 6c 69 73 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 6e 63 6f 6e 63 rc-buffer-list)............nconc
ca80 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 62 75 66 66 65 72 0a 20 20 20 .(with-current-buffer.buffer....
caa0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6c 2d 6c 6f 6f 70 20 66 6f 72 20 75 73 65 ................(cl-loop.for.use
cac0 72 2d 65 6e 74 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 r-entry.........................
cae0 20 20 20 20 69 6e 20 28 6d 61 70 63 61 72 20 23 27 63 61 72 20 28 65 72 63 2d 67 65 74 2d 63 68 ....in.(mapcar.#'car.(erc-get-ch
cb00 61 6e 6e 65 6c 2d 75 73 65 72 2d 6c 69 73 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 annel-user-list))...............
cb20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6c 65 63 74 20 28 65 6c 74 20 75 73 65 72 2d ..............collect.(elt.user-
cb40 65 6e 74 72 79 20 31 29 29 29 29 29 0a 0a 28 61 64 64 2d 74 6f 2d 6c 69 73 74 20 27 6f 72 67 2d entry.1)))))..(add-to-list.'org-
cb60 70 72 6f 70 65 72 74 79 2d 73 65 74 2d 66 75 6e 63 74 69 6f 6e 73 2d 61 6c 69 73 74 0a 20 20 20 property-set-functions-alist....
cb80 20 20 20 20 20 20 20 20 20 20 60 28 2c 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 6e 69 63 6b 6e 61 ..........`(,org-contacts-nickna
cba0 6d 65 2d 70 72 6f 70 65 72 74 79 20 2e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 63 6f 6d 70 6c me-property...org-contacts-compl
cbc0 65 74 69 6e 67 2d 72 65 61 64 2d 6e 69 63 6b 6e 61 6d 65 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 eting-read-nickname))..(defun.or
cbe0 67 2d 63 6f 6e 74 61 63 74 73 2d 76 63 61 72 64 2d 65 73 63 61 70 65 20 28 73 74 72 29 0a 20 20 g-contacts-vcard-escape.(str)...
cc00 22 45 73 63 61 70 65 20 3b 20 2c 20 61 6e 64 20 5c 6e 20 69 6e 20 53 54 52 20 66 6f 72 20 74 68 "Escape.;.,.and.\n.in.STR.for.th
cc20 65 20 56 43 61 72 64 20 66 6f 72 6d 61 74 2e 22 0a 20 20 3b 3b 20 54 68 61 6e 6b 73 20 74 6f 20 e.VCard.format."...;;.Thanks.to.
cc40 74 68 69 73 20 6c 69 62 72 61 72 79 20 66 6f 72 20 74 68 65 20 72 65 67 65 78 70 3a 0a 20 20 3b this.library.for.the.regexp:...;
cc60 3b 20 68 74 74 70 73 3a 2f 2f 77 77 77 2e 65 6d 61 63 73 77 69 6b 69 2e 6f 72 67 2f 63 67 69 2d ;.https://www.emacswiki.org/cgi-
cc80 62 69 6e 2f 77 69 6b 69 2f 62 62 64 62 2d 76 63 61 72 64 2d 65 78 70 6f 72 74 2e 65 6c 0a 20 20 bin/wiki/bbdb-vcard-export.el...
cca0 28 77 68 65 6e 20 73 74 72 0a 20 20 20 20 28 72 65 70 6c 61 63 65 2d 72 65 67 65 78 70 2d 69 6e (when.str.....(replace-regexp-in
ccc0 2d 73 74 72 69 6e 67 0a 20 20 20 20 20 22 5c 6e 22 20 22 5c 5c 5c 5c 6e 22 0a 20 20 20 20 20 28 -string......"\n"."\\\\n"......(
cce0 72 65 70 6c 61 63 65 2d 72 65 67 65 78 70 2d 69 6e 2d 73 74 72 69 6e 67 20 22 5c 5c 28 3b 5c 5c replace-regexp-in-string."\\(;\\
cd00 7c 2c 5c 5c 7c 5c 5c 5c 5c 5c 5c 29 22 20 22 5c 5c 5c 5c 5c 5c 31 22 20 73 74 72 29 29 29 29 0a |,\\|\\\\\\)"."\\\\\\1".str)))).
cd20 0a 28 64 65 66 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 76 63 61 72 64 2d 65 6e 63 6f 64 .(defun.org-contacts-vcard-encod
cd40 65 2d 6e 61 6d 65 20 28 6e 61 6d 65 29 0a 20 20 22 54 72 79 20 74 6f 20 65 6e 63 6f 64 65 20 4e e-name.(name)..."Try.to.encode.N
cd60 41 4d 45 20 61 73 20 56 43 61 72 64 27 73 20 4e 20 70 72 6f 70 65 72 74 79 2e 0a 54 68 65 20 4e AME.as.VCard's.N.property..The.N
cd80 20 70 72 6f 70 65 72 74 79 20 65 78 70 65 63 74 73 0a 0a 20 20 46 61 6d 69 6c 79 4e 61 6d 65 3b .property.expects....FamilyName;
cda0 47 69 76 65 6e 4e 61 6d 65 3b 41 64 64 69 74 69 6f 6e 61 6c 4e 61 6d 65 73 3b 50 72 65 66 69 78 GivenName;AdditionalNames;Prefix
cdc0 3b 50 6f 73 74 66 69 78 2e 0a 0a 4f 72 67 2d 63 6f 6e 74 61 63 74 73 20 64 6f 65 73 20 6e 6f 74 ;Postfix...Org-contacts.does.not
cde0 20 73 70 65 63 69 66 79 20 68 6f 77 20 74 6f 20 65 6e 63 6f 64 65 20 74 68 65 20 6e 61 6d 65 2e .specify.how.to.encode.the.name.
ce00 20 20 53 6f 20 77 65 20 74 72 79 0a 74 6f 20 64 6f 20 6f 75 72 20 62 65 73 74 2e 22 0a 20 20 28 ..So.we.try.to.do.our.best."...(
ce20 63 6f 6e 63 61 74 20 28 72 65 70 6c 61 63 65 2d 72 65 67 65 78 70 2d 69 6e 2d 73 74 72 69 6e 67 concat.(replace-regexp-in-string
ce40 20 22 5c 5c 28 5c 5c 77 2b 5c 5c 29 20 5c 5c 28 2e 2a 5c 5c 29 22 20 22 5c 5c 32 3b 5c 5c 31 22 ."\\(\\w+\\).\\(.*\\)"."\\2;\\1"
ce60 20 6e 61 6d 65 29 20 22 3b 3b 3b 22 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 .name).";;;"))..(defun.org-conta
ce80 63 74 73 2d 76 63 61 72 64 2d 66 6f 72 6d 61 74 20 28 63 6f 6e 74 61 63 74 29 0a 20 20 22 46 6f cts-vcard-format.(contact)..."Fo
cea0 72 6d 61 74 73 20 43 4f 4e 54 41 43 54 20 69 6e 20 56 43 61 72 64 20 33 2e 30 20 66 6f 72 6d 61 rmats.CONTACT.in.VCard.3.0.forma
cec0 74 2e 22 0a 20 20 28 6c 65 74 2a 20 28 28 70 72 6f 70 65 72 74 69 65 73 20 28 6e 74 68 20 32 20 t."...(let*.((properties.(nth.2.
cee0 63 6f 6e 74 61 63 74 29 29 0a 20 20 20 20 20 20 20 20 20 28 6e 61 6d 65 20 28 6f 72 67 2d 63 6f contact))..........(name.(org-co
cf00 6e 74 61 63 74 73 2d 76 63 61 72 64 2d 65 73 63 61 70 65 20 28 63 61 72 20 63 6f 6e 74 61 63 74 ntacts-vcard-escape.(car.contact
cf20 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 6e 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 76 63 )))..........(n.(org-contacts-vc
cf40 61 72 64 2d 65 6e 63 6f 64 65 2d 6e 61 6d 65 20 6e 61 6d 65 29 29 0a 20 20 20 20 20 20 20 20 20 ard-encode-name.name))..........
cf60 28 65 6d 61 69 6c 20 28 63 64 72 20 28 61 73 73 6f 63 2d 73 74 72 69 6e 67 20 6f 72 67 2d 63 6f (email.(cdr.(assoc-string.org-co
cf80 6e 74 61 63 74 73 2d 65 6d 61 69 6c 2d 70 72 6f 70 65 72 74 79 20 70 72 6f 70 65 72 74 69 65 73 ntacts-email-property.properties
cfa0 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 74 65 6c 20 28 63 64 72 20 28 61 73 73 6f 63 2d 73 74 )))..........(tel.(cdr.(assoc-st
cfc0 72 69 6e 67 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 74 65 6c 2d 70 72 6f 70 65 72 74 79 20 70 ring.org-contacts-tel-property.p
cfe0 72 6f 70 65 72 74 69 65 73 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 69 67 6e 6f 72 65 2d 6c 69 roperties)))..........(ignore-li
d000 73 74 20 28 63 64 72 20 28 61 73 73 6f 63 2d 73 74 72 69 6e 67 20 6f 72 67 2d 63 6f 6e 74 61 63 st.(cdr.(assoc-string.org-contac
d020 74 73 2d 69 67 6e 6f 72 65 2d 70 72 6f 70 65 72 74 79 20 70 72 6f 70 65 72 74 69 65 73 29 29 29 ts-ignore-property.properties)))
d040 0a 20 20 20 20 20 20 20 20 20 28 69 67 6e 6f 72 65 2d 6c 69 73 74 20 28 77 68 65 6e 20 69 67 6e ..........(ignore-list.(when.ign
d060 6f 72 65 2d 6c 69 73 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ore-list........................
d080 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 73 70 6c 69 74 2d 70 72 6f 70 65 72 74 79 20 69 67 .(org-contacts-split-property.ig
d0a0 6e 6f 72 65 2d 6c 69 73 74 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 6e 6f 74 65 20 28 63 64 72 nore-list)))..........(note.(cdr
d0c0 20 28 61 73 73 6f 63 2d 73 74 72 69 6e 67 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 6e 6f 74 65 .(assoc-string.org-contacts-note
d0e0 2d 70 72 6f 70 65 72 74 79 20 70 72 6f 70 65 72 74 69 65 73 29 29 29 0a 20 20 20 20 20 20 20 20 -property.properties))).........
d100 20 28 62 64 61 79 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 76 63 61 72 64 2d 65 73 63 61 70 .(bday.(org-contacts-vcard-escap
d120 65 20 28 63 64 72 20 28 61 73 73 6f 63 2d 73 74 72 69 6e 67 20 6f 72 67 2d 63 6f 6e 74 61 63 74 e.(cdr.(assoc-string.org-contact
d140 73 2d 62 69 72 74 68 64 61 79 2d 70 72 6f 70 65 72 74 79 20 70 72 6f 70 65 72 74 69 65 73 29 29 s-birthday-property.properties))
d160 29 29 0a 20 20 20 20 20 20 20 20 20 28 61 64 64 72 20 28 63 64 72 20 28 61 73 73 6f 63 2d 73 74 ))..........(addr.(cdr.(assoc-st
d180 72 69 6e 67 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 61 64 64 72 65 73 73 2d 70 72 6f 70 65 72 ring.org-contacts-address-proper
d1a0 74 79 20 70 72 6f 70 65 72 74 69 65 73 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 6e 69 63 6b 20 ty.properties)))..........(nick.
d1c0 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 76 63 61 72 64 2d 65 73 63 61 70 65 20 28 63 64 72 20 (org-contacts-vcard-escape.(cdr.
d1e0 28 61 73 73 6f 63 2d 73 74 72 69 6e 67 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 6e 69 63 6b 6e (assoc-string.org-contacts-nickn
d200 61 6d 65 2d 70 72 6f 70 65 72 74 79 20 70 72 6f 70 65 72 74 69 65 73 29 29 29 29 0a 20 20 20 20 ame-property.properties)))).....
d220 20 20 20 20 20 28 68 65 61 64 20 28 66 6f 72 6d 61 74 20 22 42 45 47 49 4e 3a 56 43 41 52 44 5c .....(head.(format."BEGIN:VCARD\
d240 6e 56 45 52 53 49 4f 4e 3a 33 2e 30 5c 6e 4e 3a 25 73 5c 6e 46 4e 3a 25 73 5c 6e 22 20 6e 20 6e nVERSION:3.0\nN:%s\nFN:%s\n".n.n
d260 61 6d 65 29 29 0a 20 20 20 20 20 20 20 20 20 65 6d 61 69 6c 73 2d 6c 69 73 74 20 72 65 73 75 6c ame))..........emails-list.resul
d280 74 20 70 68 6f 6e 65 73 2d 6c 69 73 74 29 0a 20 20 20 20 28 63 6f 6e 63 61 74 0a 20 20 20 20 20 t.phones-list).....(concat......
d2a0 68 65 61 64 0a 20 20 20 20 20 28 77 68 65 6e 20 65 6d 61 69 6c 0a 20 20 20 20 20 20 20 28 70 72 head......(when.email........(pr
d2c0 6f 67 6e 0a 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 65 6d 61 69 6c 73 2d 6c 69 73 74 20 28 ogn..........(setq.emails-list.(
d2e0 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 72 65 6d 6f 76 65 2d 69 67 6e 6f 72 65 64 2d 70 72 6f 70 org-contacts-remove-ignored-prop
d300 65 72 74 79 2d 76 61 6c 75 65 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 erty-values.....................
d320 20 20 20 20 20 20 20 20 69 67 6e 6f 72 65 2d 6c 69 73 74 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 ........ignore-list.(org-contact
d340 73 2d 73 70 6c 69 74 2d 70 72 6f 70 65 72 74 79 20 65 6d 61 69 6c 29 29 29 0a 20 20 20 20 20 20 s-split-property.email))).......
d360 20 20 20 28 73 65 74 71 20 72 65 73 75 6c 74 20 22 22 29 0a 20 20 20 20 20 20 20 20 20 28 77 68 ...(setq.result."")..........(wh
d380 69 6c 65 20 65 6d 61 69 6c 73 2d 6c 69 73 74 0a 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 ile.emails-list............(setq
d3a0 20 72 65 73 75 6c 74 20 28 63 6f 6e 63 61 74 20 72 65 73 75 6c 74 20 20 22 45 4d 41 49 4c 3a 22 .result.(concat.result.."EMAIL:"
d3c0 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 73 74 72 69 70 2d 6c 69 6e 6b 20 28 63 61 72 20 65 .(org-contacts-strip-link.(car.e
d3e0 6d 61 69 6c 73 2d 6c 69 73 74 29 29 20 22 5c 6e 22 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 mails-list))."\n"))............(
d400 73 65 74 71 20 65 6d 61 69 6c 73 2d 6c 69 73 74 20 28 63 64 72 20 65 6d 61 69 6c 73 2d 6c 69 73 setq.emails-list.(cdr.emails-lis
d420 74 29 29 29 0a 20 20 20 20 20 20 20 20 20 72 65 73 75 6c 74 29 29 0a 20 20 20 20 20 28 77 68 65 t)))..........result))......(whe
d440 6e 20 61 64 64 72 0a 20 20 20 20 20 20 20 28 66 6f 72 6d 61 74 20 22 41 44 52 3a 3b 3b 25 73 5c n.addr........(format."ADR:;;%s\
d460 6e 22 20 28 72 65 70 6c 61 63 65 2d 72 65 67 65 78 70 2d 69 6e 2d 73 74 72 69 6e 67 20 22 5c 5c n".(replace-regexp-in-string."\\
d480 2c 20 3f 22 20 22 3b 22 20 61 64 64 72 29 29 29 0a 20 20 20 20 20 28 77 68 65 6e 20 74 65 6c 0a ,.?".";".addr)))......(when.tel.
d4a0 20 20 20 20 20 20 20 28 70 72 6f 67 6e 0a 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 70 68 6f .......(progn..........(setq.pho
d4c0 6e 65 73 2d 6c 69 73 74 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 72 65 6d 6f 76 65 2d 69 67 nes-list.(org-contacts-remove-ig
d4e0 6e 6f 72 65 64 2d 70 72 6f 70 65 72 74 79 2d 76 61 6c 75 65 73 0a 20 20 20 20 20 20 20 20 20 20 nored-property-values...........
d500 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 67 6e 6f 72 65 2d 6c 69 73 74 20 28 6f ..................ignore-list.(o
d520 72 67 2d 63 6f 6e 74 61 63 74 73 2d 73 70 6c 69 74 2d 70 72 6f 70 65 72 74 79 20 74 65 6c 29 29 rg-contacts-split-property.tel))
d540 29 0a 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 72 65 73 75 6c 74 20 22 22 29 0a 20 20 20 20 )..........(setq.result."").....
d560 20 20 20 20 20 28 77 68 69 6c 65 20 70 68 6f 6e 65 73 2d 6c 69 73 74 0a 20 20 20 20 20 20 20 20 .....(while.phones-list.........
d580 20 20 20 28 73 65 74 71 20 72 65 73 75 6c 74 20 28 63 6f 6e 63 61 74 20 72 65 73 75 6c 74 20 20 ...(setq.result.(concat.result..
d5a0 22 54 45 4c 3a 22 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 73 74 72 69 70 2d 6c 69 6e 6b 0a "TEL:".(org-contacts-strip-link.
d5c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
d5e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 6c 69 6e 6b 2d 75 6e 65 73 63 61 ................(org-link-unesca
d600 70 65 20 28 63 61 72 20 70 68 6f 6e 65 73 2d 6c 69 73 74 29 29 29 20 22 5c 6e 22 29 29 0a 20 20 pe.(car.phones-list)))."\n"))...
d620 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 70 68 6f 6e 65 73 2d 6c 69 73 74 20 28 63 64 72 20 .........(setq.phones-list.(cdr.
d640 70 68 6f 6e 65 73 2d 6c 69 73 74 29 29 29 0a 20 20 20 20 20 20 20 20 20 72 65 73 75 6c 74 29 29 phones-list)))..........result))
d660 0a 20 20 20 20 20 28 77 68 65 6e 20 62 64 61 79 0a 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 63 ......(when.bday........(let.((c
d680 61 6c 2d 62 64 61 79 20 28 63 61 6c 65 6e 64 61 72 2d 67 72 65 67 6f 72 69 61 6e 2d 66 72 6f 6d al-bday.(calendar-gregorian-from
d6a0 2d 61 62 73 6f 6c 75 74 65 20 28 6f 72 67 2d 74 69 6d 65 2d 73 74 72 69 6e 67 2d 74 6f 2d 61 62 -absolute.(org-time-string-to-ab
d6c0 73 6f 6c 75 74 65 20 62 64 61 79 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 66 6f 72 6d 61 74 solute.bday))))..........(format
d6e0 20 22 42 44 41 59 3a 25 30 34 64 2d 25 30 32 64 2d 25 30 32 64 5c 6e 22 0a 20 20 20 20 20 20 20 ."BDAY:%04d-%02d-%02d\n"........
d700 20 20 20 20 20 20 20 20 20 20 28 63 61 6c 65 6e 64 61 72 2d 65 78 74 72 61 63 74 2d 79 65 61 72 ..........(calendar-extract-year
d720 20 63 61 6c 2d 62 64 61 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 61 6c .cal-bday)..................(cal
d740 65 6e 64 61 72 2d 65 78 74 72 61 63 74 2d 6d 6f 6e 74 68 20 63 61 6c 2d 62 64 61 79 29 0a 20 20 endar-extract-month.cal-bday)...
d760 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 61 6c 65 6e 64 61 72 2d 65 78 74 72 61 63 74 ...............(calendar-extract
d780 2d 64 61 79 20 63 61 6c 2d 62 64 61 79 29 29 29 29 0a 20 20 20 20 20 28 77 68 65 6e 20 6e 69 63 -day.cal-bday))))......(when.nic
d7a0 6b 20 28 66 6f 72 6d 61 74 20 22 4e 49 43 4b 4e 41 4d 45 3a 25 73 5c 6e 22 20 6e 69 63 6b 29 29 k.(format."NICKNAME:%s\n".nick))
d7c0 0a 20 20 20 20 20 28 77 68 65 6e 20 6e 6f 74 65 20 28 66 6f 72 6d 61 74 20 22 4e 4f 54 45 3a 25 ......(when.note.(format."NOTE:%
d7e0 73 5c 6e 22 20 6e 6f 74 65 29 29 0a 20 20 20 20 20 22 45 4e 44 3a 56 43 41 52 44 5c 6e 5c 6e 22 s\n".note))......"END:VCARD\n\n"
d800 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 65 78 70 6f 72 74 2d )))..(defun.org-contacts-export-
d820 61 73 2d 76 63 61 72 64 20 28 26 6f 70 74 69 6f 6e 61 6c 20 6e 61 6d 65 20 66 69 6c 65 20 74 6f as-vcard.(&optional.name.file.to
d840 2d 62 75 66 66 65 72 29 0a 20 20 22 45 78 70 6f 72 74 20 6f 72 67 20 63 6f 6e 74 61 63 74 73 20 -buffer)..."Export.org.contacts.
d860 74 6f 20 56 2d 43 61 72 64 20 33 2e 30 2e 0a 0a 42 79 20 64 65 66 61 75 6c 74 2c 20 61 6c 6c 20 to.V-Card.3.0...By.default,.all.
d880 63 6f 6e 74 61 63 74 73 20 61 72 65 20 65 78 70 6f 72 74 65 64 20 74 6f 20 60 6f 72 67 2d 63 6f contacts.are.exported.to.`org-co
d8a0 6e 74 61 63 74 73 2d 76 63 61 72 64 2d 66 69 6c 65 27 2e 0a 0a 57 68 65 6e 20 4e 41 4d 45 20 69 ntacts-vcard-file'...When.NAME.i
d8c0 73 20 5c 5c 5b 75 6e 69 76 65 72 73 61 6c 2d 61 72 67 75 6d 65 6e 74 5d 2c 20 70 72 6f 6d 70 74 s.\\[universal-argument],.prompt
d8e0 73 20 66 6f 72 20 61 20 63 6f 6e 74 61 63 74 20 6e 61 6d 65 2e 0a 0a 57 68 65 6e 20 4e 41 4d 45 s.for.a.contact.name...When.NAME
d900 20 69 73 20 5c 5c 5b 75 6e 69 76 65 72 73 61 6c 2d 61 72 67 75 6d 65 6e 74 5d 20 5c 5c 5b 75 6e .is.\\[universal-argument].\\[un
d920 69 76 65 72 73 61 6c 2d 61 72 67 75 6d 65 6e 74 5d 2c 0a 70 72 6f 6d 70 74 73 20 66 6f 72 20 61 iversal-argument],.prompts.for.a
d940 20 63 6f 6e 74 61 63 74 20 6e 61 6d 65 20 61 6e 64 20 61 20 66 69 6c 65 20 6e 61 6d 65 20 77 68 .contact.name.and.a.file.name.wh
d960 65 72 65 20 74 6f 20 65 78 70 6f 72 74 2e 0a 0a 57 68 65 6e 20 4e 41 4d 45 20 69 73 20 5c 5c 5b ere.to.export...When.NAME.is.\\[
d980 75 6e 69 76 65 72 73 61 6c 2d 61 72 67 75 6d 65 6e 74 5d 20 5c 5c 5b 75 6e 69 76 65 72 73 61 6c universal-argument].\\[universal
d9a0 2d 61 72 67 75 6d 65 6e 74 5d 0a 5c 5c 5b 75 6e 69 76 65 72 73 61 6c 2d 61 72 67 75 6d 65 6e 74 -argument].\\[universal-argument
d9c0 5d 2c 20 70 72 6f 6d 70 74 73 20 66 6f 72 20 61 20 63 6f 6e 74 61 63 74 20 6e 61 6d 65 20 61 6e ],.prompts.for.a.contact.name.an
d9e0 64 20 61 20 62 75 66 66 65 72 20 77 68 65 72 65 20 74 6f 20 65 78 70 6f 72 74 2e 0a 0a 49 66 20 d.a.buffer.where.to.export...If.
da00 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 6e 6f 74 20 63 61 6c 6c 65 64 20 69 6e 74 65 72 the.function.is.not.called.inter
da20 61 63 74 69 76 65 6c 79 2c 20 61 6c 6c 20 70 61 72 61 6d 65 74 65 72 73 20 61 72 65 0a 70 61 73 actively,.all.parameters.are.pas
da40 73 65 64 20 74 6f 20 60 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 65 78 70 6f 72 74 2d 61 73 2d 76 sed.to.`org-contacts-export-as-v
da60 63 61 72 64 2d 69 6e 74 65 72 6e 61 6c 27 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 20 card-internal'."...(interactive.
da80 22 50 22 29 0a 20 20 28 77 68 65 6e 20 28 63 61 6c 6c 65 64 2d 69 6e 74 65 72 61 63 74 69 76 65 "P")...(when.(called-interactive
daa0 6c 79 2d 70 20 27 61 6e 79 29 0a 20 20 20 20 28 63 6c 2d 70 73 65 74 66 20 6e 61 6d 65 0a 20 20 ly-p.'any).....(cl-psetf.name...
dac0 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 6e 61 6d 65 0a 20 20 20 20 20 20 20 20 20 ............(when.name..........
dae0 20 20 20 20 20 20 20 28 72 65 61 64 2d 73 74 72 69 6e 67 20 22 43 6f 6e 74 61 63 74 20 6e 61 6d .......(read-string."Contact.nam
db00 65 3a 20 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 e:."............................
db20 20 20 28 6e 74 68 20 30 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 61 74 2d 70 6f 69 6e 74 29 ..(nth.0.(org-contacts-at-point)
db40 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 69 6c 65 0a 20 20 20 20 20 20 20 20 20 )))...............file..........
db60 20 20 20 20 20 28 77 68 65 6e 20 28 65 71 75 61 6c 20 6e 61 6d 65 20 27 28 31 36 29 29 0a 20 20 .....(when.(equal.name.'(16))...
db80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 72 65 61 64 2d 66 69 6c 65 2d 6e 61 6d 65 20 22 46 ..............(read-file-name."F
dba0 69 6c 65 3a 20 22 20 6e 69 6c 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 76 63 61 72 64 2d 66 69 ile:.".nil.org-contacts-vcard-fi
dbc0 6c 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 6f 2d 62 75 66 66 65 72 0a 20 20 20 le))...............to-buffer....
dbe0 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 65 71 75 61 6c 20 6e 61 6d 65 20 27 28 36 ...........(when.(equal.name.'(6
dc00 34 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 72 65 61 64 2d 62 75 66 66 65 72 4)).................(read-buffer
dc20 20 22 42 75 66 66 65 72 3a 20 22 29 29 29 29 0a 20 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d ."Buffer:."))))...(org-contacts-
dc40 65 78 70 6f 72 74 2d 61 73 2d 76 63 61 72 64 2d 69 6e 74 65 72 6e 61 6c 20 6e 61 6d 65 20 66 69 export-as-vcard-internal.name.fi
dc60 6c 65 20 74 6f 2d 62 75 66 66 65 72 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 le.to-buffer))..(defun.org-conta
dc80 63 74 73 2d 65 78 70 6f 72 74 2d 61 73 2d 76 63 61 72 64 2d 69 6e 74 65 72 6e 61 6c 20 28 26 6f cts-export-as-vcard-internal.(&o
dca0 70 74 69 6f 6e 61 6c 20 6e 61 6d 65 20 66 69 6c 65 20 74 6f 2d 62 75 66 66 65 72 29 0a 20 20 22 ptional.name.file.to-buffer)..."
dcc0 45 78 70 6f 72 74 20 61 6c 6c 20 63 6f 6e 74 61 63 74 73 20 6d 61 74 63 68 69 6e 67 20 4e 41 4d Export.all.contacts.matching.NAM
dce0 45 20 61 73 20 56 43 61 72 64 20 33 2e 30 2e 0a 49 66 20 54 4f 2d 42 55 46 46 45 52 20 69 73 20 E.as.VCard.3.0..If.TO-BUFFER.is.
dd00 6e 69 6c 2c 20 74 68 65 20 63 6f 6e 74 65 6e 74 20 69 73 20 77 72 69 74 74 65 6e 20 74 6f 20 46 nil,.the.content.is.written.to.F
dd20 49 4c 45 20 6f 72 0a 60 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 76 63 61 72 64 2d 66 69 6c 65 27 ILE.or.`org-contacts-vcard-file'
dd40 2e 20 20 49 66 20 54 4f 2d 42 55 46 46 45 52 20 69 73 20 6e 6f 6e 2d 6e 69 6c 2c 20 74 68 65 20 ...If.TO-BUFFER.is.non-nil,.the.
dd60 62 75 66 66 65 72 0a 69 73 20 63 72 65 61 74 65 64 20 61 6e 64 20 74 68 65 20 56 43 61 72 64 20 buffer.is.created.and.the.VCard.
dd80 69 73 20 77 72 69 74 74 65 6e 20 69 6e 74 6f 20 74 68 61 74 20 62 75 66 66 65 72 2e 22 0a 20 20 is.written.into.that.buffer."...
dda0 28 6c 65 74 2a 20 28 28 66 69 6c 65 6e 61 6d 65 20 28 6f 72 20 66 69 6c 65 20 6f 72 67 2d 63 6f (let*.((filename.(or.file.org-co
ddc0 6e 74 61 63 74 73 2d 76 63 61 72 64 2d 66 69 6c 65 29 29 0a 20 20 20 20 20 20 20 20 20 28 62 75 ntacts-vcard-file))..........(bu
dde0 66 66 65 72 20 28 69 66 20 74 6f 2d 62 75 66 66 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ffer.(if.to-buffer..............
de00 20 20 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 74 6f 2d 62 75 ........(get-buffer-create.to-bu
de20 66 66 65 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 69 6e 64 2d 66 ffer)....................(find-f
de40 69 6c 65 2d 6e 6f 73 65 6c 65 63 74 20 66 69 6c 65 6e 61 6d 65 29 29 29 29 0a 20 20 20 20 28 6d ile-noselect.filename)))).....(m
de60 65 73 73 61 67 65 20 22 45 78 70 6f 72 74 69 6e 67 2e 2e 2e 22 29 0a 20 20 20 20 28 73 65 74 2d essage."Exporting...").....(set-
de80 62 75 66 66 65 72 20 62 75 66 66 65 72 29 0a 20 20 20 20 28 6c 65 74 20 28 28 69 6e 68 69 62 69 buffer.buffer).....(let.((inhibi
dea0 74 2d 72 65 61 64 2d 6f 6e 6c 79 20 74 29 29 20 28 65 72 61 73 65 2d 62 75 66 66 65 72 29 29 0a t-read-only.t)).(erase-buffer)).
dec0 20 20 20 20 28 66 75 6e 64 61 6d 65 6e 74 61 6c 2d 6d 6f 64 65 29 0a 20 20 20 20 28 77 68 65 6e ....(fundamental-mode).....(when
dee0 20 28 66 62 6f 75 6e 64 70 20 27 73 65 74 2d 62 75 66 66 65 72 2d 66 69 6c 65 2d 63 6f 64 69 6e .(fboundp.'set-buffer-file-codin
df00 67 2d 73 79 73 74 65 6d 29 0a 20 20 20 20 20 20 28 73 65 74 2d 62 75 66 66 65 72 2d 66 69 6c 65 g-system).......(set-buffer-file
df20 2d 63 6f 64 69 6e 67 2d 73 79 73 74 65 6d 20 63 6f 64 69 6e 67 2d 73 79 73 74 65 6d 2d 66 6f 72 -coding-system.coding-system-for
df40 2d 77 72 69 74 65 29 29 0a 20 20 20 20 28 63 6c 2d 6c 6f 6f 70 20 66 6f 72 20 63 6f 6e 74 61 63 -write)).....(cl-loop.for.contac
df60 74 20 69 6e 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 66 69 6c 74 65 72 20 6e 61 6d 65 29 0a t.in.(org-contacts-filter.name).
df80 20 20 20 20 20 20 20 20 20 20 20 20 20 64 6f 20 28 69 6e 73 65 72 74 20 28 6f 72 67 2d 63 6f 6e .............do.(insert.(org-con
dfa0 74 61 63 74 73 2d 76 63 61 72 64 2d 66 6f 72 6d 61 74 20 63 6f 6e 74 61 63 74 29 29 29 0a 20 20 tacts-vcard-format.contact)))...
dfc0 20 20 28 69 66 20 74 6f 2d 62 75 66 66 65 72 0a 20 20 20 20 20 20 20 20 28 63 75 72 72 65 6e 74 ..(if.to-buffer.........(current
dfe0 2d 62 75 66 66 65 72 29 0a 20 20 20 20 20 20 28 70 72 6f 67 6e 20 28 73 61 76 65 2d 62 75 66 66 -buffer).......(progn.(save-buff
e000 65 72 29 20 28 6b 69 6c 6c 2d 62 75 66 66 65 72 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 er).(kill-buffer)))))..(defun.or
e020 67 2d 63 6f 6e 74 61 63 74 73 2d 73 68 6f 77 2d 6d 61 70 20 28 26 6f 70 74 69 6f 6e 61 6c 20 6e g-contacts-show-map.(&optional.n
e040 61 6d 65 29 0a 20 20 22 53 68 6f 77 20 63 6f 6e 74 61 63 74 73 20 6f 6e 20 61 20 6d 61 70 2e 0a ame)..."Show.contacts.on.a.map..
e060 52 65 71 75 69 72 65 73 20 67 6f 6f 67 6c 65 2d 6d 61 70 73 2d 65 6c 2e 22 0a 20 20 28 69 6e 74 Requires.google-maps-el."...(int
e080 65 72 61 63 74 69 76 65 29 0a 20 20 28 75 6e 6c 65 73 73 20 28 66 62 6f 75 6e 64 70 20 27 67 6f eractive)...(unless.(fboundp.'go
e0a0 6f 67 6c 65 2d 6d 61 70 73 2d 73 74 61 74 69 63 2d 73 68 6f 77 29 0a 20 20 20 20 28 65 72 72 6f ogle-maps-static-show).....(erro
e0c0 72 20 22 60 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 73 68 6f 77 2d 6d 61 70 27 20 72 65 71 75 69 r."`org-contacts-show-map'.requi
e0e0 72 65 73 20 60 67 6f 6f 67 6c 65 2d 6d 61 70 73 2d 65 6c 27 22 29 29 0a 20 20 28 67 6f 6f 67 6c res.`google-maps-el'"))...(googl
e100 65 2d 6d 61 70 73 2d 73 74 61 74 69 63 2d 73 68 6f 77 0a 20 20 20 3a 6d 61 72 6b 65 72 73 0a 20 e-maps-static-show....:markers..
e120 20 20 28 63 6c 2d 6c 6f 6f 70 0a 20 20 20 20 66 6f 72 20 63 6f 6e 74 61 63 74 20 69 6e 20 28 6f ..(cl-loop.....for.contact.in.(o
e140 72 67 2d 63 6f 6e 74 61 63 74 73 2d 66 69 6c 74 65 72 20 6e 61 6d 65 29 0a 20 20 20 20 66 6f 72 rg-contacts-filter.name).....for
e160 20 61 64 64 72 20 3d 20 28 63 64 72 20 28 61 73 73 6f 63 2d 73 74 72 69 6e 67 20 6f 72 67 2d 63 .addr.=.(cdr.(assoc-string.org-c
e180 6f 6e 74 61 63 74 73 2d 61 64 64 72 65 73 73 2d 70 72 6f 70 65 72 74 79 20 28 6e 74 68 20 32 20 ontacts-address-property.(nth.2.
e1a0 63 6f 6e 74 61 63 74 29 29 29 0a 20 20 20 20 69 66 20 61 64 64 72 0a 20 20 20 20 63 6f 6c 6c 65 contact))).....if.addr.....colle
e1c0 63 74 20 28 63 6f 6e 73 20 28 6c 69 73 74 20 61 64 64 72 29 20 28 6c 69 73 74 20 3a 6c 61 62 65 ct.(cons.(list.addr).(list.:labe
e1e0 6c 20 28 73 74 72 69 6e 67 2d 74 6f 2d 63 68 61 72 20 28 63 61 72 20 63 6f 6e 74 61 63 74 29 29 l.(string-to-char.(car.contact))
e200 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 73 74 72 69 70 )))))..(defun.org-contacts-strip
e220 2d 6c 69 6e 6b 20 28 6c 69 6e 6b 29 0a 20 20 22 52 65 6d 6f 76 65 20 62 72 61 63 6b 65 74 73 2c -link.(link)..."Remove.brackets,
e240 20 64 65 73 63 72 69 70 74 69 6f 6e 2c 20 6c 69 6e 6b 20 74 79 70 65 20 61 6e 64 20 63 6f 6c 6f .description,.link.type.and.colo
e260 6e 20 66 72 6f 6d 20 61 6e 20 6f 72 67 0a 6c 69 6e 6b 20 73 74 72 69 6e 67 20 61 6e 64 20 72 65 n.from.an.org.link.string.and.re
e280 74 75 72 6e 20 74 68 65 20 70 75 72 65 20 6c 69 6e 6b 20 74 61 72 67 65 74 2e 22 0a 20 20 28 6c turn.the.pure.link.target."...(l
e2a0 65 74 20 28 73 74 61 72 74 70 6f 73 20 63 6f 6c 6f 6e 70 6f 73 20 65 6e 64 70 6f 73 29 0a 20 20 et.(startpos.colonpos.endpos)...
e2c0 20 20 28 73 65 74 71 20 73 74 61 72 74 70 6f 73 20 28 73 74 72 69 6e 67 2d 6d 61 74 63 68 20 28 ..(setq.startpos.(string-match.(
e2e0 72 65 67 65 78 70 2d 6f 70 74 20 27 28 22 5b 5b 74 65 6c 3a 22 20 22 5b 5b 6d 61 69 6c 74 6f 3a regexp-opt.'("[[tel:"."[[mailto:
e300 22 29 29 20 6c 69 6e 6b 29 29 0a 20 20 20 20 28 69 66 20 73 74 61 72 74 70 6f 73 0a 20 20 20 20 ")).link)).....(if.startpos.....
e320 20 20 20 20 28 70 72 6f 67 6e 0a 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 63 6f 6c 6f 6e ....(progn...........(setq.colon
e340 70 6f 73 20 28 73 74 72 69 6e 67 2d 6d 61 74 63 68 20 22 3a 22 20 6c 69 6e 6b 29 29 0a 20 20 20 pos.(string-match.":".link))....
e360 20 20 20 20 20 20 20 28 73 65 74 71 20 65 6e 64 70 6f 73 20 28 73 74 72 69 6e 67 2d 6d 61 74 63 .......(setq.endpos.(string-matc
e380 68 20 22 5c 5c 5d 22 20 6c 69 6e 6b 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 69 66 20 65 6e 64 h."\\]".link))...........(if.end
e3a0 70 6f 73 20 28 73 75 62 73 74 72 69 6e 67 20 6c 69 6e 6b 20 28 31 2b 20 63 6f 6c 6f 6e 70 6f 73 pos.(substring.link.(1+.colonpos
e3c0 29 20 65 6e 64 70 6f 73 29 20 6c 69 6e 6b 29 29 0a 20 20 20 20 20 20 28 70 72 6f 67 6e 0a 20 20 ).endpos).link)).......(progn...
e3e0 20 20 20 20 20 20 28 73 65 74 71 20 73 74 61 72 74 70 6f 73 20 28 73 74 72 69 6e 67 2d 6d 61 74 ......(setq.startpos.(string-mat
e400 63 68 20 22 6d 61 69 6c 74 6f 3a 22 20 6c 69 6e 6b 29 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 ch."mailto:".link)).........(set
e420 71 20 63 6f 6c 6f 6e 70 6f 73 20 28 73 74 72 69 6e 67 2d 6d 61 74 63 68 20 22 3a 22 20 6c 69 6e q.colonpos.(string-match.":".lin
e440 6b 29 29 0a 20 20 20 20 20 20 20 20 28 69 66 20 73 74 61 72 74 70 6f 73 20 28 73 75 62 73 74 72 k)).........(if.startpos.(substr
e460 69 6e 67 20 6c 69 6e 6b 20 28 31 2b 20 63 6f 6c 6f 6e 70 6f 73 29 29 20 6c 69 6e 6b 29 29 29 29 ing.link.(1+.colonpos)).link))))
e480 29 0a 0a 3b 3b 20 41 64 64 20 74 68 65 20 6c 69 6e 6b 20 74 79 70 65 20 73 75 70 70 6f 72 74 65 )..;;.Add.the.link.type.supporte
e4a0 64 20 62 79 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 73 74 72 69 70 2d 6c 69 6e 6b 0a 3b 3b 20 d.by.org-contacts-strip-link.;;.
e4c0 73 6f 20 65 76 65 72 79 74 68 69 6e 67 20 69 73 20 69 6e 20 6f 72 64 65 72 20 66 6f 72 20 69 74 so.everything.is.in.order.for.it
e4e0 73 20 75 73 65 20 69 6e 20 4f 72 67 20 66 69 6c 65 73 0a 28 69 66 20 28 66 62 6f 75 6e 64 70 20 s.use.in.Org.files.(if.(fboundp.
e500 27 6f 72 67 2d 6c 69 6e 6b 2d 73 65 74 2d 70 61 72 61 6d 65 74 65 72 73 29 0a 20 20 20 20 28 6f 'org-link-set-parameters).....(o
e520 72 67 2d 6c 69 6e 6b 2d 73 65 74 2d 70 61 72 61 6d 65 74 65 72 73 20 22 74 65 6c 22 29 0a 20 20 rg-link-set-parameters."tel")...
e540 28 69 66 20 28 66 62 6f 75 6e 64 70 20 27 6f 72 67 2d 61 64 64 2d 6c 69 6e 6b 2d 74 79 70 65 29 (if.(fboundp.'org-add-link-type)
e560 0a 20 20 20 20 20 20 28 6f 72 67 2d 61 64 64 2d 6c 69 6e 6b 2d 74 79 70 65 20 22 74 65 6c 22 29 .......(org-add-link-type."tel")
e580 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 73 70 6c 69 74 2d 70 72 ))..(defun.org-contacts-split-pr
e5a0 6f 70 65 72 74 79 20 28 73 74 72 69 6e 67 20 26 6f 70 74 69 6f 6e 61 6c 20 73 65 70 61 72 61 74 operty.(string.&optional.separat
e5c0 6f 72 73 20 6f 6d 69 74 2d 6e 75 6c 6c 73 29 0a 20 20 22 43 75 73 74 6f 6d 20 76 65 72 73 69 6f ors.omit-nulls)..."Custom.versio
e5e0 6e 20 6f 66 20 60 73 70 6c 69 74 2d 73 74 72 69 6e 67 27 2e 0a 53 70 6c 69 74 20 61 20 70 72 6f n.of.`split-string'..Split.a.pro
e600 70 65 72 74 79 20 53 54 52 49 4e 47 20 69 6e 74 6f 20 73 75 62 2d 73 74 72 69 6e 67 73 20 62 6f perty.STRING.into.sub-strings.bo
e620 75 6e 64 65 64 20 62 79 20 6d 61 74 63 68 65 73 0a 66 6f 72 20 53 45 50 41 52 41 54 4f 52 53 20 unded.by.matches.for.SEPARATORS.
e640 62 75 74 20 6b 65 65 70 20 4f 72 67 20 6c 69 6e 6b 73 20 69 6e 74 61 63 74 2e 0a 0a 54 68 65 20 but.keep.Org.links.intact...The.
e660 62 65 67 69 6e 6e 69 6e 67 20 61 6e 64 20 65 6e 64 20 6f 66 20 53 54 52 49 4e 47 2c 20 61 6e 64 beginning.and.end.of.STRING,.and
e680 20 65 61 63 68 20 6d 61 74 63 68 20 66 6f 72 20 53 45 50 41 52 41 54 4f 52 53 2c 20 61 72 65 0a .each.match.for.SEPARATORS,.are.
e6a0 73 70 6c 69 74 74 69 6e 67 20 70 6f 69 6e 74 73 2e 20 20 54 68 65 20 73 75 62 73 74 72 69 6e 67 splitting.points...The.substring
e6c0 73 20 6d 61 74 63 68 69 6e 67 20 53 45 50 41 52 41 54 4f 52 53 20 61 72 65 20 72 65 6d 6f 76 65 s.matching.SEPARATORS.are.remove
e6e0 64 2c 20 61 6e 64 0a 74 68 65 20 73 75 62 73 74 72 69 6e 67 73 20 62 65 74 77 65 65 6e 20 74 68 d,.and.the.substrings.between.th
e700 65 20 73 70 6c 69 74 74 69 6e 67 20 70 6f 69 6e 74 73 20 61 72 65 20 63 6f 6c 6c 65 63 74 65 64 e.splitting.points.are.collected
e720 20 61 73 20 61 20 6c 69 73 74 2c 0a 77 68 69 63 68 20 69 73 20 72 65 74 75 72 6e 65 64 2e 0a 0a .as.a.list,.which.is.returned...
e740 49 66 20 53 45 50 41 52 41 54 4f 52 53 20 69 73 20 6e 6f 6e 2d 6e 69 6c 2c 20 69 74 20 73 68 6f If.SEPARATORS.is.non-nil,.it.sho
e760 75 6c 64 20 62 65 20 61 20 72 65 67 75 6c 61 72 20 65 78 70 72 65 73 73 69 6f 6e 0a 6d 61 74 63 uld.be.a.regular.expression.matc
e780 68 69 6e 67 20 74 65 78 74 20 77 68 69 63 68 20 73 65 70 61 72 61 74 65 73 2c 20 62 75 74 20 69 hing.text.which.separates,.but.i
e7a0 73 20 6e 6f 74 20 70 61 72 74 20 6f 66 2c 20 74 68 65 0a 73 75 62 73 74 72 69 6e 67 73 2e 20 20 s.not.part.of,.the.substrings...
e7c0 49 66 20 6e 69 6c 20 69 74 20 64 65 66 61 75 6c 74 73 20 74 6f 20 60 6f 72 67 2d 63 6f 6e 74 61 If.nil.it.defaults.to.`org-conta
e7e0 63 74 73 2d 70 72 6f 70 65 72 74 79 2d 76 61 6c 75 65 73 2d 73 65 70 61 72 61 74 6f 72 73 27 2c cts-property-values-separators',
e800 0a 6e 6f 72 6d 61 6c 6c 79 20 5c 22 5b 2c 3b 20 5c 66 5c 74 5c 6e 5c 72 5c 76 5d 2b 5c 22 2c 20 .normally.\"[,;.\f\t\n\r\v]+\",.
e820 61 6e 64 20 4f 4d 49 54 2d 4e 55 4c 4c 53 20 69 73 20 66 6f 72 63 65 64 20 74 6f 20 74 2e 0a 0a and.OMIT-NULLS.is.forced.to.t...
e840 49 66 20 4f 4d 49 54 2d 4e 55 4c 4c 53 20 69 73 20 74 2c 20 7a 65 72 6f 2d 6c 65 6e 67 74 68 20 If.OMIT-NULLS.is.t,.zero-length.
e860 73 75 62 73 74 72 69 6e 67 73 20 61 72 65 20 6f 6d 69 74 74 65 64 20 66 72 6f 6d 20 74 68 65 20 substrings.are.omitted.from.the.
e880 6c 69 73 74 20 5c 28 73 6f 0a 74 68 61 74 20 66 6f 72 20 74 68 65 20 64 65 66 61 75 6c 74 20 76 list.\(so.that.for.the.default.v
e8a0 61 6c 75 65 20 6f 66 20 53 45 50 41 52 41 54 4f 52 53 20 6c 65 61 64 69 6e 67 20 61 6e 64 20 74 alue.of.SEPARATORS.leading.and.t
e8c0 72 61 69 6c 69 6e 67 20 77 68 69 74 65 73 70 61 63 65 0a 61 72 65 20 65 66 66 65 63 74 69 76 65 railing.whitespace.are.effective
e8e0 6c 79 20 74 72 69 6d 6d 65 64 29 2e 20 20 49 66 20 6e 69 6c 2c 20 61 6c 6c 20 7a 65 72 6f 2d 6c ly.trimmed)...If.nil,.all.zero-l
e900 65 6e 67 74 68 20 73 75 62 73 74 72 69 6e 67 73 20 61 72 65 20 72 65 74 61 69 6e 65 64 2e 22 0a ength.substrings.are.retained.".
e920 20 20 28 6c 65 74 2a 20 28 28 6f 6d 69 74 2d 6e 75 6c 6c 73 20 28 69 66 20 73 65 70 61 72 61 74 ..(let*.((omit-nulls.(if.separat
e940 6f 72 73 20 6f 6d 69 74 2d 6e 75 6c 6c 73 20 74 29 29 0a 20 20 20 20 20 20 20 20 20 28 72 65 78 ors.omit-nulls.t))..........(rex
e960 70 20 28 6f 72 20 73 65 70 61 72 61 74 6f 72 73 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 70 72 p.(or.separators.org-contacts-pr
e980 6f 70 65 72 74 79 2d 76 61 6c 75 65 73 2d 73 65 70 61 72 61 74 6f 72 73 29 29 0a 20 20 20 20 20 operty-values-separators))......
e9a0 20 20 20 20 28 69 6e 70 75 74 6c 69 73 74 20 28 73 70 6c 69 74 2d 73 74 72 69 6e 67 20 73 74 72 ....(inputlist.(split-string.str
e9c0 69 6e 67 20 72 65 78 70 20 6f 6d 69 74 2d 6e 75 6c 6c 73 29 29 0a 20 20 20 20 20 20 20 20 20 28 ing.rexp.omit-nulls))..........(
e9e0 6c 69 6e 6b 73 74 72 69 6e 67 20 22 22 29 0a 20 20 20 20 20 20 20 20 20 28 62 75 66 66 65 72 73 linkstring."")..........(buffers
ea00 74 72 69 6e 67 20 22 22 29 0a 20 20 20 20 20 20 20 20 20 28 70 72 6f 70 6c 69 73 74 20 28 6c 69 tring."")..........(proplist.(li
ea20 73 74 20 22 22 29 29 29 0a 20 20 20 20 28 77 68 69 6c 65 20 69 6e 70 75 74 6c 69 73 74 0a 20 20 st.""))).....(while.inputlist...
ea40 20 20 20 20 28 73 65 74 71 20 62 75 66 66 65 72 73 74 72 69 6e 67 20 28 70 6f 70 20 69 6e 70 75 ....(setq.bufferstring.(pop.inpu
ea60 74 6c 69 73 74 29 29 0a 20 20 20 20 20 20 28 69 66 20 28 73 74 72 69 6e 67 2d 6d 61 74 63 68 20 tlist)).......(if.(string-match.
ea80 22 5c 5c 5b 5c 5c 5b 22 20 62 75 66 66 65 72 73 74 72 69 6e 67 29 0a 20 20 20 20 20 20 20 20 20 "\\[\\[".bufferstring)..........
eaa0 20 28 70 72 6f 67 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 6c 69 6e 6b 73 74 .(progn.............(setq.linkst
eac0 72 69 6e 67 20 28 63 6f 6e 63 61 74 20 62 75 66 66 65 72 73 74 72 69 6e 67 20 22 20 22 29 29 0a ring.(concat.bufferstring.".")).
eae0 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 6c 65 20 28 6e 6f 74 20 28 73 74 72 69 6e 67 2d ............(while.(not.(string-
eb00 6d 61 74 63 68 20 22 5c 5c 5d 5c 5c 5d 22 20 62 75 66 66 65 72 73 74 72 69 6e 67 29 29 0a 20 20 match."\\]\\]".bufferstring))...
eb20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 62 75 66 66 65 72 73 74 72 69 6e 67 20 28 ............(setq.bufferstring.(
eb40 70 6f 70 20 69 6e 70 75 74 6c 69 73 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 pop.inputlist))...............(s
eb60 65 74 71 20 6c 69 6e 6b 73 74 72 69 6e 67 20 28 63 6f 6e 63 61 74 20 20 6c 69 6e 6b 73 74 72 69 etq.linkstring.(concat..linkstri
eb80 6e 67 20 62 75 66 66 65 72 73 74 72 69 6e 67 20 22 20 22 29 29 29 0a 20 20 20 20 20 20 20 20 20 ng.bufferstring.".")))..........
eba0 20 20 20 28 73 65 74 71 20 70 72 6f 70 6c 69 73 74 20 28 63 6f 6e 73 20 28 6f 72 67 2d 74 72 69 ...(setq.proplist.(cons.(org-tri
ebc0 6d 20 6c 69 6e 6b 73 74 72 69 6e 67 29 20 70 72 6f 70 6c 69 73 74 29 29 29 0a 20 20 20 20 20 20 m.linkstring).proplist))).......
ebe0 20 20 28 73 65 74 71 20 70 72 6f 70 6c 69 73 74 20 28 63 6f 6e 73 20 62 75 66 66 65 72 73 74 72 ..(setq.proplist.(cons.bufferstr
ec00 69 6e 67 20 70 72 6f 70 6c 69 73 74 29 29 29 29 0a 20 20 20 20 28 63 64 72 20 28 72 65 76 65 72 ing.proplist)))).....(cdr.(rever
ec20 73 65 20 70 72 6f 70 6c 69 73 74 29 29 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a se.proplist))))..;;;###autoload.
ec40 3b 3b 20 41 64 64 20 61 6e 20 4f 72 67 20 6c 69 6e 6b 20 74 79 70 65 20 60 6f 72 67 2d 63 6f 6e ;;.Add.an.Org.link.type.`org-con
ec60 74 61 63 74 3a 27 20 66 6f 72 20 65 61 73 79 20 6a 75 6d 70 20 74 6f 20 6f 72 20 73 65 61 72 63 tact:'.for.easy.jump.to.or.searc
ec80 68 69 6e 67 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 20 68 65 61 64 6c 69 6e 65 2e 0a 3b 3b 20 6c hing.org-contacts.headline..;;.l
eca0 69 6e 6b 20 73 70 65 63 3a 20 5b 5b 6f 72 67 2d 63 6f 6e 74 61 63 74 3a 71 75 65 72 79 5d 5b 64 ink.spec:.[[org-contact:query][d
ecc0 65 73 63 5d 5d 0a 28 69 66 20 28 66 62 6f 75 6e 64 70 20 27 6f 72 67 2d 6c 69 6e 6b 2d 73 65 74 esc]].(if.(fboundp.'org-link-set
ece0 2d 70 61 72 61 6d 65 74 65 72 73 29 0a 20 20 20 20 28 6f 72 67 2d 6c 69 6e 6b 2d 73 65 74 2d 70 -parameters).....(org-link-set-p
ed00 61 72 61 6d 65 74 65 72 73 20 22 6f 72 67 2d 63 6f 6e 74 61 63 74 22 0a 20 20 20 20 20 20 20 20 arameters."org-contact".........
ed20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 66 6f 6c 6c 6f 77 20 23 27 6f .....................:follow.#'o
ed40 72 67 2d 63 6f 6e 74 61 63 74 73 2d 6c 69 6e 6b 2d 6f 70 65 6e 0a 20 20 20 20 20 20 20 20 20 20 rg-contacts-link-open...........
ed60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 63 6f 6d 70 6c 65 74 65 20 23 27 6f ...................:complete.#'o
ed80 72 67 2d 63 6f 6e 74 61 63 74 73 2d 6c 69 6e 6b 2d 63 6f 6d 70 6c 65 74 65 0a 20 20 20 20 20 20 rg-contacts-link-complete.......
eda0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 73 74 6f 72 65 20 23 27 .......................:store.#'
edc0 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 6c 69 6e 6b 2d 73 74 6f 72 65 0a 20 20 20 20 20 20 20 20 org-contacts-link-store.........
ede0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 66 61 63 65 20 27 6f 72 67 2d .....................:face.'org-
ee00 63 6f 6e 74 61 63 74 73 2d 6c 69 6e 6b 2d 66 61 63 65 29 0a 20 20 28 69 66 20 28 66 62 6f 75 6e contacts-link-face)...(if.(fboun
ee20 64 70 20 27 6f 72 67 2d 61 64 64 2d 6c 69 6e 6b 2d 74 79 70 65 29 0a 20 20 20 20 20 20 28 6f 72 dp.'org-add-link-type).......(or
ee40 67 2d 61 64 64 2d 6c 69 6e 6b 2d 74 79 70 65 20 22 6f 72 67 2d 63 6f 6e 74 61 63 74 22 20 27 6f g-add-link-type."org-contact".'o
ee60 72 67 2d 63 6f 6e 74 61 63 74 73 2d 6c 69 6e 6b 2d 6f 70 65 6e 29 29 29 0a 0a 3b 3b 3b 23 23 23 rg-contacts-link-open)))..;;;###
ee80 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 6c 69 6e autoload.(defun.org-contacts-lin
eea0 6b 2d 73 74 6f 72 65 20 28 29 0a 20 20 22 53 74 6f 72 65 20 74 68 65 20 63 6f 6e 74 61 63 74 20 k-store.()..."Store.the.contact.
eec0 69 6e 20 60 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 66 69 6c 65 73 27 20 77 69 74 68 20 61 20 6c in.`org-contacts-files'.with.a.l
eee0 69 6e 6b 2e 22 0a 20 20 28 77 68 65 6e 20 28 61 6e 64 20 28 65 71 20 6d 61 6a 6f 72 2d 6d 6f 64 ink."...(when.(and.(eq.major-mod
ef00 65 20 27 6f 72 67 2d 6d 6f 64 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 65 6d 62 65 e.'org-mode)..............(membe
ef20 72 20 28 62 75 66 66 65 72 2d 66 69 6c 65 2d 6e 61 6d 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 r.(buffer-file-name)............
ef40 20 20 20 20 20 20 20 20 20 20 28 6d 61 70 63 61 72 20 23 27 65 78 70 61 6e 64 2d 66 69 6c 65 2d ..........(mapcar.#'expand-file-
ef60 6e 61 6d 65 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 66 69 6c 65 73 29 29 29 29 0a 20 20 20 name.(org-contacts-files))))....
ef80 20 28 69 66 20 28 62 6f 75 6e 64 2d 61 6e 64 2d 74 72 75 65 2d 70 20 6f 72 67 2d 69 64 2d 6c 69 .(if.(bound-and-true-p.org-id-li
efa0 6e 6b 2d 74 6f 2d 6f 72 67 2d 75 73 65 2d 69 64 29 0a 20 20 20 20 20 20 20 20 28 6f 72 67 2d 69 nk-to-org-use-id).........(org-i
efc0 64 2d 73 74 6f 72 65 2d 6c 69 6e 6b 29 0a 20 20 20 20 20 20 28 6c 65 74 20 28 28 68 65 61 64 6c d-store-link).......(let.((headl
efe0 69 6e 65 2d 73 74 72 20 28 73 75 62 73 74 72 69 6e 67 2d 6e 6f 2d 70 72 6f 70 65 72 74 69 65 73 ine-str.(substring-no-properties
f000 20 28 6f 72 67 2d 67 65 74 2d 68 65 61 64 69 6e 67 20 74 20 74 20 74 20 74 29 29 29 29 0a 20 20 .(org-get-heading.t.t.t.t))))...
f020 20 20 20 20 20 20 28 6f 72 67 2d 6c 69 6e 6b 2d 73 74 6f 72 65 2d 70 72 6f 70 73 0a 20 20 20 20 ......(org-link-store-props.....
f040 20 20 20 20 20 3a 74 79 70 65 20 22 6f 72 67 2d 63 6f 6e 74 61 63 74 22 0a 20 20 20 20 20 20 20 .....:type."org-contact"........
f060 20 20 3a 6c 69 6e 6b 20 68 65 61 64 6c 69 6e 65 2d 73 74 72 0a 20 20 20 20 20 20 20 20 20 3a 64 ..:link.headline-str..........:d
f080 65 73 63 72 69 70 74 69 6f 6e 20 68 65 61 64 6c 69 6e 65 2d 73 74 72 29 0a 20 20 20 20 20 20 20 escription.headline-str)........
f0a0 20 28 6c 65 74 20 28 28 6c 69 6e 6b 20 28 63 6f 6e 63 61 74 20 22 6f 72 67 2d 63 6f 6e 74 61 63 .(let.((link.(concat."org-contac
f0c0 74 3a 22 20 68 65 61 64 6c 69 6e 65 2d 73 74 72 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 6f t:".headline-str)))...........(o
f0e0 72 67 2d 6c 69 6e 6b 2d 61 64 64 2d 70 72 6f 70 73 20 3a 6c 69 6e 6b 20 6c 69 6e 6b 20 3a 64 65 rg-link-add-props.:link.link.:de
f100 73 63 72 69 70 74 69 6f 6e 20 68 65 61 64 6c 69 6e 65 2d 73 74 72 29 0a 20 20 20 20 20 20 20 20 scription.headline-str).........
f120 20 20 6c 69 6e 6b 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 ..link)))))..(defun.org-contacts
f140 2d 2d 61 6c 6c 2d 63 6f 6e 74 61 63 74 73 20 28 29 0a 20 20 22 52 65 74 75 72 6e 20 61 20 6c 69 --all-contacts.()..."Return.a.li
f160 73 74 20 6f 66 20 61 6c 6c 20 63 6f 6e 74 61 63 74 73 20 69 6e 20 60 6f 72 67 2d 63 6f 6e 74 61 st.of.all.contacts.in.`org-conta
f180 63 74 73 2d 66 69 6c 65 73 27 2e 0a 45 61 63 68 20 65 6c 65 6d 65 6e 74 20 68 61 73 20 74 68 65 cts-files'..Each.element.has.the
f1a0 20 66 6f 72 6d 20 28 4e 41 4d 45 20 2e 20 28 46 49 4c 45 20 2e 20 50 4f 53 49 54 49 4f 4e 29 29 .form.(NAME...(FILE...POSITION))
f1c0 2e 22 0a 20 20 28 63 61 72 20 28 6d 61 70 63 61 72 0a 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 ."...(car.(mapcar.........(lambd
f1e0 61 20 28 66 69 6c 65 29 0a 20 20 20 20 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 28 62 75 66 66 a.(file)...........(unless.(buff
f200 65 72 2d 6c 69 76 65 2d 70 20 28 67 65 74 2d 62 75 66 66 65 72 20 28 66 69 6c 65 2d 6e 61 6d 65 er-live-p.(get-buffer.(file-name
f220 2d 6e 6f 6e 64 69 72 65 63 74 6f 72 79 20 66 69 6c 65 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 -nondirectory.file)))...........
f240 20 20 28 66 69 6e 64 2d 66 69 6c 65 20 66 69 6c 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 77 ..(find-file.file))...........(w
f260 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 28 67 65 74 2d 62 75 66 66 65 72 20 28 ith-current-buffer.(get-buffer.(
f280 66 69 6c 65 2d 6e 61 6d 65 2d 6e 6f 6e 64 69 72 65 63 74 6f 72 79 20 66 69 6c 65 29 29 0a 20 20 file-name-nondirectory.file))...
f2a0 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 6d 61 70 2d 65 6e 74 72 69 65 73 0a 20 20 20 20 20 ..........(org-map-entries......
f2c0 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ........(lambda.()..............
f2e0 20 20 28 6c 65 74 20 28 28 6e 61 6d 65 20 28 73 75 62 73 74 72 69 6e 67 2d 6e 6f 2d 70 72 6f 70 ..(let.((name.(substring-no-prop
f300 65 72 74 69 65 73 20 28 6f 72 67 2d 67 65 74 2d 68 65 61 64 69 6e 67 20 74 20 74 20 74 20 74 29 erties.(org-get-heading.t.t.t.t)
f320 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 66 69 6c 65 20 28 62 ))......................(file.(b
f340 75 66 66 65 72 2d 66 69 6c 65 2d 6e 61 6d 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 uffer-file-name))...............
f360 20 20 20 20 20 20 20 28 70 6f 73 69 74 69 6f 6e 20 28 70 6f 69 6e 74 29 29 29 0a 20 20 20 20 20 .......(position.(point)))......
f380 20 20 20 20 20 20 20 20 20 20 20 20 60 28 3a 6e 61 6d 65 20 2c 6e 61 6d 65 20 3a 66 69 6c 65 20 ............`(:name.,name.:file.
f3a0 2c 66 69 6c 65 20 3a 70 6f 73 69 74 69 6f 6e 20 2c 70 6f 73 69 74 69 6f 6e 29 29 29 29 29 29 0a ,file.:position.,position)))))).
f3c0 20 20 20 20 20 20 20 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 66 69 6c 65 73 29 29 29 29 0a ........(org-contacts-files)))).
f3e0 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 .;;;###autoload.(defun.org-conta
f400 63 74 73 2d 6c 69 6e 6b 2d 6f 70 65 6e 20 28 70 61 74 68 29 0a 20 20 22 4f 70 65 6e 20 63 6f 6e cts-link-open.(path)..."Open.con
f420 74 61 63 74 73 3a 20 6c 69 6e 6b 20 74 79 70 65 20 77 69 74 68 20 6a 75 6d 70 69 6e 67 20 6f 72 tacts:.link.type.with.jumping.or
f440 20 73 65 61 72 63 68 69 6e 67 2e 22 0a 20 20 28 6c 65 74 20 28 28 71 75 65 72 79 20 70 61 74 68 .searching."...(let.((query.path
f460 29 29 0a 20 20 20 20 28 63 6f 6e 64 0a 20 20 20 20 20 3b 3b 20 2f 71 75 65 72 79 2f 20 66 6f 72 )).....(cond......;;./query/.for
f480 6d 61 74 20 73 65 61 72 63 68 69 6e 67 0a 20 20 20 20 20 28 28 73 74 72 69 6e 67 2d 6d 61 74 63 mat.searching......((string-matc
f4a0 68 20 22 2f 2e 2a 2f 22 20 71 75 65 72 79 29 0a 20 20 20 20 20 20 28 6c 65 74 2a 20 28 28 66 20 h."/.*/".query).......(let*.((f.
f4c0 28 63 61 72 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 66 69 6c 65 73 29 29 29 0a 20 20 20 20 (car.(org-contacts-files))).....
f4e0 20 20 20 20 20 20 20 20 20 28 62 75 66 20 28 67 65 74 2d 62 75 66 66 65 72 20 28 66 69 6c 65 2d .........(buf.(get-buffer.(file-
f500 6e 61 6d 65 2d 6e 6f 6e 64 69 72 65 63 74 6f 72 79 20 66 29 29 29 29 0a 20 20 20 20 20 20 20 20 name-nondirectory.f)))).........
f520 28 75 6e 6c 65 73 73 20 28 62 75 66 66 65 72 2d 6c 69 76 65 2d 70 20 62 75 66 29 20 28 66 69 6e (unless.(buffer-live-p.buf).(fin
f540 64 2d 66 69 6c 65 20 66 29 29 0a 20 20 20 20 20 20 20 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 d-file.f)).........(with-current
f560 2d 62 75 66 66 65 72 20 62 75 66 0a 20 20 20 20 20 20 20 20 20 20 28 73 74 72 69 6e 67 2d 6d 61 -buffer.buf...........(string-ma
f580 74 63 68 20 22 2f 5c 5c 28 2e 2a 5c 5c 29 2f 22 20 71 75 65 72 79 29 0a 20 20 20 20 20 20 20 20 tch."/\\(.*\\)/".query).........
f5a0 20 20 28 6f 63 63 75 72 20 28 6d 61 74 63 68 2d 73 74 72 69 6e 67 20 31 20 71 75 65 72 79 29 29 ..(occur.(match-string.1.query))
f5c0 29 29 29 0a 20 20 20 20 20 3b 3b 20 6a 75 6d 70 20 74 6f 20 65 78 61 63 74 20 63 6f 6e 74 61 63 )))......;;.jump.to.exact.contac
f5e0 74 20 68 65 61 64 6c 69 6e 65 20 64 69 72 65 63 74 6c 79 0a 20 20 20 20 20 28 74 0a 20 20 20 20 t.headline.directly......(t.....
f600 20 20 28 6c 65 74 2a 20 28 28 66 20 28 63 61 72 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 66 ..(let*.((f.(car.(org-contacts-f
f620 69 6c 65 73 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 5f 20 28 66 69 6e 64 2d 66 69 iles)))..............(_.(find-fi
f640 6c 65 20 66 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 62 75 66 20 28 67 65 74 2d 62 75 le.f))..............(buf.(get-bu
f660 66 66 65 72 20 28 66 69 6c 65 2d 6e 61 6d 65 2d 6e 6f 6e 64 69 72 65 63 74 6f 72 79 20 66 29 29 ffer.(file-name-nondirectory.f))
f680 29 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 66 66 65 72 20 )).........(with-current-buffer.
f6a0 62 75 66 0a 20 20 20 20 20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 6d 61 72 6b 65 72 buf...........(goto-char.(marker
f6c0 2d 70 6f 73 69 74 69 6f 6e 20 28 6f 72 67 2d 66 69 6e 64 2d 65 78 61 63 74 2d 68 65 61 64 6c 69 -position.(org-find-exact-headli
f6e0 6e 65 2d 69 6e 2d 62 75 66 66 65 72 20 71 75 65 72 79 29 29 29 29 0a 20 20 20 20 20 20 20 20 28 ne-in-buffer.query)))).........(
f700 64 69 73 70 6c 61 79 2d 62 75 66 66 65 72 20 62 75 66 20 27 28 64 69 73 70 6c 61 79 2d 62 75 66 display-buffer.buf.'(display-buf
f720 66 65 72 2d 62 65 6c 6f 77 2d 73 65 6c 65 63 74 65 64 29 29 29 0a 0a 20 20 20 20 20 20 3b 3b 20 fer-below-selected)))........;;.
f740 28 6c 65 74 2a 20 28 28 66 20 28 63 61 72 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 66 69 6c (let*.((f.(car.(org-contacts-fil
f760 65 73 29 29 29 0a 20 20 20 20 20 20 3b 3b 20 20 20 20 20 20 20 20 28 5f 20 28 66 69 6e 64 2d 66 es))).......;;........(_.(find-f
f780 69 6c 65 20 66 29 29 0a 20 20 20 20 20 20 3b 3b 20 20 20 20 20 20 20 20 3b 3b 20 46 49 58 4d 45 ile.f)).......;;........;;.FIXME
f7a0 3a 0a 20 20 20 20 20 20 3b 3b 20 20 20 20 20 20 20 20 28 63 6f 6e 74 61 63 74 2d 65 6e 74 72 79 :.......;;........(contact-entry
f7c0 20 28 6d 61 70 2d 66 69 6c 74 65 72 0a 20 20 20 20 20 20 3b 3b 20 20 20 20 20 20 20 20 20 20 20 .(map-filter.......;;...........
f7e0 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 63 6f 6e 74 61 63 74 2d 70 6c .............(lambda.(contact-pl
f800 69 73 74 29 0a 20 20 20 20 20 20 3b 3b 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ist).......;;...................
f820 20 20 20 20 20 20 20 28 69 66 20 28 73 74 72 69 6e 67 2d 65 71 75 61 6c 20 28 70 6c 69 73 74 2d .......(if.(string-equal.(plist-
f840 67 65 74 20 63 6f 6e 74 61 63 74 2d 70 6c 69 73 74 20 3a 6e 61 6d 65 29 20 71 75 65 72 79 29 0a get.contact-plist.:name).query).
f860 20 20 20 20 20 20 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 ......;;........................
f880 20 20 20 20 20 20 63 6f 6e 74 61 63 74 2d 70 6c 69 73 74 29 29 0a 20 20 20 20 20 20 3b 3b 20 20 ......contact-plist)).......;;..
f8a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 63 6f 6e 74 61 ......................(org-conta
f8c0 63 74 73 2d 2d 61 6c 6c 2d 63 6f 6e 74 61 63 74 73 29 29 29 0a 20 20 20 20 20 20 3b 3b 20 20 20 cts--all-contacts))).......;;...
f8e0 20 20 20 20 20 28 63 6f 6e 74 61 63 74 2d 6e 61 6d 65 20 28 70 6c 69 73 74 2d 67 65 74 20 63 6f .....(contact-name.(plist-get.co
f900 6e 74 61 63 74 2d 65 6e 74 72 79 20 3a 6e 61 6d 65 29 29 0a 20 20 20 20 20 20 3b 3b 20 20 20 20 ntact-entry.:name)).......;;....
f920 20 20 20 20 28 66 69 6c 65 20 28 70 6c 69 73 74 2d 67 65 74 20 63 6f 6e 74 61 63 74 2d 65 6e 74 ....(file.(plist-get.contact-ent
f940 72 79 20 3a 66 69 6c 65 29 29 0a 20 20 20 20 20 20 3b 3b 20 20 20 20 20 20 20 20 28 70 6f 73 69 ry.:file)).......;;........(posi
f960 74 69 6f 6e 20 28 70 6c 69 73 74 2d 67 65 74 20 63 6f 6e 74 61 63 74 2d 65 6e 74 72 79 20 3a 70 tion.(plist-get.contact-entry.:p
f980 6f 73 69 74 69 6f 6e 29 29 0a 20 20 20 20 20 20 3b 3b 20 20 20 20 20 20 20 20 28 62 75 66 20 28 osition)).......;;........(buf.(
f9a0 67 65 74 2d 62 75 66 66 65 72 20 28 66 69 6c 65 2d 6e 61 6d 65 2d 6e 6f 6e 64 69 72 65 63 74 6f get-buffer.(file-name-nondirecto
f9c0 72 79 20 66 69 6c 65 29 29 29 29 0a 20 20 20 20 20 20 3b 3b 20 20 20 28 77 69 74 68 2d 63 75 72 ry.file)))).......;;...(with-cur
f9e0 72 65 6e 74 2d 62 75 66 66 65 72 20 62 75 66 20 28 67 6f 74 6f 2d 63 68 61 72 20 70 6f 73 69 74 rent-buffer.buf.(goto-char.posit
fa00 69 6f 6e 29 29 0a 20 20 20 20 20 20 3b 3b 20 20 20 28 64 69 73 70 6c 61 79 2d 62 75 66 66 65 72 ion)).......;;...(display-buffer
fa20 20 62 75 66 20 27 28 64 69 73 70 6c 61 79 2d 62 75 66 66 65 72 2d 62 65 6c 6f 77 2d 73 65 6c 65 .buf.'(display-buffer-below-sele
fa40 63 74 65 64 29 29 29 0a 20 20 20 20 20 20 29 29 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f cted))).......))))..;;;###autolo
fa60 61 64 0a 28 64 65 66 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 6c 69 6e 6b 2d 63 6f 6d 70 ad.(defun.org-contacts-link-comp
fa80 6c 65 74 65 20 28 26 6f 70 74 69 6f 6e 61 6c 20 5f 61 72 67 29 0a 20 20 22 43 72 65 61 74 65 20 lete.(&optional._arg)..."Create.
faa0 61 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 20 6c 69 6e 6b 20 75 73 69 6e 67 20 63 6f 6d 70 6c 65 a.org-contacts.link.using.comple
fac0 74 69 6f 6e 2e 22 0a 20 20 28 6c 65 74 20 28 28 6e 61 6d 65 20 28 63 6f 6d 70 6c 65 74 69 6e 67 tion."...(let.((name.(completing
fae0 2d 72 65 61 64 20 22 6f 72 67 2d 63 6f 6e 74 61 63 74 73 20 4e 41 4d 45 3a 20 22 0a 20 20 20 20 -read."org-contacts.NAME:.".....
fb00 20 20 20 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 63 ...........................(mapc
fb20 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..............................
fb40 20 20 20 28 6c 61 6d 62 64 61 20 28 70 6c 69 73 74 29 20 28 70 6c 69 73 74 2d 67 65 74 20 70 6c ...(lambda.(plist).(plist-get.pl
fb60 69 73 74 20 3a 6e 61 6d 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ist.:name)).....................
fb80 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 2d 61 6c 6c 2d 63 ............(org-contacts--all-c
fba0 6f 6e 74 61 63 74 73 29 29 29 29 29 0a 20 20 20 20 28 63 6f 6e 63 61 74 20 22 6f 72 67 2d 63 6f ontacts))))).....(concat."org-co
fbc0 6e 74 61 63 74 3a 22 20 6e 61 6d 65 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 63 6f 6e 74 ntact:".name)))..(defun.org-cont
fbe0 61 63 74 73 2d 6c 69 6e 6b 2d 66 61 63 65 20 28 70 61 74 68 29 0a 20 20 22 44 69 66 66 65 72 65 acts-link-face.(path)..."Differe
fc00 6e 74 20 66 61 63 65 20 63 6f 6c 6f 72 20 66 6f 72 20 64 69 66 66 65 72 65 6e 74 20 6f 72 67 2d nt.face.color.for.different.org-
fc20 63 6f 6e 74 61 63 74 73 20 6c 69 6e 6b 20 71 75 65 72 79 2e 22 0a 20 20 28 63 6f 6e 64 0a 20 20 contacts.link.query."...(cond...
fc40 20 28 28 73 74 72 69 6e 67 2d 6d 61 74 63 68 20 22 2f 2e 2a 2f 22 20 70 61 74 68 29 0a 20 20 20 .((string-match."/.*/".path)....
fc60 20 27 28 3a 62 61 63 6b 67 72 6f 75 6e 64 20 22 73 6b 79 20 62 6c 75 65 22 20 3a 6f 76 65 72 6c .'(:background."sky.blue".:overl
fc80 69 6e 65 20 74 20 3a 73 6c 61 6e 74 20 27 69 74 61 6c 69 63 29 29 0a 20 20 20 28 74 20 27 28 3a ine.t.:slant.'italic))....(t.'(:
fca0 69 6e 68 65 72 69 74 20 6f 72 67 2d 6c 69 6e 6b 29 29 29 29 0a 0a 0a 3b 3b 3b 20 6f 72 67 2d 6d inherit.org-link))))...;;;.org-m
fcc0 6f 64 65 20 6c 69 6e 6b 20 22 6d 61 69 6c 74 6f 3a 22 20 65 6d 61 69 6c 20 63 6f 6d 70 6c 65 74 ode.link."mailto:".email.complet
fce0 69 6f 6e 2e 0a 28 69 66 20 28 66 62 6f 75 6e 64 70 20 27 6f 72 67 2d 6c 69 6e 6b 2d 73 65 74 2d ion..(if.(fboundp.'org-link-set-
fd00 70 61 72 61 6d 65 74 65 72 73 29 0a 20 20 20 20 28 6f 72 67 2d 6c 69 6e 6b 2d 73 65 74 2d 70 61 parameters).....(org-link-set-pa
fd20 72 61 6d 65 74 65 72 73 20 22 6d 61 69 6c 74 6f 22 20 3a 63 6f 6d 70 6c 65 74 65 20 23 27 6f 72 rameters."mailto".:complete.#'or
fd40 67 2d 63 6f 6e 74 61 63 74 73 2d 6d 61 69 6c 74 6f 2d 6c 69 6e 6b 2d 63 6f 6d 70 6c 65 74 69 6f g-contacts-mailto-link-completio
fd60 6e 29 0a 20 20 28 69 66 20 28 66 62 6f 75 6e 64 70 20 27 6f 72 67 2d 61 64 64 2d 6c 69 6e 6b 2d n)...(if.(fboundp.'org-add-link-
fd80 74 79 70 65 29 0a 20 20 20 20 20 20 28 6f 72 67 2d 61 64 64 2d 6c 69 6e 6b 2d 74 79 70 65 20 22 type).......(org-add-link-type."
fda0 6d 61 69 6c 74 6f 22 29 29 29 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d mailto")))..(defun.org-contacts-
fdc0 6d 61 69 6c 74 6f 2d 6c 69 6e 6b 2d 2d 67 65 74 2d 61 6c 6c 2d 65 6d 61 69 6c 73 20 28 29 0a 20 mailto-link--get-all-emails.()..
fde0 20 22 52 65 74 72 69 65 76 65 20 61 6c 6c 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 20 45 4d 41 49 ."Retrieve.all.org-contacts.EMAI
fe00 4c 20 70 72 6f 70 65 72 74 79 20 76 61 6c 75 65 73 2e 22 0a 20 20 28 6d 61 70 63 61 72 0a 20 20 L.property.values."...(mapcar...
fe20 20 28 6c 61 6d 62 64 61 20 28 63 6f 6e 74 61 63 74 29 0a 20 20 20 20 20 28 6c 65 74 2a 20 28 28 .(lambda.(contact)......(let*.((
fe40 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 62 75 66 66 65 72 20 28 66 69 6e 64 2d 66 69 6c 65 2d 6e org-contacts-buffer.(find-file-n
fe60 6f 73 65 6c 65 63 74 20 28 63 61 72 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 66 69 6c 65 73 oselect.(car.(org-contacts-files
fe80 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 6e 61 6d 65 20 28 70 6c 69 73 74 2d 67 65 )))).............(name.(plist-ge
fea0 74 20 63 6f 6e 74 61 63 74 20 3a 6e 61 6d 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 70 t.contact.:name)).............(p
fec0 6f 73 69 74 69 6f 6e 20 28 70 6c 69 73 74 2d 67 65 74 20 63 6f 6e 74 61 63 74 20 3a 70 6f 73 69 osition.(plist-get.contact.:posi
fee0 74 69 6f 6e 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 65 6d 61 69 6c 20 28 73 61 76 65 2d tion)).............(email.(save-
ff00 65 78 63 75 72 73 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 excursion......................(
ff20 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 with-current-buffer.org-contacts
ff40 2d 62 75 66 66 65 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 28 -buffer........................(
ff60 67 6f 74 6f 2d 63 68 61 72 20 70 6f 73 69 74 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 goto-char.position).............
ff80 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 28 73 79 6d 62 6f 6c 2d 6e 61 6d 65 20 28 6f 72 67 2d ...........;;.(symbol-name.(org-
ffa0 70 72 6f 70 65 72 74 79 2d 6f 72 2d 76 61 72 69 61 62 6c 65 2d 76 61 6c 75 65 20 27 45 4d 41 49 property-or-variable-value.'EMAI
ffc0 4c 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d L))........................(org-
ffe0 65 6e 74 72 79 2d 67 65 74 20 28 70 6f 69 6e 74 29 20 22 45 4d 41 49 4c 22 29 29 29 29 29 0a 20 entry-get.(point)."EMAIL")))))..
10000 20 20 20 20 20 20 28 69 67 6e 6f 72 65 20 6e 61 6d 65 29 0a 20 20 20 20 20 20 20 3b 3b 20 28 63 ......(ignore.name)........;;.(c
10020 6f 6e 73 20 6e 61 6d 65 20 65 6d 61 69 6c 29 0a 20 20 20 20 20 20 20 65 6d 61 69 6c 29 29 0a 20 ons.name.email)........email))..
10040 20 20 28 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 2d 61 6c 6c 2d 63 6f 6e 74 61 63 74 73 29 29 29 ..(org-contacts--all-contacts)))
10060 0a 0a 28 64 65 66 75 6e 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2d 6d 61 69 6c 74 6f 2d 6c 69 6e ..(defun.org-contacts-mailto-lin
10080 6b 2d 63 6f 6d 70 6c 65 74 69 6f 6e 20 28 26 6f 70 74 69 6f 6e 61 6c 20 5f 61 72 67 29 0a 20 20 k-completion.(&optional._arg)...
100a0 22 4f 72 67 20 6d 6f 64 65 20 6c 69 6e 6b 20 60 6d 61 69 6c 74 6f 3a 27 20 63 6f 6d 70 6c 65 74 "Org.mode.link.`mailto:'.complet
100c0 69 6f 6e 20 77 69 74 68 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 20 65 6d 61 69 6c 73 2e 22 0a 20 ion.with.org-contacts.emails."..
100e0 20 28 6c 65 74 20 28 28 65 6d 61 69 6c 20 28 63 6f 6d 70 6c 65 74 69 6e 67 2d 72 65 61 64 20 22 .(let.((email.(completing-read."
10100 6f 72 67 2d 63 6f 6e 74 61 63 74 73 20 45 4d 41 49 4c 3a 20 22 0a 20 20 20 20 20 20 20 20 20 20 org-contacts.EMAIL:."...........
10120 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 2d 63 6f 6e 74 61 ......................(org-conta
10140 63 74 73 2d 6d 61 69 6c 74 6f 2d 6c 69 6e 6b 2d 2d 67 65 74 2d 61 6c 6c 2d 65 6d 61 69 6c 73 29 cts-mailto-link--get-all-emails)
10160 29 29 29 0a 20 20 20 20 28 63 6f 6e 63 61 74 20 22 6d 61 69 6c 74 6f 3a 22 20 65 6d 61 69 6c 29 ))).....(concat."mailto:".email)
10180 29 29 0a 0a 28 70 72 6f 76 69 64 65 20 27 6f 72 67 2d 63 6f 6e 74 61 63 74 73 29 0a 0a 3b 3b 3b ))..(provide.'org-contacts)..;;;
101a0 20 6f 72 67 2d 63 6f 6e 74 61 63 74 73 2e 65 6c 20 65 6e 64 73 20 68 65 72 65 0a 00 00 00 00 00 .org-contacts.el.ends.here......
101c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
101e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10200 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10260 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10280 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
102a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
102c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
102e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10300 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10320 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
103a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
103c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
103e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10400 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10460 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
104a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
104c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
104e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10500 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10520 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
105a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
105c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
105e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10600 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10620 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10660 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10680 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
106a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
106c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
106e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10700 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10720 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
107a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
107c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
107e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10800 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10820 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10840 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10860 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10880 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
108a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
108c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
108e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
109a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
109c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
109e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10a00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10a20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10a40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10a60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10a80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10aa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10ac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10ae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10b00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10b20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10b40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10b60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10b80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10ba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10bc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10be0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10c00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10c20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10c40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10c60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10c80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10ca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10cc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10ce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10d00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10d20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10d40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10d60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10d80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10da0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10dc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10de0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10e00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10e20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10e40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10e60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10e80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10ea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10ec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10ee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10f00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10f20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10f40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10f60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10f80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10fa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10fc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
10fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11080 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
110a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
110c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
110e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11100 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11140 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11180 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
111a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
111c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
111e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11200 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11260 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11280 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
112a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
112c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
112e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11300 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11320 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
113a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
113c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
113e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11400 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11440 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11460 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
114a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
114c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
114e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11500 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11520 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11540 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11560 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11580 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
115a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
115c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
115e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11600 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11620 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11660 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11680 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
116a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
116c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
116e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11700 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11720 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
11780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
117a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
117c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
117e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................