summaryrefslogtreecommitdiff
path: root/.localrepo/which-key-3.6.1.tar
blob: 71dc9aac7040c92a3ac97c64982aa104ebe8b6be (plain)
ofshex dumpascii
0000 77 68 69 63 68 2d 6b 65 79 2d 33 2e 36 2e 31 2f 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 which-key-3.6.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 30 35 30 00 20 35 00 00 00 0000000.00000000000.012050..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 77 68 69 63 68 2d 6b 65 79 2d 33 2e 36 2e 31 2f 77 68 69 63 68 2d 6b 65 79 2d 70 6b 67 2e 65 6c which-key-3.6.1/which-key-pkg.el
0220 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0260 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
0280 30 30 30 30 36 30 31 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 35 30 33 36 00 20 30 00 00 00 0000601.00000000000.015036..0...
02a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
02c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
02e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0300 00 75 73 74 61 72 20 20 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...root...................
0320 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
0340 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0360 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0380 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
03a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
03c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
03e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0400 3b 3b 20 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
0420 20 66 72 6f 6d 20 77 68 69 63 68 2d 6b 65 79 2e 65 6c 20 20 2d 2a 2d 20 6e 6f 2d 62 79 74 65 2d .from.which-key.el..-*-.no-byte-
0440 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 65 20 22 compile:.t.-*-.(define-package."
0460 77 68 69 63 68 2d 6b 65 79 22 20 22 33 2e 36 2e 31 22 20 22 44 69 73 70 6c 61 79 20 61 76 61 69 which-key"."3.6.1"."Display.avai
0480 6c 61 62 6c 65 20 6b 65 79 62 69 6e 64 69 6e 67 73 20 69 6e 20 70 6f 70 75 70 22 20 27 28 28 65 lable.keybindings.in.popup".'((e
04a0 6d 61 63 73 20 22 32 35 2e 31 22 29 29 20 3a 63 6f 6d 6d 69 74 20 22 33 34 62 38 33 32 66 63 65 macs."25.1")).:commit."34b832fce
04c0 31 64 30 31 63 32 32 61 61 36 34 34 31 39 36 63 64 36 65 36 62 35 30 62 31 64 34 30 33 65 65 22 1d01c22aa644196cd6e6b50b1d403ee"
04e0 20 3a 75 72 6c 20 22 68 74 74 70 73 3a 2f 2f 65 6c 70 61 2e 67 6e 75 2e 6f 72 67 2f 70 61 63 6b .:url."https://elpa.gnu.org/pack
0500 61 67 65 73 2f 77 68 69 63 68 2d 6b 65 79 2e 68 74 6d 6c 22 20 3a 61 75 74 68 6f 72 73 20 27 28 ages/which-key.html".:authors.'(
0520 28 22 4a 75 73 74 69 6e 20 42 75 72 6b 65 74 74 22 20 2e 20 22 6a 75 73 74 69 6e 40 62 75 72 6b ("Justin.Burkett"..."justin@burk
0540 65 74 74 2e 63 63 22 29 29 20 3a 6d 61 69 6e 74 61 69 6e 65 72 20 27 28 22 4a 75 73 74 69 6e 20 ett.cc")).:maintainer.'("Justin.
0560 42 75 72 6b 65 74 74 22 20 2e 20 22 6a 75 73 74 69 6e 40 62 75 72 6b 65 74 74 2e 63 63 22 29 29 Burkett"..."justin@burkett.cc"))
0580 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
05a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
05c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
05e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0600 77 68 69 63 68 2d 6b 65 79 2d 33 2e 36 2e 31 2f 77 68 69 63 68 2d 6b 65 79 2e 65 6c 00 00 00 00 which-key-3.6.1/which-key.el....
0620 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0640 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0660 00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 ....0000644.0000000.0000000.0000
0680 30 33 35 30 33 30 30 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 34 32 36 33 00 20 30 00 00 00 0350300.00000000000.014263..0...
06a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
06c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
06e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0700 00 75 73 74 61 72 20 20 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .ustar...root...................
0720 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .........root...................
0740 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0760 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0780 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
07a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
07c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
07e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
0800 3b 3b 3b 20 77 68 69 63 68 2d 6b 65 79 2e 65 6c 20 2d 2d 2d 20 44 69 73 70 6c 61 79 20 61 76 61 ;;;.which-key.el.---.Display.ava
0820 69 6c 61 62 6c 65 20 6b 65 79 62 69 6e 64 69 6e 67 73 20 69 6e 20 70 6f 70 75 70 20 20 2d 2a 2d ilable.keybindings.in.popup..-*-
0840 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 43 6f 70 .lexical-binding:.t;.-*-..;;.Cop
0860 79 72 69 67 68 74 20 28 43 29 20 32 30 31 37 2d 32 30 32 34 20 20 46 72 65 65 20 53 6f 66 74 77 yright.(C).2017-2024..Free.Softw
0880 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 6f 72 3a are.Foundation,.Inc...;;.Author:
08a0 20 4a 75 73 74 69 6e 20 42 75 72 6b 65 74 74 20 3c 6a 75 73 74 69 6e 40 62 75 72 6b 65 74 74 2e .Justin.Burkett.<justin@burkett.
08c0 63 63 3e 0a 3b 3b 20 4d 61 69 6e 74 61 69 6e 65 72 3a 20 4a 75 73 74 69 6e 20 42 75 72 6b 65 74 cc>.;;.Maintainer:.Justin.Burket
08e0 74 20 3c 6a 75 73 74 69 6e 40 62 75 72 6b 65 74 74 2e 63 63 3e 0a 3b 3b 20 56 65 72 73 69 6f 6e t.<justin@burkett.cc>.;;.Version
0900 3a 20 33 2e 36 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 :.3.6.1.;;.Package-Requires:.((e
0920 6d 61 63 73 20 22 32 35 2e 31 22 29 29 0a 0a 3b 3b 20 54 68 69 73 20 66 69 6c 65 20 69 73 20 70 macs."25.1"))..;;.This.file.is.p
0940 61 72 74 20 6f 66 20 47 4e 55 20 45 6d 61 63 73 2e 0a 0a 3b 3b 20 54 68 69 73 20 70 72 6f 67 72 art.of.GNU.Emacs...;;.This.progr
0960 61 6d 20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3b 20 79 6f 75 20 63 61 6e 20 72 65 64 am.is.free.software;.you.can.red
0980 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 79 0a 3b 3b 20 69 74 istribute.it.and/or.modify.;;.it
09a0 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 4e 55 20 47 65 6e 65 .under.the.terms.of.the.GNU.Gene
09c0 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 6c 69 73 68 65 64 20 ral.Public.License.as.published.
09e0 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 6f 75 6e 64 61 74 69 by.;;.the.Free.Software.Foundati
0a00 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 68 65 20 4c 69 63 65 on,.either.version.3.of.the.Lice
0a20 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 6e 29 20 61 6e 79 20 nse,.or.;;.(at.your.option).any.
0a40 6c 61 74 65 72 20 76 65 72 73 69 6f 6e 2e 0a 0a 3b 3b 20 54 68 69 73 20 70 72 6f 67 72 61 6d 20 later.version...;;.This.program.
0a60 69 73 20 64 69 73 74 72 69 62 75 74 65 64 20 69 6e 20 74 68 65 20 68 6f 70 65 20 74 68 61 74 20 is.distributed.in.the.hope.that.
0a80 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 20 57 49 54 48 4f 55 it.will.be.useful,.;;.but.WITHOU
0aa0 54 20 41 4e 59 20 57 41 52 52 41 4e 54 59 3b 20 77 69 74 68 6f 75 74 20 65 76 65 6e 20 74 68 65 T.ANY.WARRANTY;.without.even.the
0ac0 20 69 6d 70 6c 69 65 64 20 77 61 72 72 61 6e 74 79 20 6f 66 0a 3b 3b 20 4d 45 52 43 48 41 4e 54 .implied.warranty.of.;;.MERCHANT
0ae0 41 42 49 4c 49 54 59 20 6f 72 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41 52 54 49 43 55 ABILITY.or.FITNESS.FOR.A.PARTICU
0b00 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 47 4e 55 20 47 65 6e LAR.PURPOSE...See.the.;;.GNU.Gen
0b20 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 66 6f 72 20 6d 6f 72 65 20 64 65 74 eral.Public.License.for.more.det
0b40 61 69 6c 73 2e 0a 0a 3b 3b 20 59 6f 75 20 73 68 6f 75 6c 64 20 68 61 76 65 20 72 65 63 65 69 76 ails...;;.You.should.have.receiv
0b60 65 64 20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62 ed.a.copy.of.the.GNU.General.Pub
0b80 6c 69 63 20 4c 69 63 65 6e 73 65 0a 3b 3b 20 61 6c 6f 6e 67 20 77 69 74 68 20 74 68 69 73 20 70 lic.License.;;.along.with.this.p
0ba0 72 6f 67 72 61 6d 2e 20 20 49 66 20 6e 6f 74 2c 20 73 65 65 20 3c 68 74 74 70 3a 2f 2f 77 77 77 rogram...If.not,.see.<http://www
0bc0 2e 67 6e 75 2e 6f 72 67 2f 6c 69 63 65 6e 73 65 73 2f 3e 2e 0a 0a 3b 3b 3b 20 43 6f 6d 6d 65 6e .gnu.org/licenses/>...;;;.Commen
0be0 74 61 72 79 3a 0a 0a 3b 3b 20 54 68 65 20 60 77 68 69 63 68 2d 6b 65 79 27 20 6d 6f 64 65 20 64 tary:..;;.The.`which-key'.mode.d
0c00 69 73 70 6c 61 79 73 20 74 68 65 20 6b 65 79 20 62 69 6e 64 69 6e 67 73 20 66 6f 6c 6c 6f 77 69 isplays.the.key.bindings.followi
0c20 6e 67 20 79 6f 75 72 0a 3b 3b 20 63 75 72 72 65 6e 74 6c 79 20 65 6e 74 65 72 65 64 20 69 6e 63 ng.your.;;.currently.entered.inc
0c40 6f 6d 70 6c 65 74 65 20 63 6f 6d 6d 61 6e 64 20 28 61 20 70 72 65 66 69 78 29 20 69 6e 20 61 20 omplete.command.(a.prefix).in.a.
0c60 70 6f 70 75 70 2e 20 20 46 6f 72 0a 3b 3b 20 65 78 61 6d 70 6c 65 2c 20 61 66 74 65 72 20 65 6e popup...For.;;.example,.after.en
0c80 61 62 6c 69 6e 67 20 74 68 65 20 6d 69 6e 6f 72 20 6d 6f 64 65 20 69 66 20 79 6f 75 20 65 6e 74 abling.the.minor.mode.if.you.ent
0ca0 65 72 20 43 2d 78 20 61 6e 64 20 77 61 69 74 20 66 6f 72 0a 3b 3b 20 74 68 65 20 64 65 66 61 75 er.C-x.and.wait.for.;;.the.defau
0cc0 6c 74 20 6f 66 20 31 20 73 65 63 6f 6e 64 20 74 68 65 20 6d 69 6e 69 62 75 66 66 65 72 20 77 69 lt.of.1.second.the.minibuffer.wi
0ce0 6c 6c 20 65 78 70 61 6e 64 20 77 69 74 68 20 61 6c 6c 20 6f 66 20 74 68 65 0a 3b 3b 20 61 76 61 ll.expand.with.all.of.the.;;.ava
0d00 69 6c 61 62 6c 65 20 6b 65 79 20 62 69 6e 64 69 6e 67 73 20 74 68 61 74 20 66 6f 6c 6c 6f 77 20 ilable.key.bindings.that.follow.
0d20 43 2d 78 20 28 6f 72 20 61 73 20 6d 61 6e 79 20 61 73 20 73 70 61 63 65 20 61 6c 6c 6f 77 73 0a C-x.(or.as.many.as.space.allows.
0d40 3b 3b 20 67 69 76 65 6e 20 79 6f 75 72 20 73 65 74 74 69 6e 67 73 29 2e 0a 3b 3b 0a 3b 3b 20 54 ;;.given.your.settings)..;;.;;.T
0d60 68 69 73 20 69 6e 63 6c 75 64 65 73 20 70 72 65 66 69 78 65 73 20 6c 69 6b 65 20 43 2d 78 20 38 his.includes.prefixes.like.C-x.8
0d80 20 77 68 69 63 68 20 61 72 65 20 73 68 6f 77 6e 20 69 6e 20 61 20 64 69 66 66 65 72 65 6e 74 0a .which.are.shown.in.a.different.
0da0 3b 3b 20 66 61 63 65 2e 0a 0a 3b 3b 3b 20 43 6f 64 65 3a 0a 0a 28 72 65 71 75 69 72 65 20 27 63 ;;.face...;;;.Code:..(require.'c
0dc0 6c 2d 6c 69 62 29 0a 28 72 65 71 75 69 72 65 20 27 62 75 74 74 6f 6e 29 0a 28 72 65 71 75 69 72 l-lib).(require.'button).(requir
0de0 65 20 27 72 65 67 65 78 70 2d 6f 70 74 29 0a 0a 3b 3b 20 46 6f 72 20 63 6f 6d 70 69 6c 65 72 0a e.'regexp-opt)..;;.For.compiler.
0e00 28 64 65 66 76 61 72 20 65 76 69 6c 2d 6f 70 65 72 61 74 6f 72 2d 73 68 6f 72 74 63 75 74 2d 6d (defvar.evil-operator-shortcut-m
0e20 61 70 29 0a 28 64 65 66 76 61 72 20 65 76 69 6c 2d 6f 70 65 72 61 74 6f 72 2d 73 74 61 74 65 2d ap).(defvar.evil-operator-state-
0e40 6d 61 70 29 0a 28 64 65 66 76 61 72 20 65 76 69 6c 2d 6d 6f 74 69 6f 6e 2d 73 74 61 74 65 2d 6d map).(defvar.evil-motion-state-m
0e60 61 70 29 0a 28 64 65 66 76 61 72 20 67 6f 6c 64 65 6e 2d 72 61 74 69 6f 2d 6d 6f 64 65 29 0a 28 ap).(defvar.golden-ratio-mode).(
0e80 64 65 63 6c 61 72 65 2d 66 75 6e 63 74 69 6f 6e 20 65 76 69 6c 2d 67 65 74 2d 63 6f 6d 6d 61 6e declare-function.evil-get-comman
0ea0 64 2d 70 72 6f 70 65 72 74 79 20 22 65 78 74 3a 65 76 69 6c 2d 63 6f 6d 6d 6f 6e 2e 65 6c 22 29 d-property."ext:evil-common.el")
0ec0 0a 0a 3b 3b 3b 20 4f 70 74 69 6f 6e 73 0a 0a 28 64 65 66 67 72 6f 75 70 20 77 68 69 63 68 2d 6b ..;;;.Options..(defgroup.which-k
0ee0 65 79 20 6e 69 6c 0a 20 20 22 43 75 73 74 6f 6d 69 7a 61 74 69 6f 6e 20 6f 70 74 69 6f 6e 73 20 ey.nil..."Customization.options.
0f00 66 6f 72 20 60 77 68 69 63 68 2d 6b 65 79 2d 6d 6f 64 65 27 2e 22 0a 20 20 3a 67 72 6f 75 70 20 for.`which-key-mode'."...:group.
0f20 27 68 65 6c 70 0a 20 20 3a 70 72 65 66 69 78 20 22 77 68 69 63 68 2d 6b 65 79 2d 22 29 0a 0a 28 'help...:prefix."which-key-")..(
0f40 64 65 66 63 75 73 74 6f 6d 20 77 68 69 63 68 2d 6b 65 79 2d 69 64 6c 65 2d 64 65 6c 61 79 20 31 defcustom.which-key-idle-delay.1
0f60 2e 30 0a 20 20 22 44 65 6c 61 79 20 28 69 6e 20 73 65 63 6f 6e 64 73 29 20 66 6f 72 20 77 68 69 .0..."Delay.(in.seconds).for.whi
0f80 63 68 2d 6b 65 79 20 62 75 66 66 65 72 20 74 6f 20 70 6f 70 75 70 2e 0a 54 68 69 73 20 76 61 72 ch-key.buffer.to.popup..This.var
0fa0 69 61 62 6c 65 20 73 68 6f 75 6c 64 20 62 65 20 73 65 74 20 62 65 66 6f 72 65 20 61 63 74 69 76 iable.should.be.set.before.activ
0fc0 61 74 69 6e 67 20 60 77 68 69 63 68 2d 6b 65 79 2d 6d 6f 64 65 27 2e 0a 0a 41 20 76 61 6c 75 65 ating.`which-key-mode'...A.value
0fe0 20 6f 66 20 7a 65 72 6f 20 6d 69 67 68 74 20 6c 65 61 64 20 74 6f 20 69 73 73 75 65 73 2c 20 73 .of.zero.might.lead.to.issues,.s
1000 6f 20 61 20 6e 6f 6e 2d 7a 65 72 6f 20 76 61 6c 75 65 20 69 73 0a 72 65 63 6f 6d 6d 65 6e 64 65 o.a.non-zero.value.is.recommende
1020 64 0a 28 73 65 65 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 6a 75 73 74 62 75 d.(see.https://github.com/justbu
1040 72 2f 65 6d 61 63 73 2d 77 68 69 63 68 2d 6b 65 79 2f 69 73 73 75 65 73 2f 31 33 34 29 2e 22 0a r/emacs-which-key/issues/134).".
1060 20 20 3a 74 79 70 65 20 27 66 6c 6f 61 74 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f ..:type.'float...:package-versio
1080 6e 20 22 31 2e 30 22 20 3a 76 65 72 73 69 6f 6e 20 22 33 30 2e 31 22 29 0a 0a 28 64 65 66 63 75 n."1.0".:version."30.1")..(defcu
10a0 73 74 6f 6d 20 77 68 69 63 68 2d 6b 65 79 2d 69 64 6c 65 2d 73 65 63 6f 6e 64 61 72 79 2d 64 65 stom.which-key-idle-secondary-de
10c0 6c 61 79 20 6e 69 6c 0a 20 20 22 53 65 63 6f 6e 64 73 20 74 6f 20 77 61 69 74 20 66 6f 72 20 77 lay.nil..."Seconds.to.wait.for.w
10e0 68 69 63 68 2d 6b 65 79 20 74 6f 20 70 6f 70 20 75 70 20 61 66 74 65 72 20 69 6e 69 74 69 61 6c hich-key.to.pop.up.after.initial
1100 20 64 69 73 70 6c 61 79 2e 0a 54 68 69 73 20 6d 61 6b 65 73 20 69 74 20 70 6f 73 73 69 62 6c 65 .display..This.makes.it.possible
1120 20 74 6f 20 73 68 6f 72 74 65 6e 20 74 68 65 20 64 65 6c 61 79 20 66 6f 72 20 73 75 62 73 65 71 .to.shorten.the.delay.for.subseq
1140 75 65 6e 74 20 70 6f 70 75 70 73 0a 69 6e 20 74 68 65 20 73 61 6d 65 20 6b 65 79 20 73 65 71 75 uent.popups.in.the.same.key.sequ
1160 65 6e 63 65 2e 20 20 54 68 65 20 64 65 66 61 75 6c 74 20 69 73 20 66 6f 72 20 74 68 69 73 20 76 ence...The.default.is.for.this.v
1180 61 6c 75 65 20 74 6f 20 62 65 0a 6e 69 6c 2c 20 77 68 69 63 68 20 64 69 73 61 62 6c 65 73 20 74 alue.to.be.nil,.which.disables.t
11a0 68 69 73 20 62 65 68 61 76 69 6f 72 2e 22 0a 20 20 3a 74 79 70 65 20 27 28 63 68 6f 69 63 65 20 his.behavior."...:type.'(choice.
11c0 66 6c 6f 61 74 20 28 63 6f 6e 73 74 20 3a 74 61 67 20 22 44 69 73 61 62 6c 65 64 22 20 6e 69 6c float.(const.:tag."Disabled".nil
11e0 29 29 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 22 31 2e 30 22 20 3a 76 65 72 ))...:package-version."1.0".:ver
1200 73 69 6f 6e 20 22 33 30 2e 31 22 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 77 68 69 63 68 2d 6b sion."30.1")..(defcustom.which-k
1220 65 79 2d 65 63 68 6f 2d 6b 65 79 73 74 72 6f 6b 65 73 20 28 69 66 20 28 61 6e 64 20 65 63 68 6f ey-echo-keystrokes.(if.(and.echo
1240 2d 6b 65 79 73 74 72 6f 6b 65 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 -keystrokes.....................
1260 20 20 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 3e 20 28 2b 20 ..........................(>.(+.
1280 65 63 68 6f 2d 6b 65 79 73 74 72 6f 6b 65 73 20 30 2e 30 31 29 0a 20 20 20 20 20 20 20 20 20 20 echo-keystrokes.0.01)...........
12a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
12c0 20 20 20 20 20 20 20 77 68 69 63 68 2d 6b 65 79 2d 69 64 6c 65 2d 64 65 6c 61 79 29 29 0a 20 20 .......which-key-idle-delay))...
12e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1300 20 20 20 20 20 20 20 28 2f 20 28 66 6c 6f 61 74 20 77 68 69 63 68 2d 6b 65 79 2d 69 64 6c 65 2d .......(/.(float.which-key-idle-
1320 64 65 6c 61 79 29 20 34 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 delay).4).......................
1340 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 63 68 6f 2d 6b 65 79 73 74 72 6f 6b 65 73 .................echo-keystrokes
1360 29 0a 20 20 22 56 61 6c 75 65 20 74 6f 20 75 73 65 20 66 6f 72 20 60 65 63 68 6f 2d 6b 65 79 73 )..."Value.to.use.for.`echo-keys
1380 74 72 6f 6b 65 73 27 2e 0a 54 68 69 73 20 6f 6e 6c 79 20 61 70 70 6c 69 65 73 20 69 66 20 60 77 trokes'..This.only.applies.if.`w
13a0 68 69 63 68 2d 6b 65 79 2d 70 6f 70 75 70 2d 74 79 70 65 27 20 69 73 20 6d 69 6e 69 62 75 66 66 hich-key-popup-type'.is.minibuff
13c0 65 72 20 6f 72 0a 60 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d 70 72 65 66 69 78 27 20 69 73 er.or.`which-key-show-prefix'.is
13e0 20 65 63 68 6f 2e 20 20 49 74 20 6e 65 65 64 73 20 74 6f 20 62 65 20 6c 65 73 73 20 74 68 61 6e .echo...It.needs.to.be.less.than
1400 0a 60 77 68 69 63 68 2d 6b 65 79 2d 69 64 6c 65 2d 64 65 6c 61 79 27 20 6f 72 20 65 6c 73 65 20 .`which-key-idle-delay'.or.else.
1420 74 68 65 20 6b 65 79 73 74 72 6f 6b 65 20 65 63 68 6f 20 77 69 6c 6c 20 65 72 61 73 65 20 74 68 the.keystroke.echo.will.erase.th
1440 65 0a 77 68 69 63 68 2d 6b 65 79 20 70 6f 70 75 70 2e 22 0a 20 20 3a 74 79 70 65 20 27 66 6c 6f e.which-key.popup."...:type.'flo
1460 61 74 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 22 31 2e 30 22 20 3a 76 65 72 at...:package-version."1.0".:ver
1480 73 69 6f 6e 20 22 33 30 2e 31 22 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 77 68 69 63 68 2d 6b sion."30.1")..(defcustom.which-k
14a0 65 79 2d 6d 61 78 2d 64 65 73 63 72 69 70 74 69 6f 6e 2d 6c 65 6e 67 74 68 20 32 37 0a 20 20 22 ey-max-description-length.27..."
14c0 54 72 75 6e 63 61 74 65 20 74 68 65 20 64 65 73 63 72 69 70 74 69 6f 6e 20 6f 66 20 6b 65 79 73 Truncate.the.description.of.keys
14e0 20 74 6f 20 74 68 69 73 20 6c 65 6e 67 74 68 2e 0a 45 69 74 68 65 72 20 6e 69 6c 20 28 6e 6f 20 .to.this.length..Either.nil.(no.
1500 74 72 75 6e 63 61 74 69 6f 6e 29 2c 20 61 6e 20 69 6e 74 65 67 65 72 20 28 74 72 75 6e 63 61 74 truncation),.an.integer.(truncat
1520 65 20 61 66 74 65 72 20 74 68 61 74 20 6d 61 6e 79 0a 63 68 61 72 61 63 74 65 72 73 29 2c 20 61 e.after.that.many.characters),.a
1540 20 66 6c 6f 61 74 20 28 75 73 65 20 74 68 61 74 20 66 72 61 63 74 69 6f 6e 20 6f 66 20 74 68 65 .float.(use.that.fraction.of.the
1560 20 61 76 61 69 6c 61 62 6c 65 20 77 69 64 74 68 29 2c 0a 6f 72 20 61 20 66 75 6e 63 74 69 6f 6e .available.width),.or.a.function
1580 2c 20 77 68 69 63 68 20 74 61 6b 65 73 20 6f 6e 65 20 61 72 67 75 6d 65 6e 74 2c 20 74 68 65 20 ,.which.takes.one.argument,.the.
15a0 61 76 61 69 6c 61 62 6c 65 20 77 69 64 74 68 20 69 6e 0a 63 68 61 72 61 63 74 65 72 73 2c 20 61 available.width.in.characters,.a
15c0 6e 64 20 77 68 6f 73 65 20 72 65 74 75 72 6e 20 76 61 6c 75 65 20 68 61 73 20 6f 6e 65 20 6f 66 nd.whose.return.value.has.one.of
15e0 20 74 68 65 20 74 79 70 65 73 20 6d 65 6e 74 69 6f 6e 65 64 0a 62 65 66 6f 72 65 2e 20 20 54 72 .the.types.mentioned.before...Tr
1600 75 6e 63 61 74 69 6f 6e 20 69 73 20 64 6f 6e 65 20 75 73 69 6e 67 20 60 77 68 69 63 68 2d 6b 65 uncation.is.done.using.`which-ke
1620 79 2d 65 6c 6c 69 70 73 69 73 27 2e 22 0a 20 20 3a 74 79 70 65 20 27 28 63 68 6f 69 63 65 20 28 y-ellipsis'."...:type.'(choice.(
1640 63 6f 6e 73 74 20 3a 74 61 67 20 22 44 69 73 61 62 6c 65 20 74 72 75 6e 63 61 74 69 6f 6e 22 20 const.:tag."Disable.truncation".
1660 6e 69 6c 29 0a 09 09 20 28 69 6e 74 65 67 65 72 20 3a 74 61 67 20 22 57 69 64 74 68 20 69 6e 20 nil)....(integer.:tag."Width.in.
1680 63 68 61 72 61 63 74 65 72 73 22 29 0a 09 09 20 28 66 6c 6f 61 74 20 3a 74 61 67 20 22 55 73 65 characters")....(float.:tag."Use
16a0 20 66 72 61 63 74 69 6f 6e 20 6f 66 20 61 76 61 69 6c 61 62 6c 65 20 77 69 64 74 68 22 29 0a 09 .fraction.of.available.width")..
16c0 09 20 66 75 6e 63 74 69 6f 6e 29 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 22 ..function)...:package-version."
16e0 31 2e 30 22 20 3a 76 65 72 73 69 6f 6e 20 22 33 30 2e 31 22 29 0a 0a 28 64 65 66 63 75 73 74 6f 1.0".:version."30.1")..(defcusto
1700 6d 20 77 68 69 63 68 2d 6b 65 79 2d 6d 69 6e 2d 63 6f 6c 75 6d 6e 2d 64 65 73 63 72 69 70 74 69 m.which-key-min-column-descripti
1720 6f 6e 2d 77 69 64 74 68 20 30 0a 20 20 22 45 76 65 72 79 20 63 6f 6c 75 6d 6e 20 73 68 6f 75 6c on-width.0..."Every.column.shoul
1740 64 20 61 74 20 6c 65 61 73 74 20 68 61 76 65 20 74 68 69 73 20 77 69 64 74 68 2e 22 0a 20 20 3a d.at.least.have.this.width."...:
1760 74 79 70 65 20 27 6e 61 74 6e 75 6d 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 type.'natnum...:package-version.
1780 22 31 2e 30 22 20 3a 76 65 72 73 69 6f 6e 20 22 33 30 2e 31 22 29 0a 0a 28 64 65 66 63 75 73 74 "1.0".:version."30.1")..(defcust
17a0 6f 6d 20 77 68 69 63 68 2d 6b 65 79 2d 61 64 64 2d 63 6f 6c 75 6d 6e 2d 70 61 64 64 69 6e 67 20 om.which-key-add-column-padding.
17c0 30 0a 20 20 22 41 64 64 69 74 69 6f 6e 61 6c 20 73 70 61 63 65 73 20 74 6f 20 61 64 64 20 74 6f 0..."Additional.spaces.to.add.to
17e0 20 74 68 65 20 6c 65 66 74 20 6f 66 20 65 61 63 68 20 6b 65 79 20 63 6f 6c 75 6d 6e 2e 22 0a 20 .the.left.of.each.key.column."..
1800 20 3a 74 79 70 65 20 27 69 6e 74 65 67 65 72 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 .:type.'integer...:package-versi
1820 6f 6e 20 22 31 2e 30 22 20 3a 76 65 72 73 69 6f 6e 20 22 33 30 2e 31 22 29 0a 0a 28 64 65 66 63 on."1.0".:version."30.1")..(defc
1840 75 73 74 6f 6d 20 77 68 69 63 68 2d 6b 65 79 2d 75 6e 69 63 6f 64 65 2d 63 6f 72 72 65 63 74 69 ustom.which-key-unicode-correcti
1860 6f 6e 20 33 0a 20 20 22 43 6f 72 72 65 63 74 69 6f 6e 20 66 6f 72 20 77 69 64 65 20 75 6e 69 63 on.3..."Correction.for.wide.unic
1880 6f 64 65 20 63 68 61 72 61 63 74 65 72 73 2e 0a 53 69 6e 63 65 20 77 65 20 6d 65 61 73 75 72 65 ode.characters..Since.we.measure
18a0 20 77 69 64 74 68 20 69 6e 20 74 65 72 6d 73 20 6f 66 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 .width.in.terms.of.the.number.of
18c0 20 63 68 61 72 61 63 74 65 72 73 2c 0a 55 6e 69 63 6f 64 65 20 63 68 61 72 61 63 74 65 72 73 20 .characters,.Unicode.characters.
18e0 74 68 61 74 20 61 72 65 20 77 69 64 65 72 20 74 68 61 6e 20 41 53 43 49 49 20 63 68 61 72 61 63 that.are.wider.than.ASCII.charac
1900 74 65 72 73 20 74 68 72 6f 77 20 6f 66 66 0a 74 68 65 20 63 61 6c 63 75 6c 61 74 69 6f 6e 20 66 ters.throw.off.the.calculation.f
1920 6f 72 20 61 76 61 69 6c 61 62 6c 65 20 77 69 64 74 68 20 69 6e 20 74 68 65 20 77 68 69 63 68 2d or.available.width.in.the.which-
1940 6b 65 79 20 62 75 66 66 65 72 2e 20 20 54 68 69 73 0a 76 61 72 69 61 62 6c 65 20 61 6c 6c 6f 77 key.buffer...This.variable.allow
1960 73 20 79 6f 75 20 74 6f 20 61 64 6a 75 73 74 20 66 6f 72 20 74 68 65 20 77 69 64 65 20 75 6e 69 s.you.to.adjust.for.the.wide.uni
1980 63 6f 64 65 20 63 68 61 72 61 63 74 65 72 73 20 62 79 0a 61 72 74 69 66 69 63 69 61 6c 6c 79 20 code.characters.by.artificially.
19a0 72 65 64 75 63 69 6e 67 20 74 68 65 20 61 76 61 69 6c 61 62 6c 65 20 77 69 64 74 68 20 69 6e 20 reducing.the.available.width.in.
19c0 74 68 65 20 62 75 66 66 65 72 2e 0a 0a 54 68 65 20 64 65 66 61 75 6c 74 20 6f 66 20 33 20 6d 65 the.buffer...The.default.of.3.me
19e0 61 6e 73 20 61 6c 6c 6f 77 20 66 6f 72 20 74 68 65 20 74 6f 74 61 6c 20 65 78 74 72 61 20 77 69 ans.allow.for.the.total.extra.wi
1a00 64 74 68 0a 63 6f 6e 74 72 69 62 75 74 65 64 20 62 79 20 61 6e 79 20 77 69 64 65 20 75 6e 69 63 dth.contributed.by.any.wide.unic
1a20 6f 64 65 20 63 68 61 72 61 63 74 65 72 73 20 74 6f 20 62 65 20 75 70 20 74 6f 20 6f 6e 65 0a 61 ode.characters.to.be.up.to.one.a
1a40 64 64 69 74 69 6f 6e 61 6c 20 41 53 43 49 49 20 63 68 61 72 61 63 74 65 72 20 69 6e 20 74 68 65 dditional.ASCII.character.in.the
1a60 20 77 68 69 63 68 2d 6b 65 79 20 62 75 66 66 65 72 2e 20 20 49 6e 63 72 65 61 73 65 20 74 68 69 .which-key.buffer...Increase.thi
1a80 73 0a 6e 75 6d 62 65 72 20 69 66 20 79 6f 75 20 61 72 65 20 73 65 65 69 6e 67 20 63 68 61 72 61 s.number.if.you.are.seeing.chara
1aa0 63 74 65 72 73 20 67 65 74 20 63 75 74 6f 66 66 20 6f 6e 20 74 68 65 20 72 69 67 68 74 20 73 69 cters.get.cutoff.on.the.right.si
1ac0 64 65 0a 6f 66 20 74 68 65 20 77 68 69 63 68 2d 6b 65 79 20 70 6f 70 75 70 2e 22 0a 20 20 3a 74 de.of.the.which-key.popup."...:t
1ae0 79 70 65 20 27 69 6e 74 65 67 65 72 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 ype.'integer...:package-version.
1b00 22 31 2e 30 22 20 3a 76 65 72 73 69 6f 6e 20 22 33 30 2e 31 22 29 0a 0a 28 64 65 66 63 75 73 74 "1.0".:version."30.1")..(defcust
1b20 6f 6d 20 77 68 69 63 68 2d 6b 65 79 2d 64 6f 6e 74 2d 75 73 65 2d 75 6e 69 63 6f 64 65 20 74 0a om.which-key-dont-use-unicode.t.
1b40 20 20 22 49 66 20 6e 6f 6e 2d 6e 69 6c 2c 20 64 6f 6e 27 74 20 75 73 65 20 61 6e 79 20 75 6e 69 .."If.non-nil,.don't.use.any.uni
1b60 63 6f 64 65 20 63 68 61 72 61 63 74 65 72 73 20 69 6e 20 64 65 66 61 75 6c 74 20 73 65 74 75 70 code.characters.in.default.setup
1b80 2e 0a 46 6f 72 20 61 66 66 65 63 74 65 64 20 73 65 74 74 69 6e 67 73 2c 20 73 65 65 20 60 77 68 ..For.affected.settings,.see.`wh
1ba0 69 63 68 2d 6b 65 79 2d 72 65 70 6c 61 63 65 6d 65 6e 74 2d 61 6c 69 73 74 27 2c 20 60 77 68 69 ich-key-replacement-alist',.`whi
1bc0 63 68 2d 6b 65 79 2d 65 6c 6c 69 70 73 69 73 27 0a 60 77 68 69 63 68 2d 6b 65 79 2d 73 65 70 61 ch-key-ellipsis'.`which-key-sepa
1be0 72 61 74 6f 72 27 2e 22 0a 20 20 3a 73 65 74 20 28 6c 61 6d 62 64 61 20 28 73 79 6d 20 76 61 6c rator'."...:set.(lambda.(sym.val
1c00 29 0a 20 20 20 20 20 20 20 20 20 28 63 75 73 74 6f 6d 2d 73 65 74 2d 64 65 66 61 75 6c 74 20 73 )..........(custom-set-default.s
1c20 79 6d 20 76 61 6c 29 0a 20 20 20 20 20 20 20 20 20 28 6d 61 70 63 20 23 27 63 75 73 74 6f 6d 2d ym.val)..........(mapc.#'custom-
1c40 72 65 65 76 61 6c 75 61 74 65 2d 73 65 74 74 69 6e 67 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 reevaluate-setting..............
1c60 20 20 27 28 77 68 69 63 68 2d 6b 65 79 2d 73 65 70 61 72 61 74 6f 72 0a 20 20 20 20 20 20 20 20 ..'(which-key-separator.........
1c80 20 20 20 20 20 20 20 20 20 77 68 69 63 68 2d 6b 65 79 2d 65 6c 6c 69 70 73 69 73 29 29 29 0a 20 .........which-key-ellipsis)))..
1ca0 20 3a 69 6e 69 74 69 61 6c 69 7a 65 20 23 27 63 75 73 74 6f 6d 2d 69 6e 69 74 69 61 6c 69 7a 65 .:initialize.#'custom-initialize
1cc0 2d 63 68 61 6e 67 65 64 0a 20 20 3a 74 79 70 65 20 27 62 6f 6f 6c 65 61 6e 0a 20 20 3a 70 61 63 -changed...:type.'boolean...:pac
1ce0 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 22 31 2e 30 22 20 3a 76 65 72 73 69 6f 6e 20 22 33 30 2e kage-version."1.0".:version."30.
1d00 31 22 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 77 68 69 63 68 2d 6b 65 79 2d 73 65 70 61 72 61 1")..(defcustom.which-key-separa
1d20 74 6f 72 0a 20 20 28 69 66 20 77 68 69 63 68 2d 6b 65 79 2d 64 6f 6e 74 2d 75 73 65 2d 75 6e 69 tor...(if.which-key-dont-use-uni
1d40 63 6f 64 65 20 22 20 3a 20 22 20 22 20 e2 86 92 20 22 29 0a 20 20 22 53 65 70 61 72 61 74 6f 72 code.".:.".".....")..."Separator
1d60 20 74 6f 20 75 73 65 20 62 65 74 77 65 65 6e 20 6b 65 79 20 61 6e 64 20 64 65 73 63 72 69 70 74 .to.use.between.key.and.descript
1d80 69 6f 6e 2e 0a 44 65 66 61 75 6c 74 20 69 73 20 5c 22 20 e2 86 92 20 5c 22 2c 20 75 6e 6c 65 73 ion..Default.is.\".....\",.unles
1da0 73 20 60 77 68 69 63 68 2d 6b 65 79 2d 64 6f 6e 74 2d 75 73 65 2d 75 6e 69 63 6f 64 65 27 20 69 s.`which-key-dont-use-unicode'.i
1dc0 73 20 6e 6f 6e 0a 6e 69 6c 2c 20 69 6e 20 77 68 69 63 68 20 63 61 73 65 20 74 68 65 20 64 65 66 s.non.nil,.in.which.case.the.def
1de0 61 75 6c 74 20 69 73 20 5c 22 20 3a 20 5c 22 2e 22 0a 20 20 3a 74 79 70 65 20 27 73 74 72 69 6e ault.is.\".:.\"."...:type.'strin
1e00 67 0a 20 20 3a 73 65 74 2d 61 66 74 65 72 20 27 28 77 68 69 63 68 2d 6b 65 79 2d 64 6f 6e 74 2d g...:set-after.'(which-key-dont-
1e20 75 73 65 2d 75 6e 69 63 6f 64 65 29 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 use-unicode)...:package-version.
1e40 22 31 2e 30 22 20 3a 76 65 72 73 69 6f 6e 20 22 33 30 2e 31 22 29 0a 0a 28 64 65 66 63 75 73 74 "1.0".:version."30.1")..(defcust
1e60 6f 6d 20 77 68 69 63 68 2d 6b 65 79 2d 65 6c 6c 69 70 73 69 73 0a 20 20 28 69 66 20 77 68 69 63 om.which-key-ellipsis...(if.whic
1e80 68 2d 6b 65 79 2d 64 6f 6e 74 2d 75 73 65 2d 75 6e 69 63 6f 64 65 20 22 2e 2e 22 20 22 e2 80 a6 h-key-dont-use-unicode.".."."...
1ea0 22 29 0a 20 20 22 45 6c 6c 69 70 73 69 73 20 74 6f 20 75 73 65 20 77 68 65 6e 20 74 72 75 6e 63 ")..."Ellipsis.to.use.when.trunc
1ec0 61 74 69 6e 67 2e 0a 44 65 66 61 75 6c 74 20 69 73 20 5c 22 e2 80 a6 5c 22 2c 20 75 6e 6c 65 73 ating..Default.is.\"...\",.unles
1ee0 73 20 60 77 68 69 63 68 2d 6b 65 79 2d 64 6f 6e 74 2d 75 73 65 2d 75 6e 69 63 6f 64 65 27 20 69 s.`which-key-dont-use-unicode'.i
1f00 73 20 6e 6f 6e 20 6e 69 6c 2c 0a 69 6e 20 77 68 69 63 68 20 63 61 73 65 20 74 68 65 20 64 65 66 s.non.nil,.in.which.case.the.def
1f20 61 75 6c 74 20 69 73 20 5c 22 2e 2e 5c 22 2e 20 20 54 68 69 73 20 63 61 6e 20 61 6c 73 6f 20 62 ault.is.\"..\"...This.can.also.b
1f40 65 20 74 68 65 20 65 6d 70 74 79 0a 73 74 72 69 6e 67 20 74 6f 20 74 72 75 6e 63 61 74 65 20 77 e.the.empty.string.to.truncate.w
1f60 69 74 68 6f 75 74 20 75 73 69 6e 67 20 61 6e 79 20 65 6c 6c 69 70 73 69 73 2e 22 0a 20 20 3a 74 ithout.using.any.ellipsis."...:t
1f80 79 70 65 20 27 73 74 72 69 6e 67 0a 20 20 3a 73 65 74 2d 61 66 74 65 72 20 27 28 77 68 69 63 68 ype.'string...:set-after.'(which
1fa0 2d 6b 65 79 2d 64 6f 6e 74 2d 75 73 65 2d 75 6e 69 63 6f 64 65 29 0a 20 20 3a 70 61 63 6b 61 67 -key-dont-use-unicode)...:packag
1fc0 65 2d 76 65 72 73 69 6f 6e 20 22 31 2e 30 22 20 3a 76 65 72 73 69 6f 6e 20 22 33 30 2e 31 22 29 e-version."1.0".:version."30.1")
1fe0 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 77 68 69 63 68 2d 6b 65 79 2d 70 72 65 66 69 78 2d 70 72 ..(defcustom.which-key-prefix-pr
2000 65 66 69 78 20 22 2b 22 0a 20 20 22 50 72 65 66 69 78 20 73 74 72 69 6e 67 20 74 6f 20 69 6e 64 efix."+"..."Prefix.string.to.ind
2020 69 63 61 74 65 20 61 20 6b 65 79 20 62 6f 75 6e 64 20 74 6f 20 61 20 6b 65 79 6d 61 70 2e 0a 44 icate.a.key.bound.to.a.keymap..D
2040 65 66 61 75 6c 74 20 69 73 20 5c 22 2b 5c 22 2e 22 0a 20 20 3a 74 79 70 65 20 27 73 74 72 69 6e efault.is.\"+\"."...:type.'strin
2060 67 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 22 31 2e 30 22 20 3a 76 65 72 73 g...:package-version."1.0".:vers
2080 69 6f 6e 20 22 33 30 2e 31 22 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 77 68 69 63 68 2d 6b 65 ion."30.1")..(defcustom.which-ke
20a0 79 2d 63 6f 6d 70 75 74 65 2d 72 65 6d 61 70 73 20 6e 69 6c 0a 20 20 22 49 66 20 6e 6f 6e 2d 6e y-compute-remaps.nil..."If.non-n
20c0 69 6c 2c 20 73 68 6f 77 20 72 65 6d 61 70 70 65 64 20 63 6f 6d 6d 61 6e 64 73 2e 0a 54 68 69 73 il,.show.remapped.commands..This
20e0 20 61 70 70 6c 69 65 73 20 74 6f 20 63 6f 6d 6d 61 6e 64 73 20 74 68 61 74 20 68 61 76 65 20 62 .applies.to.commands.that.have.b
2100 65 65 6e 20 72 65 6d 61 70 70 65 64 20 67 69 76 65 6e 20 74 68 65 0a 63 75 72 72 65 6e 74 6c 79 een.remapped.given.the.currently
2120 20 61 63 74 69 76 65 20 6b 65 79 6d 61 70 73 2e 22 0a 20 20 3a 74 79 70 65 20 27 62 6f 6f 6c 65 .active.keymaps."...:type.'boole
2140 61 6e 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 22 31 2e 30 22 20 3a 76 65 72 an...:package-version."1.0".:ver
2160 73 69 6f 6e 20 22 33 30 2e 31 22 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 77 68 69 63 68 2d 6b sion."30.1")..(defcustom.which-k
2180 65 79 2d 72 65 70 6c 61 63 65 6d 65 6e 74 2d 61 6c 69 73 74 0a 20 20 60 28 28 28 6e 69 6c 20 2e ey-replacement-alist...`(((nil..
21a0 20 22 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d 6e 65 78 74 2d 70 61 67 65 2d 6e 6f 2d 63 79 ."which-key-show-next-page-no-cy
21c0 63 6c 65 22 29 20 2e 20 28 6e 69 6c 20 2e 20 22 77 6b 20 6e 65 78 74 20 70 67 22 29 29 0a 20 20 cle")...(nil..."wk.next.pg"))...
21e0 20 20 2c 40 28 75 6e 6c 65 73 73 20 77 68 69 63 68 2d 6b 65 79 2d 64 6f 6e 74 2d 75 73 65 2d 75 ..,@(unless.which-key-dont-use-u
2200 6e 69 63 6f 64 65 0a 20 20 20 20 20 20 20 20 27 28 28 28 22 3c 6c 65 66 74 3e 22 29 20 2e 20 28 nicode.........'((("<left>")...(
2220 22 e2 86 90 22 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 28 22 3c 72 69 67 68 74 3e 22 29 20 2e "..."))...........(("<right>")..
2240 20 28 22 e2 86 92 22 29 29 29 29 0a 20 20 20 20 28 28 22 3c 5c 5c 28 5b 5b 3a 61 6c 6e 75 6d 3a .("...")))).....(("<\\([[:alnum:
2260 5d 2d 5d 2b 5c 5c 29 3e 22 29 20 2e 20 28 22 5c 5c 31 22 29 29 29 0a 20 20 22 41 4c 49 53 54 20 ]-]+\\)>")...("\\1")))..."ALIST.
2280 66 6f 72 20 6d 61 6e 69 70 75 6c 61 74 69 6e 67 20 64 69 73 70 6c 61 79 20 6f 66 20 62 69 6e 64 for.manipulating.display.of.bind
22a0 69 6e 67 20 64 65 73 63 72 69 70 74 69 6f 6e 73 2e 0a 45 61 63 68 20 65 6c 65 6d 65 6e 74 20 6f ing.descriptions..Each.element.o
22c0 66 20 74 68 65 20 6c 69 73 74 20 69 73 20 61 20 6e 65 73 74 65 64 20 63 6f 6e 73 20 63 65 6c 6c f.the.list.is.a.nested.cons.cell
22e0 20 77 69 74 68 20 74 68 65 20 66 6f 72 6d 61 74 0a 0a 5c 28 4d 41 54 43 48 20 43 4f 4e 53 20 2e .with.the.format..\(MATCH.CONS..
2300 20 52 45 50 4c 41 43 45 4d 45 4e 54 5c 29 2e 0a 0a 54 68 65 20 4d 41 54 43 48 20 43 4f 4e 53 20 .REPLACEMENT\)...The.MATCH.CONS.
2320 64 65 74 65 72 6d 69 6e 65 73 20 77 68 65 6e 20 61 20 72 65 70 6c 61 63 65 6d 65 6e 74 20 73 68 determines.when.a.replacement.sh
2340 6f 75 6c 64 20 6f 63 63 75 72 20 61 6e 64 0a 52 45 50 4c 41 43 45 4d 45 4e 54 20 64 65 74 65 72 ould.occur.and.REPLACEMENT.deter
2360 6d 69 6e 65 73 20 68 6f 77 20 74 68 65 20 72 65 70 6c 61 63 65 6d 65 6e 74 20 73 68 6f 75 6c 64 mines.how.the.replacement.should
2380 20 6f 63 63 75 72 2e 20 20 45 61 63 68 20 6d 61 79 0a 68 61 76 65 20 74 68 65 20 66 6f 72 6d 61 .occur...Each.may.have.the.forma
23a0 74 20 5c 28 4b 45 59 20 52 45 47 45 58 50 20 2e 20 42 49 4e 44 49 4e 47 20 52 45 47 45 58 50 5c t.\(KEY.REGEXP...BINDING.REGEXP\
23c0 29 2e 20 20 46 6f 72 20 74 68 65 0a 72 65 70 6c 61 63 65 6d 65 6e 74 20 74 6f 20 61 70 70 6c 79 )...For.the.replacement.to.apply
23e0 20 74 68 65 20 6b 65 79 20 62 69 6e 64 69 6e 67 20 6d 75 73 74 20 6d 61 74 63 68 20 62 6f 74 68 .the.key.binding.must.match.both
2400 20 74 68 65 20 4b 45 59 0a 52 45 47 45 58 50 20 61 6e 64 20 74 68 65 20 42 49 4e 44 49 4e 47 20 .the.KEY.REGEXP.and.the.BINDING.
2420 52 45 47 45 58 50 2e 20 20 41 20 76 61 6c 75 65 20 6f 66 20 6e 69 6c 20 69 6e 20 65 69 74 68 65 REGEXP...A.value.of.nil.in.eithe
2440 72 20 70 6f 73 69 74 69 6f 6e 0a 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f 20 6d 61 74 63 68 20 r.position.can.be.used.to.match.
2460 65 76 65 72 79 20 70 6f 73 73 69 62 69 6c 69 74 79 2e 20 20 54 68 65 20 72 65 70 6c 61 63 65 6d every.possibility...The.replacem
2480 65 6e 74 20 69 73 0a 70 65 72 66 6f 72 6d 65 64 20 62 79 20 75 73 69 6e 67 20 60 72 65 70 6c 61 ent.is.performed.by.using.`repla
24a0 63 65 2d 72 65 67 65 78 70 2d 69 6e 2d 73 74 72 69 6e 67 27 20 6f 6e 20 74 68 65 20 4b 45 59 20 ce-regexp-in-string'.on.the.KEY.
24c0 52 45 47 45 58 50 0a 66 72 6f 6d 20 74 68 65 20 4d 41 54 43 48 20 43 4f 4e 53 20 61 6e 64 20 52 REGEXP.from.the.MATCH.CONS.and.R
24e0 45 50 4c 41 43 45 4d 45 4e 54 20 77 68 65 6e 20 69 74 20 69 73 20 61 20 63 6f 6e 73 20 63 65 6c EPLACEMENT.when.it.is.a.cons.cel
2500 6c 2c 20 61 6e 64 0a 74 68 65 6e 20 73 69 6d 69 6c 61 72 6c 79 20 66 6f 72 20 74 68 65 20 42 49 l,.and.then.similarly.for.the.BI
2520 4e 44 49 4e 47 20 52 45 47 45 58 50 2e 20 20 41 20 6e 69 6c 20 76 61 6c 75 65 20 69 6e 20 74 68 NDING.REGEXP...A.nil.value.in.th
2540 65 20 42 49 4e 44 49 4e 47 0a 52 45 47 45 58 50 20 70 6f 73 69 74 69 6f 6e 20 63 61 6e 63 65 6c e.BINDING.REGEXP.position.cancel
2560 73 20 74 68 65 20 72 65 70 6c 61 63 65 6d 65 6e 74 2e 20 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c s.the.replacement...For.example,
2580 20 74 68 65 20 65 6e 74 72 79 0a 0a 5c 28 5c 28 6e 69 6c 20 2e 20 5c 22 50 72 65 66 69 78 20 43 .the.entry..\(\(nil...\"Prefix.C
25a0 6f 6d 6d 61 6e 64 5c 22 5c 29 20 2e 20 5c 28 6e 69 6c 20 2e 20 5c 22 70 72 65 66 69 78 5c 22 5c ommand\"\)...\(nil...\"prefix\"\
25c0 29 5c 29 0a 0a 6d 61 74 63 68 65 73 20 61 6e 79 20 62 69 6e 64 69 6e 67 20 77 69 74 68 20 74 68 )\)..matches.any.binding.with.th
25e0 65 20 64 65 73 63 72 69 70 74 69 6f 6e 73 20 5c 22 50 72 65 66 69 78 20 43 6f 6d 6d 61 6e 64 5c e.descriptions.\"Prefix.Command\
2600 22 20 61 6e 64 0a 72 65 70 6c 61 63 65 73 20 74 68 65 20 64 65 73 63 72 69 70 74 69 6f 6e 20 77 ".and.replaces.the.description.w
2620 69 74 68 20 5c 22 70 72 65 66 69 78 5c 22 2c 20 69 67 6e 6f 72 69 6e 67 20 74 68 65 0a 63 6f 72 ith.\"prefix\",.ignoring.the.cor
2640 72 65 73 70 6f 6e 64 69 6e 67 20 6b 65 79 2e 0a 0a 52 45 50 4c 41 43 45 4d 45 4e 54 20 6d 61 79 responding.key...REPLACEMENT.may
2660 20 61 6c 73 6f 20 62 65 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 61 6b 69 6e 67 20 61 20 63 6f 6e .also.be.a.function.taking.a.con
2680 73 20 63 65 6c 6c 0a 5c 28 4b 45 59 20 2e 20 42 49 4e 44 49 4e 47 5c 29 20 61 6e 64 20 70 72 6f s.cell.\(KEY...BINDING\).and.pro
26a0 64 75 63 69 6e 67 20 61 20 6e 65 77 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 63 6f 6e 73 20 ducing.a.new.corresponding.cons.
26c0 63 65 6c 6c 2e 0a 0a 49 66 20 52 45 50 4c 41 43 45 4d 45 4e 54 20 69 73 20 61 6e 79 74 68 69 6e cell...If.REPLACEMENT.is.anythin
26e0 67 20 6f 74 68 65 72 20 74 68 61 6e 20 61 20 63 6f 6e 73 20 63 65 6c 6c 20 5c 28 61 6e 64 20 6e g.other.than.a.cons.cell.\(and.n
2700 6f 6e 20 6e 69 6c 5c 29 0a 74 68 65 20 6b 65 79 20 62 69 6e 64 69 6e 67 20 69 73 20 69 67 6e 6f on.nil\).the.key.binding.is.igno
2720 72 65 64 20 62 79 20 77 68 69 63 68 2d 6b 65 79 2e 0a 0a 46 69 6e 61 6c 6c 79 2c 20 79 6f 75 20 red.by.which-key...Finally,.you.
2740 63 61 6e 20 6d 75 6c 74 69 70 6c 65 20 72 65 70 6c 61 63 65 6d 65 6e 74 73 20 74 6f 20 6f 63 63 can.multiple.replacements.to.occ
2760 75 72 20 66 6f 72 20 61 20 67 69 76 65 6e 20 6b 65 79 0a 62 69 6e 64 69 6e 67 20 62 79 20 73 65 ur.for.a.given.key.binding.by.se
2780 74 74 69 6e 67 20 60 77 68 69 63 68 2d 6b 65 79 2d 61 6c 6c 6f 77 2d 6d 75 6c 74 69 70 6c 65 2d tting.`which-key-allow-multiple-
27a0 72 65 70 6c 61 63 65 6d 65 6e 74 73 27 20 74 6f 20 61 0a 6e 6f 6e 2d 6e 69 6c 20 76 61 6c 75 65 replacements'.to.a.non-nil.value
27c0 2e 22 0a 20 20 3a 74 79 70 65 20 27 28 61 6c 69 73 74 20 3a 6b 65 79 2d 74 79 70 65 20 28 63 6f ."...:type.'(alist.:key-type.(co
27e0 6e 73 20 28 63 68 6f 69 63 65 20 72 65 67 65 78 70 20 28 63 6f 6e 73 74 20 6e 69 6c 29 29 0a 20 ns.(choice.regexp.(const.nil))..
2800 20 20 20 20 20 20 20 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 ...............................(
2820 63 68 6f 69 63 65 20 72 65 67 65 78 70 20 28 63 6f 6e 73 74 20 6e 69 6c 29 29 29 0a 20 20 20 20 choice.regexp.(const.nil))).....
2840 20 20 20 20 20 20 20 20 20 20 20 20 3a 76 61 6c 75 65 2d 74 79 70 65 20 28 63 6f 6e 73 20 28 63 ............:value-type.(cons.(c
2860 68 6f 69 63 65 20 73 74 72 69 6e 67 20 28 63 6f 6e 73 74 20 6e 69 6c 29 29 0a 20 20 20 20 20 20 hoice.string.(const.nil)).......
2880 20 20 20 20 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 68 6f ............................(cho
28a0 69 63 65 20 73 74 72 69 6e 67 20 28 63 6f 6e 73 74 20 6e 69 6c 29 29 29 29 0a 20 20 3a 70 61 63 ice.string.(const.nil))))...:pac
28c0 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 22 31 2e 30 22 20 3a 76 65 72 73 69 6f 6e 20 22 33 30 2e kage-version."1.0".:version."30.
28e0 31 22 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 77 68 69 63 68 2d 6b 65 79 2d 61 6c 6c 6f 77 2d 1")..(defcustom.which-key-allow-
2900 6d 75 6c 74 69 70 6c 65 2d 72 65 70 6c 61 63 65 6d 65 6e 74 73 20 6e 69 6c 0a 20 20 22 41 6c 6c multiple-replacements.nil..."All
2920 6f 77 20 61 20 6b 65 79 20 62 69 6e 64 69 6e 67 20 74 6f 20 62 65 20 6d 6f 64 69 66 69 65 64 20 ow.a.key.binding.to.be.modified.
2940 62 79 20 6d 75 6c 74 69 70 6c 65 20 65 6c 65 6d 65 6e 74 73 2e 0a 57 68 65 6e 20 6e 6f 6e 2d 6e by.multiple.elements..When.non-n
2960 69 6c 2c 20 74 68 69 73 20 61 6c 6c 6f 77 73 20 61 20 73 69 6e 67 6c 65 20 6b 65 79 20 62 69 6e il,.this.allows.a.single.key.bin
2980 64 69 6e 67 20 74 6f 20 6d 61 74 63 68 20 6d 75 6c 74 69 70 6c 65 0a 70 61 74 74 65 72 6e 73 20 ding.to.match.multiple.patterns.
29a0 69 6e 20 60 77 68 69 63 68 2d 6b 65 79 2d 72 65 70 6c 61 63 65 6d 65 6e 74 2d 61 6c 69 73 74 27 in.`which-key-replacement-alist'
29c0 2e 20 20 57 68 65 6e 20 6e 69 6c 2c 20 6f 6e 6c 79 20 74 68 65 0a 66 69 72 73 74 20 6d 61 74 63 ...When.nil,.only.the.first.matc
29e0 68 20 69 73 20 75 73 65 64 20 74 6f 20 70 65 72 66 6f 72 6d 20 72 65 70 6c 61 63 65 6d 65 6e 74 h.is.used.to.perform.replacement
2a00 73 20 66 72 6f 6d 0a 60 77 68 69 63 68 2d 6b 65 79 2d 72 65 70 6c 61 63 65 6d 65 6e 74 2d 61 6c s.from.`which-key-replacement-al
2a20 69 73 74 27 2e 22 0a 20 20 3a 74 79 70 65 20 27 62 6f 6f 6c 65 61 6e 0a 20 20 3a 70 61 63 6b 61 ist'."...:type.'boolean...:packa
2a40 67 65 2d 76 65 72 73 69 6f 6e 20 22 31 2e 30 22 20 3a 76 65 72 73 69 6f 6e 20 22 33 30 2e 31 22 ge-version."1.0".:version."30.1"
2a60 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d 64 6f 63 )..(defcustom.which-key-show-doc
2a80 73 74 72 69 6e 67 73 20 6e 69 6c 0a 20 20 22 49 66 20 6e 6f 6e 2d 6e 69 6c 2c 20 73 68 6f 77 20 strings.nil..."If.non-nil,.show.
2aa0 65 61 63 68 20 63 6f 6d 6d 61 6e 64 27 73 20 64 6f 63 73 74 72 69 6e 67 20 69 6e 20 74 68 65 20 each.command's.docstring.in.the.
2ac0 77 68 69 63 68 2d 6b 65 79 20 70 6f 70 75 70 2e 0a 54 68 69 73 20 77 69 6c 6c 20 6f 6e 6c 79 20 which-key.popup..This.will.only.
2ae0 64 69 73 70 6c 61 79 20 74 68 65 20 64 6f 63 73 74 72 69 6e 67 20 75 70 20 74 6f 20 74 68 65 20 display.the.docstring.up.to.the.
2b00 66 69 72 73 74 20 6c 69 6e 65 0a 62 72 65 61 6b 2e 20 20 49 66 20 79 6f 75 20 73 65 74 20 74 68 first.line.break...If.you.set.th
2b20 69 73 20 76 61 72 69 61 62 6c 65 20 74 6f 20 74 68 65 20 73 79 6d 62 6f 6c 20 64 6f 63 73 74 72 is.variable.to.the.symbol.docstr
2b40 69 6e 67 2d 6f 6e 6c 79 2c 0a 74 68 65 6e 20 74 68 65 20 63 6f 6d 6d 61 6e 64 27 73 20 6e 61 6d ing-only,.then.the.command's.nam
2b60 65 20 77 69 74 68 20 62 65 20 6f 6d 69 74 74 65 64 2e 20 20 59 6f 75 20 70 72 6f 62 61 62 6c 79 e.with.be.omitted...You.probably
2b80 20 61 6c 73 6f 20 77 61 6e 74 0a 74 6f 20 61 64 6a 75 73 74 20 60 77 68 69 63 68 2d 6b 65 79 2d .also.want.to.adjust.`which-key-
2ba0 6d 61 78 2d 64 65 73 63 72 69 70 74 69 6f 6e 2d 6c 65 6e 67 74 68 27 20 61 74 20 74 68 65 20 73 max-description-length'.at.the.s
2bc0 61 6d 65 20 74 69 6d 65 20 69 66 0a 79 6f 75 20 75 73 65 20 74 68 69 73 20 66 65 61 74 75 72 65 ame.time.if.you.use.this.feature
2be0 2e 22 0a 20 20 3a 74 79 70 65 20 27 28 72 61 64 69 6f 0a 20 20 20 20 20 20 20 20 20 20 28 63 6f ."...:type.'(radio...........(co
2c00 6e 73 74 20 3a 74 61 67 20 22 44 6f 20 6e 6f 74 20 73 68 6f 77 20 64 6f 63 73 74 72 69 6e 67 73 nst.:tag."Do.not.show.docstrings
2c20 22 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 74 20 3a 74 61 67 20 22 41 64 ".nil)...........(const.:tag."Ad
2c40 64 20 64 6f 63 73 74 72 69 6e 67 20 74 6f 20 63 6f 6d 6d 61 6e 64 20 6e 61 6d 65 73 22 20 74 29 d.docstring.to.command.names".t)
2c60 0a 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 74 20 3a 74 61 67 20 22 52 65 70 6c 61 63 65 20 ...........(const.:tag."Replace.
2c80 63 6f 6d 6d 61 6e 64 20 6e 61 6d 65 20 77 69 74 68 20 64 6f 63 73 74 72 69 6e 67 22 20 64 6f 63 command.name.with.docstring".doc
2ca0 73 74 72 69 6e 67 2d 6f 6e 6c 79 29 29 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e string-only))...:package-version
2cc0 20 22 31 2e 30 22 20 3a 76 65 72 73 69 6f 6e 20 22 33 30 2e 31 22 29 0a 0a 28 64 65 66 63 75 73 ."1.0".:version."30.1")..(defcus
2ce0 74 6f 6d 20 77 68 69 63 68 2d 6b 65 79 2d 65 78 74 72 61 2d 6b 65 79 6d 61 70 73 20 27 28 6b 65 tom.which-key-extra-keymaps.'(ke
2d00 79 2d 74 72 61 6e 73 6c 61 74 69 6f 6e 2d 6d 61 70 29 0a 20 20 22 4c 69 73 74 20 6f 66 20 65 78 y-translation-map)..."List.of.ex
2d20 74 72 61 20 6b 65 79 6d 61 70 73 20 74 6f 20 73 68 6f 77 20 65 6e 74 72 69 65 73 20 66 72 6f 6d tra.keymaps.to.show.entries.from
2d40 2e 0a 54 68 65 20 64 65 66 61 75 6c 74 20 69 73 20 74 6f 20 63 68 65 63 6b 20 60 6b 65 79 2d 74 ..The.default.is.to.check.`key-t
2d60 72 61 6e 73 6c 61 74 69 6f 6e 2d 6d 61 70 27 2c 20 77 68 69 63 68 20 63 6f 6e 74 61 69 6e 73 20 ranslation-map',.which.contains.
2d80 74 68 65 0a 5c 5c 3d 27 43 2d 78 20 38 27 20 62 69 6e 64 69 6e 67 73 20 66 6f 72 20 65 6e 74 65 the.\\='C-x.8'.bindings.for.ente
2da0 72 69 6e 67 20 63 6f 6d 6d 6f 6e 20 63 68 61 72 61 63 74 65 72 73 2e 22 0a 20 20 3a 74 79 70 65 ring.common.characters."...:type
2dc0 20 27 28 63 68 6f 69 63 65 20 28 6c 69 73 74 20 3a 74 61 67 20 22 54 72 61 6e 73 6c 61 74 69 6f .'(choice.(list.:tag."Translatio
2de0 6e 20 6d 61 70 22 20 28 63 6f 6e 73 74 20 6b 65 79 2d 74 72 61 6e 73 6c 61 74 69 6f 6e 2d 6d 61 n.map".(const.key-translation-ma
2e00 70 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 74 20 3a 74 61 67 p))..................(const.:tag
2e20 20 22 4e 6f 6e 65 22 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 72 ."None".nil)..................(r
2e40 65 70 65 61 74 20 3a 74 61 67 20 22 43 75 73 74 6f 6d 22 20 73 79 6d 62 6f 6c 29 29 0a 20 20 3a epeat.:tag."Custom".symbol))...:
2e60 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 22 31 2e 30 22 20 3a 76 65 72 73 69 6f 6e 20 22 package-version."1.0".:version."
2e80 33 30 2e 31 22 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 77 68 69 63 68 2d 6b 65 79 2d 68 69 67 30.1")..(defcustom.which-key-hig
2ea0 68 6c 69 67 68 74 65 64 2d 63 6f 6d 6d 61 6e 64 2d 6c 69 73 74 20 27 28 29 0a 20 20 22 52 75 6c hlighted-command-list.'()..."Rul
2ec0 65 73 20 75 73 65 64 20 74 6f 20 68 69 67 68 6c 69 67 68 74 20 63 65 72 74 61 69 6e 20 63 6f 6d es.used.to.highlight.certain.com
2ee0 6d 61 6e 64 73 2e 0a 49 66 20 74 68 65 20 65 6c 65 6d 65 6e 74 20 69 73 20 61 20 73 74 72 69 6e mands..If.the.element.is.a.strin
2f00 67 2c 20 61 73 73 75 6d 65 20 69 74 20 69 73 20 61 20 72 65 67 65 78 70 20 70 61 74 74 65 72 6e g,.assume.it.is.a.regexp.pattern
2f20 20 66 6f 72 0a 6d 61 74 63 68 69 6e 67 20 63 6f 6d 6d 61 6e 64 20 6e 61 6d 65 73 20 61 6e 64 20 .for.matching.command.names.and.
2f40 75 73 65 0a 60 77 68 69 63 68 2d 6b 65 79 2d 68 69 67 68 6c 69 67 68 74 65 64 2d 63 6f 6d 6d 61 use.`which-key-highlighted-comma
2f60 6e 64 2d 66 61 63 65 27 20 66 6f 72 20 61 6e 79 20 6d 61 74 63 68 69 6e 67 20 6e 61 6d 65 73 2e nd-face'.for.any.matching.names.
2f80 20 20 49 66 0a 74 68 65 20 65 6c 65 6d 65 6e 74 20 69 73 20 61 20 63 6f 6e 73 20 63 65 6c 6c 2c ..If.the.element.is.a.cons.cell,
2fa0 20 69 74 20 73 68 6f 75 6c 64 20 74 61 6b 65 20 74 68 65 20 66 6f 72 6d 20 28 72 65 67 65 78 70 .it.should.take.the.form.(regexp
2fc0 20 2e 0a 66 61 63 65 20 74 6f 20 61 70 70 6c 79 29 2e 22 0a 20 20 3a 74 79 70 65 20 20 27 28 72 ...face.to.apply)."...:type..'(r
2fe0 65 70 65 61 74 20 28 63 68 6f 69 63 65 20 73 74 72 69 6e 67 20 28 63 6f 6e 73 20 72 65 67 65 78 epeat.(choice.string.(cons.regex
3000 70 20 66 61 63 65 29 29 29 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 22 31 2e p.face)))...:package-version."1.
3020 30 22 20 3a 76 65 72 73 69 6f 6e 20 22 33 30 2e 31 22 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 0".:version."30.1")..(defcustom.
3040 77 68 69 63 68 2d 6b 65 79 2d 73 70 65 63 69 61 6c 2d 6b 65 79 73 20 27 28 29 0a 20 20 22 54 68 which-key-special-keys.'()..."Th
3060 65 73 65 20 6b 65 79 73 20 77 69 6c 6c 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 62 65 20 74 ese.keys.will.automatically.be.t
3080 72 75 6e 63 61 74 65 64 20 74 6f 20 6f 6e 65 20 63 68 61 72 61 63 74 65 72 2e 0a 54 68 65 79 20 runcated.to.one.character..They.
30a0 61 6c 73 6f 20 68 61 76 65 20 60 77 68 69 63 68 2d 6b 65 79 2d 73 70 65 63 69 61 6c 2d 6b 65 79 also.have.`which-key-special-key
30c0 2d 66 61 63 65 27 20 61 70 70 6c 69 65 64 20 74 6f 20 74 68 65 6d 2e 20 20 54 68 69 73 0a 69 73 -face'.applied.to.them...This.is
30e0 20 64 69 73 61 62 6c 65 64 20 62 79 20 64 65 66 61 75 6c 74 2e 20 20 41 6e 20 65 78 61 6d 70 6c .disabled.by.default...An.exampl
3100 65 20 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20 69 73 0a 0a 5c 28 73 65 74 71 20 77 68 69 63 68 e.configuration.is..\(setq.which
3120 2d 6b 65 79 2d 73 70 65 63 69 61 6c 2d 6b 65 79 73 20 5c 5c 3d 27 28 5c 22 53 50 43 5c 22 20 5c -key-special-keys.\\='(\"SPC\".\
3140 22 54 41 42 5c 22 20 5c 22 52 45 54 5c 22 20 5c 22 45 53 43 5c 22 20 5c 22 44 45 4c 5c 22 29 5c "TAB\".\"RET\".\"ESC\".\"DEL\")\
3160 29 22 0a 20 20 3a 74 79 70 65 20 27 28 72 65 70 65 61 74 20 73 74 72 69 6e 67 29 0a 20 20 3a 70 )"...:type.'(repeat.string)...:p
3180 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 22 31 2e 30 22 20 3a 76 65 72 73 69 6f 6e 20 22 33 ackage-version."1.0".:version."3
31a0 30 2e 31 22 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 77 68 69 63 68 2d 6b 65 79 2d 62 75 66 66 0.1")..(defcustom.which-key-buff
31c0 65 72 2d 6e 61 6d 65 20 22 20 2a 77 68 69 63 68 2d 6b 65 79 2a 22 0a 20 20 22 4e 61 6d 65 20 6f er-name.".*which-key*"..."Name.o
31e0 66 20 77 68 69 63 68 2d 6b 65 79 20 62 75 66 66 65 72 2e 22 0a 20 20 3a 74 79 70 65 20 27 73 74 f.which-key.buffer."...:type.'st
3200 72 69 6e 67 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 22 31 2e 30 22 20 3a 76 ring...:package-version."1.0".:v
3220 65 72 73 69 6f 6e 20 22 33 30 2e 31 22 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 77 68 69 63 68 ersion."30.1")..(defcustom.which
3240 2d 6b 65 79 2d 73 68 6f 77 2d 70 72 65 66 69 78 20 27 65 63 68 6f 0a 20 20 22 57 68 65 74 68 65 -key-show-prefix.'echo..."Whethe
3260 72 20 74 6f 20 61 6e 64 20 77 68 65 72 65 20 74 6f 20 64 69 73 70 6c 61 79 20 74 68 65 20 63 75 r.to.and.where.to.display.the.cu
3280 72 72 65 6e 74 20 70 72 65 66 69 78 20 73 65 71 75 65 6e 63 65 2e 0a 50 6f 73 73 69 62 6c 65 20 rrent.prefix.sequence..Possible.
32a0 63 68 6f 69 63 65 73 20 61 72 65 20 65 63 68 6f 20 66 6f 72 20 65 63 68 6f 20 61 72 65 61 20 28 choices.are.echo.for.echo.area.(
32c0 74 68 65 20 64 65 66 61 75 6c 74 29 2c 20 6c 65 66 74 2c 20 74 6f 70 0a 61 6e 64 20 6e 69 6c 2e the.default),.left,.top.and.nil.
32e0 20 20 6e 69 6c 20 74 75 72 6e 73 20 74 68 65 20 66 65 61 74 75 72 65 20 6f 66 66 2e 22 0a 20 20 ..nil.turns.the.feature.off."...
3300 3a 74 79 70 65 20 27 28 72 61 64 69 6f 20 28 63 6f 6e 73 74 20 3a 74 61 67 20 22 4c 65 66 74 20 :type.'(radio.(const.:tag."Left.
3320 6f 66 20 74 68 65 20 6b 65 79 73 22 20 6c 65 66 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 of.the.keys".left)..............
3340 20 20 20 28 63 6f 6e 73 74 20 3a 74 61 67 20 22 49 6e 20 74 68 65 20 66 69 72 73 74 20 6c 69 6e ...(const.:tag."In.the.first.lin
3360 65 22 20 74 6f 70 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 74 20 3a e".top).................(const.:
3380 74 61 67 20 22 49 6e 20 74 68 65 20 6c 61 73 74 20 6c 69 6e 65 22 20 62 6f 74 74 6f 6d 29 0a 20 tag."In.the.last.line".bottom)..
33a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 74 20 3a 74 61 67 20 22 49 6e 20 74 ...............(const.:tag."In.t
33c0 68 65 20 65 63 68 6f 20 61 72 65 61 22 20 65 63 68 6f 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 he.echo.area".echo).............
33e0 20 20 20 20 28 63 6f 6e 73 74 20 3a 74 61 67 20 22 49 6e 20 74 68 65 20 6d 6f 64 65 2d 6c 69 6e ....(const.:tag."In.the.mode-lin
3400 65 22 20 6d 6f 64 65 2d 6c 69 6e 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 e".mode-line).................(c
3420 6f 6e 73 74 20 3a 74 61 67 20 22 48 69 64 65 22 20 6e 69 6c 29 29 0a 20 20 3a 70 61 63 6b 61 67 onst.:tag."Hide".nil))...:packag
3440 65 2d 76 65 72 73 69 6f 6e 20 22 31 2e 30 22 20 3a 76 65 72 73 69 6f 6e 20 22 33 30 2e 31 22 29 e-version."1.0".:version."30.1")
3460 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 77 68 69 63 68 2d 6b 65 79 2d 70 6f 70 75 70 2d 74 79 70 ..(defcustom.which-key-popup-typ
3480 65 20 27 73 69 64 65 2d 77 69 6e 64 6f 77 0a 20 20 22 53 75 70 70 6f 72 74 65 64 20 74 79 70 65 e.'side-window..."Supported.type
34a0 73 20 61 72 65 20 6d 69 6e 69 62 75 66 66 65 72 2c 20 73 69 64 65 2d 77 69 6e 64 6f 77 2c 20 66 s.are.minibuffer,.side-window,.f
34c0 72 61 6d 65 2c 20 61 6e 64 20 63 75 73 74 6f 6d 2e 22 0a 20 20 3a 74 79 70 65 20 27 28 72 61 64 rame,.and.custom."...:type.'(rad
34e0 69 6f 20 28 63 6f 6e 73 74 20 3a 74 61 67 20 22 53 68 6f 77 20 69 6e 20 6d 69 6e 69 62 75 66 66 io.(const.:tag."Show.in.minibuff
3500 65 72 22 20 6d 69 6e 69 62 75 66 66 65 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 er".minibuffer).................
3520 28 63 6f 6e 73 74 20 3a 74 61 67 20 22 53 68 6f 77 20 69 6e 20 73 69 64 65 20 77 69 6e 64 6f 77 (const.:tag."Show.in.side.window
3540 22 20 73 69 64 65 2d 77 69 6e 64 6f 77 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 ".side-window).................(
3560 63 6f 6e 73 74 20 3a 74 61 67 20 22 53 68 6f 77 20 69 6e 20 70 6f 70 75 70 20 66 72 61 6d 65 22 const.:tag."Show.in.popup.frame"
3580 20 66 72 61 6d 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 74 20 3a .frame).................(const.:
35a0 74 61 67 20 22 55 73 65 20 79 6f 75 72 20 63 75 73 74 6f 6d 20 64 69 73 70 6c 61 79 20 66 75 6e tag."Use.your.custom.display.fun
35c0 63 74 69 6f 6e 73 22 20 63 75 73 74 6f 6d 29 29 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 ctions".custom))...:package-vers
35e0 69 6f 6e 20 22 31 2e 30 22 20 3a 76 65 72 73 69 6f 6e 20 22 33 30 2e 31 22 29 0a 0a 28 64 65 66 ion."1.0".:version."30.1")..(def
3600 63 75 73 74 6f 6d 20 77 68 69 63 68 2d 6b 65 79 2d 6d 69 6e 2d 64 69 73 70 6c 61 79 2d 6c 69 6e custom.which-key-min-display-lin
3620 65 73 20 31 0a 20 20 22 4d 69 6e 69 6d 75 6d 20 6e 75 6d 62 65 72 20 6f 66 20 68 6f 72 69 7a 6f es.1..."Minimum.number.of.horizo
3640 6e 74 61 6c 20 6c 69 6e 65 73 20 74 6f 20 64 69 73 70 6c 61 79 20 69 6e 20 74 68 65 20 77 68 69 ntal.lines.to.display.in.the.whi
3660 63 68 2d 6b 65 79 20 62 75 66 66 65 72 2e 22 0a 20 20 3a 74 79 70 65 20 27 69 6e 74 65 67 65 72 ch-key.buffer."...:type.'integer
3680 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 22 31 2e 30 22 20 3a 76 65 72 73 69 ...:package-version."1.0".:versi
36a0 6f 6e 20 22 33 30 2e 31 22 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 77 68 69 63 68 2d 6b 65 79 on."30.1")..(defcustom.which-key
36c0 2d 6d 61 78 2d 64 69 73 70 6c 61 79 2d 63 6f 6c 75 6d 6e 73 20 6e 69 6c 0a 20 20 22 4d 61 78 69 -max-display-columns.nil..."Maxi
36e0 6d 75 6d 20 6e 75 6d 62 65 72 20 6f 66 20 63 6f 6c 75 6d 6e 73 20 74 6f 20 64 69 73 70 6c 61 79 mum.number.of.columns.to.display
3700 20 69 6e 20 74 68 65 20 77 68 69 63 68 2d 6b 65 79 20 62 75 66 66 65 72 2e 0a 41 20 76 61 6c 75 .in.the.which-key.buffer..A.valu
3720 65 20 6f 66 20 6e 69 6c 20 6d 65 61 6e 73 20 64 6f 6e 27 74 20 69 6d 70 6f 73 65 20 61 20 6d 61 e.of.nil.means.don't.impose.a.ma
3740 78 69 6d 75 6d 2e 22 0a 20 20 3a 74 79 70 65 20 27 28 63 68 6f 69 63 65 20 69 6e 74 65 67 65 72 ximum."...:type.'(choice.integer
3760 20 28 63 6f 6e 73 74 20 3a 74 61 67 20 22 55 6e 62 6f 75 6e 64 65 64 22 20 6e 69 6c 29 29 0a 20 .(const.:tag."Unbounded".nil))..
3780 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 22 31 2e 30 22 20 3a 76 65 72 73 69 6f 6e .:package-version."1.0".:version
37a0 20 22 33 30 2e 31 22 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 77 68 69 63 68 2d 6b 65 79 2d 73 ."30.1")..(defcustom.which-key-s
37c0 69 64 65 2d 77 69 6e 64 6f 77 2d 6c 6f 63 61 74 69 6f 6e 20 27 62 6f 74 74 6f 6d 0a 20 20 22 4c ide-window-location.'bottom..."L
37e0 6f 63 61 74 69 6f 6e 20 6f 66 20 77 68 69 63 68 2d 6b 65 79 20 70 6f 70 75 70 20 77 68 65 6e 20 ocation.of.which-key.popup.when.
3800 60 77 68 69 63 68 2d 6b 65 79 2d 70 6f 70 75 70 2d 74 79 70 65 27 20 69 73 20 73 69 64 65 2d 77 `which-key-popup-type'.is.side-w
3820 69 6e 64 6f 77 2e 0a 53 68 6f 75 6c 64 20 62 65 20 6f 6e 65 20 6f 66 20 74 6f 70 2c 20 62 6f 74 indow..Should.be.one.of.top,.bot
3840 74 6f 6d 2c 20 6c 65 66 74 20 6f 72 20 72 69 67 68 74 2e 20 20 59 6f 75 20 63 61 6e 20 61 6c 73 tom,.left.or.right...You.can.als
3860 6f 20 73 70 65 63 69 66 79 0a 61 20 6c 69 73 74 20 6f 66 20 74 77 6f 20 6c 6f 63 61 74 69 6f 6e o.specify.a.list.of.two.location
3880 73 2c 20 6c 69 6b 65 20 28 72 69 67 68 74 20 62 6f 74 74 6f 6d 29 2e 20 20 49 6e 20 74 68 69 73 s,.like.(right.bottom)...In.this
38a0 20 63 61 73 65 2c 20 74 68 65 0a 66 69 72 73 74 20 6c 6f 63 61 74 69 6f 6e 20 69 73 20 74 72 69 .case,.the.first.location.is.tri
38c0 65 64 2e 20 20 49 66 20 74 68 65 72 65 20 69 73 20 6e 6f 74 20 65 6e 6f 75 67 68 20 72 6f 6f 6d ed...If.there.is.not.enough.room
38e0 2c 20 74 68 65 20 73 65 63 6f 6e 64 0a 6c 6f 63 61 74 69 6f 6e 20 69 73 20 74 72 69 65 64 2e 22 ,.the.second.location.is.tried."
3900 0a 20 20 3a 74 79 70 65 20 27 28 72 61 64 69 6f 20 28 63 6f 6e 73 74 20 72 69 67 68 74 29 0a 20 ...:type.'(radio.(const.right)..
3920 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 74 20 62 6f 74 74 6f 6d 29 0a 20 20 ...............(const.bottom)...
3940 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 74 20 6c 65 66 74 29 0a 20 20 20 20 20 ..............(const.left)......
3960 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 74 20 74 6f 70 29 0a 20 20 20 20 20 20 20 20 20 ...........(const.top)..........
3980 20 20 20 20 20 20 20 28 63 6f 6e 73 74 20 28 72 69 67 68 74 20 62 6f 74 74 6f 6d 29 29 0a 20 20 .......(const.(right.bottom))...
39a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 74 20 28 62 6f 74 74 6f 6d 20 72 69 67 ..............(const.(bottom.rig
39c0 68 74 29 29 29 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 22 31 2e 30 22 20 3a ht)))...:package-version."1.0".:
39e0 76 65 72 73 69 6f 6e 20 22 33 30 2e 31 22 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 77 68 69 63 version."30.1")..(defcustom.whic
3a00 68 2d 6b 65 79 2d 73 69 64 65 2d 77 69 6e 64 6f 77 2d 73 6c 6f 74 20 30 0a 20 20 22 54 68 65 20 h-key-side-window-slot.0..."The.
3a20 60 73 6c 6f 74 27 20 74 6f 20 75 73 65 20 66 6f 72 20 60 64 69 73 70 6c 61 79 2d 62 75 66 66 65 `slot'.to.use.for.`display-buffe
3a40 72 2d 69 6e 2d 73 69 64 65 2d 77 69 6e 64 6f 77 27 2e 0a 54 68 69 73 20 61 70 70 6c 69 65 73 20 r-in-side-window'..This.applies.
3a60 77 68 65 6e 20 60 77 68 69 63 68 2d 6b 65 79 2d 70 6f 70 75 70 2d 74 79 70 65 27 20 69 73 20 60 when.`which-key-popup-type'.is.`
3a80 73 69 64 65 2d 77 69 6e 64 6f 77 27 2e 0a 51 75 6f 74 69 6e 67 20 66 72 6f 6d 20 74 68 65 20 64 side-window'..Quoting.from.the.d
3aa0 6f 63 73 74 72 69 6e 67 20 6f 66 20 60 64 69 73 70 6c 61 79 2d 62 75 66 66 65 72 2d 69 6e 2d 73 ocstring.of.`display-buffer-in-s
3ac0 69 64 65 2d 77 69 6e 64 6f 77 27 2c 0a 0a 60 73 6c 6f 74 27 20 69 66 20 6e 6f 6e 2d 6e 69 6c 2c ide-window',..`slot'.if.non-nil,
3ae0 20 73 70 65 63 69 66 69 65 73 20 74 68 65 20 77 69 6e 64 6f 77 20 73 6c 6f 74 20 77 68 65 72 65 .specifies.the.window.slot.where
3b00 20 74 6f 20 64 69 73 70 6c 61 79 0a 42 55 46 46 45 52 2e 20 20 41 20 76 61 6c 75 65 20 6f 66 20 .to.display.BUFFER...A.value.of.
3b20 7a 65 72 6f 20 6f 72 20 6e 69 6c 20 6d 65 61 6e 73 20 75 73 65 20 74 68 65 20 6d 69 64 64 6c 65 zero.or.nil.means.use.the.middle
3b40 20 73 6c 6f 74 20 6f 6e 20 74 68 65 0a 73 70 65 63 69 66 69 65 64 20 73 69 64 65 2e 20 20 41 20 .slot.on.the.specified.side...A.
3b60 6e 65 67 61 74 69 76 65 20 76 61 6c 75 65 20 6d 65 61 6e 73 20 75 73 65 20 61 20 73 6c 6f 74 0a negative.value.means.use.a.slot.
3b80 70 72 65 63 65 64 69 6e 67 20 28 74 68 61 74 20 69 73 2c 20 61 62 6f 76 65 20 6f 72 20 6f 6e 20 preceding.(that.is,.above.or.on.
3ba0 74 68 65 20 6c 65 66 74 20 6f 66 29 20 74 68 65 20 6d 69 64 64 6c 65 20 73 6c 6f 74 2e 20 20 41 the.left.of).the.middle.slot...A
3bc0 0a 70 6f 73 69 74 69 76 65 20 76 61 6c 75 65 20 6d 65 61 6e 73 20 75 73 65 20 61 20 73 6c 6f 74 .positive.value.means.use.a.slot
3be0 20 66 6f 6c 6c 6f 77 69 6e 67 20 28 74 68 61 74 20 69 73 2c 20 62 65 6c 6f 77 20 6f 72 20 6f 6e .following.(that.is,.below.or.on
3c00 0a 74 68 65 20 72 69 67 68 74 20 6f 66 29 20 74 68 65 20 6d 69 64 64 6c 65 20 73 6c 6f 74 2e 20 .the.right.of).the.middle.slot..
3c20 20 54 68 65 20 64 65 66 61 75 6c 74 20 69 73 20 7a 65 72 6f 2e 22 0a 20 20 3a 74 79 70 65 20 27 .The.default.is.zero."...:type.'
3c40 69 6e 74 65 67 65 72 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 22 31 2e 30 22 integer...:package-version."1.0"
3c60 20 3a 76 65 72 73 69 6f 6e 20 22 33 30 2e 31 22 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 77 68 .:version."30.1")..(defcustom.wh
3c80 69 63 68 2d 6b 65 79 2d 73 69 64 65 2d 77 69 6e 64 6f 77 2d 6d 61 78 2d 77 69 64 74 68 20 30 2e ich-key-side-window-max-width.0.
3ca0 33 33 33 0a 20 20 22 4d 61 78 69 6d 75 6d 20 77 69 64 74 68 20 6f 66 20 77 68 69 63 68 2d 6b 65 333..."Maximum.width.of.which-ke
3cc0 79 20 70 6f 70 75 70 20 77 68 65 6e 20 74 79 70 65 20 69 73 20 73 69 64 65 2d 77 69 6e 64 6f 77 y.popup.when.type.is.side-window
3ce0 2e 0a 54 68 69 73 20 76 61 72 69 61 62 6c 65 20 63 61 6e 20 61 6c 73 6f 20 62 65 20 61 20 6e 75 ..This.variable.can.also.be.a.nu
3d00 6d 62 65 72 20 62 65 74 77 65 65 6e 20 30 20 61 6e 64 20 31 2e 20 49 6e 20 74 68 61 74 20 63 61 mber.between.0.and.1..In.that.ca
3d20 73 65 2c 0a 69 74 20 64 65 6e 6f 74 65 73 20 61 20 70 65 72 63 65 6e 74 61 67 65 20 6f 75 74 20 se,.it.denotes.a.percentage.out.
3d40 6f 66 20 74 68 65 20 66 72 61 6d 65 27 73 20 77 69 64 74 68 2e 22 0a 20 20 3a 74 79 70 65 20 27 of.the.frame's.width."...:type.'
3d60 66 6c 6f 61 74 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 22 31 2e 30 22 20 3a float...:package-version."1.0".:
3d80 76 65 72 73 69 6f 6e 20 22 33 30 2e 31 22 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 77 68 69 63 version."30.1")..(defcustom.whic
3da0 68 2d 6b 65 79 2d 73 69 64 65 2d 77 69 6e 64 6f 77 2d 6d 61 78 2d 68 65 69 67 68 74 20 30 2e 32 h-key-side-window-max-height.0.2
3dc0 35 0a 20 20 22 4d 61 78 69 6d 75 6d 20 68 65 69 67 68 74 20 6f 66 20 77 68 69 63 68 2d 6b 65 79 5..."Maximum.height.of.which-key
3de0 20 70 6f 70 75 70 20 77 68 65 6e 20 74 79 70 65 20 69 73 20 73 69 64 65 2d 77 69 6e 64 6f 77 2e .popup.when.type.is.side-window.
3e00 0a 54 68 69 73 20 76 61 72 69 61 62 6c 65 20 63 61 6e 20 61 6c 73 6f 20 62 65 20 61 20 6e 75 6d .This.variable.can.also.be.a.num
3e20 62 65 72 20 62 65 74 77 65 65 6e 20 30 20 61 6e 64 20 31 2e 20 49 6e 20 74 68 61 74 20 63 61 73 ber.between.0.and.1..In.that.cas
3e40 65 2c 20 69 74 20 64 65 6e 6f 74 65 73 0a 61 20 70 65 72 63 65 6e 74 61 67 65 20 6f 75 74 20 6f e,.it.denotes.a.percentage.out.o
3e60 66 20 74 68 65 20 66 72 61 6d 65 27 73 20 68 65 69 67 68 74 2e 22 0a 20 20 3a 74 79 70 65 20 27 f.the.frame's.height."...:type.'
3e80 66 6c 6f 61 74 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 22 31 2e 30 22 20 3a float...:package-version."1.0".:
3ea0 76 65 72 73 69 6f 6e 20 22 33 30 2e 31 22 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 77 68 69 63 version."30.1")..(defcustom.whic
3ec0 68 2d 6b 65 79 2d 66 72 61 6d 65 2d 6d 61 78 2d 77 69 64 74 68 20 36 30 0a 20 20 22 4d 61 78 69 h-key-frame-max-width.60..."Maxi
3ee0 6d 75 6d 20 77 69 64 74 68 20 6f 66 20 77 68 69 63 68 2d 6b 65 79 20 70 6f 70 75 70 20 77 68 65 mum.width.of.which-key.popup.whe
3f00 6e 20 74 79 70 65 20 69 73 20 66 72 61 6d 65 2e 22 0a 20 20 3a 74 79 70 65 20 27 6e 61 74 6e 75 n.type.is.frame."...:type.'natnu
3f20 6d 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 22 31 2e 30 22 20 3a 76 65 72 73 m...:package-version."1.0".:vers
3f40 69 6f 6e 20 22 33 30 2e 31 22 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 77 68 69 63 68 2d 6b 65 ion."30.1")..(defcustom.which-ke
3f60 79 2d 66 72 61 6d 65 2d 6d 61 78 2d 68 65 69 67 68 74 20 32 30 0a 20 20 22 4d 61 78 69 6d 75 6d y-frame-max-height.20..."Maximum
3f80 20 68 65 69 67 68 74 20 6f 66 20 77 68 69 63 68 2d 6b 65 79 20 70 6f 70 75 70 20 77 68 65 6e 20 .height.of.which-key.popup.when.
3fa0 74 79 70 65 20 69 73 20 66 72 61 6d 65 2e 22 0a 20 20 3a 74 79 70 65 20 27 6e 61 74 6e 75 6d 0a type.is.frame."...:type.'natnum.
3fc0 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 22 31 2e 30 22 20 3a 76 65 72 73 69 6f ..:package-version."1.0".:versio
3fe0 6e 20 22 33 30 2e 31 22 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 77 68 69 63 68 2d 6b 65 79 2d n."30.1")..(defcustom.which-key-
4000 61 6c 6c 6f 77 2d 69 6d 70 72 65 63 69 73 65 2d 77 69 6e 64 6f 77 2d 66 69 74 20 28 6e 6f 74 20 allow-imprecise-window-fit.(not.
4020 28 64 69 73 70 6c 61 79 2d 67 72 61 70 68 69 63 2d 70 29 29 0a 20 20 22 41 6c 6c 6f 77 20 77 68 (display-graphic-p))..."Allow.wh
4040 69 63 68 2d 6b 65 79 20 74 6f 20 75 73 65 20 61 20 73 69 6d 70 6c 65 72 20 6d 65 74 68 6f 64 20 ich-key.to.use.a.simpler.method.
4060 66 6f 72 20 72 65 73 69 7a 69 6e 67 20 74 68 65 20 70 6f 70 75 70 2e 0a 49 66 20 79 6f 75 20 61 for.resizing.the.popup..If.you.a
4080 72 65 20 6e 6f 74 69 63 69 6e 67 20 6c 61 67 20 77 68 65 6e 20 74 68 65 20 77 68 69 63 68 2d 6b re.noticing.lag.when.the.which-k
40a0 65 79 20 70 6f 70 75 70 20 64 69 73 70 6c 61 79 73 20 74 75 72 6e 69 6e 67 0a 74 68 69 73 20 6f ey.popup.displays.turning.this.o
40c0 6e 20 6d 61 79 20 68 65 6c 70 2e 0a 0a 53 65 65 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e n.may.help...See.https://github.
40e0 63 6f 6d 2f 6a 75 73 74 62 75 72 2f 65 6d 61 63 73 2d 77 68 69 63 68 2d 6b 65 79 2f 69 73 73 75 com/justbur/emacs-which-key/issu
4100 65 73 2f 31 33 30 0a 61 6e 64 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 6a 75 es/130.and.https://github.com/ju
4120 73 74 62 75 72 2f 65 6d 61 63 73 2d 77 68 69 63 68 2d 6b 65 79 2f 69 73 73 75 65 73 2f 32 32 35 stbur/emacs-which-key/issues/225
4140 2e 22 0a 20 20 3a 74 79 70 65 20 27 62 6f 6f 6c 65 61 6e 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 ."...:type.'boolean...:package-v
4160 65 72 73 69 6f 6e 20 22 31 2e 30 22 20 3a 76 65 72 73 69 6f 6e 20 22 33 30 2e 31 22 29 0a 0a 28 ersion."1.0".:version."30.1")..(
4180 64 65 66 63 75 73 74 6f 6d 20 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d 72 65 6d 61 69 6e 69 defcustom.which-key-show-remaini
41a0 6e 67 2d 6b 65 79 73 20 6e 69 6c 0a 20 20 22 53 68 6f 77 20 72 65 6d 61 69 6e 69 6e 67 20 6b 65 ng-keys.nil..."Show.remaining.ke
41c0 79 73 20 69 6e 20 6c 61 73 74 20 73 6c 6f 74 2c 20 77 68 65 6e 20 6b 65 79 73 20 61 72 65 20 68 ys.in.last.slot,.when.keys.are.h
41e0 69 64 64 65 6e 2e 22 0a 20 20 3a 74 79 70 65 20 27 28 72 61 64 69 6f 20 28 63 6f 6e 73 74 20 3a idden."...:type.'(radio.(const.:
4200 74 61 67 20 22 59 65 73 22 20 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f tag."Yes".t).................(co
4220 6e 73 74 20 3a 74 61 67 20 22 4e 6f 22 20 6e 69 6c 29 29 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 nst.:tag."No".nil))...:package-v
4240 65 72 73 69 6f 6e 20 22 31 2e 30 22 20 3a 76 65 72 73 69 6f 6e 20 22 33 30 2e 31 22 29 0a 0a 28 ersion."1.0".:version."30.1")..(
4260 64 65 66 63 75 73 74 6f 6d 20 77 68 69 63 68 2d 6b 65 79 2d 73 6f 72 74 2d 6f 72 64 65 72 20 23 defcustom.which-key-sort-order.#
4280 27 77 68 69 63 68 2d 6b 65 79 2d 6b 65 79 2d 6f 72 64 65 72 0a 20 20 22 4f 72 64 65 72 20 69 6e 'which-key-key-order..."Order.in
42a0 20 77 68 69 63 68 20 74 68 65 20 6b 65 79 20 62 69 6e 64 69 6e 67 73 20 61 72 65 20 73 6f 72 74 .which.the.key.bindings.are.sort
42c0 65 64 2e 0a 49 66 20 6e 69 6c 2c 20 64 6f 20 6e 6f 74 20 72 65 73 6f 72 74 20 74 68 65 20 6f 75 ed..If.nil,.do.not.resort.the.ou
42e0 74 70 75 74 20 66 72 6f 6d 20 60 64 65 73 63 72 69 62 65 2d 62 75 66 66 65 72 2d 62 69 6e 64 69 tput.from.`describe-buffer-bindi
4300 6e 67 73 27 0a 77 68 69 63 68 20 67 72 6f 75 70 73 20 62 79 20 6d 6f 64 65 2e 20 20 4f 72 64 65 ngs'.which.groups.by.mode...Orde
4320 72 69 6e 67 20 6f 70 74 69 6f 6e 73 20 61 72 65 3a 0a 0a 31 2e 20 60 77 68 69 63 68 2d 6b 65 79 ring.options.are:..1..`which-key
4340 2d 6b 65 79 2d 6f 72 64 65 72 27 3a 20 62 79 20 6b 65 79 20 28 64 65 66 61 75 6c 74 29 0a 32 2e -key-order':.by.key.(default).2.
4360 20 60 77 68 69 63 68 2d 6b 65 79 2d 6b 65 79 2d 6f 72 64 65 72 2d 61 6c 70 68 61 27 3a 20 62 79 .`which-key-key-order-alpha':.by
4380 20 6b 65 79 20 75 73 69 6e 67 20 61 6c 70 68 61 62 65 74 69 63 61 6c 20 6f 72 64 65 72 0a 33 2e .key.using.alphabetical.order.3.
43a0 20 60 77 68 69 63 68 2d 6b 65 79 2d 64 65 73 63 72 69 70 74 69 6f 6e 2d 6f 72 64 65 72 27 3a 20 .`which-key-description-order':.
43c0 62 79 20 64 65 73 63 72 69 70 74 69 6f 6e 0a 34 2e 20 60 77 68 69 63 68 2d 6b 65 79 2d 70 72 65 by.description.4..`which-key-pre
43e0 66 69 78 2d 74 68 65 6e 2d 6b 65 79 2d 6f 72 64 65 72 27 3a 20 70 72 65 66 69 78 20 28 6e 6f 20 fix-then-key-order':.prefix.(no.
4400 70 72 65 66 69 78 20 66 69 72 73 74 29 20 74 68 65 6e 20 6b 65 79 0a 35 2e 20 60 77 68 69 63 68 prefix.first).then.key.5..`which
4420 2d 6b 65 79 2d 6c 6f 63 61 6c 2d 74 68 65 6e 2d 6b 65 79 2d 6f 72 64 65 72 27 3a 20 6c 6f 63 61 -key-local-then-key-order':.loca
4440 6c 20 62 69 6e 64 69 6e 67 20 74 68 65 6e 20 6b 65 79 0a 0a 53 65 65 20 74 68 65 20 52 45 41 44 l.binding.then.key..See.the.READ
4460 4d 45 20 61 6e 64 20 74 68 65 20 64 6f 63 73 74 72 69 6e 67 73 20 66 6f 72 20 74 68 6f 73 65 20 ME.and.the.docstrings.for.those.
4480 66 75 6e 63 74 69 6f 6e 73 20 66 6f 72 20 6d 6f 72 65 0a 69 6e 66 6f 72 6d 61 74 69 6f 6e 2e 22 functions.for.more.information."
44a0 0a 20 20 3a 74 79 70 65 20 27 28 63 68 6f 69 63 65 20 28 66 75 6e 63 74 69 6f 6e 2d 69 74 65 6d ...:type.'(choice.(function-item
44c0 20 77 68 69 63 68 2d 6b 65 79 2d 6b 65 79 2d 6f 72 64 65 72 29 0a 20 20 20 20 20 20 20 20 20 20 .which-key-key-order)...........
44e0 20 20 20 20 20 20 20 28 66 75 6e 63 74 69 6f 6e 2d 69 74 65 6d 20 77 68 69 63 68 2d 6b 65 79 2d .......(function-item.which-key-
4500 6b 65 79 2d 6f 72 64 65 72 2d 61 6c 70 68 61 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 key-order-alpha)................
4520 20 20 28 66 75 6e 63 74 69 6f 6e 2d 69 74 65 6d 20 77 68 69 63 68 2d 6b 65 79 2d 64 65 73 63 72 ..(function-item.which-key-descr
4540 69 70 74 69 6f 6e 2d 6f 72 64 65 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 iption-order)..................(
4560 66 75 6e 63 74 69 6f 6e 2d 69 74 65 6d 20 77 68 69 63 68 2d 6b 65 79 2d 70 72 65 66 69 78 2d 74 function-item.which-key-prefix-t
4580 68 65 6e 2d 6b 65 79 2d 6f 72 64 65 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 hen-key-order)..................
45a0 28 66 75 6e 63 74 69 6f 6e 2d 69 74 65 6d 20 77 68 69 63 68 2d 6b 65 79 2d 6c 6f 63 61 6c 2d 74 (function-item.which-key-local-t
45c0 68 65 6e 2d 6b 65 79 2d 6f 72 64 65 72 29 29 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 hen-key-order))...:package-versi
45e0 6f 6e 20 22 31 2e 30 22 20 3a 76 65 72 73 69 6f 6e 20 22 33 30 2e 31 22 29 0a 0a 28 64 65 66 63 on."1.0".:version."30.1")..(defc
4600 75 73 74 6f 6d 20 77 68 69 63 68 2d 6b 65 79 2d 73 6f 72 74 2d 75 70 70 65 72 63 61 73 65 2d 66 ustom.which-key-sort-uppercase-f
4620 69 72 73 74 20 74 0a 20 20 22 49 66 20 6e 6f 6e 2d 6e 69 6c 2c 20 75 70 70 65 72 63 61 73 65 20 irst.t..."If.non-nil,.uppercase.
4640 63 6f 6d 65 73 20 62 65 66 6f 72 65 20 6c 6f 77 65 72 63 61 73 65 20 69 6e 20 73 6f 72 74 69 6e comes.before.lowercase.in.sortin
4660 67 2e 0a 54 68 69 73 20 61 70 70 6c 69 65 73 20 74 6f 20 74 68 65 20 66 75 6e 63 74 69 6f 6e 20 g..This.applies.to.the.function.
4680 63 68 6f 73 65 6e 20 69 6e 0a 60 77 68 69 63 68 2d 6b 65 79 2d 73 6f 72 74 2d 6f 72 64 65 72 27 chosen.in.`which-key-sort-order'
46a0 2e 20 20 4f 74 68 65 72 77 69 73 65 2c 20 74 68 65 20 6f 72 64 65 72 20 69 73 20 72 65 76 65 72 ...Otherwise,.the.order.is.rever
46c0 73 65 64 2e 22 0a 20 20 3a 74 79 70 65 20 27 62 6f 6f 6c 65 61 6e 0a 20 20 3a 70 61 63 6b 61 67 sed."...:type.'boolean...:packag
46e0 65 2d 76 65 72 73 69 6f 6e 20 22 31 2e 30 22 20 3a 76 65 72 73 69 6f 6e 20 22 33 30 2e 31 22 29 e-version."1.0".:version."30.1")
4700 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 77 68 69 63 68 2d 6b 65 79 2d 70 61 67 69 6e 67 2d 70 72 ..(defcustom.which-key-paging-pr
4720 65 66 69 78 65 73 20 27 28 29 0a 20 20 22 45 6e 61 62 6c 65 20 70 61 67 69 6e 67 20 66 6f 72 20 efixes.'()..."Enable.paging.for.
4740 74 68 65 73 65 20 70 72 65 66 69 78 65 73 2e 22 0a 20 20 3a 74 79 70 65 20 27 28 72 65 70 65 61 these.prefixes."...:type.'(repea
4760 74 20 73 74 72 69 6e 67 29 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 22 31 2e t.string)...:package-version."1.
4780 30 22 20 3a 76 65 72 73 69 6f 6e 20 22 33 30 2e 31 22 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 0".:version."30.1")..(defcustom.
47a0 77 68 69 63 68 2d 6b 65 79 2d 70 61 67 69 6e 67 2d 6b 65 79 20 22 3c 66 35 3e 22 0a 20 20 22 4b which-key-paging-key."<f5>"..."K
47c0 65 79 20 74 6f 20 75 73 65 20 66 6f 72 20 63 68 61 6e 67 69 6e 67 20 70 61 67 65 73 2e 0a 42 6f ey.to.use.for.changing.pages..Bo
47e0 75 6e 64 20 61 66 74 65 72 20 65 61 63 68 20 6f 66 20 74 68 65 20 70 72 65 66 69 78 65 73 20 69 und.after.each.of.the.prefixes.i
4800 6e 20 60 77 68 69 63 68 2d 6b 65 79 2d 70 61 67 69 6e 67 2d 70 72 65 66 69 78 65 73 27 22 0a 20 n.`which-key-paging-prefixes'"..
4820 20 3a 74 79 70 65 20 27 73 74 72 69 6e 67 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f .:type.'string...:package-versio
4840 6e 20 22 31 2e 30 22 20 3a 76 65 72 73 69 6f 6e 20 22 33 30 2e 31 22 29 0a 0a 3b 3b 20 28 64 65 n."1.0".:version."30.1")..;;.(de
4860 66 63 75 73 74 6f 6d 20 77 68 69 63 68 2d 6b 65 79 2d 75 6e 64 6f 2d 6b 65 79 20 6e 69 6c 0a 3b fcustom.which-key-undo-key.nil.;
4880 3b 20 20 20 22 4b 65 79 20 28 73 74 72 69 6e 67 29 20 74 6f 20 75 73 65 20 66 6f 72 20 75 6e 64 ;..."Key.(string).to.use.for.und
48a0 6f 69 6e 67 20 6b 65 79 70 72 65 73 73 65 73 2e 20 42 6f 75 6e 64 20 72 65 63 75 72 73 69 76 65 oing.keypresses..Bound.recursive
48c0 6c 79 0a 3b 3b 20 69 6e 20 65 61 63 68 20 6f 66 20 74 68 65 20 6d 61 70 73 20 69 6e 20 60 77 68 ly.;;.in.each.of.the.maps.in.`wh
48e0 69 63 68 2d 6b 65 79 2d 75 6e 64 6f 2d 6b 65 79 6d 61 70 73 27 2e 22 0a 3b 3b 20 20 20 3a 67 72 ich-key-undo-keymaps'.".;;...:gr
4900 6f 75 70 20 27 77 68 69 63 68 2d 6b 65 79 0a 3b 3b 20 20 20 3a 74 79 70 65 20 27 73 74 72 69 6e oup.'which-key.;;...:type.'strin
4920 67 29 0a 0a 3b 3b 20 28 64 65 66 63 75 73 74 6f 6d 20 77 68 69 63 68 2d 6b 65 79 2d 75 6e 64 6f g)..;;.(defcustom.which-key-undo
4940 2d 6b 65 79 6d 61 70 73 20 27 28 29 0a 3b 3b 20 20 20 22 4b 65 79 6d 61 70 73 20 69 6e 20 77 68 -keymaps.'().;;..."Keymaps.in.wh
4960 69 63 68 20 74 6f 20 62 69 6e 64 20 60 77 68 69 63 68 2d 6b 65 79 2d 75 6e 64 6f 2d 6b 65 79 27 ich.to.bind.`which-key-undo-key'
4980 22 0a 3b 3b 20 20 20 3a 67 72 6f 75 70 20 27 77 68 69 63 68 2d 6b 65 79 0a 3b 3b 20 20 20 3a 74 ".;;...:group.'which-key.;;...:t
49a0 79 70 65 20 27 28 72 65 70 65 61 74 20 73 79 6d 62 6f 6c 29 29 0a 0a 28 64 65 66 63 75 73 74 6f ype.'(repeat.symbol))..(defcusto
49c0 6d 20 77 68 69 63 68 2d 6b 65 79 2d 75 73 65 2d 43 2d 68 2d 63 6f 6d 6d 61 6e 64 73 20 74 0a 20 m.which-key-use-C-h-commands.t..
49e0 20 22 55 73 65 20 5c 5c 60 43 2d 68 27 20 28 60 68 65 6c 70 2d 63 68 61 72 27 29 20 66 6f 72 20 ."Use.\\`C-h'.(`help-char').for.
4a00 70 61 67 69 6e 67 20 69 66 20 6e 6f 6e 2d 6e 69 6c 2e 0a 4e 6f 72 6d 61 6c 6c 79 20 60 68 65 6c paging.if.non-nil..Normally.`hel
4a20 70 2d 63 68 61 72 27 20 61 66 74 65 72 20 61 20 70 72 65 66 69 78 20 63 61 6c 6c 73 0a 60 64 65 p-char'.after.a.prefix.calls.`de
4a40 73 63 72 69 62 65 2d 70 72 65 66 69 78 2d 62 69 6e 64 69 6e 67 73 27 2e 20 20 54 68 69 73 20 63 scribe-prefix-bindings'...This.c
4a60 68 61 6e 67 65 73 20 74 68 61 74 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 61 0a 77 68 69 63 68 2d 6b hanges.that.command.to.a.which-k
4a80 65 79 20 70 61 67 69 6e 67 20 63 6f 6d 6d 61 6e 64 20 77 68 65 6e 20 60 77 68 69 63 68 2d 6b 65 ey.paging.command.when.`which-ke
4aa0 79 2d 6d 6f 64 65 27 20 69 73 20 61 63 74 69 76 65 2e 22 0a 20 20 3a 74 79 70 65 20 27 62 6f 6f y-mode'.is.active."...:type.'boo
4ac0 6c 65 61 6e 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 22 31 2e 30 22 20 3a 76 lean...:package-version."1.0".:v
4ae0 65 72 73 69 6f 6e 20 22 33 30 2e 31 22 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 77 68 69 63 68 ersion."30.1")..(defcustom.which
4b00 2d 6b 65 79 2d 73 68 6f 77 2d 65 61 72 6c 79 2d 6f 6e 2d 43 2d 68 20 6e 69 6c 0a 20 20 22 41 6c -key-show-early-on-C-h.nil..."Al
4b20 6c 6f 77 20 5c 5c 60 43 2d 68 27 20 28 60 68 65 6c 70 2d 63 68 61 72 27 29 20 74 6f 20 74 72 69 low.\\`C-h'.(`help-char').to.tri
4b40 67 67 65 72 20 77 68 69 63 68 2d 6b 65 79 20 70 6f 70 75 70 20 62 65 66 6f 72 65 20 74 69 6d 65 gger.which-key.popup.before.time
4b60 72 2e 0a 53 68 6f 77 20 74 68 65 20 77 68 69 63 68 2d 6b 65 79 20 62 75 66 66 65 72 20 69 66 20 r..Show.the.which-key.buffer.if.
4b80 60 68 65 6c 70 2d 63 68 61 72 27 20 69 73 20 70 72 65 73 73 65 64 20 69 6e 20 74 68 65 20 6d 69 `help-char'.is.pressed.in.the.mi
4ba0 64 64 6c 65 0a 6f 66 20 61 20 70 72 65 66 69 78 20 62 65 66 6f 72 65 20 74 68 65 20 77 68 69 63 ddle.of.a.prefix.before.the.whic
4bc0 68 2d 6b 65 79 20 62 75 66 66 65 72 20 77 6f 75 6c 64 20 6e 6f 72 6d 61 6c 6c 79 20 62 65 0a 74 h-key.buffer.would.normally.be.t
4be0 72 69 67 67 65 72 65 64 20 62 79 20 74 68 65 20 74 69 6d 65 2e 20 20 49 66 20 63 6f 6d 62 69 6e riggered.by.the.time...If.combin
4c00 65 64 20 77 69 74 68 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 73 65 74 74 69 6e 67 73 2c 0a ed.with.the.following.settings,.
4c20 77 68 69 63 68 2d 6b 65 79 20 77 69 6c 6c 20 65 66 66 65 63 74 69 76 65 6c 79 20 6f 6e 6c 79 20 which-key.will.effectively.only.
4c40 73 68 6f 77 20 77 68 65 6e 20 74 72 69 67 67 65 72 65 64 20 5c 22 6d 61 6e 75 61 6c 6c 79 5c 22 show.when.triggered.\"manually\"
4c60 0a 75 73 69 6e 67 20 5c 5c 60 43 2d 68 27 2e 0a 0a 5c 28 73 65 74 71 20 60 77 68 69 63 68 2d 6b .using.\\`C-h'...\(setq.`which-k
4c80 65 79 2d 69 64 6c 65 2d 64 65 6c 61 79 27 20 31 30 30 30 30 29 0a 5c 28 73 65 74 71 20 60 77 68 ey-idle-delay'.10000).\(setq.`wh
4ca0 69 63 68 2d 6b 65 79 2d 69 64 6c 65 2d 73 65 63 6f 6e 64 61 72 79 2d 64 65 6c 61 79 27 20 30 2e ich-key-idle-secondary-delay'.0.
4cc0 30 35 29 0a 0a 4e 6f 74 65 20 74 68 61 74 20 60 77 68 69 63 68 2d 6b 65 79 2d 69 64 6c 65 2d 64 05)..Note.that.`which-key-idle-d
4ce0 65 6c 61 79 27 20 73 68 6f 75 6c 64 20 62 65 20 73 65 74 20 62 65 66 6f 72 65 20 74 75 72 6e 69 elay'.should.be.set.before.turni
4d00 6e 67 20 6f 6e 0a 60 77 68 69 63 68 2d 6b 65 79 2d 6d 6f 64 65 27 2e 22 0a 20 20 3a 74 79 70 65 ng.on.`which-key-mode'."...:type
4d20 20 27 62 6f 6f 6c 65 61 6e 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 22 31 2e .'boolean...:package-version."1.
4d40 30 22 20 3a 76 65 72 73 69 6f 6e 20 22 33 30 2e 31 22 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 0".:version."30.1")..(defcustom.
4d60 77 68 69 63 68 2d 6b 65 79 2d 70 72 65 73 65 72 76 65 2d 77 69 6e 64 6f 77 2d 63 6f 6e 66 69 67 which-key-preserve-window-config
4d80 75 72 61 74 69 6f 6e 20 6e 69 6c 0a 20 20 22 53 61 76 65 20 61 6e 64 20 72 65 73 74 6f 72 65 20 uration.nil..."Save.and.restore.
4da0 77 69 6e 64 6f 77 20 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20 61 72 6f 75 6e 64 20 77 68 69 63 window.configuration.around.whic
4dc0 68 2d 6b 65 79 20 70 6f 70 75 70 20 64 69 73 70 6c 61 79 2e 0a 49 66 20 6e 6f 6e 2d 6e 69 6c 2c h-key.popup.display..If.non-nil,
4de0 20 73 61 76 65 20 77 69 6e 64 6f 77 20 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20 62 65 66 6f 72 .save.window.configuration.befor
4e00 65 20 77 68 69 63 68 2d 6b 65 79 20 62 75 66 66 65 72 20 69 73 0a 73 68 6f 77 6e 20 61 6e 64 20 e.which-key.buffer.is.shown.and.
4e20 72 65 73 74 6f 72 65 20 69 74 20 61 66 74 65 72 20 77 68 69 63 68 2d 6b 65 79 20 62 75 66 66 65 restore.it.after.which-key.buffe
4e40 72 20 69 73 20 68 69 64 64 65 6e 2e 20 20 49 74 0a 70 72 65 76 65 6e 74 73 20 77 68 69 63 68 2d r.is.hidden...It.prevents.which-
4e60 6b 65 79 20 66 72 6f 6d 20 63 68 61 6e 67 69 6e 67 20 77 69 6e 64 6f 77 20 70 6f 73 69 74 69 6f key.from.changing.window.positio
4e80 6e 20 6f 66 20 76 69 73 69 62 6c 65 0a 62 75 66 66 65 72 73 2e 20 20 4f 6e 6c 79 20 74 61 6b 65 n.of.visible.buffers...Only.take
4ea0 6e 20 69 6e 74 6f 20 61 63 63 6f 75 6e 74 20 77 68 65 6e 20 70 6f 70 75 70 20 74 79 70 65 20 69 n.into.account.when.popup.type.i
4ec0 73 0a 73 69 64 65 2d 77 69 6e 64 6f 77 2e 22 0a 20 20 3a 74 79 70 65 20 27 62 6f 6f 6c 65 61 6e s.side-window."...:type.'boolean
4ee0 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 22 31 2e 30 22 20 3a 76 65 72 73 69 ...:package-version."1.0".:versi
4f00 6f 6e 20 22 33 30 2e 31 22 29 0a 0a 28 64 65 66 76 61 72 20 77 68 69 63 68 2d 6b 65 79 2d 43 2d on."30.1")..(defvar.which-key-C-
4f20 68 2d 6d 61 70 2d 70 72 6f 6d 70 74 0a 20 20 28 63 6f 6e 63 61 74 20 22 20 5c 5c 3c 77 68 69 63 h-map-prompt...(concat.".\\<whic
4f40 68 2d 6b 65 79 2d 43 2d 68 2d 6d 61 70 3e 22 0a 20 20 20 20 20 20 20 20 20 20 22 20 5c 5c 5b 77 h-key-C-h-map>"...........".\\[w
4f60 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d 6e 65 78 74 2d 70 61 67 65 2d 63 79 63 6c 65 5d 22 0a hich-key-show-next-page-cycle]".
4f80 20 20 20 20 20 20 20 20 20 20 77 68 69 63 68 2d 6b 65 79 2d 73 65 70 61 72 61 74 6f 72 20 22 6e ..........which-key-separator."n
4fa0 65 78 74 2d 70 61 67 65 2c 22 0a 20 20 20 20 20 20 20 20 20 20 22 20 5c 5c 5b 77 68 69 63 68 2d ext-page,"...........".\\[which-
4fc0 6b 65 79 2d 73 68 6f 77 2d 70 72 65 76 69 6f 75 73 2d 70 61 67 65 2d 63 79 63 6c 65 5d 22 0a 20 key-show-previous-page-cycle]"..
4fe0 20 20 20 20 20 20 20 20 20 77 68 69 63 68 2d 6b 65 79 2d 73 65 70 61 72 61 74 6f 72 20 22 70 72 .........which-key-separator."pr
5000 65 76 69 6f 75 73 2d 70 61 67 65 2c 22 0a 20 20 20 20 20 20 20 20 20 20 22 20 5c 5c 5b 77 68 69 evious-page,"...........".\\[whi
5020 63 68 2d 6b 65 79 2d 75 6e 64 6f 2d 6b 65 79 5d 22 0a 20 20 20 20 20 20 20 20 20 20 77 68 69 63 ch-key-undo-key]"...........whic
5040 68 2d 6b 65 79 2d 73 65 70 61 72 61 74 6f 72 20 22 75 6e 64 6f 2d 6b 65 79 2c 22 0a 20 20 20 20 h-key-separator."undo-key,".....
5060 20 20 20 20 20 20 22 20 5c 5c 5b 77 68 69 63 68 2d 6b 65 79 2d 74 6f 67 67 6c 65 2d 64 6f 63 73 ......".\\[which-key-toggle-docs
5080 74 72 69 6e 67 73 5d 22 0a 20 20 20 20 20 20 20 20 20 20 77 68 69 63 68 2d 6b 65 79 2d 73 65 70 trings]"...........which-key-sep
50a0 61 72 61 74 6f 72 20 22 74 6f 67 67 6c 65 2d 64 6f 63 73 74 72 69 6e 67 73 2c 22 0a 20 20 20 20 arator."toggle-docstrings,".....
50c0 20 20 20 20 20 20 22 20 5c 5c 5b 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d 73 74 61 6e 64 61 ......".\\[which-key-show-standa
50e0 72 64 2d 68 65 6c 70 5d 22 0a 20 20 20 20 20 20 20 20 20 20 77 68 69 63 68 2d 6b 65 79 2d 73 65 rd-help]"...........which-key-se
5100 70 61 72 61 74 6f 72 20 22 68 65 6c 70 2c 22 0a 20 20 20 20 20 20 20 20 20 20 22 20 5c 5c 5b 77 parator."help,"...........".\\[w
5120 68 69 63 68 2d 6b 65 79 2d 61 62 6f 72 74 5d 22 0a 20 20 20 20 20 20 20 20 20 20 77 68 69 63 68 hich-key-abort]"...........which
5140 2d 6b 65 79 2d 73 65 70 61 72 61 74 6f 72 20 22 61 62 6f 72 74 22 0a 20 20 20 20 20 20 20 20 20 -key-separator."abort"..........
5160 20 22 20 31 2e 2e 39 22 0a 20 20 20 20 20 20 20 20 20 20 77 68 69 63 68 2d 6b 65 79 2d 73 65 70 .".1..9"...........which-key-sep
5180 61 72 61 74 6f 72 20 22 64 69 67 69 74 2d 61 72 67 22 29 0a 20 20 22 50 72 6f 6d 70 74 20 74 6f arator."digit-arg")..."Prompt.to
51a0 20 64 69 73 70 6c 61 79 20 77 68 65 6e 20 69 6e 76 6f 6b 69 6e 67 20 60 77 68 69 63 68 2d 6b 65 .display.when.invoking.`which-ke
51c0 79 2d 43 2d 68 2d 6d 61 70 27 2e 0a 54 68 69 73 20 73 74 72 69 6e 67 20 69 73 20 66 65 64 20 69 y-C-h-map'..This.string.is.fed.i
51e0 6e 74 6f 20 60 73 75 62 73 74 69 74 75 74 65 2d 63 6f 6d 6d 61 6e 64 2d 6b 65 79 73 27 22 29 0a nto.`substitute-command-keys'").
5200 0a 28 64 65 66 76 61 72 20 77 68 69 63 68 2d 6b 65 79 2d 43 2d 68 2d 6d 61 70 0a 20 20 28 6c 65 .(defvar.which-key-C-h-map...(le
5220 74 20 28 28 6d 61 70 20 28 6d 61 6b 65 2d 73 70 61 72 73 65 2d 6b 65 79 6d 61 70 29 29 29 0a 20 t.((map.(make-sparse-keymap)))..
5240 20 20 20 28 64 6f 6c 69 73 74 20 28 62 69 6e 64 20 60 28 28 22 5c 43 2d 61 22 20 2e 20 77 68 69 ...(dolist.(bind.`(("\C-a"...whi
5260 63 68 2d 6b 65 79 2d 61 62 6f 72 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ch-key-abort)...................
5280 20 20 28 22 61 22 20 2e 20 77 68 69 63 68 2d 6b 65 79 2d 61 62 6f 72 74 29 0a 20 20 20 20 20 20 ..("a"...which-key-abort).......
52a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 22 5c 43 2d 64 22 20 2e 20 77 68 69 63 68 2d 6b 65 ..............("\C-d"...which-ke
52c0 79 2d 74 6f 67 67 6c 65 2d 64 6f 63 73 74 72 69 6e 67 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 y-toggle-docstrings)............
52e0 20 20 20 20 20 20 20 20 20 28 22 64 22 20 2e 20 77 68 69 63 68 2d 6b 65 79 2d 74 6f 67 67 6c 65 .........("d"...which-key-toggle
5300 2d 64 6f 63 73 74 72 69 6e 67 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 -docstrings)....................
5320 20 28 2c 28 76 65 63 74 6f 72 20 68 65 6c 70 2d 63 68 61 72 29 20 2e 20 77 68 69 63 68 2d 6b 65 .(,(vector.help-char)...which-ke
5340 79 2d 73 68 6f 77 2d 73 74 61 6e 64 61 72 64 2d 68 65 6c 70 29 0a 20 20 20 20 20 20 20 20 20 20 y-show-standard-help)...........
5360 20 20 20 20 20 20 20 20 20 20 28 22 68 22 20 2e 20 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d ..........("h"...which-key-show-
5380 73 74 61 6e 64 61 72 64 2d 68 65 6c 70 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 standard-help)..................
53a0 20 20 20 28 22 5c 43 2d 6e 22 20 2e 20 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d 6e 65 78 74 ...("\C-n"...which-key-show-next
53c0 2d 70 61 67 65 2d 63 79 63 6c 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 -page-cycle)....................
53e0 20 28 22 6e 22 20 2e 20 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d 6e 65 78 74 2d 70 61 67 65 .("n"...which-key-show-next-page
5400 2d 63 79 63 6c 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 22 5c 43 -cycle).....................("\C
5420 2d 70 22 20 2e 20 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d 70 72 65 76 69 6f 75 73 2d 70 61 -p"...which-key-show-previous-pa
5440 67 65 2d 63 79 63 6c 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 22 ge-cycle).....................("
5460 70 22 20 2e 20 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d 70 72 65 76 69 6f 75 73 2d 70 61 67 p"...which-key-show-previous-pag
5480 65 2d 63 79 63 6c 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 22 5c e-cycle).....................("\
54a0 43 2d 75 22 20 2e 20 77 68 69 63 68 2d 6b 65 79 2d 75 6e 64 6f 2d 6b 65 79 29 0a 20 20 20 20 20 C-u"...which-key-undo-key)......
54c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 22 75 22 20 2e 20 77 68 69 63 68 2d 6b 65 79 2d ...............("u"...which-key-
54e0 75 6e 64 6f 2d 6b 65 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 22 undo-key).....................("
5500 31 22 20 2e 20 77 68 69 63 68 2d 6b 65 79 2d 64 69 67 69 74 2d 61 72 67 75 6d 65 6e 74 29 0a 20 1"...which-key-digit-argument)..
5520 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 22 32 22 20 2e 20 77 68 69 63 68 2d ...................("2"...which-
5540 6b 65 79 2d 64 69 67 69 74 2d 61 72 67 75 6d 65 6e 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 key-digit-argument).............
5560 20 20 20 20 20 20 20 20 28 22 33 22 20 2e 20 77 68 69 63 68 2d 6b 65 79 2d 64 69 67 69 74 2d 61 ........("3"...which-key-digit-a
5580 72 67 75 6d 65 6e 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 22 34 rgument).....................("4
55a0 22 20 2e 20 77 68 69 63 68 2d 6b 65 79 2d 64 69 67 69 74 2d 61 72 67 75 6d 65 6e 74 29 0a 20 20 "...which-key-digit-argument)...
55c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 22 35 22 20 2e 20 77 68 69 63 68 2d 6b ..................("5"...which-k
55e0 65 79 2d 64 69 67 69 74 2d 61 72 67 75 6d 65 6e 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ey-digit-argument)..............
5600 20 20 20 20 20 20 20 28 22 36 22 20 2e 20 77 68 69 63 68 2d 6b 65 79 2d 64 69 67 69 74 2d 61 72 .......("6"...which-key-digit-ar
5620 67 75 6d 65 6e 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 22 37 22 gument).....................("7"
5640 20 2e 20 77 68 69 63 68 2d 6b 65 79 2d 64 69 67 69 74 2d 61 72 67 75 6d 65 6e 74 29 0a 20 20 20 ...which-key-digit-argument)....
5660 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 22 38 22 20 2e 20 77 68 69 63 68 2d 6b 65 .................("8"...which-ke
5680 79 2d 64 69 67 69 74 2d 61 72 67 75 6d 65 6e 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 y-digit-argument)...............
56a0 20 20 20 20 20 20 28 22 39 22 20 2e 20 77 68 69 63 68 2d 6b 65 79 2d 64 69 67 69 74 2d 61 72 67 ......("9"...which-key-digit-arg
56c0 75 6d 65 6e 74 29 29 29 0a 20 20 20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65 79 20 6d 61 70 20 28 ument))).......(define-key.map.(
56e0 63 61 72 20 62 69 6e 64 29 20 28 63 64 72 20 62 69 6e 64 29 29 29 0a 20 20 20 20 6d 61 70 29 0a car.bind).(cdr.bind))).....map).
5700 20 20 22 4b 65 79 6d 61 70 20 66 6f 72 20 5c 5c 60 43 2d 68 27 20 63 6f 6d 6d 61 6e 64 73 2e 22 .."Keymap.for.\\`C-h'.commands."
5720 29 0a 0a 28 64 65 66 76 61 72 20 77 68 69 63 68 2d 6b 65 79 2d 2d 70 61 67 69 6e 67 2d 66 75 6e )..(defvar.which-key--paging-fun
5740 63 74 69 6f 6e 73 0a 20 20 28 6c 69 73 74 20 23 27 77 68 69 63 68 2d 6b 65 79 2d 43 2d 68 2d 64 ctions...(list.#'which-key-C-h-d
5760 69 73 70 61 74 63 68 0a 20 20 20 20 20 20 20 20 23 27 77 68 69 63 68 2d 6b 65 79 2d 74 75 72 6e ispatch.........#'which-key-turn
5780 2d 70 61 67 65 0a 20 20 20 20 20 20 20 20 23 27 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d 6e -page.........#'which-key-show-n
57a0 65 78 74 2d 70 61 67 65 2d 63 79 63 6c 65 0a 20 20 20 20 20 20 20 20 23 27 77 68 69 63 68 2d 6b ext-page-cycle.........#'which-k
57c0 65 79 2d 73 68 6f 77 2d 6e 65 78 74 2d 70 61 67 65 2d 6e 6f 2d 63 79 63 6c 65 0a 20 20 20 20 20 ey-show-next-page-no-cycle......
57e0 20 20 20 23 27 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d 70 72 65 76 69 6f 75 73 2d 70 61 67 ...#'which-key-show-previous-pag
5800 65 2d 63 79 63 6c 65 0a 20 20 20 20 20 20 20 20 23 27 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 e-cycle.........#'which-key-show
5820 2d 70 72 65 76 69 6f 75 73 2d 70 61 67 65 2d 6e 6f 2d 63 79 63 6c 65 0a 20 20 20 20 20 20 20 20 -previous-page-no-cycle.........
5840 23 27 77 68 69 63 68 2d 6b 65 79 2d 75 6e 64 6f 2d 6b 65 79 0a 20 20 20 20 20 20 20 20 23 27 77 #'which-key-undo-key.........#'w
5860 68 69 63 68 2d 6b 65 79 2d 75 6e 64 6f 29 29 0a 0a 28 64 65 66 76 61 72 20 77 68 69 63 68 2d 6b hich-key-undo))..(defvar.which-k
5880 65 79 2d 70 65 72 73 69 73 74 65 6e 74 2d 70 6f 70 75 70 20 6e 69 6c 0a 20 20 22 57 68 65 74 68 ey-persistent-popup.nil..."Wheth
58a0 65 72 20 6f 72 20 6e 6f 74 20 74 6f 20 64 69 73 61 62 6c 65 20 60 77 68 69 63 68 2d 6b 65 79 2d er.or.not.to.disable.`which-key-
58c0 2d 68 69 64 65 2d 70 6f 70 75 70 27 2e 22 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 77 68 69 63 -hide-popup'.")..(defcustom.whic
58e0 68 2d 6b 65 79 2d 68 69 64 65 2d 61 6c 74 2d 6b 65 79 2d 74 72 61 6e 73 6c 61 74 69 6f 6e 73 20 h-key-hide-alt-key-translations.
5900 74 0a 20 20 22 48 69 64 65 20 6b 65 79 20 74 72 61 6e 73 6c 61 74 69 6f 6e 73 20 75 73 69 6e 67 t..."Hide.key.translations.using
5920 20 41 6c 74 20 6b 65 79 20 69 66 20 6e 6f 6e 20 6e 69 6c 2e 0a 54 68 65 73 65 20 74 72 61 6e 73 .Alt.key.if.non.nil..These.trans
5940 6c 61 74 69 6f 6e 73 20 61 72 65 20 6e 6f 74 20 72 65 6c 65 76 61 6e 74 20 6d 6f 73 74 20 6f 66 lations.are.not.relevant.most.of
5960 20 74 68 65 20 74 69 6d 65 73 20 73 69 6e 63 65 20 61 20 6c 6f 74 0a 6f 66 20 74 65 72 6d 69 6e .the.times.since.a.lot.of.termin
5980 61 6c 73 20 69 73 73 75 65 20 4d 45 54 41 20 6d 6f 64 69 66 69 65 72 20 66 6f 72 20 74 68 65 20 als.issue.META.modifier.for.the.
59a0 41 6c 74 20 6b 65 79 2e 0a 0a 53 65 65 20 49 6e 66 6f 20 6e 6f 64 65 20 60 28 65 6d 61 63 73 29 Alt.key...See.Info.node.`(emacs)
59c0 4d 6f 64 69 66 69 65 72 20 4b 65 79 73 27 2e 22 0a 20 20 3a 74 79 70 65 20 27 62 6f 6f 6c 65 61 Modifier.Keys'."...:type.'boolea
59e0 6e 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 22 31 2e 30 22 20 3a 76 65 72 73 n...:package-version."1.0".:vers
5a00 69 6f 6e 20 22 33 30 2e 31 22 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 77 68 69 63 68 2d 6b 65 ion."30.1")..(defcustom.which-ke
5a20 79 2d 64 65 6c 61 79 2d 66 75 6e 63 74 69 6f 6e 73 20 6e 69 6c 0a 20 20 22 4c 69 73 74 20 6f 66 y-delay-functions.nil..."List.of
5a40 20 66 75 6e 63 74 69 6f 6e 73 20 74 68 61 74 20 6d 61 79 20 64 65 6c 61 79 20 74 68 65 20 77 68 .functions.that.may.delay.the.wh
5a60 69 63 68 2d 6b 65 79 20 70 6f 70 75 70 2e 0a 41 20 6c 69 73 74 20 6f 66 20 66 75 6e 63 74 69 6f ich-key.popup..A.list.of.functio
5a80 6e 73 20 74 68 61 74 20 6d 61 79 20 64 65 63 69 64 65 20 77 68 65 74 68 65 72 20 74 6f 20 64 65 ns.that.may.decide.whether.to.de
5aa0 6c 61 79 20 74 68 65 0a 77 68 69 63 68 2d 6b 65 79 20 70 6f 70 75 70 20 62 61 73 65 64 20 6f 6e lay.the.which-key.popup.based.on
5ac0 20 74 68 65 20 63 75 72 72 65 6e 74 20 69 6e 63 6f 6d 70 6c 65 74 65 20 6b 65 79 0a 73 65 71 75 .the.current.incomplete.key.sequ
5ae0 65 6e 63 65 2e 20 20 45 61 63 68 20 66 75 6e 63 74 69 6f 6e 20 69 6e 20 74 68 65 20 6c 69 73 74 ence...Each.function.in.the.list
5b00 20 69 73 20 72 75 6e 20 77 69 74 68 20 74 77 6f 20 61 72 67 75 6d 65 6e 74 73 2c 0a 74 68 65 20 .is.run.with.two.arguments,.the.
5b20 63 75 72 72 65 6e 74 20 6b 65 79 20 73 65 71 75 65 6e 63 65 20 61 73 20 70 72 6f 64 75 63 65 64 current.key.sequence.as.produced
5b40 20 62 79 20 60 6b 65 79 2d 64 65 73 63 72 69 70 74 69 6f 6e 27 20 61 6e 64 20 74 68 65 0a 6c 65 .by.`key-description'.and.the.le
5b60 6e 67 74 68 20 6f 66 20 74 68 65 20 6b 65 79 20 73 65 71 75 65 6e 63 65 2e 20 20 49 66 20 74 68 ngth.of.the.key.sequence...If.th
5b80 65 20 70 6f 70 75 70 20 73 68 6f 75 6c 64 20 62 65 20 64 65 6c 61 79 65 64 20 62 61 73 65 64 0a e.popup.should.be.delayed.based.
5ba0 6f 6e 20 74 68 61 74 20 6b 65 79 20 73 65 71 75 65 6e 63 65 2c 20 74 68 65 20 66 75 6e 63 74 69 on.that.key.sequence,.the.functi
5bc0 6f 6e 20 73 68 6f 75 6c 64 20 72 65 74 75 72 6e 20 74 68 65 20 64 65 6c 61 79 20 74 69 6d 65 0a on.should.return.the.delay.time.
5be0 69 6e 20 73 65 63 6f 6e 64 73 2e 20 20 52 65 74 75 72 6e 69 6e 67 20 6e 69 6c 20 6d 65 61 6e 73 in.seconds...Returning.nil.means
5c00 20 6e 6f 20 64 65 6c 61 79 2e 20 20 54 68 65 20 66 69 72 73 74 20 66 75 6e 63 74 69 6f 6e 20 69 .no.delay...The.first.function.i
5c20 6e 0a 74 68 69 73 20 6c 69 73 74 20 74 6f 20 72 65 74 75 72 6e 20 61 20 76 61 6c 75 65 20 69 73 n.this.list.to.return.a.value.is
5c40 20 74 68 65 20 76 61 6c 75 65 20 74 68 61 74 20 69 73 20 75 73 65 64 2e 0a 0a 54 68 65 20 64 65 .the.value.that.is.used...The.de
5c60 6c 61 79 20 74 69 6d 65 20 69 73 20 65 66 66 65 63 74 69 76 65 6c 79 20 61 64 64 65 64 20 74 6f lay.time.is.effectively.added.to
5c80 20 74 68 65 20 6e 6f 72 6d 61 6c 0a 60 77 68 69 63 68 2d 6b 65 79 2d 69 64 6c 65 2d 64 65 6c 61 .the.normal.`which-key-idle-dela
5ca0 79 27 2e 22 0a 20 20 3a 74 79 70 65 20 27 28 72 65 70 65 61 74 20 66 75 6e 63 74 69 6f 6e 29 0a y'."...:type.'(repeat.function).
5cc0 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 22 31 2e 30 22 20 3a 76 65 72 73 69 6f ..:package-version."1.0".:versio
5ce0 6e 20 22 33 30 2e 31 22 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 77 68 69 63 68 2d 6b 65 79 2d n."30.1")..(defcustom.which-key-
5d00 61 6c 6c 6f 77 2d 72 65 67 65 78 70 73 20 6e 69 6c 0a 20 20 22 41 20 6c 69 73 74 20 6f 66 20 72 allow-regexps.nil..."A.list.of.r
5d20 65 67 65 78 70 20 73 74 72 69 6e 67 73 20 74 6f 20 75 73 65 20 74 6f 20 66 69 6c 74 65 72 20 6b egexp.strings.to.use.to.filter.k
5d40 65 79 20 73 65 71 75 65 6e 63 65 73 2e 0a 57 68 65 6e 20 6e 6f 6e 2d 6e 69 6c 2c 20 66 6f 72 20 ey.sequences..When.non-nil,.for.
5d60 61 20 6b 65 79 20 73 65 71 75 65 6e 63 65 20 74 6f 20 74 72 69 67 67 65 72 20 74 68 65 20 77 68 a.key.sequence.to.trigger.the.wh
5d80 69 63 68 2d 6b 65 79 20 70 6f 70 75 70 0a 69 74 20 6d 75 73 74 20 6d 61 74 63 68 20 6f 6e 65 20 ich-key.popup.it.must.match.one.
5da0 6f 66 20 74 68 65 20 72 65 67 65 78 70 73 20 69 6e 20 74 68 69 73 20 6c 69 73 74 2e 20 20 54 68 of.the.regexps.in.this.list...Th
5dc0 65 20 66 6f 72 6d 61 74 20 6f 66 20 74 68 65 0a 6b 65 79 20 73 65 71 75 65 6e 63 65 73 20 69 73 e.format.of.the.key.sequences.is
5de0 20 77 68 61 74 20 69 73 20 70 72 6f 64 75 63 65 64 20 62 79 20 60 6b 65 79 2d 64 65 73 63 72 69 .what.is.produced.by.`key-descri
5e00 70 74 69 6f 6e 27 2e 22 0a 20 20 3a 74 79 70 65 20 27 28 72 65 70 65 61 74 20 72 65 67 65 78 70 ption'."...:type.'(repeat.regexp
5e20 29 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 22 31 2e 30 22 20 3a 76 65 72 73 )...:package-version."1.0".:vers
5e40 69 6f 6e 20 22 33 30 2e 31 22 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 77 68 69 63 68 2d 6b 65 ion."30.1")..(defcustom.which-ke
5e60 79 2d 69 6e 68 69 62 69 74 2d 72 65 67 65 78 70 73 20 6e 69 6c 0a 20 20 22 41 20 6c 69 73 74 20 y-inhibit-regexps.nil..."A.list.
5e80 6f 66 20 72 65 67 65 78 70 20 73 74 72 69 6e 67 73 20 74 6f 20 75 73 65 20 74 6f 20 66 69 6c 74 of.regexp.strings.to.use.to.filt
5ea0 65 72 20 6b 65 79 20 73 65 71 75 65 6e 63 65 73 2e 0a 57 68 65 6e 20 6e 6f 6e 2d 6e 69 6c 2c 20 er.key.sequences..When.non-nil,.
5ec0 66 6f 72 20 61 20 6b 65 79 20 73 65 71 75 65 6e 63 65 20 74 6f 20 74 72 69 67 67 65 72 20 74 68 for.a.key.sequence.to.trigger.th
5ee0 65 20 77 68 69 63 68 2d 6b 65 79 20 70 6f 70 75 70 0a 69 74 20 63 61 6e 6e 6f 74 20 6d 61 74 63 e.which-key.popup.it.cannot.matc
5f00 68 20 6f 6e 65 20 6f 66 20 74 68 65 20 72 65 67 65 78 70 73 20 69 6e 20 74 68 69 73 20 6c 69 73 h.one.of.the.regexps.in.this.lis
5f20 74 2e 20 20 54 68 65 20 66 6f 72 6d 61 74 20 6f 66 0a 74 68 65 20 6b 65 79 20 73 65 71 75 65 6e t...The.format.of.the.key.sequen
5f40 63 65 73 20 69 73 20 77 68 61 74 20 69 73 20 70 72 6f 64 75 63 65 64 20 62 79 20 60 6b 65 79 2d ces.is.what.is.produced.by.`key-
5f60 64 65 73 63 72 69 70 74 69 6f 6e 27 2e 22 0a 20 20 3a 74 79 70 65 20 27 28 72 65 70 65 61 74 20 description'."...:type.'(repeat.
5f80 72 65 67 65 78 70 29 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 22 31 2e 30 22 regexp)...:package-version."1.0"
5fa0 20 3a 76 65 72 73 69 6f 6e 20 22 33 30 2e 31 22 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 77 68 .:version."30.1")..(defcustom.wh
5fc0 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d 74 72 61 6e 73 69 65 6e 74 2d 6d 61 70 73 20 6e 69 6c 0a ich-key-show-transient-maps.nil.
5fe0 20 20 22 53 68 6f 77 20 6b 65 79 6d 61 70 73 20 63 72 65 61 74 65 64 20 62 79 20 60 73 65 74 2d .."Show.keymaps.created.by.`set-
6000 74 72 61 6e 73 69 65 6e 74 2d 6d 61 70 27 20 77 68 65 6e 20 61 70 70 6c 69 63 61 62 6c 65 2e 0a transient-map'.when.applicable..
6020 0a 4d 6f 72 65 20 73 70 65 63 69 66 69 63 61 6c 6c 79 2c 20 64 65 74 65 63 74 20 77 68 65 6e 20 .More.specifically,.detect.when.
6040 60 6f 76 65 72 72 69 64 69 6e 67 2d 74 65 72 6d 69 6e 61 6c 2d 6c 6f 63 61 6c 2d 6d 61 70 27 20 `overriding-terminal-local-map'.
6060 69 73 0a 73 65 74 20 28 74 68 69 73 20 69 73 20 74 68 65 20 6b 65 79 6d 61 70 20 75 73 65 64 20 is.set.(this.is.the.keymap.used.
6080 62 79 20 60 73 65 74 2d 74 72 61 6e 73 69 65 6e 74 2d 6d 61 70 27 29 20 61 6e 64 20 64 69 73 70 by.`set-transient-map').and.disp
60a0 6c 61 79 0a 69 74 2e 22 0a 20 20 3a 74 79 70 65 20 27 62 6f 6f 6c 65 61 6e 0a 20 20 3a 70 61 63 lay.it."...:type.'boolean...:pac
60c0 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 22 31 2e 30 22 20 3a 76 65 72 73 69 6f 6e 20 22 33 30 2e kage-version."1.0".:version."30.
60e0 31 22 29 0a 0a 28 6d 61 6b 65 2d 6f 62 73 6f 6c 65 74 65 2d 76 61 72 69 61 62 6c 65 0a 20 27 77 1")..(make-obsolete-variable..'w
6100 68 69 63 68 2d 6b 65 79 2d 65 6e 61 62 6c 65 2d 65 78 74 65 6e 64 65 64 2d 64 65 66 69 6e 65 2d hich-key-enable-extended-define-
6120 6b 65 79 0a 20 22 77 68 69 63 68 2d 6b 65 79 2d 65 6e 61 62 6c 65 2d 65 78 74 65 6e 64 65 64 2d key.."which-key-enable-extended-
6140 64 65 66 69 6e 65 2d 6b 65 79 20 69 73 20 6f 62 73 6f 6c 65 74 65 20 61 6e 64 20 68 61 73 20 6e define-key.is.obsolete.and.has.n
6160 6f 20 65 66 66 65 63 74 2e 22 0a 20 22 32 30 32 31 2d 30 36 2d 32 31 22 29 0a 0a 3b 3b 20 48 6f o.effect.".."2021-06-21")..;;.Ho
6180 6f 6b 73 0a 28 64 65 66 63 75 73 74 6f 6d 20 77 68 69 63 68 2d 6b 65 79 2d 69 6e 69 74 2d 62 75 oks.(defcustom.which-key-init-bu
61a0 66 66 65 72 2d 68 6f 6f 6b 20 27 28 29 0a 20 20 22 48 6f 6f 6b 20 72 75 6e 20 77 68 65 6e 20 77 ffer-hook.'()..."Hook.run.when.w
61c0 68 69 63 68 2d 6b 65 79 20 62 75 66 66 65 72 20 69 73 20 69 6e 69 74 69 61 6c 69 7a 65 64 2e 22 hich-key.buffer.is.initialized."
61e0 0a 20 20 3a 74 79 70 65 20 27 68 6f 6f 6b 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f ...:type.'hook...:package-versio
6200 6e 20 22 31 2e 30 22 20 3a 76 65 72 73 69 6f 6e 20 22 33 30 2e 31 22 29 0a 0a 3b 3b 3b 3b 20 46 n."1.0".:version."30.1")..;;;;.F
6220 61 63 65 73 0a 0a 28 64 65 66 67 72 6f 75 70 20 77 68 69 63 68 2d 6b 65 79 2d 66 61 63 65 73 20 aces..(defgroup.which-key-faces.
6240 6e 69 6c 0a 20 20 22 46 61 63 65 73 20 66 6f 72 20 60 77 68 69 63 68 2d 6b 65 79 2d 6d 6f 64 65 nil..."Faces.for.`which-key-mode
6260 27 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 77 68 69 63 68 2d 6b 65 79 0a 20 20 3a 70 72 65 66 69 '."...:group.'which-key...:prefi
6280 78 20 22 77 68 69 63 68 2d 6b 65 79 2d 22 29 0a 0a 28 64 65 66 66 61 63 65 20 77 68 69 63 68 2d x."which-key-")..(defface.which-
62a0 6b 65 79 2d 6b 65 79 2d 66 61 63 65 0a 20 20 27 28 28 74 20 2e 20 28 3a 69 6e 68 65 72 69 74 20 key-key-face...'((t...(:inherit.
62c0 66 6f 6e 74 2d 6c 6f 63 6b 2d 63 6f 6e 73 74 61 6e 74 2d 66 61 63 65 29 29 29 0a 20 20 22 46 61 font-lock-constant-face)))..."Fa
62e0 63 65 20 66 6f 72 20 77 68 69 63 68 2d 6b 65 79 20 6b 65 79 73 2e 22 0a 20 20 3a 67 72 6f 75 70 ce.for.which-key.keys."...:group
6300 20 27 77 68 69 63 68 2d 6b 65 79 2d 66 61 63 65 73 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 .'which-key-faces...:package-ver
6320 73 69 6f 6e 20 22 31 2e 30 22 20 3a 76 65 72 73 69 6f 6e 20 22 33 30 2e 31 22 29 0a 0a 28 64 65 sion."1.0".:version."30.1")..(de
6340 66 66 61 63 65 20 77 68 69 63 68 2d 6b 65 79 2d 73 65 70 61 72 61 74 6f 72 2d 66 61 63 65 0a 20 fface.which-key-separator-face..
6360 20 27 28 28 74 20 2e 20 28 3a 69 6e 68 65 72 69 74 20 66 6f 6e 74 2d 6c 6f 63 6b 2d 63 6f 6d 6d .'((t...(:inherit.font-lock-comm
6380 65 6e 74 2d 66 61 63 65 29 29 29 0a 20 20 22 46 61 63 65 20 66 6f 72 20 74 68 65 20 73 65 70 61 ent-face)))..."Face.for.the.sepa
63a0 72 61 74 6f 72 20 28 64 65 66 61 75 6c 74 20 73 65 70 61 72 61 74 6f 72 20 69 73 20 61 6e 20 61 rator.(default.separator.is.an.a
63c0 72 72 6f 77 29 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 77 68 69 63 68 2d 6b 65 79 2d 66 61 63 65 rrow)."...:group.'which-key-face
63e0 73 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 22 31 2e 30 22 20 3a 76 65 72 73 s...:package-version."1.0".:vers
6400 69 6f 6e 20 22 33 30 2e 31 22 29 0a 0a 28 64 65 66 66 61 63 65 20 77 68 69 63 68 2d 6b 65 79 2d ion."30.1")..(defface.which-key-
6420 6e 6f 74 65 2d 66 61 63 65 0a 20 20 27 28 28 74 20 2e 20 28 3a 69 6e 68 65 72 69 74 20 77 68 69 note-face...'((t...(:inherit.whi
6440 63 68 2d 6b 65 79 2d 73 65 70 61 72 61 74 6f 72 2d 66 61 63 65 29 29 29 0a 20 20 22 46 61 63 65 ch-key-separator-face)))..."Face
6460 20 66 6f 72 20 6e 6f 74 65 73 20 6f 72 20 68 69 6e 74 73 20 6f 63 63 61 73 69 6f 6e 61 6c 6c 79 .for.notes.or.hints.occasionally
6480 20 70 72 6f 76 69 64 65 64 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 77 68 69 63 68 2d 6b 65 79 2d .provided."...:group.'which-key-
64a0 66 61 63 65 73 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 22 31 2e 30 22 20 3a faces...:package-version."1.0".:
64c0 76 65 72 73 69 6f 6e 20 22 33 30 2e 31 22 29 0a 0a 28 64 65 66 66 61 63 65 20 77 68 69 63 68 2d version."30.1")..(defface.which-
64e0 6b 65 79 2d 63 6f 6d 6d 61 6e 64 2d 64 65 73 63 72 69 70 74 69 6f 6e 2d 66 61 63 65 0a 20 20 27 key-command-description-face...'
6500 28 28 74 20 2e 20 28 3a 69 6e 68 65 72 69 74 20 66 6f 6e 74 2d 6c 6f 63 6b 2d 66 75 6e 63 74 69 ((t...(:inherit.font-lock-functi
6520 6f 6e 2d 6e 61 6d 65 2d 66 61 63 65 29 29 29 0a 20 20 22 46 61 63 65 20 66 6f 72 20 74 68 65 20 on-name-face)))..."Face.for.the.
6540 6b 65 79 20 64 65 73 63 72 69 70 74 69 6f 6e 20 77 68 65 6e 20 69 74 20 69 73 20 61 20 63 6f 6d key.description.when.it.is.a.com
6560 6d 61 6e 64 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 77 68 69 63 68 2d 6b 65 79 2d 66 61 63 65 73 mand."...:group.'which-key-faces
6580 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 22 31 2e 30 22 20 3a 76 65 72 73 69 ...:package-version."1.0".:versi
65a0 6f 6e 20 22 33 30 2e 31 22 29 0a 0a 28 64 65 66 66 61 63 65 20 77 68 69 63 68 2d 6b 65 79 2d 6c on."30.1")..(defface.which-key-l
65c0 6f 63 61 6c 2d 6d 61 70 2d 64 65 73 63 72 69 70 74 69 6f 6e 2d 66 61 63 65 0a 20 20 27 28 28 74 ocal-map-description-face...'((t
65e0 20 2e 20 28 3a 69 6e 68 65 72 69 74 20 77 68 69 63 68 2d 6b 65 79 2d 63 6f 6d 6d 61 6e 64 2d 64 ...(:inherit.which-key-command-d
6600 65 73 63 72 69 70 74 69 6f 6e 2d 66 61 63 65 29 29 29 0a 20 20 22 46 61 63 65 20 66 6f 72 20 74 escription-face)))..."Face.for.t
6620 68 65 20 6b 65 79 20 64 65 73 63 72 69 70 74 69 6f 6e 20 77 68 65 6e 20 69 74 20 69 73 20 66 6f he.key.description.when.it.is.fo
6640 75 6e 64 20 69 6e 20 60 63 75 72 72 65 6e 74 2d 6c 6f 63 61 6c 2d 6d 61 70 27 2e 22 0a 20 20 3a und.in.`current-local-map'."...:
6660 67 72 6f 75 70 20 27 77 68 69 63 68 2d 6b 65 79 2d 66 61 63 65 73 0a 20 20 3a 70 61 63 6b 61 67 group.'which-key-faces...:packag
6680 65 2d 76 65 72 73 69 6f 6e 20 22 31 2e 30 22 20 3a 76 65 72 73 69 6f 6e 20 22 33 30 2e 31 22 29 e-version."1.0".:version."30.1")
66a0 0a 0a 28 64 65 66 66 61 63 65 20 77 68 69 63 68 2d 6b 65 79 2d 68 69 67 68 6c 69 67 68 74 65 64 ..(defface.which-key-highlighted
66c0 2d 63 6f 6d 6d 61 6e 64 2d 66 61 63 65 0a 20 20 27 28 28 74 20 2e 20 28 3a 69 6e 68 65 72 69 74 -command-face...'((t...(:inherit
66e0 20 28 77 68 69 63 68 2d 6b 65 79 2d 63 6f 6d 6d 61 6e 64 2d 64 65 73 63 72 69 70 74 69 6f 6e 2d .(which-key-command-description-
6700 66 61 63 65 20 68 69 67 68 6c 69 67 68 74 29 29 29 29 0a 20 20 22 44 65 66 61 75 6c 74 20 66 61 face.highlight))))..."Default.fa
6720 63 65 20 66 6f 72 20 68 69 67 68 6c 69 67 68 74 65 64 20 63 6f 6d 6d 61 6e 64 20 64 65 73 63 72 ce.for.highlighted.command.descr
6740 69 70 74 69 6f 6e 73 2e 0a 41 20 63 6f 6d 6d 61 6e 64 20 69 73 20 68 69 67 68 6c 69 67 68 74 65 iptions..A.command.is.highlighte
6760 64 2c 20 77 68 65 6e 20 69 74 20 6d 61 74 63 68 65 73 20 61 20 73 74 72 69 6e 67 20 69 6e 0a 60 d,.when.it.matches.a.string.in.`
6780 77 68 69 63 68 2d 6b 65 79 2d 68 69 67 68 6c 69 67 68 74 65 64 2d 63 6f 6d 6d 61 6e 64 2d 6c 69 which-key-highlighted-command-li
67a0 73 74 27 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 77 68 69 63 68 2d 6b 65 79 2d 66 61 63 65 73 0a st'."...:group.'which-key-faces.
67c0 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 22 31 2e 30 22 20 3a 76 65 72 73 69 6f ..:package-version."1.0".:versio
67e0 6e 20 22 33 30 2e 31 22 29 0a 0a 28 64 65 66 66 61 63 65 20 77 68 69 63 68 2d 6b 65 79 2d 67 72 n."30.1")..(defface.which-key-gr
6800 6f 75 70 2d 64 65 73 63 72 69 70 74 69 6f 6e 2d 66 61 63 65 0a 20 20 27 28 28 74 20 2e 20 28 3a oup-description-face...'((t...(:
6820 69 6e 68 65 72 69 74 20 66 6f 6e 74 2d 6c 6f 63 6b 2d 6b 65 79 77 6f 72 64 2d 66 61 63 65 29 29 inherit.font-lock-keyword-face))
6840 29 0a 20 20 22 46 61 63 65 20 66 6f 72 20 74 68 65 20 6b 65 79 20 64 65 73 63 72 69 70 74 69 6f )..."Face.for.the.key.descriptio
6860 6e 20 77 68 65 6e 20 69 74 20 69 73 20 61 20 67 72 6f 75 70 20 6f 72 20 70 72 65 66 69 78 2e 22 n.when.it.is.a.group.or.prefix."
6880 0a 20 20 3a 67 72 6f 75 70 20 27 77 68 69 63 68 2d 6b 65 79 2d 66 61 63 65 73 0a 20 20 3a 70 61 ...:group.'which-key-faces...:pa
68a0 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 22 31 2e 30 22 20 3a 76 65 72 73 69 6f 6e 20 22 33 30 ckage-version."1.0".:version."30
68c0 2e 31 22 29 0a 0a 28 64 65 66 66 61 63 65 20 77 68 69 63 68 2d 6b 65 79 2d 73 70 65 63 69 61 6c .1")..(defface.which-key-special
68e0 2d 6b 65 79 2d 66 61 63 65 0a 20 20 27 28 28 74 20 2e 20 28 3a 69 6e 68 65 72 69 74 20 77 68 69 -key-face...'((t...(:inherit.whi
6900 63 68 2d 6b 65 79 2d 6b 65 79 2d 66 61 63 65 20 3a 69 6e 76 65 72 73 65 2d 76 69 64 65 6f 20 74 ch-key-key-face.:inverse-video.t
6920 20 3a 77 65 69 67 68 74 20 62 6f 6c 64 29 29 29 0a 20 20 22 46 61 63 65 20 66 6f 72 20 73 70 65 .:weight.bold)))..."Face.for.spe
6940 63 69 61 6c 20 6b 65 79 73 20 28 5c 5c 60 53 50 43 27 2c 20 5c 5c 60 54 41 42 27 2c 20 5c 5c 60 cial.keys.(\\`SPC',.\\`TAB',.\\`
6960 52 45 54 27 29 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 77 68 69 63 68 2d 6b 65 79 2d 66 61 63 65 RET')."...:group.'which-key-face
6980 73 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 22 31 2e 30 22 20 3a 76 65 72 73 s...:package-version."1.0".:vers
69a0 69 6f 6e 20 22 33 30 2e 31 22 29 0a 0a 28 64 65 66 66 61 63 65 20 77 68 69 63 68 2d 6b 65 79 2d ion."30.1")..(defface.which-key-
69c0 64 6f 63 73 74 72 69 6e 67 2d 66 61 63 65 0a 20 20 27 28 28 74 20 2e 20 28 3a 69 6e 68 65 72 69 docstring-face...'((t...(:inheri
69e0 74 20 77 68 69 63 68 2d 6b 65 79 2d 6e 6f 74 65 2d 66 61 63 65 29 29 29 0a 20 20 22 46 61 63 65 t.which-key-note-face)))..."Face
6a00 20 66 6f 72 20 64 6f 63 73 74 72 69 6e 67 73 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 77 68 69 63 .for.docstrings."...:group.'whic
6a20 68 2d 6b 65 79 2d 66 61 63 65 73 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 22 h-key-faces...:package-version."
6a40 31 2e 30 22 20 3a 76 65 72 73 69 6f 6e 20 22 33 30 2e 31 22 29 0a 0a 3b 3b 3b 3b 20 43 75 73 74 1.0".:version."30.1")..;;;;.Cust
6a60 6f 6d 20 70 6f 70 75 70 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 77 68 69 63 68 2d 6b 65 79 2d 63 om.popup..(defcustom.which-key-c
6a80 75 73 74 6f 6d 2d 70 6f 70 75 70 2d 6d 61 78 2d 64 69 6d 65 6e 73 69 6f 6e 73 2d 66 75 6e 63 74 ustom-popup-max-dimensions-funct
6aa0 69 6f 6e 20 6e 69 6c 0a 20 20 22 53 65 74 20 61 20 63 75 73 74 6f 6d 20 6d 61 78 2d 64 69 6d 65 ion.nil..."Set.a.custom.max-dime
6ac0 6e 73 69 6f 6e 73 20 66 75 6e 63 74 69 6f 6e 2e 0a 57 69 6c 6c 20 62 65 20 70 61 73 73 65 64 20 nsions.function..Will.be.passed.
6ae0 74 68 65 20 77 69 64 74 68 20 6f 66 20 74 68 65 20 61 63 74 69 76 65 20 77 69 6e 64 6f 77 20 61 the.width.of.the.active.window.a
6b00 6e 64 20 69 73 20 65 78 70 65 63 74 65 64 20 74 6f 0a 72 65 74 75 72 6e 20 74 68 65 20 6d 61 78 nd.is.expected.to.return.the.max
6b20 69 6d 75 6d 20 68 65 69 67 68 74 20 69 6e 20 6c 69 6e 65 73 20 61 6e 64 20 77 69 64 74 68 20 69 imum.height.in.lines.and.width.i
6b40 6e 20 63 68 61 72 61 63 74 65 72 73 20 6f 66 20 74 68 65 0a 77 68 69 63 68 2d 6b 65 79 20 70 6f n.characters.of.the.which-key.po
6b60 70 75 70 20 69 6e 20 74 68 65 20 66 6f 72 6d 20 61 20 63 6f 6e 73 20 63 65 6c 6c 20 28 68 65 69 pup.in.the.form.a.cons.cell.(hei
6b80 67 68 74 20 2e 20 77 69 64 74 68 29 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 77 68 69 63 68 2d 6b ght...width)."...:group.'which-k
6ba0 65 79 0a 20 20 3a 74 79 70 65 20 27 28 63 68 6f 69 63 65 20 66 75 6e 63 74 69 6f 6e 20 28 63 6f ey...:type.'(choice.function.(co
6bc0 6e 73 74 20 6e 69 6c 29 29 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 22 31 2e nst.nil))...:package-version."1.
6be0 30 22 20 3a 76 65 72 73 69 6f 6e 20 22 33 30 2e 31 22 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 0".:version."30.1")..(defcustom.
6c00 77 68 69 63 68 2d 6b 65 79 2d 63 75 73 74 6f 6d 2d 68 69 64 65 2d 70 6f 70 75 70 2d 66 75 6e 63 which-key-custom-hide-popup-func
6c20 74 69 6f 6e 20 6e 69 6c 0a 20 20 22 53 65 74 20 61 20 63 75 73 74 6f 6d 20 68 69 64 65 2d 70 6f tion.nil..."Set.a.custom.hide-po
6c40 70 75 70 20 66 75 6e 63 74 69 6f 6e 2e 0a 49 74 20 74 61 6b 65 73 20 6e 6f 20 61 72 67 75 6d 65 pup.function..It.takes.no.argume
6c60 6e 74 73 20 61 6e 64 20 74 68 65 20 72 65 74 75 72 6e 20 76 61 6c 75 65 20 69 73 20 69 67 6e 6f nts.and.the.return.value.is.igno
6c80 72 65 64 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 77 68 69 63 68 2d 6b 65 79 0a 20 20 3a 74 79 70 red."...:group.'which-key...:typ
6ca0 65 20 27 28 63 68 6f 69 63 65 20 66 75 6e 63 74 69 6f 6e 20 28 63 6f 6e 73 74 20 6e 69 6c 29 29 e.'(choice.function.(const.nil))
6cc0 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 22 31 2e 30 22 20 3a 76 65 72 73 69 ...:package-version."1.0".:versi
6ce0 6f 6e 20 22 33 30 2e 31 22 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 77 68 69 63 68 2d 6b 65 79 on."30.1")..(defcustom.which-key
6d00 2d 63 75 73 74 6f 6d 2d 73 68 6f 77 2d 70 6f 70 75 70 2d 66 75 6e 63 74 69 6f 6e 20 6e 69 6c 0a -custom-show-popup-function.nil.
6d20 20 20 22 53 65 74 20 61 20 63 75 73 74 6f 6d 20 73 68 6f 77 2d 70 6f 70 75 70 20 66 75 6e 63 74 .."Set.a.custom.show-popup.funct
6d40 69 6f 6e 2e 0a 57 69 6c 6c 20 62 65 20 70 61 73 73 65 64 20 74 68 65 20 72 65 71 75 69 72 65 64 ion..Will.be.passed.the.required
6d60 20 64 69 6d 65 6e 73 69 6f 6e 73 20 69 6e 20 74 68 65 20 66 6f 72 6d 20 28 68 65 69 67 68 74 20 .dimensions.in.the.form.(height.
6d80 2e 0a 77 69 64 74 68 29 20 69 6e 20 6c 69 6e 65 73 20 61 6e 64 20 63 68 61 72 61 63 74 65 72 73 ..width).in.lines.and.characters
6da0 20 72 65 73 70 65 63 74 69 76 65 6c 79 2e 20 20 54 68 65 20 72 65 74 75 72 6e 20 76 61 6c 75 65 .respectively...The.return.value
6dc0 20 69 73 0a 69 67 6e 6f 72 65 64 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 77 68 69 63 68 2d 6b 65 .is.ignored."...:group.'which-ke
6de0 79 0a 20 20 3a 74 79 70 65 20 27 28 63 68 6f 69 63 65 20 66 75 6e 63 74 69 6f 6e 20 28 63 6f 6e y...:type.'(choice.function.(con
6e00 73 74 20 6e 69 6c 29 29 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 22 31 2e 30 st.nil))...:package-version."1.0
6e20 22 20 3a 76 65 72 73 69 6f 6e 20 22 33 30 2e 31 22 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 77 ".:version."30.1")..(defcustom.w
6e40 68 69 63 68 2d 6b 65 79 2d 6c 69 67 68 74 65 72 20 22 20 57 4b 22 0a 20 20 22 4d 69 6e 6f 72 20 hich-key-lighter.".WK"..."Minor.
6e60 6d 6f 64 65 20 6c 69 67 68 74 65 72 20 74 6f 20 75 73 65 20 69 6e 20 74 68 65 20 6d 6f 64 65 2d mode.lighter.to.use.in.the.mode-
6e80 6c 69 6e 65 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 77 68 69 63 68 2d 6b 65 79 0a 20 20 3a 74 79 line."...:group.'which-key...:ty
6ea0 70 65 20 27 73 74 72 69 6e 67 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 22 31 pe.'string...:package-version."1
6ec0 2e 30 22 20 3a 76 65 72 73 69 6f 6e 20 22 33 30 2e 31 22 29 0a 0a 28 64 65 66 76 61 72 20 77 68 .0".:version."30.1")..(defvar.wh
6ee0 69 63 68 2d 6b 65 79 2d 69 6e 68 69 62 69 74 20 6e 69 6c 0a 20 20 22 50 72 65 76 65 6e 74 20 77 ich-key-inhibit.nil..."Prevent.w
6f00 68 69 63 68 2d 6b 65 79 20 66 72 6f 6d 20 70 6f 70 70 69 6e 67 20 75 70 20 6d 6f 6d 65 6e 74 61 hich-key.from.popping.up.momenta
6f20 72 69 6c 79 2e 0a 54 68 69 73 20 63 61 6e 20 62 65 20 75 73 65 64 20 62 79 20 73 65 74 74 69 6e rily..This.can.be.used.by.settin
6f40 67 20 74 68 69 73 20 74 6f 20 61 20 6e 6f 6e 2d 6e 69 6c 20 76 61 6c 75 65 20 66 6f 72 20 74 68 g.this.to.a.non-nil.value.for.th
6f60 65 0a 65 78 65 63 75 74 69 6f 6e 20 6f 66 20 61 20 63 6f 6d 6d 61 6e 64 2c 20 61 73 20 69 6e 0a e.execution.of.a.command,.as.in.
6f80 0a 5c 28 6c 65 74 20 5c 28 5c 28 77 68 69 63 68 2d 6b 65 79 2d 69 6e 68 69 62 69 74 20 74 5c 29 .\(let.\(\(which-key-inhibit.t\)
6fa0 5c 29 0a 2e 2e 2e 5c 29 22 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 77 68 69 63 68 2d 6b 65 79 \)....\)")..(defcustom.which-key
6fc0 2d 69 6e 68 69 62 69 74 2d 64 69 73 70 6c 61 79 2d 68 6f 6f 6b 20 6e 69 6c 0a 20 20 22 48 6f 6f -inhibit-display-hook.nil..."Hoo
6fe0 6b 20 72 75 6e 20 62 65 66 6f 72 65 20 64 69 73 70 6c 61 79 20 6f 66 20 77 68 69 63 68 2d 6b 65 k.run.before.display.of.which-ke
7000 79 20 70 6f 70 75 70 2e 0a 45 61 63 68 20 66 75 6e 63 74 69 6f 6e 20 69 6e 20 74 68 65 20 68 6f y.popup..Each.function.in.the.ho
7020 6f 6b 20 69 73 20 72 75 6e 20 62 65 66 6f 72 65 20 64 69 73 70 6c 61 79 69 6e 67 20 74 68 65 20 ok.is.run.before.displaying.the.
7040 77 68 69 63 68 2d 6b 65 79 0a 70 6f 70 75 70 2e 20 20 49 66 20 61 6e 79 20 66 75 6e 63 74 69 6f which-key.popup...If.any.functio
7060 6e 20 72 65 74 75 72 6e 73 20 61 20 6e 6f 6e 2d 6e 69 6c 20 76 61 6c 75 65 2c 20 74 68 65 20 70 n.returns.a.non-nil.value,.the.p
7080 6f 70 75 70 20 77 69 6c 6c 0a 6e 6f 74 20 64 69 73 70 6c 61 79 2e 22 0a 20 20 3a 67 72 6f 75 70 opup.will.not.display."...:group
70a0 20 27 77 68 69 63 68 2d 6b 65 79 0a 20 20 3a 74 79 70 65 20 27 68 6f 6f 6b 0a 20 20 3a 70 61 63 .'which-key...:type.'hook...:pac
70c0 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 22 31 2e 30 22 20 3a 76 65 72 73 69 6f 6e 20 22 33 30 2e kage-version."1.0".:version."30.
70e0 31 22 29 0a 0a 28 64 65 66 76 61 72 20 77 68 69 63 68 2d 6b 65 79 2d 6b 65 79 6d 61 70 2d 68 69 1")..(defvar.which-key-keymap-hi
7100 73 74 6f 72 79 20 6e 69 6c 0a 20 20 22 48 69 73 74 6f 72 79 20 6f 66 20 6b 65 79 6d 61 70 20 73 story.nil..."History.of.keymap.s
7120 65 6c 65 63 74 69 6f 6e 73 2e 0a 55 73 65 64 20 69 6e 20 66 75 6e 63 74 69 6f 6e 73 20 6c 69 6b elections..Used.in.functions.lik
7140 65 20 60 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d 6b 65 79 6d 61 70 27 2e 22 29 0a 0a 3b 3b e.`which-key-show-keymap'.")..;;
7160 3b 20 49 6e 74 65 72 6e 61 6c 20 56 61 72 73 0a 0a 28 64 65 66 76 61 72 20 77 68 69 63 68 2d 6b ;.Internal.Vars..(defvar.which-k
7180 65 79 2d 2d 62 75 66 66 65 72 20 6e 69 6c 0a 20 20 22 48 6f 6c 64 73 20 72 65 66 65 72 65 6e 63 ey--buffer.nil..."Holds.referenc
71a0 65 20 74 6f 20 77 68 69 63 68 2d 6b 65 79 20 62 75 66 66 65 72 2e 22 29 0a 28 64 65 66 76 61 72 e.to.which-key.buffer.").(defvar
71c0 20 77 68 69 63 68 2d 6b 65 79 2d 2d 74 69 6d 65 72 20 6e 69 6c 0a 20 20 22 48 6f 6c 64 73 20 72 .which-key--timer.nil..."Holds.r
71e0 65 66 65 72 65 6e 63 65 20 74 6f 20 6f 70 65 6e 20 77 69 6e 64 6f 77 20 74 69 6d 65 72 2e 22 29 eference.to.open.window.timer.")
7200 0a 28 64 65 66 76 61 72 20 77 68 69 63 68 2d 6b 65 79 2d 2d 73 65 63 6f 6e 64 61 72 79 2d 74 69 .(defvar.which-key--secondary-ti
7220 6d 65 72 2d 61 63 74 69 76 65 20 6e 69 6c 0a 20 20 22 4e 6f 6e 2d 6e 69 6c 20 69 66 20 74 68 65 mer-active.nil..."Non-nil.if.the
7240 20 73 65 63 6f 6e 64 61 72 79 20 74 69 6d 65 72 20 69 73 20 61 63 74 69 76 65 2e 22 29 0a 28 64 .secondary.timer.is.active.").(d
7260 65 66 76 61 72 20 77 68 69 63 68 2d 6b 65 79 2d 2d 70 61 67 69 6e 67 2d 74 69 6d 65 72 20 6e 69 efvar.which-key--paging-timer.ni
7280 6c 0a 20 20 22 48 6f 6c 64 73 20 72 65 66 65 72 65 6e 63 65 20 74 6f 20 74 69 6d 65 72 20 66 6f l..."Holds.reference.to.timer.fo
72a0 72 20 70 61 67 69 6e 67 2e 22 29 0a 28 64 65 66 76 61 72 20 77 68 69 63 68 2d 6b 65 79 2d 2d 66 r.paging.").(defvar.which-key--f
72c0 72 61 6d 65 20 6e 69 6c 0a 20 20 22 48 6f 6c 64 73 20 72 65 66 65 72 65 6e 63 65 20 74 6f 20 77 rame.nil..."Holds.reference.to.w
72e0 68 69 63 68 2d 6b 65 79 20 66 72 61 6d 65 2e 0a 55 73 65 64 20 77 68 65 6e 20 60 77 68 69 63 68 hich-key.frame..Used.when.`which
7300 2d 6b 65 79 2d 70 6f 70 75 70 2d 74 79 70 65 27 20 69 73 20 66 72 61 6d 65 2e 22 29 0a 28 64 65 -key-popup-type'.is.frame.").(de
7320 66 76 61 72 20 77 68 69 63 68 2d 6b 65 79 2d 2d 65 63 68 6f 2d 6b 65 79 73 74 72 6f 6b 65 73 2d fvar.which-key--echo-keystrokes-
7340 62 61 63 6b 75 70 20 6e 69 6c 0a 20 20 22 42 61 63 6b 75 70 20 74 68 65 20 69 6e 69 74 69 61 6c backup.nil..."Backup.the.initial
7360 20 76 61 6c 75 65 20 6f 66 20 60 65 63 68 6f 2d 6b 65 79 73 74 72 6f 6b 65 73 27 2e 22 29 0a 28 .value.of.`echo-keystrokes'.").(
7380 64 65 66 76 61 72 20 77 68 69 63 68 2d 6b 65 79 2d 2d 70 72 65 66 69 78 2d 68 65 6c 70 2d 63 6d defvar.which-key--prefix-help-cm
73a0 64 2d 62 61 63 6b 75 70 20 6e 69 6c 0a 20 20 22 42 61 63 6b 75 70 20 74 68 65 20 76 61 6c 75 65 d-backup.nil..."Backup.the.value
73c0 20 6f 66 20 60 70 72 65 66 69 78 2d 68 65 6c 70 2d 63 6f 6d 6d 61 6e 64 27 2e 22 29 0a 28 64 65 .of.`prefix-help-command'.").(de
73e0 66 76 61 72 20 77 68 69 63 68 2d 6b 65 79 2d 2d 6c 61 73 74 2d 74 72 79 2d 32 2d 6c 6f 63 20 6e fvar.which-key--last-try-2-loc.n
7400 69 6c 0a 20 20 22 4c 61 73 74 20 6c 6f 63 61 74 69 6f 6e 20 6f 66 20 73 69 64 65 2d 77 69 6e 64 il..."Last.location.of.side-wind
7420 6f 77 20 77 68 65 6e 20 74 77 6f 20 6c 6f 63 61 74 69 6f 6e 73 20 75 73 65 64 2e 22 29 0a 28 64 ow.when.two.locations.used.").(d
7440 65 66 76 61 72 20 77 68 69 63 68 2d 6b 65 79 2d 2d 61 75 74 6f 6d 61 74 69 63 2d 64 69 73 70 6c efvar.which-key--automatic-displ
7460 61 79 20 6e 69 6c 0a 20 20 22 4e 6f 6e 2d 6e 69 6c 20 69 66 20 70 6f 70 75 70 20 77 61 73 20 74 ay.nil..."Non-nil.if.popup.was.t
7480 72 69 67 67 65 72 65 64 20 77 69 74 68 20 61 75 74 6f 6d 61 74 69 63 20 75 70 64 61 74 65 2e 22 riggered.with.automatic.update."
74a0 29 0a 28 64 65 66 76 61 72 20 77 68 69 63 68 2d 6b 65 79 2d 2d 64 65 62 75 67 2d 62 75 66 66 65 ).(defvar.which-key--debug-buffe
74c0 72 2d 6e 61 6d 65 20 6e 69 6c 0a 20 20 22 49 66 20 6e 6f 6e 2d 6e 69 6c 2c 20 75 73 65 20 74 68 r-name.nil..."If.non-nil,.use.th
74e0 69 73 20 62 75 66 66 65 72 20 66 6f 72 20 64 65 62 75 67 20 6d 65 73 73 61 67 65 73 2e 22 29 0a is.buffer.for.debug.messages.").
7500 28 64 65 66 76 61 72 20 77 68 69 63 68 2d 6b 65 79 2d 2d 6d 75 6c 74 69 70 6c 65 2d 6c 6f 63 61 (defvar.which-key--multiple-loca
7520 74 69 6f 6e 73 20 6e 69 6c 29 0a 28 64 65 66 76 61 72 20 77 68 69 63 68 2d 6b 65 79 2d 2d 69 6e tions.nil).(defvar.which-key--in
7540 68 69 62 69 74 2d 6e 65 78 74 2d 6f 70 65 72 61 74 6f 72 2d 70 6f 70 75 70 20 6e 69 6c 29 0a 28 hibit-next-operator-popup.nil).(
7560 64 65 66 76 61 72 20 77 68 69 63 68 2d 6b 65 79 2d 2d 70 72 69 6f 72 2d 73 68 6f 77 2d 6b 65 79 defvar.which-key--prior-show-key
7580 6d 61 70 2d 61 72 67 73 20 6e 69 6c 29 0a 28 64 65 66 76 61 72 20 77 68 69 63 68 2d 6b 65 79 2d map-args.nil).(defvar.which-key-
75a0 2d 70 72 65 76 69 6f 75 73 2d 66 72 61 6d 65 2d 73 69 7a 65 20 6e 69 6c 29 0a 28 64 65 66 76 61 -previous-frame-size.nil).(defva
75c0 72 20 77 68 69 63 68 2d 6b 65 79 2d 2d 70 72 65 66 69 78 2d 74 69 74 6c 65 2d 61 6c 69 73 74 20 r.which-key--prefix-title-alist.
75e0 6e 69 6c 29 0a 28 64 65 66 76 61 72 20 77 68 69 63 68 2d 6b 65 79 2d 2d 65 76 69 6c 2d 6b 65 79 nil).(defvar.which-key--evil-key
7600 73 2d 72 65 67 65 78 70 20 28 65 76 61 6c 2d 77 68 65 6e 2d 63 6f 6d 70 69 6c 65 0a 20 20 20 20 s-regexp.(eval-when-compile.....
7620 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
7640 20 20 28 72 65 67 65 78 70 2d 6f 70 74 20 27 28 22 2d 73 74 61 74 65 22 29 29 29 29 0a 28 64 65 ..(regexp-opt.'("-state")))).(de
7660 66 76 61 72 20 77 68 69 63 68 2d 6b 65 79 2d 2d 69 67 6e 6f 72 65 2d 6e 6f 6e 2d 65 76 69 6c 2d fvar.which-key--ignore-non-evil-
7680 6b 65 79 73 2d 72 65 67 65 78 70 0a 20 20 28 72 65 67 65 78 70 2d 6f 70 74 20 27 28 22 6d 6f 75 keys-regexp...(regexp-opt.'("mou
76a0 73 65 2d 22 20 22 77 68 65 65 6c 2d 22 20 22 72 65 6d 61 70 22 20 22 64 72 61 67 2d 22 20 22 73 se-"."wheel-"."remap"."drag-"."s
76c0 63 72 6f 6c 6c 2d 62 61 72 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 73 65 6c 65 croll-bar"................."sele
76e0 63 74 2d 77 69 6e 64 6f 77 22 20 22 73 77 69 74 63 68 2d 66 72 61 6d 65 22 20 22 77 68 69 63 68 ct-window"."switch-frame"."which
7700 2d 6b 65 79 22 29 29 29 0a 28 64 65 66 76 61 72 20 77 68 69 63 68 2d 6b 65 79 2d 2d 69 67 6e 6f -key"))).(defvar.which-key--igno
7720 72 65 2d 6b 65 79 73 2d 72 65 67 65 78 70 0a 20 20 28 72 65 67 65 78 70 2d 6f 70 74 20 27 28 22 re-keys-regexp...(regexp-opt.'("
7740 6d 6f 75 73 65 2d 22 20 22 77 68 65 65 6c 2d 22 20 22 72 65 6d 61 70 22 20 22 64 72 61 67 2d 22 mouse-"."wheel-"."remap"."drag-"
7760 20 22 73 63 72 6f 6c 6c 2d 62 61 72 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 73 ."scroll-bar"................."s
7780 65 6c 65 63 74 2d 77 69 6e 64 6f 77 22 20 22 73 77 69 74 63 68 2d 66 72 61 6d 65 22 20 22 2d 73 elect-window"."switch-frame"."-s
77a0 74 61 74 65 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 77 68 69 63 68 2d 6b 65 79 tate"................."which-key
77c0 22 29 29 29 0a 0a 28 64 65 66 76 61 72 20 77 68 69 63 68 2d 6b 65 79 2d 2d 70 61 67 65 73 2d 6f ")))..(defvar.which-key--pages-o
77e0 62 6a 20 6e 69 6c 29 0a 28 63 6c 2d 64 65 66 73 74 72 75 63 74 20 77 68 69 63 68 2d 6b 65 79 2d bj.nil).(cl-defstruct.which-key-
7800 2d 70 61 67 65 73 0a 20 20 70 61 67 65 73 0a 20 20 68 65 69 67 68 74 0a 20 20 77 69 64 74 68 73 -pages...pages...height...widths
7820 0a 20 20 6b 65 79 73 2f 70 61 67 65 0a 20 20 70 61 67 65 2d 6e 75 6d 73 0a 20 20 6e 75 6d 2d 70 ...keys/page...page-nums...num-p
7840 61 67 65 73 0a 20 20 74 6f 74 61 6c 2d 6b 65 79 73 0a 20 20 70 72 65 66 69 78 0a 20 20 70 72 65 ages...total-keys...prefix...pre
7860 66 69 78 2d 74 69 74 6c 65 29 0a 0a 28 64 65 66 76 61 72 20 77 68 69 63 68 2d 6b 65 79 2d 2d 73 fix-title)..(defvar.which-key--s
7880 61 76 65 64 2d 77 69 6e 64 6f 77 2d 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20 6e 69 6c 29 0a 0a aved-window-configuration.nil)..
78a0 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 72 6f 74 61 74 65 20 28 6c 69 73 74 20 6e (defun.which-key--rotate.(list.n
78c0 29 0a 20 20 28 6c 65 74 2a 20 28 28 6c 65 6e 20 28 6c 65 6e 67 74 68 20 6c 69 73 74 29 29 0a 20 )...(let*.((len.(length.list))..
78e0 20 20 20 20 20 20 20 20 28 6e 20 28 2d 20 6c 65 6e 20 28 6d 6f 64 20 6e 20 6c 65 6e 29 29 29 29 ........(n.(-.len.(mod.n.len))))
7900 0a 20 20 20 20 28 61 70 70 65 6e 64 20 28 6c 61 73 74 20 6c 69 73 74 20 6e 29 20 28 62 75 74 6c .....(append.(last.list.n).(butl
7920 61 73 74 20 6c 69 73 74 20 6e 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 ast.list.n))))..(defun.which-key
7940 2d 2d 70 61 67 65 73 2d 73 65 74 2d 63 75 72 72 65 6e 74 2d 70 61 67 65 20 28 70 61 67 65 73 2d --pages-set-current-page.(pages-
7960 6f 62 6a 20 6e 29 0a 20 20 28 73 65 74 66 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 70 61 67 65 73 obj.n)...(setf.(which-key--pages
7980 2d 70 61 67 65 73 20 70 61 67 65 73 2d 6f 62 6a 29 0a 20 20 20 20 20 20 20 20 28 77 68 69 63 68 -pages.pages-obj).........(which
79a0 2d 6b 65 79 2d 2d 72 6f 74 61 74 65 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 70 61 67 65 73 2d 70 -key--rotate.(which-key--pages-p
79c0 61 67 65 73 20 70 61 67 65 73 2d 6f 62 6a 29 20 6e 29 29 0a 20 20 28 73 65 74 66 20 28 77 68 69 ages.pages-obj).n))...(setf.(whi
79e0 63 68 2d 6b 65 79 2d 2d 70 61 67 65 73 2d 77 69 64 74 68 73 20 70 61 67 65 73 2d 6f 62 6a 29 0a ch-key--pages-widths.pages-obj).
7a00 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 72 6f 74 61 74 65 20 28 77 68 69 63 ........(which-key--rotate.(whic
7a20 68 2d 6b 65 79 2d 2d 70 61 67 65 73 2d 77 69 64 74 68 73 20 70 61 67 65 73 2d 6f 62 6a 29 20 6e h-key--pages-widths.pages-obj).n
7a40 29 29 0a 20 20 28 73 65 74 66 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 70 61 67 65 73 2d 6b 65 79 ))...(setf.(which-key--pages-key
7a60 73 2f 70 61 67 65 20 70 61 67 65 73 2d 6f 62 6a 29 0a 20 20 20 20 20 20 20 20 28 77 68 69 63 68 s/page.pages-obj).........(which
7a80 2d 6b 65 79 2d 2d 72 6f 74 61 74 65 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 70 61 67 65 73 2d 6b -key--rotate.(which-key--pages-k
7aa0 65 79 73 2f 70 61 67 65 20 70 61 67 65 73 2d 6f 62 6a 29 20 6e 29 29 0a 20 20 28 73 65 74 66 20 eys/page.pages-obj).n))...(setf.
7ac0 28 77 68 69 63 68 2d 6b 65 79 2d 2d 70 61 67 65 73 2d 70 61 67 65 2d 6e 75 6d 73 20 70 61 67 65 (which-key--pages-page-nums.page
7ae0 73 2d 6f 62 6a 29 0a 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 72 6f 74 61 74 s-obj).........(which-key--rotat
7b00 65 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 70 61 67 65 73 2d 70 61 67 65 2d 6e 75 6d 73 20 70 61 e.(which-key--pages-page-nums.pa
7b20 67 65 73 2d 6f 62 6a 29 20 6e 29 29 0a 20 20 70 61 67 65 73 2d 6f 62 6a 29 0a 0a 28 64 65 66 73 ges-obj).n))...pages-obj)..(defs
7b40 75 62 73 74 20 77 68 69 63 68 2d 6b 65 79 2d 2d 6f 6e 2d 66 69 72 73 74 2d 70 61 67 65 20 28 29 ubst.which-key--on-first-page.()
7b60 0a 20 20 28 3d 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 70 61 67 65 73 2d 70 61 67 65 2d 6e 75 6d ...(=.(which-key--pages-page-num
7b80 73 20 77 68 69 63 68 2d 6b 65 79 2d 2d 70 61 67 65 73 2d 6f 62 6a 29 20 31 29 29 0a 0a 28 64 65 s.which-key--pages-obj).1))..(de
7ba0 66 73 75 62 73 74 20 77 68 69 63 68 2d 6b 65 79 2d 2d 6f 6e 2d 6c 61 73 74 2d 70 61 67 65 20 28 fsubst.which-key--on-last-page.(
7bc0 29 0a 20 20 28 3d 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 70 61 67 65 73 2d 70 61 67 65 2d 6e 75 )...(=.(which-key--pages-page-nu
7be0 6d 73 20 77 68 69 63 68 2d 6b 65 79 2d 2d 70 61 67 65 73 2d 6f 62 6a 29 0a 20 20 20 20 20 28 77 ms.which-key--pages-obj)......(w
7c00 68 69 63 68 2d 6b 65 79 2d 2d 70 61 67 65 73 2d 6e 75 6d 2d 70 61 67 65 73 20 77 68 69 63 68 2d hich-key--pages-num-pages.which-
7c20 6b 65 79 2d 2d 70 61 67 65 73 2d 6f 62 6a 29 29 29 0a 0a 28 64 65 66 73 75 62 73 74 20 77 68 69 key--pages-obj)))..(defsubst.whi
7c40 63 68 2d 6b 65 79 2d 2d 63 75 72 72 65 6e 74 2d 70 72 65 66 69 78 20 28 29 0a 20 20 28 61 6e 64 ch-key--current-prefix.()...(and
7c60 20 77 68 69 63 68 2d 6b 65 79 2d 2d 70 61 67 65 73 2d 6f 62 6a 0a 20 20 20 20 20 20 20 28 77 68 .which-key--pages-obj........(wh
7c80 69 63 68 2d 6b 65 79 2d 2d 70 61 67 65 73 2d 70 72 65 66 69 78 20 77 68 69 63 68 2d 6b 65 79 2d ich-key--pages-prefix.which-key-
7ca0 2d 70 61 67 65 73 2d 6f 62 6a 29 29 29 0a 0a 28 64 65 66 6d 61 63 72 6f 20 77 68 69 63 68 2d 6b -pages-obj)))..(defmacro.which-k
7cc0 65 79 2d 2d 64 65 62 75 67 2d 6d 65 73 73 61 67 65 20 28 26 72 65 73 74 20 6d 73 67 29 0a 20 20 ey--debug-message.(&rest.msg)...
7ce0 60 28 77 68 65 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 64 65 62 75 67 2d 62 75 66 66 65 72 2d 6e `(when.which-key--debug-buffer-n
7d00 61 6d 65 0a 20 20 20 20 20 28 6c 65 74 20 28 28 62 75 66 20 28 67 65 74 2d 62 75 66 66 65 72 2d ame......(let.((buf.(get-buffer-
7d20 63 72 65 61 74 65 20 77 68 69 63 68 2d 6b 65 79 2d 2d 64 65 62 75 67 2d 62 75 66 66 65 72 2d 6e create.which-key--debug-buffer-n
7d40 61 6d 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 66 6d 74 2d 6d 73 67 20 28 66 6f 72 6d 61 ame))............(fmt-msg.(forma
7d60 74 20 2c 40 6d 73 67 29 29 29 0a 20 20 20 20 20 20 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d t.,@msg)))........(with-current-
7d80 62 75 66 66 65 72 20 62 75 66 0a 20 20 20 20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 buffer.buf..........(goto-char.(
7da0 70 6f 69 6e 74 2d 6d 61 78 29 29 0a 20 20 20 20 20 20 20 20 20 28 69 6e 73 65 72 74 20 22 5c 6e point-max))..........(insert."\n
7dc0 22 20 66 6d 74 2d 6d 73 67 20 22 5c 6e 22 29 29 29 29 29 0a 0a 28 64 65 66 73 75 62 73 74 20 77 ".fmt-msg."\n")))))..(defsubst.w
7de0 68 69 63 68 2d 6b 65 79 2d 2d 73 61 66 65 2d 6c 6f 6f 6b 75 70 2d 6b 65 79 20 28 6b 65 79 6d 61 hich-key--safe-lookup-key.(keyma
7e00 70 20 6b 65 79 29 0a 20 20 22 56 65 72 73 69 6f 6e 20 6f 66 20 60 6c 6f 6f 6b 75 70 2d 6b 65 79 p.key)..."Version.of.`lookup-key
7e20 27 20 74 68 61 74 20 61 6c 6c 6f 77 73 20 4b 45 59 4d 41 50 20 74 6f 20 62 65 20 6e 69 6c 2e 0a '.that.allows.KEYMAP.to.be.nil..
7e40 41 6c 73 6f 20 63 6f 6e 76 65 72 74 20 6e 75 6d 65 72 69 63 20 72 65 73 75 6c 74 73 20 6f 66 20 Also.convert.numeric.results.of.
7e60 60 6c 6f 6f 6b 75 70 2d 6b 65 79 27 20 74 6f 20 6e 69 6c 2e 0a 4b 45 59 20 69 73 20 6e 6f 74 20 `lookup-key'.to.nil..KEY.is.not.
7e80 63 68 65 63 6b 65 64 2e 22 0a 20 20 28 77 68 65 6e 20 28 6b 65 79 6d 61 70 70 20 6b 65 79 6d 61 checked."...(when.(keymapp.keyma
7ea0 70 29 0a 20 20 20 20 28 6c 65 74 20 28 28 72 65 73 75 6c 74 20 28 6c 6f 6f 6b 75 70 2d 6b 65 79 p).....(let.((result.(lookup-key
7ec0 20 6b 65 79 6d 61 70 20 6b 65 79 29 29 29 0a 20 20 20 20 20 20 28 77 68 65 6e 20 28 61 6e 64 20 .keymap.key))).......(when.(and.
7ee0 72 65 73 75 6c 74 20 28 6e 6f 74 20 28 6e 75 6d 62 65 72 70 20 72 65 73 75 6c 74 29 29 29 0a 20 result.(not.(numberp.result)))..
7f00 20 20 20 20 20 20 20 72 65 73 75 6c 74 29 29 29 29 0a 0a 28 64 65 66 73 75 62 73 74 20 77 68 69 .......result))))..(defsubst.whi
7f20 63 68 2d 6b 65 79 2d 2d 73 61 66 65 2d 6c 6f 6f 6b 75 70 2d 6b 65 79 2d 64 65 73 63 72 69 70 74 ch-key--safe-lookup-key-descript
7f40 69 6f 6e 20 28 6b 65 79 6d 61 70 20 6b 65 79 29 0a 20 20 22 56 65 72 73 69 6f 6e 20 6f 66 20 60 ion.(keymap.key)..."Version.of.`
7f60 6c 6f 6f 6b 75 70 2d 6b 65 79 27 20 74 68 61 74 20 61 6c 6c 6f 77 73 20 4b 45 59 4d 41 50 20 74 lookup-key'.that.allows.KEYMAP.t
7f80 6f 20 62 65 20 6e 69 6c 2e 0a 41 6c 73 6f 20 63 6f 6e 76 65 72 74 20 6e 75 6d 65 72 69 63 20 72 o.be.nil..Also.convert.numeric.r
7fa0 65 73 75 6c 74 73 20 6f 66 20 60 6c 6f 6f 6b 75 70 2d 6b 65 79 27 20 74 6f 20 6e 69 6c 2e 0a 4b esults.of.`lookup-key'.to.nil..K
7fc0 45 59 20 73 68 6f 75 6c 64 20 62 65 20 66 6f 72 6d 61 74 74 65 64 20 61 73 20 61 6e 20 69 6e 70 EY.should.be.formatted.as.an.inp
7fe0 75 74 20 66 6f 72 20 60 6b 62 64 27 2e 22 0a 20 20 28 6c 65 74 20 28 28 6b 65 79 20 28 69 67 6e ut.for.`kbd'."...(let.((key.(ign
8000 6f 72 65 2d 65 72 72 6f 72 73 20 28 6b 62 64 20 6b 65 79 29 29 29 29 0a 20 20 20 20 28 77 68 65 ore-errors.(kbd.key)))).....(whe
8020 6e 20 28 61 6e 64 20 6b 65 79 20 28 6b 65 79 6d 61 70 70 20 6b 65 79 6d 61 70 29 29 0a 20 20 20 n.(and.key.(keymapp.keymap))....
8040 20 20 20 28 6c 65 74 20 28 28 72 65 73 75 6c 74 20 28 6c 6f 6f 6b 75 70 2d 6b 65 79 20 6b 65 79 ...(let.((result.(lookup-key.key
8060 6d 61 70 20 6b 65 79 29 29 29 0a 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 61 6e 64 20 72 65 map.key))).........(when.(and.re
8080 73 75 6c 74 20 28 6e 6f 74 20 28 6e 75 6d 62 65 72 70 20 72 65 73 75 6c 74 29 29 29 0a 20 20 20 sult.(not.(numberp.result)))....
80a0 20 20 20 20 20 20 20 72 65 73 75 6c 74 29 29 29 29 29 0a 0a 3b 3b 3b 20 54 68 69 72 64 2d 70 61 .......result)))))..;;;.Third-pa
80c0 72 74 79 20 6c 69 62 72 61 72 79 20 73 75 70 70 6f 72 74 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 rty.library.support..(defun.whic
80e0 68 2d 6b 65 79 2d 2d 74 68 69 73 2d 63 6f 6d 6d 61 6e 64 2d 6b 65 79 73 20 28 29 0a 20 20 22 56 h-key--this-command-keys.()..."V
8100 65 72 73 69 6f 6e 20 6f 66 20 60 74 68 69 73 2d 73 69 6e 67 6c 65 2d 63 6f 6d 6d 61 6e 64 2d 6b ersion.of.`this-single-command-k
8120 65 79 73 27 20 63 6f 72 72 65 63 74 65 64 20 66 6f 72 20 6b 65 79 2d 63 68 6f 72 64 73 2e 22 0a eys'.corrected.for.key-chords.".
8140 20 20 28 6c 65 74 20 28 28 74 68 69 73 2d 63 6f 6d 6d 61 6e 64 2d 6b 65 79 73 20 28 74 68 69 73 ..(let.((this-command-keys.(this
8160 2d 73 69 6e 67 6c 65 2d 63 6f 6d 6d 61 6e 64 2d 6b 65 79 73 29 29 29 0a 20 20 20 20 28 77 68 65 -single-command-keys))).....(whe
8180 6e 20 28 61 6e 64 20 28 76 65 63 74 6f 72 70 20 74 68 69 73 2d 63 6f 6d 6d 61 6e 64 2d 6b 65 79 n.(and.(vectorp.this-command-key
81a0 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 3e 20 28 6c 65 6e 67 74 68 20 74 68 69 s)................(>.(length.thi
81c0 73 2d 63 6f 6d 6d 61 6e 64 2d 6b 65 79 73 29 20 30 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 s-command-keys).0)..............
81e0 20 20 28 65 71 20 28 61 72 65 66 20 74 68 69 73 2d 63 6f 6d 6d 61 6e 64 2d 6b 65 79 73 20 30 29 ..(eq.(aref.this-command-keys.0)
8200 20 27 6b 65 79 2d 63 68 6f 72 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 62 6f 75 .'key-chord)................(bou
8220 6e 64 2d 61 6e 64 2d 74 72 75 65 2d 70 20 6b 65 79 2d 63 68 6f 72 64 2d 6d 6f 64 65 29 29 0a 20 nd-and-true-p.key-chord-mode))..
8240 20 20 20 20 20 28 73 65 74 71 20 74 68 69 73 2d 63 6f 6d 6d 61 6e 64 2d 6b 65 79 73 20 28 74 68 .....(setq.this-command-keys.(th
8260 69 73 2d 73 69 6e 67 6c 65 2d 63 6f 6d 6d 61 6e 64 2d 72 61 77 2d 6b 65 79 73 29 29 29 0a 20 20 is-single-command-raw-keys)))...
8280 20 20 74 68 69 73 2d 63 6f 6d 6d 61 6e 64 2d 6b 65 79 73 29 29 0a 0a 28 64 65 66 63 75 73 74 6f ..this-command-keys))..(defcusto
82a0 6d 20 77 68 69 63 68 2d 6b 65 79 2d 74 68 69 73 2d 63 6f 6d 6d 61 6e 64 2d 6b 65 79 73 2d 66 75 m.which-key-this-command-keys-fu
82c0 6e 63 74 69 6f 6e 20 23 27 77 68 69 63 68 2d 6b 65 79 2d 2d 74 68 69 73 2d 63 6f 6d 6d 61 6e 64 nction.#'which-key--this-command
82e0 2d 6b 65 79 73 0a 20 20 22 46 75 6e 63 74 69 6f 6e 20 75 73 65 64 20 74 6f 20 72 65 74 72 69 65 -keys..."Function.used.to.retrie
8300 76 65 20 63 75 72 72 65 6e 74 20 6b 65 79 20 73 65 71 75 65 6e 63 65 2e 0a 54 68 65 20 70 75 72 ve.current.key.sequence..The.pur
8320 70 6f 73 65 20 6f 66 20 61 6c 6c 6f 77 69 6e 67 20 74 68 69 73 20 76 61 72 69 61 62 6c 65 20 74 pose.of.allowing.this.variable.t
8340 6f 20 62 65 20 63 75 73 74 6f 6d 69 7a 65 64 20 69 73 20 74 6f 0a 61 6c 6c 6f 77 20 77 68 69 63 o.be.customized.is.to.allow.whic
8360 68 2d 6b 65 79 20 74 6f 20 73 75 70 70 6f 72 74 20 70 61 63 6b 61 67 65 73 20 74 68 61 74 20 69 h-key.to.support.packages.that.i
8380 6e 73 65 72 74 20 6e 6f 6e 2d 73 74 61 6e 64 61 72 64 0a 60 6b 65 79 73 27 20 69 6e 74 6f 20 74 nsert.non-standard.`keys'.into.t
83a0 68 65 20 6b 65 79 20 73 65 71 75 65 6e 63 65 20 62 65 69 6e 67 20 72 65 61 64 20 62 79 20 45 6d he.key.sequence.being.read.by.Em
83c0 61 63 73 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 77 68 69 63 68 2d 6b 65 79 0a 20 20 3a 74 79 70 acs."...:group.'which-key...:typ
83e0 65 20 27 66 75 6e 63 74 69 6f 6e 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 22 e.'function...:package-version."
8400 31 2e 30 22 20 3a 76 65 72 73 69 6f 6e 20 22 33 30 2e 31 22 29 0a 0a 0a 3b 3b 3b 3b 20 45 76 69 1.0".:version."30.1")...;;;;.Evi
8420 6c 0a 0a 28 64 65 66 76 61 72 20 65 76 69 6c 2d 73 74 61 74 65 20 6e 69 6c 29 0a 0a 28 64 65 66 l..(defvar.evil-state.nil)..(def
8440 63 75 73 74 6f 6d 20 77 68 69 63 68 2d 6b 65 79 2d 61 6c 6c 6f 77 2d 65 76 69 6c 2d 6f 70 65 72 custom.which-key-allow-evil-oper
8460 61 74 6f 72 73 20 28 62 6f 75 6e 64 70 20 27 65 76 69 6c 2d 74 68 69 73 2d 6f 70 65 72 61 74 6f ators.(boundp.'evil-this-operato
8480 72 29 0a 20 20 22 41 6c 6c 6f 77 20 70 6f 70 75 70 20 74 6f 20 73 68 6f 77 20 66 6f 72 20 65 76 r)..."Allow.popup.to.show.for.ev
84a0 69 6c 20 6f 70 65 72 61 74 6f 72 73 2e 0a 54 68 65 20 70 6f 70 75 70 20 69 73 20 6e 6f 72 6d 61 il.operators..The.popup.is.norma
84c0 6c 6c 79 20 69 6e 68 69 62 69 74 65 64 20 69 6e 20 74 68 65 20 6d 69 64 64 6c 65 20 6f 66 20 63 lly.inhibited.in.the.middle.of.c
84e0 6f 6d 6d 61 6e 64 73 2c 20 62 75 74 0a 73 65 74 74 69 6e 67 20 74 68 69 73 20 74 6f 20 6e 6f 6e ommands,.but.setting.this.to.non
8500 2d 6e 69 6c 20 77 69 6c 6c 20 6f 76 65 72 72 69 64 65 20 74 68 69 73 20 62 65 68 61 76 69 6f 72 -nil.will.override.this.behavior
8520 20 66 6f 72 20 65 76 69 6c 0a 6f 70 65 72 61 74 6f 72 73 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 .for.evil.operators."...:group.'
8540 77 68 69 63 68 2d 6b 65 79 0a 20 20 3a 74 79 70 65 20 27 62 6f 6f 6c 65 61 6e 0a 20 20 3a 70 61 which-key...:type.'boolean...:pa
8560 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 22 31 2e 30 22 20 3a 76 65 72 73 69 6f 6e 20 22 33 30 ckage-version."1.0".:version."30
8580 2e 31 22 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d .1")..(defcustom.which-key-show-
85a0 6f 70 65 72 61 74 6f 72 2d 73 74 61 74 65 2d 6d 61 70 73 20 6e 69 6c 0a 20 20 22 53 68 6f 77 20 operator-state-maps.nil..."Show.
85c0 74 68 65 20 6b 65 79 73 20 66 6f 6c 6c 6f 77 69 6e 67 20 61 6e 20 65 76 69 6c 20 63 6f 6d 6d 61 the.keys.following.an.evil.comma
85e0 6e 64 20 74 68 61 74 20 72 65 61 64 73 20 61 20 6d 6f 74 69 6f 6e 2e 0a 54 68 65 73 65 20 61 72 nd.that.reads.a.motion..These.ar
8600 65 20 63 6f 6d 6d 61 6e 64 73 20 74 79 70 69 63 61 6c 6c 79 20 6d 61 70 70 65 64 20 74 6f 20 6b e.commands.typically.mapped.to.k
8620 65 79 73 20 73 75 63 68 20 61 73 20 5c 22 79 5c 22 2c 20 5c 22 64 5c 22 0a 61 6e 64 20 5c 22 63 eys.such.as.\"y\",.\"d\".and.\"c
8640 5c 22 20 66 72 6f 6d 20 6e 6f 72 6d 61 6c 20 73 74 61 74 65 2e 20 54 68 69 73 20 69 73 20 65 78 \".from.normal.state..This.is.ex
8660 70 65 72 69 6d 65 6e 74 61 6c 2c 20 62 65 63 61 75 73 65 20 74 68 65 72 65 0a 6d 69 67 68 74 20 perimental,.because.there.might.
8680 62 65 20 73 6f 6d 65 20 76 61 6c 69 64 20 6b 65 79 73 20 6d 69 73 73 69 6e 67 20 61 6e 64 20 69 be.some.valid.keys.missing.and.i
86a0 74 20 6d 69 67 68 74 20 62 65 20 73 68 6f 77 69 6e 67 20 73 6f 6d 65 0a 69 6e 76 61 6c 69 64 20 t.might.be.showing.some.invalid.
86c0 6b 65 79 73 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 77 68 69 63 68 2d 6b 65 79 0a 20 20 3a 74 79 keys."...:group.'which-key...:ty
86e0 70 65 20 27 62 6f 6f 6c 65 61 6e 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e 20 22 pe.'boolean...:package-version."
8700 31 2e 30 22 20 3a 76 65 72 73 69 6f 6e 20 22 33 30 2e 31 22 29 0a 0a 28 64 65 66 75 6e 20 77 68 1.0".:version."30.1")..(defun.wh
8720 69 63 68 2d 6b 65 79 2d 65 76 69 6c 2d 74 68 69 73 2d 6f 70 65 72 61 74 6f 72 2d 70 20 28 29 0a ich-key-evil-this-operator-p.().
8740 20 20 28 61 6e 64 20 77 68 69 63 68 2d 6b 65 79 2d 61 6c 6c 6f 77 2d 65 76 69 6c 2d 6f 70 65 72 ..(and.which-key-allow-evil-oper
8760 61 74 6f 72 73 0a 20 20 20 20 20 20 20 28 62 6f 75 6e 64 2d 61 6e 64 2d 74 72 75 65 2d 70 20 65 ators........(bound-and-true-p.e
8780 76 69 6c 2d 74 68 69 73 2d 6f 70 65 72 61 74 6f 72 29 29 29 0a 0a 28 61 64 64 2d 68 6f 6f 6b 20 vil-this-operator)))..(add-hook.
87a0 27 77 68 69 63 68 2d 6b 65 79 2d 69 6e 68 69 62 69 74 2d 64 69 73 70 6c 61 79 2d 68 6f 6f 6b 0a 'which-key-inhibit-display-hook.
87c0 20 20 20 20 20 20 20 20 20 20 23 27 77 68 69 63 68 2d 6b 65 79 2d 65 76 69 6c 2d 74 68 69 73 2d ..........#'which-key-evil-this-
87e0 6f 70 65 72 61 74 6f 72 2d 70 29 0a 0a 3b 3b 3b 3b 20 47 6f 64 2d 6d 6f 64 65 0a 0a 28 64 65 66 operator-p)..;;;;.God-mode..(def
8800 76 61 72 20 77 68 69 63 68 2d 6b 65 79 2d 2d 67 6f 64 2d 6d 6f 64 65 2d 73 75 70 70 6f 72 74 2d var.which-key--god-mode-support-
8820 65 6e 61 62 6c 65 64 20 6e 69 6c 0a 20 20 22 53 75 70 70 6f 72 74 20 67 6f 64 2d 6d 6f 64 65 20 enabled.nil..."Support.god-mode.
8840 69 66 20 6e 6f 6e 2d 6e 69 6c 2e 22 29 0a 0a 28 64 65 66 76 61 72 20 77 68 69 63 68 2d 6b 65 79 if.non-nil.")..(defvar.which-key
8860 2d 2d 67 6f 64 2d 6d 6f 64 65 2d 6b 65 79 2d 73 74 72 69 6e 67 20 6e 69 6c 0a 20 20 22 53 74 72 --god-mode-key-string.nil..."Str
8880 69 6e 67 20 74 6f 20 75 73 65 20 66 6f 72 20 67 6f 64 2d 6d 6f 64 65 20 73 75 70 70 6f 72 74 2e ing.to.use.for.god-mode.support.
88a0 22 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 67 6f 64 2d 6d 6f 64 65 2d 6c ")..(defun.which-key--god-mode-l
88c0 6f 6f 6b 75 70 2d 63 6f 6d 6d 61 6e 64 2d 61 64 76 69 63 65 20 28 6f 72 69 67 2d 66 75 6e 20 61 ookup-command-advice.(orig-fun.a
88e0 72 67 31 20 26 72 65 73 74 20 61 72 67 73 29 0a 20 20 28 73 65 74 71 20 77 68 69 63 68 2d 6b 65 rg1.&rest.args)...(setq.which-ke
8900 79 2d 2d 67 6f 64 2d 6d 6f 64 65 2d 6b 65 79 2d 73 74 72 69 6e 67 20 61 72 67 31 29 0a 20 20 28 y--god-mode-key-string.arg1)...(
8920 75 6e 77 69 6e 64 2d 70 72 6f 74 65 63 74 0a 20 20 20 20 20 20 28 61 70 70 6c 79 20 6f 72 69 67 unwind-protect.......(apply.orig
8940 2d 66 75 6e 20 61 72 67 31 20 61 72 67 73 29 0a 20 20 20 20 28 77 68 65 6e 20 28 62 6f 75 6e 64 -fun.arg1.args).....(when.(bound
8960 2d 61 6e 64 2d 74 72 75 65 2d 70 20 77 68 69 63 68 2d 6b 65 79 2d 6d 6f 64 65 29 0a 20 20 20 20 -and-true-p.which-key-mode).....
8980 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 68 69 64 65 2d 70 6f 70 75 70 29 29 29 29 0a 0a 28 64 ..(which-key--hide-popup))))..(d
89a0 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 67 6f 64 2d 6d 6f 64 65 2d 74 68 69 73 2d 63 6f efun.which-key--god-mode-this-co
89c0 6d 6d 61 6e 64 2d 6b 65 79 73 20 28 29 0a 20 20 22 56 65 72 73 69 6f 6e 20 6f 66 20 60 74 68 69 mmand-keys.()..."Version.of.`thi
89e0 73 2d 73 69 6e 67 6c 65 2d 63 6f 6d 6d 61 6e 64 2d 6b 65 79 73 27 20 63 6f 72 72 65 63 74 65 64 s-single-command-keys'.corrected
8a00 20 66 6f 72 20 67 6f 64 2d 6d 6f 64 65 2e 22 0a 20 20 28 6c 65 74 20 28 28 74 68 69 73 2d 63 6f .for.god-mode."...(let.((this-co
8a20 6d 6d 61 6e 64 2d 6b 65 79 73 20 28 74 68 69 73 2d 73 69 6e 67 6c 65 2d 63 6f 6d 6d 61 6e 64 2d mmand-keys.(this-single-command-
8a40 6b 65 79 73 29 29 29 0a 20 20 20 20 28 77 68 65 6e 20 28 61 6e 64 20 77 68 69 63 68 2d 6b 65 79 keys))).....(when.(and.which-key
8a60 2d 2d 67 6f 64 2d 6d 6f 64 65 2d 73 75 70 70 6f 72 74 2d 65 6e 61 62 6c 65 64 0a 20 20 20 20 20 --god-mode-support-enabled......
8a80 20 20 20 20 20 20 20 20 20 20 28 62 6f 75 6e 64 2d 61 6e 64 2d 74 72 75 65 2d 70 20 67 6f 64 2d ..........(bound-and-true-p.god-
8aa0 6c 6f 63 61 6c 2d 6d 6f 64 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 71 20 74 local-mode)................(eq.t
8ac0 68 69 73 2d 63 6f 6d 6d 61 6e 64 20 27 67 6f 64 2d 6d 6f 64 65 2d 73 65 6c 66 2d 69 6e 73 65 72 his-command.'god-mode-self-inser
8ae0 74 29 29 0a 20 20 20 20 20 20 28 73 65 74 71 20 74 68 69 73 2d 63 6f 6d 6d 61 6e 64 2d 6b 65 79 t)).......(setq.this-command-key
8b00 73 20 28 77 68 65 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 67 6f 64 2d 6d 6f 64 65 2d 6b 65 79 2d s.(when.which-key--god-mode-key-
8b20 73 74 72 69 6e 67 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 string..........................
8b40 20 20 20 20 20 20 20 28 6b 62 64 20 77 68 69 63 68 2d 6b 65 79 2d 2d 67 6f 64 2d 6d 6f 64 65 2d .......(kbd.which-key--god-mode-
8b60 6b 65 79 2d 73 74 72 69 6e 67 29 29 29 29 0a 20 20 20 20 74 68 69 73 2d 63 6f 6d 6d 61 6e 64 2d key-string)))).....this-command-
8b80 6b 65 79 73 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 67 6f 64 2d 6d 6f 64 keys))..(defun.which-key-god-mod
8ba0 65 2d 73 65 6c 66 2d 69 6e 73 65 72 74 2d 70 20 28 29 0a 20 20 28 61 6e 64 20 77 68 69 63 68 2d e-self-insert-p.()...(and.which-
8bc0 6b 65 79 2d 2d 67 6f 64 2d 6d 6f 64 65 2d 73 75 70 70 6f 72 74 2d 65 6e 61 62 6c 65 64 0a 20 20 key--god-mode-support-enabled...
8be0 20 20 20 20 20 28 62 6f 75 6e 64 2d 61 6e 64 2d 74 72 75 65 2d 70 20 67 6f 64 2d 6c 6f 63 61 6c .....(bound-and-true-p.god-local
8c00 2d 6d 6f 64 65 29 0a 20 20 20 20 20 20 20 28 65 71 20 74 68 69 73 2d 63 6f 6d 6d 61 6e 64 20 27 -mode)........(eq.this-command.'
8c20 67 6f 64 2d 6d 6f 64 65 2d 73 65 6c 66 2d 69 6e 73 65 72 74 29 29 29 0a 0a 28 64 65 66 75 6e 20 god-mode-self-insert)))..(defun.
8c40 77 68 69 63 68 2d 6b 65 79 2d 65 6e 61 62 6c 65 2d 67 6f 64 2d 6d 6f 64 65 2d 73 75 70 70 6f 72 which-key-enable-god-mode-suppor
8c60 74 20 28 26 6f 70 74 69 6f 6e 61 6c 20 64 69 73 61 62 6c 65 29 0a 20 20 22 45 6e 61 62 6c 65 20 t.(&optional.disable)..."Enable.
8c80 73 75 70 70 6f 72 74 20 66 6f 72 20 67 6f 64 2d 6d 6f 64 65 20 69 66 20 6e 6f 6e 2d 6e 69 6c 2e support.for.god-mode.if.non-nil.
8ca0 0a 54 68 69 73 20 69 73 20 65 78 70 65 72 69 6d 65 6e 74 61 6c 2c 20 73 6f 20 79 6f 75 20 6e 65 .This.is.experimental,.so.you.ne
8cc0 65 64 20 74 6f 20 65 78 70 6c 69 63 69 74 6c 79 20 6f 70 74 2d 69 6e 20 66 6f 72 0a 6e 6f 77 2e ed.to.explicitly.opt-in.for.now.
8ce0 20 20 50 6c 65 61 73 65 20 72 65 70 6f 72 74 20 61 6e 79 20 70 72 6f 62 6c 65 6d 73 20 61 74 20 ..Please.report.any.problems.at.
8d00 67 69 74 68 75 62 2e 20 20 49 66 20 44 49 53 41 42 4c 45 20 69 73 20 6e 6f 6e 2d 6e 69 6c 0a 64 github...If.DISABLE.is.non-nil.d
8d20 69 73 61 62 6c 65 20 73 75 70 70 6f 72 74 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 20 isable.support."...(interactive.
8d40 22 50 22 29 0a 20 20 28 73 65 74 71 20 77 68 69 63 68 2d 6b 65 79 2d 2d 67 6f 64 2d 6d 6f 64 65 "P")...(setq.which-key--god-mode
8d60 2d 73 75 70 70 6f 72 74 2d 65 6e 61 62 6c 65 64 20 28 6e 75 6c 6c 20 64 69 73 61 62 6c 65 29 29 -support-enabled.(null.disable))
8d80 0a 20 20 28 69 66 20 64 69 73 61 62 6c 65 0a 20 20 20 20 20 20 28 70 72 6f 67 6e 0a 20 20 20 20 ...(if.disable.......(progn.....
8da0 20 20 20 20 28 61 64 76 69 63 65 2d 72 65 6d 6f 76 65 20 27 67 6f 64 2d 6d 6f 64 65 2d 6c 6f 6f ....(advice-remove.'god-mode-loo
8dc0 6b 75 70 2d 63 6f 6d 6d 61 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 kup-command.....................
8de0 20 20 20 23 27 77 68 69 63 68 2d 6b 65 79 2d 2d 67 6f 64 2d 6d 6f 64 65 2d 6c 6f 6f 6b 75 70 2d ...#'which-key--god-mode-lookup-
8e00 63 6f 6d 6d 61 6e 64 2d 61 64 76 69 63 65 29 0a 20 20 20 20 20 20 20 20 28 72 65 6d 6f 76 65 2d command-advice).........(remove-
8e20 66 75 6e 63 74 69 6f 6e 20 77 68 69 63 68 2d 6b 65 79 2d 74 68 69 73 2d 63 6f 6d 6d 61 6e 64 2d function.which-key-this-command-
8e40 6b 65 79 73 2d 66 75 6e 63 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 keys-function...................
8e60 20 20 20 20 20 20 20 23 27 77 68 69 63 68 2d 6b 65 79 2d 2d 67 6f 64 2d 6d 6f 64 65 2d 74 68 69 .......#'which-key--god-mode-thi
8e80 73 2d 63 6f 6d 6d 61 6e 64 2d 6b 65 79 73 29 0a 20 20 20 20 20 20 20 20 28 72 65 6d 6f 76 65 2d s-command-keys).........(remove-
8ea0 68 6f 6f 6b 20 27 77 68 69 63 68 2d 6b 65 79 2d 69 6e 68 69 62 69 74 2d 64 69 73 70 6c 61 79 2d hook.'which-key-inhibit-display-
8ec0 68 6f 6f 6b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 27 77 68 69 63 hook......................#'whic
8ee0 68 2d 6b 65 79 2d 67 6f 64 2d 6d 6f 64 65 2d 73 65 6c 66 2d 69 6e 73 65 72 74 2d 70 29 29 0a 20 h-key-god-mode-self-insert-p))..
8f00 20 20 20 28 61 64 76 69 63 65 2d 61 64 64 20 27 67 6f 64 2d 6d 6f 64 65 2d 6c 6f 6f 6b 75 70 2d ...(advice-add.'god-mode-lookup-
8f20 63 6f 6d 6d 61 6e 64 20 3a 61 72 6f 75 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 command.:around.................
8f40 23 27 77 68 69 63 68 2d 6b 65 79 2d 2d 67 6f 64 2d 6d 6f 64 65 2d 6c 6f 6f 6b 75 70 2d 63 6f 6d #'which-key--god-mode-lookup-com
8f60 6d 61 6e 64 2d 61 64 76 69 63 65 29 0a 20 20 20 20 28 61 64 64 2d 66 75 6e 63 74 69 6f 6e 20 3a mand-advice).....(add-function.:
8f80 6f 76 65 72 72 69 64 65 20 77 68 69 63 68 2d 6b 65 79 2d 74 68 69 73 2d 63 6f 6d 6d 61 6e 64 2d override.which-key-this-command-
8fa0 6b 65 79 73 2d 66 75 6e 63 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 keys-function...................
8fc0 23 27 77 68 69 63 68 2d 6b 65 79 2d 2d 67 6f 64 2d 6d 6f 64 65 2d 74 68 69 73 2d 63 6f 6d 6d 61 #'which-key--god-mode-this-comma
8fe0 6e 64 2d 6b 65 79 73 29 0a 20 20 20 20 28 61 64 64 2d 68 6f 6f 6b 20 27 77 68 69 63 68 2d 6b 65 nd-keys).....(add-hook.'which-ke
9000 79 2d 69 6e 68 69 62 69 74 2d 64 69 73 70 6c 61 79 2d 68 6f 6f 6b 0a 20 20 20 20 20 20 20 20 20 y-inhibit-display-hook..........
9020 20 20 20 20 20 23 27 77 68 69 63 68 2d 6b 65 79 2d 67 6f 64 2d 6d 6f 64 65 2d 73 65 6c 66 2d 69 .....#'which-key-god-mode-self-i
9040 6e 73 65 72 74 2d 70 29 29 29 0a 0a 3b 3b 3b 20 4d 6f 64 65 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f nsert-p)))..;;;.Mode..;;;###auto
9060 6c 6f 61 64 0a 28 64 65 66 69 6e 65 2d 6d 69 6e 6f 72 2d 6d 6f 64 65 20 77 68 69 63 68 2d 6b 65 load.(define-minor-mode.which-ke
9080 79 2d 6d 6f 64 65 0a 20 20 22 54 6f 67 67 6c 65 20 60 77 68 69 63 68 2d 6b 65 79 2d 6d 6f 64 65 y-mode..."Toggle.`which-key-mode
90a0 27 2e 0a 0a 60 77 68 69 63 68 2d 6b 65 79 27 20 69 73 20 61 20 6d 69 6e 6f 72 20 6d 6f 64 65 20 '...`which-key'.is.a.minor.mode.
90c0 74 68 61 74 20 64 69 73 70 6c 61 79 73 20 74 68 65 20 6b 65 79 20 62 69 6e 64 69 6e 67 73 20 66 that.displays.the.key.bindings.f
90e0 6f 6c 6c 6f 77 69 6e 67 0a 79 6f 75 72 20 63 75 72 72 65 6e 74 6c 79 20 65 6e 74 65 72 65 64 20 ollowing.your.currently.entered.
9100 69 6e 63 6f 6d 70 6c 65 74 65 20 63 6f 6d 6d 61 6e 64 20 28 61 20 70 72 65 66 69 78 29 20 69 6e incomplete.command.(a.prefix).in
9120 20 61 20 70 6f 70 75 70 2e 0a 0a 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 61 66 74 65 72 20 65 6e .a.popup...For.example,.after.en
9140 61 62 6c 69 6e 67 20 74 68 65 20 6d 69 6e 6f 72 20 6d 6f 64 65 2c 20 69 66 20 79 6f 75 20 65 6e abling.the.minor.mode,.if.you.en
9160 74 65 72 20 5c 5c 60 43 2d 78 27 20 61 6e 64 0a 77 61 69 74 20 66 6f 72 20 6f 6e 65 20 73 65 63 ter.\\`C-x'.and.wait.for.one.sec
9180 6f 6e 64 20 28 62 79 20 64 65 66 61 75 6c 74 29 2c 20 74 68 65 20 6d 69 6e 69 62 75 66 66 65 72 ond.(by.default),.the.minibuffer
91a0 20 77 69 6c 6c 20 65 78 70 61 6e 64 20 77 69 74 68 20 61 6c 6c 0a 61 76 61 69 6c 61 62 6c 65 20 .will.expand.with.all.available.
91c0 6b 65 79 20 62 69 6e 64 69 6e 67 73 20 74 68 61 74 20 66 6f 6c 6c 6f 77 20 5c 5c 60 43 2d 78 27 key.bindings.that.follow.\\`C-x'
91e0 20 28 6f 72 20 61 73 20 6d 61 6e 79 20 61 73 20 73 70 61 63 65 20 61 6c 6c 6f 77 73 0a 67 69 76 .(or.as.many.as.space.allows.giv
9200 65 6e 20 79 6f 75 72 20 73 65 74 74 69 6e 67 73 29 2e 22 0a 20 20 3a 67 6c 6f 62 61 6c 20 74 0a en.your.settings)."...:global.t.
9220 20 20 3a 67 72 6f 75 70 20 27 77 68 69 63 68 2d 6b 65 79 0a 20 20 3a 6c 69 67 68 74 65 72 20 77 ..:group.'which-key...:lighter.w
9240 68 69 63 68 2d 6b 65 79 2d 6c 69 67 68 74 65 72 0a 20 20 3a 6b 65 79 6d 61 70 20 28 6c 65 74 20 hich-key-lighter...:keymap.(let.
9260 28 28 6d 61 70 20 28 6d 61 6b 65 2d 73 70 61 72 73 65 2d 6b 65 79 6d 61 70 29 29 29 0a 20 20 20 ((map.(make-sparse-keymap)))....
9280 20 20 20 20 20 20 20 20 20 28 6d 61 70 63 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d .........(mapc..............(lam
92a0 62 64 61 20 28 70 72 65 66 69 78 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 bda.(prefix)................(def
92c0 69 6e 65 2d 6b 65 79 20 6d 61 70 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6b 62 ine-key.map..................(kb
92e0 64 20 28 63 6f 6e 63 61 74 20 70 72 65 66 69 78 20 22 20 22 20 77 68 69 63 68 2d 6b 65 79 2d 70 d.(concat.prefix.".".which-key-p
9300 61 67 69 6e 67 2d 6b 65 79 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 27 77 aging-key))..................#'w
9320 68 69 63 68 2d 6b 65 79 2d 43 2d 68 2d 64 69 73 70 61 74 63 68 29 29 0a 20 20 20 20 20 20 20 20 hich-key-C-h-dispatch)).........
9340 20 20 20 20 20 77 68 69 63 68 2d 6b 65 79 2d 70 61 67 69 6e 67 2d 70 72 65 66 69 78 65 73 29 0a .....which-key-paging-prefixes).
9360 20 20 20 20 20 20 20 20 20 20 20 20 6d 61 70 29 0a 20 20 28 69 66 20 77 68 69 63 68 2d 6b 65 79 ............map)...(if.which-key
9380 2d 6d 6f 64 65 0a 20 20 20 20 20 20 28 70 72 6f 67 6e 0a 20 20 20 20 20 20 20 20 28 73 65 74 71 -mode.......(progn.........(setq
93a0 20 77 68 69 63 68 2d 6b 65 79 2d 2d 65 63 68 6f 2d 6b 65 79 73 74 72 6f 6b 65 73 2d 62 61 63 6b .which-key--echo-keystrokes-back
93c0 75 70 20 65 63 68 6f 2d 6b 65 79 73 74 72 6f 6b 65 73 29 0a 20 20 20 20 20 20 20 20 28 77 68 65 up.echo-keystrokes).........(whe
93e0 6e 20 28 6f 72 20 28 65 71 20 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d 70 72 65 66 69 78 20 n.(or.(eq.which-key-show-prefix.
9400 27 65 63 68 6f 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 71 20 77 68 69 'echo)...................(eq.whi
9420 63 68 2d 6b 65 79 2d 70 6f 70 75 70 2d 74 79 70 65 20 27 6d 69 6e 69 62 75 66 66 65 72 29 29 0a ch-key-popup-type.'minibuffer)).
9440 20 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 73 65 74 75 70 2d 65 63 68 6f ..........(which-key--setup-echo
9460 2d 6b 65 79 73 74 72 6f 6b 65 73 29 29 0a 20 20 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 28 6d -keystrokes)).........(unless.(m
9480 65 6d 62 65 72 20 70 72 65 66 69 78 2d 68 65 6c 70 2d 63 6f 6d 6d 61 6e 64 20 77 68 69 63 68 2d ember.prefix-help-command.which-
94a0 6b 65 79 2d 2d 70 61 67 69 6e 67 2d 66 75 6e 63 74 69 6f 6e 73 29 0a 20 20 20 20 20 20 20 20 20 key--paging-functions)..........
94c0 20 28 73 65 74 71 20 77 68 69 63 68 2d 6b 65 79 2d 2d 70 72 65 66 69 78 2d 68 65 6c 70 2d 63 6d .(setq.which-key--prefix-help-cm
94e0 64 2d 62 61 63 6b 75 70 20 70 72 65 66 69 78 2d 68 65 6c 70 2d 63 6f 6d 6d 61 6e 64 29 29 0a 20 d-backup.prefix-help-command))..
9500 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 6f 72 20 77 68 69 63 68 2d 6b 65 79 2d 75 73 65 2d 43 .......(when.(or.which-key-use-C
9520 2d 68 2d 63 6f 6d 6d 61 6e 64 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 77 68 -h-commands...................wh
9540 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d 65 61 72 6c 79 2d 6f 6e 2d 43 2d 68 29 0a 20 20 20 20 20 ich-key-show-early-on-C-h)......
9560 20 20 20 20 20 28 73 65 74 71 20 70 72 65 66 69 78 2d 68 65 6c 70 2d 63 6f 6d 6d 61 6e 64 20 23 .....(setq.prefix-help-command.#
9580 27 77 68 69 63 68 2d 6b 65 79 2d 43 2d 68 2d 64 69 73 70 61 74 63 68 29 29 0a 20 20 20 20 20 20 'which-key-C-h-dispatch)).......
95a0 20 20 28 77 68 65 6e 20 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d 72 65 6d 61 69 6e 69 6e 67 ..(when.which-key-show-remaining
95c0 2d 6b 65 79 73 0a 20 20 20 20 20 20 20 20 20 20 28 61 64 64 2d 68 6f 6f 6b 20 27 70 72 65 2d 63 -keys...........(add-hook.'pre-c
95e0 6f 6d 6d 61 6e 64 2d 68 6f 6f 6b 20 23 27 77 68 69 63 68 2d 6b 65 79 2d 2d 6c 69 67 68 74 65 72 ommand-hook.#'which-key--lighter
9600 2d 72 65 73 74 6f 72 65 29 29 0a 20 20 20 20 20 20 20 20 28 61 64 64 2d 68 6f 6f 6b 20 27 70 72 -restore)).........(add-hook.'pr
9620 65 2d 63 6f 6d 6d 61 6e 64 2d 68 6f 6f 6b 20 23 27 77 68 69 63 68 2d 6b 65 79 2d 2d 68 69 64 65 e-command-hook.#'which-key--hide
9640 2d 70 6f 70 75 70 29 0a 20 20 20 20 20 20 20 20 28 61 64 64 2d 68 6f 6f 6b 20 27 77 69 6e 64 6f -popup).........(add-hook.'windo
9660 77 2d 73 69 7a 65 2d 63 68 61 6e 67 65 2d 66 75 6e 63 74 69 6f 6e 73 0a 20 20 20 20 20 20 20 20 w-size-change-functions.........
9680 20 20 20 20 20 20 20 20 20 20 23 27 77 68 69 63 68 2d 6b 65 79 2d 2d 68 69 64 65 2d 70 6f 70 75 ..........#'which-key--hide-popu
96a0 70 2d 6f 6e 2d 66 72 61 6d 65 2d 73 69 7a 65 2d 63 68 61 6e 67 65 29 0a 20 20 20 20 20 20 20 20 p-on-frame-size-change).........
96c0 28 77 68 69 63 68 2d 6b 65 79 2d 2d 73 74 61 72 74 2d 74 69 6d 65 72 29 29 0a 20 20 20 20 28 73 (which-key--start-timer)).....(s
96e0 65 74 71 20 65 63 68 6f 2d 6b 65 79 73 74 72 6f 6b 65 73 20 77 68 69 63 68 2d 6b 65 79 2d 2d 65 etq.echo-keystrokes.which-key--e
9700 63 68 6f 2d 6b 65 79 73 74 72 6f 6b 65 73 2d 62 61 63 6b 75 70 29 0a 20 20 20 20 28 77 68 65 6e cho-keystrokes-backup).....(when
9720 20 77 68 69 63 68 2d 6b 65 79 2d 2d 70 72 65 66 69 78 2d 68 65 6c 70 2d 63 6d 64 2d 62 61 63 6b .which-key--prefix-help-cmd-back
9740 75 70 0a 20 20 20 20 20 20 28 73 65 74 71 20 70 72 65 66 69 78 2d 68 65 6c 70 2d 63 6f 6d 6d 61 up.......(setq.prefix-help-comma
9760 6e 64 20 77 68 69 63 68 2d 6b 65 79 2d 2d 70 72 65 66 69 78 2d 68 65 6c 70 2d 63 6d 64 2d 62 61 nd.which-key--prefix-help-cmd-ba
9780 63 6b 75 70 29 29 0a 20 20 20 20 28 77 68 65 6e 20 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d ckup)).....(when.which-key-show-
97a0 72 65 6d 61 69 6e 69 6e 67 2d 6b 65 79 73 0a 20 20 20 20 20 20 28 72 65 6d 6f 76 65 2d 68 6f 6f remaining-keys.......(remove-hoo
97c0 6b 20 27 70 72 65 2d 63 6f 6d 6d 61 6e 64 2d 68 6f 6f 6b 20 23 27 77 68 69 63 68 2d 6b 65 79 2d k.'pre-command-hook.#'which-key-
97e0 2d 6c 69 67 68 74 65 72 2d 72 65 73 74 6f 72 65 29 29 0a 20 20 20 20 28 72 65 6d 6f 76 65 2d 68 -lighter-restore)).....(remove-h
9800 6f 6f 6b 20 27 70 72 65 2d 63 6f 6d 6d 61 6e 64 2d 68 6f 6f 6b 20 23 27 77 68 69 63 68 2d 6b 65 ook.'pre-command-hook.#'which-ke
9820 79 2d 2d 68 69 64 65 2d 70 6f 70 75 70 29 0a 20 20 20 20 28 72 65 6d 6f 76 65 2d 68 6f 6f 6b 20 y--hide-popup).....(remove-hook.
9840 27 77 69 6e 64 6f 77 2d 73 69 7a 65 2d 63 68 61 6e 67 65 2d 66 75 6e 63 74 69 6f 6e 73 0a 20 20 'window-size-change-functions...
9860 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 27 77 68 69 63 68 2d 6b 65 79 2d 2d 68 69 64 65 ...............#'which-key--hide
9880 2d 70 6f 70 75 70 2d 6f 6e 2d 66 72 61 6d 65 2d 73 69 7a 65 2d 63 68 61 6e 67 65 29 0a 20 20 20 -popup-on-frame-size-change)....
98a0 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 73 74 6f 70 2d 74 69 6d 65 72 29 29 29 0a 0a 28 64 65 66 .(which-key--stop-timer)))..(def
98c0 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 69 6e 69 74 2d 62 75 66 66 65 72 20 28 29 0a 20 20 22 un.which-key--init-buffer.()..."
98e0 49 6e 69 74 69 61 6c 69 7a 65 20 77 68 69 63 68 2d 6b 65 79 20 62 75 66 66 65 72 2e 22 0a 20 20 Initialize.which-key.buffer."...
9900 28 75 6e 6c 65 73 73 20 28 62 75 66 66 65 72 2d 6c 69 76 65 2d 70 20 77 68 69 63 68 2d 6b 65 79 (unless.(buffer-live-p.which-key
9920 2d 2d 62 75 66 66 65 72 29 0a 20 20 20 20 28 73 65 74 71 20 77 68 69 63 68 2d 6b 65 79 2d 2d 62 --buffer).....(setq.which-key--b
9940 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 77 68 69 63 68 2d 6b uffer.(get-buffer-create.which-k
9960 65 79 2d 62 75 66 66 65 72 2d 6e 61 6d 65 29 29 0a 20 20 20 20 28 77 69 74 68 2d 63 75 72 72 65 ey-buffer-name)).....(with-curre
9980 6e 74 2d 62 75 66 66 65 72 20 77 68 69 63 68 2d 6b 65 79 2d 2d 62 75 66 66 65 72 0a 20 20 20 20 nt-buffer.which-key--buffer.....
99a0 20 20 3b 3b 20 73 75 70 70 72 65 73 73 20 63 6f 6e 66 75 73 69 6e 67 20 6d 69 6e 69 62 75 66 66 ..;;.suppress.confusing.minibuff
99c0 65 72 20 6d 65 73 73 61 67 65 0a 20 20 20 20 20 20 28 6c 65 74 20 28 6d 65 73 73 61 67 65 2d 6c er.message.......(let.(message-l
99e0 6f 67 2d 6d 61 78 29 0a 20 20 20 20 20 20 20 20 28 74 6f 67 67 6c 65 2d 74 72 75 6e 63 61 74 65 og-max).........(toggle-truncate
9a00 2d 6c 69 6e 65 73 20 31 29 0a 20 20 20 20 20 20 20 20 28 6d 65 73 73 61 67 65 20 22 22 29 29 0a -lines.1).........(message."")).
9a20 20 20 20 20 20 20 28 73 65 74 71 2d 6c 6f 63 61 6c 20 63 75 72 73 6f 72 2d 74 79 70 65 20 6e 69 ......(setq-local.cursor-type.ni
9a40 6c 29 0a 20 20 20 20 20 20 28 73 65 74 71 2d 6c 6f 63 61 6c 20 63 75 72 73 6f 72 2d 69 6e 2d 6e l).......(setq-local.cursor-in-n
9a60 6f 6e 2d 73 65 6c 65 63 74 65 64 2d 77 69 6e 64 6f 77 73 20 6e 69 6c 29 0a 20 20 20 20 20 20 28 on-selected-windows.nil).......(
9a80 73 65 74 71 2d 6c 6f 63 61 6c 20 6d 6f 64 65 2d 6c 69 6e 65 2d 66 6f 72 6d 61 74 20 6e 69 6c 29 setq-local.mode-line-format.nil)
9aa0 0a 20 20 20 20 20 20 28 73 65 74 71 2d 6c 6f 63 61 6c 20 68 65 61 64 65 72 2d 6c 69 6e 65 2d 66 .......(setq-local.header-line-f
9ac0 6f 72 6d 61 74 20 6e 69 6c 29 0a 20 20 20 20 20 20 28 73 65 74 71 2d 6c 6f 63 61 6c 20 77 6f 72 ormat.nil).......(setq-local.wor
9ae0 64 2d 77 72 61 70 20 6e 69 6c 29 0a 20 20 20 20 20 20 28 73 65 74 71 2d 6c 6f 63 61 6c 20 73 68 d-wrap.nil).......(setq-local.sh
9b00 6f 77 2d 74 72 61 69 6c 69 6e 67 2d 77 68 69 74 65 73 70 61 63 65 20 6e 69 6c 29 0a 20 20 20 20 ow-trailing-whitespace.nil).....
9b20 20 20 28 72 75 6e 2d 68 6f 6f 6b 73 20 27 77 68 69 63 68 2d 6b 65 79 2d 69 6e 69 74 2d 62 75 66 ..(run-hooks.'which-key-init-buf
9b40 66 65 72 2d 68 6f 6f 6b 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d fer-hook))))..(defun.which-key--
9b60 73 65 74 75 70 2d 65 63 68 6f 2d 6b 65 79 73 74 72 6f 6b 65 73 20 28 29 0a 20 20 22 52 65 64 75 setup-echo-keystrokes.()..."Redu
9b80 63 65 20 60 65 63 68 6f 2d 6b 65 79 73 74 72 6f 6b 65 73 27 20 69 66 20 6e 65 63 65 73 73 61 72 ce.`echo-keystrokes'.if.necessar
9ba0 79 2e 0a 49 74 20 77 69 6c 6c 20 69 6e 74 65 72 66 65 72 65 20 69 66 20 73 65 74 20 74 6f 6f 20 y..It.will.interfere.if.set.too.
9bc0 68 69 67 68 2e 22 0a 20 20 28 77 68 65 6e 20 28 61 6e 64 20 65 63 68 6f 2d 6b 65 79 73 74 72 6f high."...(when.(and.echo-keystro
9be0 6b 65 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 3e 20 28 61 62 73 20 28 2d 20 65 63 68 6f kes..............(>.(abs.(-.echo
9c00 2d 6b 65 79 73 74 72 6f 6b 65 73 20 77 68 69 63 68 2d 6b 65 79 2d 65 63 68 6f 2d 6b 65 79 73 74 -keystrokes.which-key-echo-keyst
9c20 72 6f 6b 65 73 29 29 20 30 2e 30 30 30 30 30 31 29 29 0a 20 20 20 20 28 69 66 20 28 3e 20 77 68 rokes)).0.000001)).....(if.(>.wh
9c40 69 63 68 2d 6b 65 79 2d 69 64 6c 65 2d 64 65 6c 61 79 20 77 68 69 63 68 2d 6b 65 79 2d 65 63 68 ich-key-idle-delay.which-key-ech
9c60 6f 2d 6b 65 79 73 74 72 6f 6b 65 73 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 71 20 65 63 68 6f o-keystrokes).........(setq.echo
9c80 2d 6b 65 79 73 74 72 6f 6b 65 73 20 77 68 69 63 68 2d 6b 65 79 2d 65 63 68 6f 2d 6b 65 79 73 74 -keystrokes.which-key-echo-keyst
9ca0 72 6f 6b 65 73 29 0a 20 20 20 20 20 20 28 73 65 74 71 20 77 68 69 63 68 2d 6b 65 79 2d 65 63 68 rokes).......(setq.which-key-ech
9cc0 6f 2d 6b 65 79 73 74 72 6f 6b 65 73 20 28 2f 20 28 66 6c 6f 61 74 20 77 68 69 63 68 2d 6b 65 79 o-keystrokes.(/.(float.which-key
9ce0 2d 69 64 6c 65 2d 64 65 6c 61 79 29 20 34 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 65 63 68 6f -idle-delay).4).............echo
9d00 2d 6b 65 79 73 74 72 6f 6b 65 73 20 77 68 69 63 68 2d 6b 65 79 2d 65 63 68 6f 2d 6b 65 79 73 74 -keystrokes.which-key-echo-keyst
9d20 72 6f 6b 65 73 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 72 65 6d 6f rokes))))..(defun.which-key-remo
9d40 76 65 2d 64 65 66 61 75 6c 74 2d 75 6e 69 63 6f 64 65 2d 63 68 61 72 73 20 28 29 0a 20 20 22 52 ve-default-unicode-chars.()..."R
9d60 65 6d 6f 76 65 20 64 65 66 61 75 6c 74 20 75 6e 69 63 6f 64 65 20 63 68 61 72 73 20 66 72 6f 6d emove.default.unicode.chars.from
9d80 20 73 65 74 74 69 6e 67 73 2e 0a 55 73 65 20 6f 66 20 60 77 68 69 63 68 2d 6b 65 79 2d 64 6f 6e .settings..Use.of.`which-key-don
9da0 74 2d 75 73 65 2d 75 6e 69 63 6f 64 65 27 20 69 73 20 70 72 65 66 65 72 72 65 64 20 74 6f 20 74 t-use-unicode'.is.preferred.to.t
9dc0 68 69 73 0a 66 75 6e 63 74 69 6f 6e 2c 20 62 75 74 20 69 74 27 73 20 69 6e 63 6c 75 64 65 64 20 his.function,.but.it's.included.
9de0 68 65 72 65 20 69 6e 20 63 61 73 65 20 73 6f 6d 65 6f 6e 65 20 63 61 6e 6e 6f 74 20 73 65 74 20 here.in.case.someone.cannot.set.
9e00 74 68 61 74 0a 76 61 72 69 61 62 6c 65 20 65 61 72 6c 79 20 65 6e 6f 75 67 68 20 69 6e 20 74 68 that.variable.early.enough.in.th
9e20 65 69 72 20 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 2c 20 69 66 20 74 68 65 79 20 61 72 65 20 75 eir.configuration,.if.they.are.u
9e40 73 69 6e 67 20 61 0a 73 74 61 72 74 65 72 20 6b 69 74 20 66 6f 72 20 65 78 61 6d 70 6c 65 2e 22 sing.a.starter.kit.for.example."
9e60 0a 20 20 28 77 68 65 6e 20 28 73 74 72 69 6e 67 2d 65 71 75 61 6c 20 77 68 69 63 68 2d 6b 65 79 ...(when.(string-equal.which-key
9e80 2d 73 65 70 61 72 61 74 6f 72 20 22 20 e2 86 92 20 22 29 0a 20 20 20 20 28 73 65 74 71 20 77 68 -separator.".....").....(setq.wh
9ea0 69 63 68 2d 6b 65 79 2d 73 65 70 61 72 61 74 6f 72 20 22 20 3a 20 22 29 29 29 0a 0a 3b 3b 3b 20 ich-key-separator.".:.")))..;;;.
9ec0 44 65 66 61 75 6c 74 20 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20 66 75 6e 63 74 69 6f 6e 73 20 Default.configuration.functions.
9ee0 66 6f 72 20 75 73 65 20 62 79 20 75 73 65 72 73 2e 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 for.use.by.users...;;;###autoloa
9f00 64 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 73 65 74 75 70 2d 73 69 64 65 2d 77 69 d.(defun.which-key-setup-side-wi
9f20 6e 64 6f 77 2d 72 69 67 68 74 20 28 29 0a 20 20 22 53 65 74 20 75 70 20 73 69 64 65 2d 77 69 6e ndow-right.()..."Set.up.side-win
9f40 64 6f 77 20 6f 6e 20 72 69 67 68 74 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 dow.on.right."...(interactive)..
9f60 20 28 73 65 74 71 20 77 68 69 63 68 2d 6b 65 79 2d 70 6f 70 75 70 2d 74 79 70 65 20 27 73 69 64 .(setq.which-key-popup-type.'sid
9f80 65 2d 77 69 6e 64 6f 77 0a 20 20 20 20 20 20 20 20 77 68 69 63 68 2d 6b 65 79 2d 73 69 64 65 2d e-window.........which-key-side-
9fa0 77 69 6e 64 6f 77 2d 6c 6f 63 61 74 69 6f 6e 20 27 72 69 67 68 74 0a 20 20 20 20 20 20 20 20 77 window-location.'right.........w
9fc0 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d 70 72 65 66 69 78 20 27 74 6f 70 29 29 0a 0a 3b 3b 3b hich-key-show-prefix.'top))..;;;
9fe0 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 73 65 74 ###autoload.(defun.which-key-set
a000 75 70 2d 73 69 64 65 2d 77 69 6e 64 6f 77 2d 72 69 67 68 74 2d 62 6f 74 74 6f 6d 20 28 29 0a 20 up-side-window-right-bottom.()..
a020 20 22 53 65 74 20 75 70 20 73 69 64 65 2d 77 69 6e 64 6f 77 20 6f 6e 20 72 69 67 68 74 20 69 66 ."Set.up.side-window.on.right.if
a040 20 73 70 61 63 65 20 61 6c 6c 6f 77 73 2e 0a 4f 74 68 65 72 77 69 73 65 2c 20 75 73 65 20 62 6f .space.allows..Otherwise,.use.bo
a060 74 74 6f 6d 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20 28 73 65 74 71 20 77 ttom."...(interactive)...(setq.w
a080 68 69 63 68 2d 6b 65 79 2d 70 6f 70 75 70 2d 74 79 70 65 20 27 73 69 64 65 2d 77 69 6e 64 6f 77 hich-key-popup-type.'side-window
a0a0 0a 20 20 20 20 20 20 20 20 77 68 69 63 68 2d 6b 65 79 2d 73 69 64 65 2d 77 69 6e 64 6f 77 2d 6c .........which-key-side-window-l
a0c0 6f 63 61 74 69 6f 6e 20 27 28 72 69 67 68 74 20 62 6f 74 74 6f 6d 29 0a 20 20 20 20 20 20 20 20 ocation.'(right.bottom).........
a0e0 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d 70 72 65 66 69 78 20 27 74 6f 70 29 29 0a 0a 3b 3b which-key-show-prefix.'top))..;;
a100 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 73 65 ;###autoload.(defun.which-key-se
a120 74 75 70 2d 73 69 64 65 2d 77 69 6e 64 6f 77 2d 62 6f 74 74 6f 6d 20 28 29 0a 20 20 22 53 65 74 tup-side-window-bottom.()..."Set
a140 20 75 70 20 73 69 64 65 2d 77 69 6e 64 6f 77 20 74 68 61 74 20 6f 70 65 6e 73 20 6f 6e 20 62 6f .up.side-window.that.opens.on.bo
a160 74 74 6f 6d 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20 28 77 68 69 63 68 2d ttom."...(interactive)...(which-
a180 6b 65 79 2d 2d 73 65 74 75 70 2d 65 63 68 6f 2d 6b 65 79 73 74 72 6f 6b 65 73 29 0a 20 20 28 73 key--setup-echo-keystrokes)...(s
a1a0 65 74 71 20 77 68 69 63 68 2d 6b 65 79 2d 70 6f 70 75 70 2d 74 79 70 65 20 27 73 69 64 65 2d 77 etq.which-key-popup-type.'side-w
a1c0 69 6e 64 6f 77 0a 20 20 20 20 20 20 20 20 77 68 69 63 68 2d 6b 65 79 2d 73 69 64 65 2d 77 69 6e indow.........which-key-side-win
a1e0 64 6f 77 2d 6c 6f 63 61 74 69 6f 6e 20 27 62 6f 74 74 6f 6d 0a 20 20 20 20 20 20 20 20 77 68 69 dow-location.'bottom.........whi
a200 63 68 2d 6b 65 79 2d 73 68 6f 77 2d 70 72 65 66 69 78 20 27 65 63 68 6f 29 29 0a 0a 3b 3b 3b 23 ch-key-show-prefix.'echo))..;;;#
a220 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 73 65 74 75 ##autoload.(defun.which-key-setu
a240 70 2d 6d 69 6e 69 62 75 66 66 65 72 20 28 29 0a 20 20 22 53 65 74 20 75 70 20 6d 69 6e 69 62 75 p-minibuffer.()..."Set.up.minibu
a260 66 66 65 72 20 64 69 73 70 6c 61 79 2e 0a 44 6f 20 6e 6f 74 20 75 73 65 20 74 68 69 73 20 73 65 ffer.display..Do.not.use.this.se
a280 74 75 70 20 69 66 20 79 6f 75 20 75 73 65 20 74 68 65 20 70 61 67 69 6e 67 20 63 6f 6d 6d 61 6e tup.if.you.use.the.paging.comman
a2a0 64 73 2e 20 20 49 6e 73 74 65 61 64 20 75 73 65 0a 60 77 68 69 63 68 2d 6b 65 79 2d 73 65 74 75 ds...Instead.use.`which-key-setu
a2c0 70 2d 73 69 64 65 2d 77 69 6e 64 6f 77 2d 62 6f 74 74 6f 6d 27 2c 20 77 68 69 63 68 20 69 73 20 p-side-window-bottom',.which.is.
a2e0 6e 65 61 72 6c 79 20 69 64 65 6e 74 69 63 61 6c 0a 62 75 74 20 6d 6f 72 65 20 66 75 6e 63 74 69 nearly.identical.but.more.functi
a300 6f 6e 61 6c 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20 28 77 68 69 63 68 2d onal."...(interactive)...(which-
a320 6b 65 79 2d 2d 73 65 74 75 70 2d 65 63 68 6f 2d 6b 65 79 73 74 72 6f 6b 65 73 29 0a 20 20 28 73 key--setup-echo-keystrokes)...(s
a340 65 74 71 20 77 68 69 63 68 2d 6b 65 79 2d 70 6f 70 75 70 2d 74 79 70 65 20 27 6d 69 6e 69 62 75 etq.which-key-popup-type.'minibu
a360 66 66 65 72 0a 20 20 20 20 20 20 20 20 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d 70 72 65 66 ffer.........which-key-show-pref
a380 69 78 20 27 6c 65 66 74 29 29 0a 0a 3b 3b 3b 20 48 65 6c 70 65 72 20 66 75 6e 63 74 69 6f 6e 73 ix.'left))..;;;.Helper.functions
a3a0 20 74 6f 20 6d 6f 64 69 66 79 20 72 65 70 6c 61 63 65 6d 65 6e 74 20 6c 69 73 74 73 2e 0a 0a 3b .to.modify.replacement.lists...;
a3c0 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 61 ;;###autoload.(defun.which-key-a
a3e0 64 64 2d 6b 65 79 6d 61 70 2d 62 61 73 65 64 2d 72 65 70 6c 61 63 65 6d 65 6e 74 73 20 28 6b 65 dd-keymap-based-replacements.(ke
a400 79 6d 61 70 20 6b 65 79 20 72 65 70 6c 61 63 65 6d 65 6e 74 20 26 72 65 73 74 20 6d 6f 72 65 29 ymap.key.replacement.&rest.more)
a420 0a 20 20 22 52 65 70 6c 61 63 65 20 74 68 65 20 64 65 73 63 72 69 70 74 69 6f 6e 20 6f 66 20 4b ..."Replace.the.description.of.K
a440 45 59 20 75 73 69 6e 67 20 52 45 50 4c 41 43 45 4d 45 4e 54 20 69 6e 20 4b 45 59 4d 41 50 2e 0a EY.using.REPLACEMENT.in.KEYMAP..
a460 4b 45 59 20 73 68 6f 75 6c 64 20 74 61 6b 65 20 61 20 66 6f 72 6d 61 74 20 73 75 69 74 61 62 6c KEY.should.take.a.format.suitabl
a480 65 20 66 6f 72 20 75 73 65 20 69 6e 20 60 6b 62 64 27 2e 20 20 52 45 50 4c 41 43 45 4d 45 4e 54 e.for.use.in.`kbd'...REPLACEMENT
a4a0 0a 73 68 6f 75 6c 64 20 62 65 20 61 20 63 6f 6e 73 20 63 65 6c 6c 20 6f 66 20 74 68 65 20 66 6f .should.be.a.cons.cell.of.the.fo
a4c0 72 6d 20 5c 28 53 54 52 49 4e 47 20 2e 20 43 4f 4d 4d 41 4e 44 5c 29 20 66 6f 72 20 65 61 63 68 rm.\(STRING...COMMAND\).for.each
a4e0 0a 52 45 50 4c 41 43 45 4d 45 4e 54 2c 20 77 68 65 72 65 20 53 54 52 49 4e 47 20 69 73 20 74 68 .REPLACEMENT,.where.STRING.is.th
a500 65 20 72 65 70 6c 61 63 65 6d 65 6e 74 20 73 74 72 69 6e 67 20 61 6e 64 20 43 4f 4d 4d 41 4e 44 e.replacement.string.and.COMMAND
a520 0a 69 73 20 61 20 73 79 6d 62 6f 6c 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 74 6f 20 74 68 .is.a.symbol.corresponding.to.th
a540 65 20 69 6e 74 65 6e 64 65 64 20 63 6f 6d 6d 61 6e 64 20 74 6f 20 62 65 0a 72 65 70 6c 61 63 65 e.intended.command.to.be.replace
a560 64 2e 20 20 43 4f 4d 4d 41 4e 44 20 63 61 6e 20 62 65 20 6e 69 6c 20 69 66 20 74 68 65 20 62 69 d...COMMAND.can.be.nil.if.the.bi
a580 6e 64 69 6e 67 20 63 6f 72 72 65 73 70 6f 6e 64 73 20 74 6f 20 61 20 6b 65 79 0a 70 72 65 66 69 nding.corresponds.to.a.key.prefi
a5a0 78 2e 20 20 41 6e 20 65 78 61 6d 70 6c 65 20 69 73 0a 0a 5c 28 77 68 69 63 68 2d 6b 65 79 2d 61 x...An.example.is..\(which-key-a
a5c0 64 64 2d 6b 65 79 6d 61 70 2d 62 61 73 65 64 2d 72 65 70 6c 61 63 65 6d 65 6e 74 73 20 67 6c 6f dd-keymap-based-replacements.glo
a5e0 62 61 6c 2d 6d 61 70 0a 20 20 5c 22 43 2d 78 20 77 5c 22 20 5c 5c 3d 27 5c 28 5c 22 53 61 76 65 bal-map...\"C-x.w\".\\='\(\"Save
a600 20 61 73 5c 22 20 2e 20 77 72 69 74 65 2d 66 69 6c 65 5c 29 5c 29 2e 0a 0a 46 6f 72 20 62 61 63 .as\"...write-file\)\)...For.bac
a620 6b 77 61 72 64 73 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79 2c 20 52 45 50 4c 41 43 45 4d 45 4e kwards.compatibility,.REPLACEMEN
a640 54 20 63 61 6e 20 61 6c 73 6f 20 62 65 20 61 20 73 74 72 69 6e 67 2c 0a 62 75 74 20 74 68 65 20 T.can.also.be.a.string,.but.the.
a660 61 62 6f 76 65 20 66 6f 72 6d 61 74 20 69 73 20 70 72 65 66 65 72 72 65 64 2c 20 61 6e 64 20 74 above.format.is.preferred,.and.t
a680 68 65 20 6f 70 74 69 6f 6e 20 74 6f 20 75 73 65 20 61 20 73 74 72 69 6e 67 0a 66 6f 72 20 52 45 he.option.to.use.a.string.for.RE
a6a0 50 4c 41 43 45 4d 45 4e 54 20 77 69 6c 6c 20 65 76 65 6e 74 75 61 6c 6c 79 20 62 65 20 72 65 6d PLACEMENT.will.eventually.be.rem
a6c0 6f 76 65 64 2e 22 0a 20 20 28 64 65 63 6c 61 72 65 20 28 69 6e 64 65 6e 74 20 64 65 66 75 6e 29 oved."...(declare.(indent.defun)
a6e0 29 0a 20 20 28 77 68 69 6c 65 20 6b 65 79 0a 20 20 20 20 28 6c 65 74 20 28 28 64 65 66 0a 20 20 )...(while.key.....(let.((def...
a700 20 20 20 20 20 20 20 20 20 28 63 6f 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 28 63 6f 6e .........(cond.............((con
a720 73 70 20 72 65 70 6c 61 63 65 6d 65 6e 74 29 20 72 65 70 6c 61 63 65 6d 65 6e 74 29 0a 20 20 20 sp.replacement).replacement)....
a740 20 20 20 20 20 20 20 20 20 28 28 73 74 72 69 6e 67 70 20 72 65 70 6c 61 63 65 6d 65 6e 74 29 0a .........((stringp.replacement).
a760 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 20 72 65 70 6c 61 63 65 6d 65 6e 74 0a 20 .............(cons.replacement..
a780 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 20 28 77 68 69 63 68 2d 6b 65 79 ..................(or.(which-key
a7a0 2d 2d 73 61 66 65 2d 6c 6f 6f 6b 75 70 2d 6b 65 79 2d 64 65 73 63 72 69 70 74 69 6f 6e 20 6b 65 --safe-lookup-key-description.ke
a7c0 79 6d 61 70 20 6b 65 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 ymap.key).......................
a7e0 20 28 6d 61 6b 65 2d 73 70 61 72 73 65 2d 6b 65 79 6d 61 70 29 29 29 29 0a 20 20 20 20 20 20 20 .(make-sparse-keymap))))........
a800 20 20 20 20 20 28 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 75 73 65 72 2d 65 72 72 6f 72 .....(t..............(user-error
a820 20 22 52 65 70 6c 61 63 65 6d 65 6e 74 20 69 73 20 6e 65 69 74 68 65 72 20 61 20 63 6f 6e 73 20 ."Replacement.is.neither.a.cons.
a840 63 65 6c 6c 20 6f 72 20 61 20 73 74 72 69 6e 67 22 29 29 29 29 29 0a 20 20 20 20 20 20 28 64 65 cell.or.a.string"))))).......(de
a860 66 69 6e 65 2d 6b 65 79 20 6b 65 79 6d 61 70 20 28 6b 62 64 20 6b 65 79 29 20 64 65 66 29 29 0a fine-key.keymap.(kbd.key).def)).
a880 20 20 20 20 28 73 65 74 71 20 6b 65 79 20 28 70 6f 70 20 6d 6f 72 65 29 0a 20 20 20 20 20 20 20 ....(setq.key.(pop.more)........
a8a0 20 20 20 72 65 70 6c 61 63 65 6d 65 6e 74 20 28 70 6f 70 20 6d 6f 72 65 29 29 29 29 0a 0a 3b 3b ...replacement.(pop.more))))..;;
a8c0 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 61 64 ;###autoload.(defun.which-key-ad
a8e0 64 2d 6b 65 79 2d 62 61 73 65 64 2d 72 65 70 6c 61 63 65 6d 65 6e 74 73 0a 20 20 20 20 28 6b 65 d-key-based-replacements.....(ke
a900 79 2d 73 65 71 75 65 6e 63 65 20 72 65 70 6c 61 63 65 6d 65 6e 74 20 26 72 65 73 74 20 6d 6f 72 y-sequence.replacement.&rest.mor
a920 65 29 0a 20 20 22 52 65 70 6c 61 63 65 20 74 68 65 20 64 65 73 63 72 69 70 74 69 6f 6e 20 6f 66 e)..."Replace.the.description.of
a940 20 4b 45 59 2d 53 45 51 55 45 4e 43 45 20 77 69 74 68 20 52 45 50 4c 41 43 45 4d 45 4e 54 2e 0a .KEY-SEQUENCE.with.REPLACEMENT..
a960 4b 45 59 2d 53 45 51 55 45 4e 43 45 20 69 73 20 61 20 73 74 72 69 6e 67 20 73 75 69 74 61 62 6c KEY-SEQUENCE.is.a.string.suitabl
a980 65 20 66 6f 72 20 75 73 65 20 69 6e 20 60 6b 62 64 27 2e 0a 52 45 50 4c 41 43 45 4d 45 4e 54 20 e.for.use.in.`kbd'..REPLACEMENT.
a9a0 6d 61 79 20 65 69 74 68 65 72 20 62 65 20 61 20 73 74 72 69 6e 67 2c 20 61 73 20 69 6e 0a 0a 5c may.either.be.a.string,.as.in..\
a9c0 28 77 68 69 63 68 2d 6b 65 79 2d 61 64 64 2d 6b 65 79 2d 62 61 73 65 64 2d 72 65 70 6c 61 63 65 (which-key-add-key-based-replace
a9e0 6d 65 6e 74 73 20 5c 22 43 2d 78 20 31 5c 22 20 5c 22 6d 61 78 69 6d 69 7a 65 5c 22 5c 29 0a 0a ments.\"C-x.1\".\"maximize\"\)..
aa00 61 20 63 6f 6e 73 20 6f 66 20 74 77 6f 20 73 74 72 69 6e 67 73 20 61 73 20 69 6e 0a 0a 5c 28 77 a.cons.of.two.strings.as.in..\(w
aa20 68 69 63 68 2d 6b 65 79 2d 61 64 64 2d 6b 65 79 2d 62 61 73 65 64 2d 72 65 70 6c 61 63 65 6d 65 hich-key-add-key-based-replaceme
aa40 6e 74 73 20 5c 22 43 2d 78 20 38 5c 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nts.\"C-x.8\"...................
aa60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 5c 5c 3d 27 28 5c 22 75 6e 69 ......................\\='(\"uni
aa80 63 6f 64 65 5c 22 20 2e 20 5c 22 55 6e 69 63 6f 64 65 20 6b 65 79 73 5c 22 29 5c 29 0a 0a 6f 72 code\"...\"Unicode.keys\")\)..or
aaa0 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 68 61 74 20 74 61 6b 65 73 20 61 20 5c 28 4b 45 59 20 2e .a.function.that.takes.a.\(KEY..
aac0 20 42 49 4e 44 49 4e 47 5c 29 20 63 6f 6e 73 20 61 6e 64 20 72 65 74 75 72 6e 73 20 61 0a 72 65 .BINDING\).cons.and.returns.a.re
aae0 70 6c 61 63 65 6d 65 6e 74 2e 0a 0a 49 6e 20 74 68 65 20 73 65 63 6f 6e 64 20 63 61 73 65 2c 20 placement...In.the.second.case,.
ab00 74 68 65 20 73 65 63 6f 6e 64 20 73 74 72 69 6e 67 20 69 73 20 75 73 65 64 20 74 6f 20 70 72 6f the.second.string.is.used.to.pro
ab20 76 69 64 65 20 61 20 6c 6f 6e 67 65 72 0a 6e 61 6d 65 20 66 6f 72 20 74 68 65 20 6b 65 79 73 20 vide.a.longer.name.for.the.keys.
ab40 75 6e 64 65 72 20 61 20 70 72 65 66 69 78 2e 0a 0a 4d 4f 52 45 20 61 6c 6c 6f 77 73 20 79 6f 75 under.a.prefix...MORE.allows.you
ab60 20 74 6f 20 73 70 65 63 69 66 79 20 61 64 64 69 74 69 6f 6e 61 6c 20 4b 45 59 20 52 45 50 4c 41 .to.specify.additional.KEY.REPLA
ab80 43 45 4d 45 4e 54 20 70 61 69 72 73 2e 20 20 41 6c 6c 0a 72 65 70 6c 61 63 65 6d 65 6e 74 73 20 CEMENT.pairs...All.replacements.
aba0 61 72 65 20 61 64 64 65 64 20 74 6f 20 60 77 68 69 63 68 2d 6b 65 79 2d 72 65 70 6c 61 63 65 6d are.added.to.`which-key-replacem
abc0 65 6e 74 2d 61 6c 69 73 74 27 2e 22 0a 20 20 3b 3b 20 54 4f 44 4f 3a 20 4d 61 6b 65 20 69 6e 74 ent-alist'."...;;.TODO:.Make.int
abe0 65 72 61 63 74 69 76 65 0a 20 20 28 77 68 69 6c 65 20 6b 65 79 2d 73 65 71 75 65 6e 63 65 0a 20 eractive...(while.key-sequence..
ac00 20 20 20 3b 3b 20 6e 6f 72 6d 61 6c 69 7a 65 20 6b 65 79 20 73 65 71 75 65 6e 63 65 73 20 62 65 ...;;.normalize.key.sequences.be
ac20 66 6f 72 65 20 61 64 64 69 6e 67 0a 20 20 20 20 28 6c 65 74 20 28 28 6b 65 79 2d 73 65 71 20 28 fore.adding.....(let.((key-seq.(
ac40 6b 65 79 2d 64 65 73 63 72 69 70 74 69 6f 6e 20 28 6b 62 64 20 6b 65 79 2d 73 65 71 75 65 6e 63 key-description.(kbd.key-sequenc
ac60 65 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 72 65 70 6c 61 63 65 20 28 6f 72 20 28 61 6e 64 e)))...........(replace.(or.(and
ac80 20 28 66 75 6e 63 74 69 6f 6e 70 20 72 65 70 6c 61 63 65 6d 65 6e 74 29 20 72 65 70 6c 61 63 65 .(functionp.replacement).replace
aca0 6d 65 6e 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 61 ment)........................(ca
acc0 72 2d 73 61 66 65 20 72 65 70 6c 61 63 65 6d 65 6e 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 r-safe.replacement).............
ace0 20 20 20 20 20 20 20 20 20 20 20 72 65 70 6c 61 63 65 6d 65 6e 74 29 29 29 0a 20 20 20 20 20 20 ...........replacement))).......
ad00 28 70 75 73 68 20 28 63 6f 6e 73 20 28 63 6f 6e 73 20 28 63 6f 6e 63 61 74 20 22 5c 5c 60 22 20 (push.(cons.(cons.(concat."\\`".
ad20 28 72 65 67 65 78 70 2d 71 75 6f 74 65 20 6b 65 79 2d 73 65 71 29 20 22 5c 5c 27 22 29 20 6e 69 (regexp-quote.key-seq)."\\'").ni
ad40 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 66 75 6e 63 74 69 l)...................(if.(functi
ad60 6f 6e 70 20 72 65 70 6c 61 63 65 29 20 72 65 70 6c 61 63 65 20 28 63 6f 6e 73 20 6e 69 6c 20 72 onp.replace).replace.(cons.nil.r
ad80 65 70 6c 61 63 65 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 77 68 69 63 68 2d 6b 65 79 2d eplace))).............which-key-
ada0 72 65 70 6c 61 63 65 6d 65 6e 74 2d 61 6c 69 73 74 29 0a 20 20 20 20 20 20 28 77 68 65 6e 20 28 replacement-alist).......(when.(
adc0 61 6e 64 20 28 6e 6f 74 20 28 66 75 6e 63 74 69 6f 6e 70 20 72 65 70 6c 61 63 65 6d 65 6e 74 29 and.(not.(functionp.replacement)
ade0 29 20 28 63 6f 6e 73 70 20 72 65 70 6c 61 63 65 6d 65 6e 74 29 29 0a 20 20 20 20 20 20 20 20 28 ).(consp.replacement)).........(
ae00 70 75 73 68 20 28 63 6f 6e 73 20 6b 65 79 2d 73 65 71 20 28 63 64 72 2d 73 61 66 65 20 72 65 70 push.(cons.key-seq.(cdr-safe.rep
ae20 6c 61 63 65 6d 65 6e 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 77 68 69 63 68 2d 6b lacement))...............which-k
ae40 65 79 2d 2d 70 72 65 66 69 78 2d 74 69 74 6c 65 2d 61 6c 69 73 74 29 29 29 0a 20 20 20 20 28 73 ey--prefix-title-alist))).....(s
ae60 65 74 71 20 6b 65 79 2d 73 65 71 75 65 6e 63 65 20 28 70 6f 70 20 6d 6f 72 65 29 20 72 65 70 6c etq.key-sequence.(pop.more).repl
ae80 61 63 65 6d 65 6e 74 20 28 70 6f 70 20 6d 6f 72 65 29 29 29 29 0a 28 70 75 74 20 27 77 68 69 63 acement.(pop.more)))).(put.'whic
aea0 68 2d 6b 65 79 2d 61 64 64 2d 6b 65 79 2d 62 61 73 65 64 2d 72 65 70 6c 61 63 65 6d 65 6e 74 73 h-key-add-key-based-replacements
aec0 20 27 6c 69 73 70 2d 69 6e 64 65 6e 74 2d 66 75 6e 63 74 69 6f 6e 20 27 64 65 66 75 6e 29 0a 0a .'lisp-indent-function.'defun)..
aee0 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d ;;;###autoload.(defun.which-key-
af00 61 64 64 2d 6d 61 6a 6f 72 2d 6d 6f 64 65 2d 6b 65 79 2d 62 61 73 65 64 2d 72 65 70 6c 61 63 65 add-major-mode-key-based-replace
af20 6d 65 6e 74 73 0a 20 20 20 20 28 6d 6f 64 65 20 6b 65 79 2d 73 65 71 75 65 6e 63 65 20 72 65 70 ments.....(mode.key-sequence.rep
af40 6c 61 63 65 6d 65 6e 74 20 26 72 65 73 74 20 6d 6f 72 65 29 0a 20 20 22 46 75 6e 63 74 69 6f 6e lacement.&rest.more)..."Function
af60 73 20 6c 69 6b 65 20 60 77 68 69 63 68 2d 6b 65 79 2d 61 64 64 2d 6b 65 79 2d 62 61 73 65 64 2d s.like.`which-key-add-key-based-
af80 72 65 70 6c 61 63 65 6d 65 6e 74 73 27 2e 0a 54 68 65 20 64 69 66 66 65 72 65 6e 63 65 20 69 73 replacements'..The.difference.is
afa0 20 74 68 61 74 20 4d 4f 44 45 20 73 70 65 63 69 66 69 65 73 20 74 68 65 20 60 6d 61 6a 6f 72 2d .that.MODE.specifies.the.`major-
afc0 6d 6f 64 65 27 20 74 68 61 74 20 6d 75 73 74 0a 62 65 20 61 63 74 69 76 65 20 66 6f 72 20 4b 45 mode'.that.must.be.active.for.KE
afe0 59 2d 53 45 51 55 45 4e 43 45 20 61 6e 64 20 52 45 50 4c 41 43 45 4d 45 4e 54 20 28 4d 4f 52 45 Y-SEQUENCE.and.REPLACEMENT.(MORE
b000 20 63 6f 6e 74 61 69 6e 73 0a 61 64 64 69 74 69 6f 6e 20 4b 45 59 2d 53 45 51 55 45 4e 43 45 20 .contains.addition.KEY-SEQUENCE.
b020 52 45 50 4c 41 43 45 4d 45 4e 54 20 70 61 69 72 73 29 20 74 6f 20 61 70 70 6c 79 2e 22 0a 20 20 REPLACEMENT.pairs).to.apply."...
b040 28 64 65 63 6c 61 72 65 20 28 69 6e 64 65 6e 74 20 64 65 66 75 6e 29 29 0a 20 20 3b 3b 20 54 4f (declare.(indent.defun))...;;.TO
b060 44 4f 3a 20 4d 61 6b 65 20 69 6e 74 65 72 61 63 74 69 76 65 0a 20 20 28 77 68 65 6e 20 28 6e 6f DO:.Make.interactive...(when.(no
b080 74 20 28 73 79 6d 62 6f 6c 70 20 6d 6f 64 65 29 29 0a 20 20 20 20 28 65 72 72 6f 72 20 22 60 25 t.(symbolp.mode)).....(error."`%
b0a0 53 27 20 73 68 6f 75 6c 64 20 62 65 20 61 20 73 79 6d 62 6f 6c 20 63 6f 72 72 65 73 70 6f 6e 64 S'.should.be.a.symbol.correspond
b0c0 69 6e 67 20 74 6f 20 61 20 76 61 6c 75 65 20 6f 66 20 6d 61 6a 6f 72 2d 6d 6f 64 65 22 20 6d 6f ing.to.a.value.of.major-mode".mo
b0e0 64 65 29 29 0a 20 20 28 6c 65 74 20 28 28 6d 6f 64 65 2d 61 6c 69 73 74 0a 20 20 20 20 20 20 20 de))...(let.((mode-alist........
b100 20 20 28 6f 72 20 28 63 64 72 2d 73 61 66 65 20 28 61 73 73 71 20 6d 6f 64 65 20 77 68 69 63 68 ..(or.(cdr-safe.(assq.mode.which
b120 2d 6b 65 79 2d 72 65 70 6c 61 63 65 6d 65 6e 74 2d 61 6c 69 73 74 29 29 20 28 6c 69 73 74 29 29 -key-replacement-alist)).(list))
b140 29 0a 20 20 20 20 20 20 20 20 28 74 69 74 6c 65 2d 6d 6f 64 65 2d 61 6c 69 73 74 0a 20 20 20 20 ).........(title-mode-alist.....
b160 20 20 20 20 20 28 6f 72 20 28 63 64 72 2d 73 61 66 65 20 28 61 73 73 71 20 6d 6f 64 65 20 77 68 .....(or.(cdr-safe.(assq.mode.wh
b180 69 63 68 2d 6b 65 79 2d 2d 70 72 65 66 69 78 2d 74 69 74 6c 65 2d 61 6c 69 73 74 29 29 20 28 6c ich-key--prefix-title-alist)).(l
b1a0 69 73 74 29 29 29 29 0a 20 20 20 20 28 77 68 69 6c 65 20 6b 65 79 2d 73 65 71 75 65 6e 63 65 0a ist)))).....(while.key-sequence.
b1c0 20 20 20 20 20 20 3b 3b 20 6e 6f 72 6d 61 6c 69 7a 65 20 6b 65 79 20 73 65 71 75 65 6e 63 65 73 ......;;.normalize.key.sequences
b1e0 20 62 65 66 6f 72 65 20 61 64 64 69 6e 67 0a 20 20 20 20 20 20 28 6c 65 74 20 28 28 6b 65 79 2d .before.adding.......(let.((key-
b200 73 65 71 20 28 6b 65 79 2d 64 65 73 63 72 69 70 74 69 6f 6e 20 28 6b 62 64 20 6b 65 79 2d 73 65 seq.(key-description.(kbd.key-se
b220 71 75 65 6e 63 65 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 72 65 70 6c 61 63 65 20 28 quence))).............(replace.(
b240 6f 72 20 28 61 6e 64 20 28 66 75 6e 63 74 69 6f 6e 70 20 72 65 70 6c 61 63 65 6d 65 6e 74 29 20 or.(and.(functionp.replacement).
b260 72 65 70 6c 61 63 65 6d 65 6e 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 replacement)....................
b280 20 20 20 20 20 20 28 63 61 72 2d 73 61 66 65 20 72 65 70 6c 61 63 65 6d 65 6e 74 29 0a 20 20 20 ......(car-safe.replacement)....
b2a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 70 6c 61 63 65 6d 65 6e ......................replacemen
b2c0 74 29 29 29 0a 20 20 20 20 20 20 20 20 28 70 75 73 68 20 28 63 6f 6e 73 20 28 63 6f 6e 73 20 28 t))).........(push.(cons.(cons.(
b2e0 63 6f 6e 63 61 74 20 22 5c 5c 60 22 20 28 72 65 67 65 78 70 2d 71 75 6f 74 65 20 6b 65 79 2d 73 concat."\\`".(regexp-quote.key-s
b300 65 71 29 20 22 5c 5c 27 22 29 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 eq)."\\'").nil).................
b320 20 20 20 20 28 69 66 20 28 66 75 6e 63 74 69 6f 6e 70 20 72 65 70 6c 61 63 65 29 20 72 65 70 6c ....(if.(functionp.replace).repl
b340 61 63 65 20 28 63 6f 6e 73 20 6e 69 6c 20 72 65 70 6c 61 63 65 29 29 29 0a 20 20 20 20 20 20 20 ace.(cons.nil.replace)))........
b360 20 20 20 20 20 20 20 6d 6f 64 65 2d 61 6c 69 73 74 29 0a 20 20 20 20 20 20 20 20 28 77 68 65 6e .......mode-alist).........(when
b380 20 28 61 6e 64 20 28 6e 6f 74 20 28 66 75 6e 63 74 69 6f 6e 70 20 72 65 70 6c 61 63 65 6d 65 6e .(and.(not.(functionp.replacemen
b3a0 74 29 29 20 28 63 6f 6e 73 70 20 72 65 70 6c 61 63 65 6d 65 6e 74 29 29 0a 20 20 20 20 20 20 20 t)).(consp.replacement))........
b3c0 20 20 20 28 70 75 73 68 20 28 63 6f 6e 73 20 6b 65 79 2d 73 65 71 20 28 63 64 72 2d 73 61 66 65 ...(push.(cons.key-seq.(cdr-safe
b3e0 20 72 65 70 6c 61 63 65 6d 65 6e 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 .replacement)).................t
b400 69 74 6c 65 2d 6d 6f 64 65 2d 61 6c 69 73 74 29 29 29 0a 20 20 20 20 20 20 28 73 65 74 71 20 6b itle-mode-alist))).......(setq.k
b420 65 79 2d 73 65 71 75 65 6e 63 65 20 28 70 6f 70 20 6d 6f 72 65 29 20 72 65 70 6c 61 63 65 6d 65 ey-sequence.(pop.more).replaceme
b440 6e 74 20 28 70 6f 70 20 6d 6f 72 65 29 29 29 0a 20 20 20 20 28 69 66 20 28 61 73 73 71 20 6d 6f nt.(pop.more))).....(if.(assq.mo
b460 64 65 20 77 68 69 63 68 2d 6b 65 79 2d 72 65 70 6c 61 63 65 6d 65 6e 74 2d 61 6c 69 73 74 29 0a de.which-key-replacement-alist).
b480 20 20 20 20 20 20 20 20 28 73 65 74 63 64 72 20 28 61 73 73 71 20 6d 6f 64 65 20 77 68 69 63 68 ........(setcdr.(assq.mode.which
b4a0 2d 6b 65 79 2d 72 65 70 6c 61 63 65 6d 65 6e 74 2d 61 6c 69 73 74 29 20 6d 6f 64 65 2d 61 6c 69 -key-replacement-alist).mode-ali
b4c0 73 74 29 0a 20 20 20 20 20 20 28 70 75 73 68 20 28 63 6f 6e 73 20 6d 6f 64 65 20 6d 6f 64 65 2d st).......(push.(cons.mode.mode-
b4e0 61 6c 69 73 74 29 20 77 68 69 63 68 2d 6b 65 79 2d 72 65 70 6c 61 63 65 6d 65 6e 74 2d 61 6c 69 alist).which-key-replacement-ali
b500 73 74 29 29 0a 20 20 20 20 28 69 66 20 28 61 73 73 71 20 6d 6f 64 65 20 77 68 69 63 68 2d 6b 65 st)).....(if.(assq.mode.which-ke
b520 79 2d 2d 70 72 65 66 69 78 2d 74 69 74 6c 65 2d 61 6c 69 73 74 29 0a 20 20 20 20 20 20 20 20 28 y--prefix-title-alist).........(
b540 73 65 74 63 64 72 20 28 61 73 73 71 20 6d 6f 64 65 20 77 68 69 63 68 2d 6b 65 79 2d 2d 70 72 65 setcdr.(assq.mode.which-key--pre
b560 66 69 78 2d 74 69 74 6c 65 2d 61 6c 69 73 74 29 20 74 69 74 6c 65 2d 6d 6f 64 65 2d 61 6c 69 73 fix-title-alist).title-mode-alis
b580 74 29 0a 20 20 20 20 20 20 28 70 75 73 68 20 28 63 6f 6e 73 20 6d 6f 64 65 20 74 69 74 6c 65 2d t).......(push.(cons.mode.title-
b5a0 6d 6f 64 65 2d 61 6c 69 73 74 29 20 77 68 69 63 68 2d 6b 65 79 2d 2d 70 72 65 66 69 78 2d 74 69 mode-alist).which-key--prefix-ti
b5c0 74 6c 65 2d 61 6c 69 73 74 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d tle-alist))))..(defun.which-key-
b5e0 64 65 66 69 6e 65 2d 6b 65 79 2d 72 65 63 75 72 73 69 76 65 6c 79 20 28 6d 61 70 20 6b 65 79 20 define-key-recursively.(map.key.
b600 64 65 66 20 26 6f 70 74 69 6f 6e 61 6c 20 61 74 2d 72 6f 6f 74 29 0a 20 20 22 52 65 63 75 72 73 def.&optional.at-root)..."Recurs
b620 69 76 65 6c 79 20 62 69 6e 64 20 4b 45 59 20 69 6e 20 4d 41 50 20 74 6f 20 44 45 46 20 6f 6e 20 ively.bind.KEY.in.MAP.to.DEF.on.
b640 65 76 65 72 79 20 6c 65 76 65 6c 20 6f 66 20 4d 41 50 20 65 78 63 65 70 74 20 74 68 65 20 66 69 every.level.of.MAP.except.the.fi
b660 72 73 74 2e 0a 49 66 20 41 54 2d 52 4f 4f 54 20 69 73 20 6e 6f 6e 2d 6e 69 6c 20 74 68 65 20 62 rst..If.AT-ROOT.is.non-nil.the.b
b680 69 6e 64 69 6e 67 20 69 73 20 61 6c 73 6f 20 70 6c 61 63 65 64 20 61 74 20 74 68 65 20 72 6f 6f inding.is.also.placed.at.the.roo
b6a0 74 20 6f 66 20 4d 41 50 2e 22 0a 20 20 28 77 68 65 6e 20 61 74 2d 72 6f 6f 74 20 28 64 65 66 69 t.of.MAP."...(when.at-root.(defi
b6c0 6e 65 2d 6b 65 79 20 6d 61 70 20 6b 65 79 20 64 65 66 29 29 0a 20 20 28 6d 61 70 2d 6b 65 79 6d ne-key.map.key.def))...(map-keym
b6e0 61 70 0a 20 20 20 28 6c 61 6d 62 64 61 20 28 5f 65 76 20 64 66 29 0a 20 20 20 20 20 28 77 68 65 ap....(lambda.(_ev.df)......(whe
b700 6e 20 28 6b 65 79 6d 61 70 70 20 64 66 29 0a 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 n.(keymapp.df)........(which-key
b720 2d 64 65 66 69 6e 65 2d 6b 65 79 2d 72 65 63 75 72 73 69 76 65 6c 79 20 64 66 20 6b 65 79 20 64 -define-key-recursively.df.key.d
b740 65 66 20 74 29 29 29 0a 20 20 20 6d 61 70 29 29 0a 0a 3b 3b 3b 20 46 75 6e 63 74 69 6f 6e 73 20 ef.t)))....map))..;;;.Functions.
b760 66 6f 72 20 63 6f 6d 70 75 74 69 6e 67 20 77 69 6e 64 6f 77 20 73 69 7a 65 73 0a 0a 28 64 65 66 for.computing.window.sizes..(def
b780 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 74 65 78 74 2d 77 69 64 74 68 2d 74 6f 2d 74 6f 74 61 un.which-key--text-width-to-tota
b7a0 6c 20 28 74 65 78 74 2d 77 69 64 74 68 29 0a 20 20 22 43 6f 6e 76 65 72 74 20 77 69 6e 64 6f 77 l.(text-width)..."Convert.window
b7c0 20 54 45 58 54 2d 57 49 44 54 48 20 74 6f 20 77 69 6e 64 6f 77 20 74 6f 74 61 6c 2d 77 69 64 74 .TEXT-WIDTH.to.window.total-widt
b7e0 68 2e 0a 54 45 58 54 2d 57 49 44 54 48 20 69 73 20 74 68 65 20 64 65 73 69 72 65 64 20 74 65 78 h..TEXT-WIDTH.is.the.desired.tex
b800 74 20 77 69 64 74 68 20 6f 66 20 74 68 65 20 77 69 6e 64 6f 77 2e 20 20 54 68 65 20 66 75 6e 63 t.width.of.the.window...The.func
b820 74 69 6f 6e 0a 63 61 6c 63 75 6c 61 74 65 73 20 77 68 61 74 20 74 6f 74 61 6c 20 77 69 64 74 68 tion.calculates.what.total.width
b840 20 69 73 20 72 65 71 75 69 72 65 64 20 66 6f 72 20 61 20 77 69 6e 64 6f 77 20 69 6e 20 74 68 65 .is.required.for.a.window.in.the
b860 0a 73 65 6c 65 63 74 65 64 20 74 6f 20 68 61 76 65 20 61 20 74 65 78 74 2d 77 69 64 74 68 20 6f .selected.to.have.a.text-width.o
b880 66 20 54 45 58 54 2d 57 49 44 54 48 20 63 6f 6c 75 6d 6e 73 2e 20 20 54 68 65 0a 63 61 6c 63 75 f.TEXT-WIDTH.columns...The.calcu
b8a0 6c 61 74 69 6f 6e 20 63 6f 6e 73 69 64 65 72 73 20 70 6f 73 73 69 62 6c 65 20 66 72 69 6e 67 65 lation.considers.possible.fringe
b8c0 73 20 61 6e 64 20 73 63 72 6f 6c 6c 20 62 61 72 73 2e 20 20 54 68 69 73 0a 66 75 6e 63 74 69 6f s.and.scroll.bars...This.functio
b8e0 6e 20 61 73 73 75 6d 65 73 20 74 68 61 74 20 74 68 65 20 64 65 73 69 72 65 64 20 77 69 6e 64 6f n.assumes.that.the.desired.windo
b900 77 20 68 61 73 20 74 68 65 20 73 61 6d 65 20 63 68 61 72 61 63 74 65 72 0a 77 69 64 74 68 20 61 w.has.the.same.character.width.a
b920 73 20 74 68 65 20 66 72 61 6d 65 2e 22 0a 20 20 28 6c 65 74 20 28 28 63 68 61 72 2d 77 69 64 74 s.the.frame."...(let.((char-widt
b940 68 20 28 66 72 61 6d 65 2d 63 68 61 72 2d 77 69 64 74 68 29 29 29 0a 20 20 20 20 28 2b 20 74 65 h.(frame-char-width))).....(+.te
b960 78 74 2d 77 69 64 74 68 0a 20 20 20 20 20 20 20 28 2f 20 28 66 72 61 6d 65 2d 66 72 69 6e 67 65 xt-width........(/.(frame-fringe
b980 2d 77 69 64 74 68 29 20 63 68 61 72 2d 77 69 64 74 68 29 0a 20 20 20 20 20 20 20 28 2f 20 28 66 -width).char-width)........(/.(f
b9a0 72 61 6d 65 2d 73 63 72 6f 6c 6c 2d 62 61 72 2d 77 69 64 74 68 29 20 63 68 61 72 2d 77 69 64 74 rame-scroll-bar-width).char-widt
b9c0 68 29 0a 20 20 20 20 20 20 20 28 69 66 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 63 68 61 72 2d 65 h)........(if.(which-key--char-e
b9e0 6e 6c 61 72 67 65 64 2d 70 29 20 31 20 30 29 0a 20 20 20 20 20 20 20 3b 3b 20 61 64 64 20 70 61 nlarged-p).1.0)........;;.add.pa
ba00 64 64 69 6e 67 20 74 6f 20 61 63 63 6f 75 6e 74 20 66 6f 72 20 70 6f 73 73 69 62 6c 65 20 77 69 dding.to.account.for.possible.wi
ba20 64 65 20 28 75 6e 69 63 6f 64 65 29 20 63 68 61 72 61 63 74 65 72 73 0a 20 20 20 20 20 20 20 33 de.(unicode).characters........3
ba40 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 74 6f 74 61 6c 2d 77 69 64 )))..(defun.which-key--total-wid
ba60 74 68 2d 74 6f 2d 74 65 78 74 20 28 74 6f 74 61 6c 2d 77 69 64 74 68 29 0a 20 20 22 43 6f 6e 76 th-to-text.(total-width)..."Conv
ba80 65 72 74 20 77 69 6e 64 6f 77 20 54 4f 54 41 4c 2d 57 49 44 54 48 20 74 6f 20 77 69 6e 64 6f 77 ert.window.TOTAL-WIDTH.to.window
baa0 20 74 65 78 74 2d 77 69 64 74 68 2e 0a 54 4f 54 41 4c 2d 57 49 44 54 48 20 69 73 20 74 68 65 20 .text-width..TOTAL-WIDTH.is.the.
bac0 64 65 73 69 72 65 64 20 74 6f 74 61 6c 20 77 69 64 74 68 20 6f 66 20 74 68 65 20 77 69 6e 64 6f desired.total.width.of.the.windo
bae0 77 2e 20 20 54 68 65 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 63 75 6c 61 74 65 73 0a 77 68 61 74 w...The.function.calculates.what
bb00 20 74 65 78 74 20 77 69 64 74 68 20 66 69 74 73 20 73 75 63 68 20 61 20 77 69 6e 64 6f 77 2e 20 .text.width.fits.such.a.window..
bb20 20 54 68 65 20 63 61 6c 63 75 6c 61 74 69 6f 6e 20 63 6f 6e 73 69 64 65 72 73 20 70 6f 73 73 69 .The.calculation.considers.possi
bb40 62 6c 65 20 66 72 69 6e 67 65 73 0a 61 6e 64 20 73 63 72 6f 6c 6c 20 62 61 72 73 2e 20 20 54 68 ble.fringes.and.scroll.bars...Th
bb60 69 73 20 66 75 6e 63 74 69 6f 6e 20 61 73 73 75 6d 65 73 20 74 68 61 74 20 74 68 65 20 64 65 73 is.function.assumes.that.the.des
bb80 69 72 65 64 20 77 69 6e 64 6f 77 20 68 61 73 20 74 68 65 20 73 61 6d 65 0a 63 68 61 72 61 63 74 ired.window.has.the.same.charact
bba0 65 72 20 77 69 64 74 68 20 61 73 20 74 68 65 20 66 72 61 6d 65 2e 22 0a 20 20 28 6c 65 74 20 28 er.width.as.the.frame."...(let.(
bbc0 28 63 68 61 72 2d 77 69 64 74 68 20 28 66 72 61 6d 65 2d 63 68 61 72 2d 77 69 64 74 68 29 29 29 (char-width.(frame-char-width)))
bbe0 0a 20 20 20 20 28 2d 20 74 6f 74 61 6c 2d 77 69 64 74 68 0a 20 20 20 20 20 20 20 28 2f 20 28 66 .....(-.total-width........(/.(f
bc00 72 61 6d 65 2d 66 72 69 6e 67 65 2d 77 69 64 74 68 29 20 63 68 61 72 2d 77 69 64 74 68 29 0a 20 rame-fringe-width).char-width)..
bc20 20 20 20 20 20 20 28 2f 20 28 66 72 61 6d 65 2d 73 63 72 6f 6c 6c 2d 62 61 72 2d 77 69 64 74 68 ......(/.(frame-scroll-bar-width
bc40 29 20 63 68 61 72 2d 77 69 64 74 68 29 0a 20 20 20 20 20 20 20 28 69 66 20 28 77 68 69 63 68 2d ).char-width)........(if.(which-
bc60 6b 65 79 2d 2d 63 68 61 72 2d 65 6e 6c 61 72 67 65 64 2d 70 29 20 31 20 30 29 0a 20 20 20 20 20 key--char-enlarged-p).1.0)......
bc80 20 20 3b 3b 20 61 64 64 20 70 61 64 64 69 6e 67 20 74 6f 20 61 63 63 6f 75 6e 74 20 66 6f 72 20 ..;;.add.padding.to.account.for.
bca0 70 6f 73 73 69 62 6c 65 20 77 69 64 65 20 28 75 6e 69 63 6f 64 65 29 20 63 68 61 72 61 63 74 65 possible.wide.(unicode).characte
bcc0 72 73 0a 20 20 20 20 20 20 20 33 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 rs........3)))..(defun.which-key
bce0 2d 2d 63 68 61 72 2d 65 6e 6c 61 72 67 65 64 2d 70 20 28 26 6f 70 74 69 6f 6e 61 6c 20 5f 66 72 --char-enlarged-p.(&optional._fr
bd00 61 6d 65 29 0a 20 20 28 3e 20 28 66 72 61 6d 65 2d 63 68 61 72 2d 77 69 64 74 68 29 0a 20 20 20 ame)...(>.(frame-char-width)....
bd20 20 20 28 2f 20 28 66 6c 6f 61 74 20 28 66 72 61 6d 65 2d 70 69 78 65 6c 2d 77 69 64 74 68 29 29 ..(/.(float.(frame-pixel-width))
bd40 20 28 77 69 6e 64 6f 77 2d 74 6f 74 61 6c 2d 77 69 64 74 68 20 28 66 72 61 6d 65 2d 72 6f 6f 74 .(window-total-width.(frame-root
bd60 2d 77 69 6e 64 6f 77 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d -window)))))..(defun.which-key--
bd80 63 68 61 72 2d 72 65 64 75 63 65 64 2d 70 20 28 26 6f 70 74 69 6f 6e 61 6c 20 5f 66 72 61 6d 65 char-reduced-p.(&optional._frame
bda0 29 0a 20 20 28 3c 20 28 66 72 61 6d 65 2d 63 68 61 72 2d 77 69 64 74 68 29 0a 20 20 20 20 20 28 )...(<.(frame-char-width)......(
bdc0 2f 20 28 66 6c 6f 61 74 20 28 66 72 61 6d 65 2d 70 69 78 65 6c 2d 77 69 64 74 68 29 29 20 28 77 /.(float.(frame-pixel-width)).(w
bde0 69 6e 64 6f 77 2d 74 6f 74 61 6c 2d 77 69 64 74 68 20 28 66 72 61 6d 65 2d 72 6f 6f 74 2d 77 69 indow-total-width.(frame-root-wi
be00 6e 64 6f 77 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 63 68 61 ndow)))))..(defun.which-key--cha
be20 72 2d 65 78 61 63 74 2d 70 20 28 26 6f 70 74 69 6f 6e 61 6c 20 5f 66 72 61 6d 65 29 0a 20 20 28 r-exact-p.(&optional._frame)...(
be40 3d 20 28 66 72 61 6d 65 2d 63 68 61 72 2d 77 69 64 74 68 29 0a 20 20 20 20 20 28 2f 20 28 66 6c =.(frame-char-width)......(/.(fl
be60 6f 61 74 20 28 66 72 61 6d 65 2d 70 69 78 65 6c 2d 77 69 64 74 68 29 29 20 28 77 69 6e 64 6f 77 oat.(frame-pixel-width)).(window
be80 2d 74 6f 74 61 6c 2d 77 69 64 74 68 20 28 66 72 61 6d 65 2d 72 6f 6f 74 2d 77 69 6e 64 6f 77 29 -total-width.(frame-root-window)
bea0 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 77 69 64 74 68 2d 6f 72 ))))..(defun.which-key--width-or
bec0 2d 70 65 72 63 65 6e 74 61 67 65 2d 74 6f 2d 77 69 64 74 68 20 28 77 69 64 74 68 2d 6f 72 2d 70 -percentage-to-width.(width-or-p
bee0 65 72 63 65 6e 74 61 67 65 29 0a 20 20 22 52 65 74 75 72 6e 20 77 69 6e 64 6f 77 20 74 6f 74 61 ercentage)..."Return.window.tota
bf00 6c 20 77 69 64 74 68 2e 0a 49 66 20 57 49 44 54 48 2d 4f 52 2d 50 45 52 43 45 4e 54 41 47 45 20 l.width..If.WIDTH-OR-PERCENTAGE.
bf20 69 73 20 61 20 77 68 6f 6c 65 20 6e 75 6d 62 65 72 2c 20 72 65 74 75 72 6e 20 69 74 20 75 6e 63 is.a.whole.number,.return.it.unc
bf40 68 61 6e 67 65 64 2e 20 20 4f 74 68 65 72 77 69 73 65 2c 20 69 74 0a 73 68 6f 75 6c 64 20 62 65 hanged...Otherwise,.it.should.be
bf60 20 61 20 70 65 72 63 65 6e 74 61 67 65 20 28 61 20 6e 75 6d 62 65 72 20 62 65 74 77 65 65 6e 20 .a.percentage.(a.number.between.
bf80 30 20 61 6e 64 20 31 29 20 6f 75 74 20 6f 66 20 74 68 65 20 66 72 61 6d 65 27 73 20 77 69 64 74 0.and.1).out.of.the.frame's.widt
bfa0 68 2e 0a 4d 6f 72 65 20 70 72 65 63 69 73 65 6c 79 2c 20 69 74 20 73 68 6f 75 6c 64 20 62 65 20 h..More.precisely,.it.should.be.
bfc0 61 20 70 65 72 63 65 6e 74 61 67 65 20 6f 75 74 20 6f 66 20 74 68 65 20 66 72 61 6d 65 27 73 20 a.percentage.out.of.the.frame's.
bfe0 72 6f 6f 74 20 77 69 6e 64 6f 77 27 73 0a 74 6f 74 61 6c 20 77 69 64 74 68 2e 22 0a 20 20 28 69 root.window's.total.width."...(i
c000 66 20 28 6e 61 74 6e 75 6d 70 20 77 69 64 74 68 2d 6f 72 2d 70 65 72 63 65 6e 74 61 67 65 29 0a f.(natnump.width-or-percentage).
c020 20 20 20 20 20 20 77 69 64 74 68 2d 6f 72 2d 70 65 72 63 65 6e 74 61 67 65 0a 20 20 20 20 28 72 ......width-or-percentage.....(r
c040 6f 75 6e 64 20 28 2a 20 77 69 64 74 68 2d 6f 72 2d 70 65 72 63 65 6e 74 61 67 65 20 28 77 69 6e ound.(*.width-or-percentage.(win
c060 64 6f 77 2d 74 6f 74 61 6c 2d 77 69 64 74 68 20 28 66 72 61 6d 65 2d 72 6f 6f 74 2d 77 69 6e 64 dow-total-width.(frame-root-wind
c080 6f 77 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 68 65 69 67 ow))))))..(defun.which-key--heig
c0a0 68 74 2d 6f 72 2d 70 65 72 63 65 6e 74 61 67 65 2d 74 6f 2d 68 65 69 67 68 74 20 28 68 65 69 67 ht-or-percentage-to-height.(heig
c0c0 68 74 2d 6f 72 2d 70 65 72 63 65 6e 74 61 67 65 29 0a 20 20 22 52 65 74 75 72 6e 20 77 69 6e 64 ht-or-percentage)..."Return.wind
c0e0 6f 77 20 74 6f 74 61 6c 20 68 65 69 67 68 74 2e 0a 49 66 20 48 45 49 47 48 54 2d 4f 52 2d 50 45 ow.total.height..If.HEIGHT-OR-PE
c100 52 43 45 4e 54 41 47 45 20 69 73 20 61 20 77 68 6f 6c 65 20 6e 75 6d 62 65 72 2c 20 72 65 74 75 RCENTAGE.is.a.whole.number,.retu
c120 72 6e 20 69 74 20 75 6e 63 68 61 6e 67 65 64 2e 20 20 4f 74 68 65 72 77 69 73 65 2c 20 69 74 0a rn.it.unchanged...Otherwise,.it.
c140 73 68 6f 75 6c 64 20 62 65 20 61 20 70 65 72 63 65 6e 74 61 67 65 20 28 61 20 6e 75 6d 62 65 72 should.be.a.percentage.(a.number
c160 20 62 65 74 77 65 65 6e 20 30 20 61 6e 64 20 31 29 20 6f 75 74 20 6f 66 20 74 68 65 20 66 72 61 .between.0.and.1).out.of.the.fra
c180 6d 65 27 73 20 68 65 69 67 68 74 2e 0a 4d 6f 72 65 20 70 72 65 63 69 73 65 6c 79 2c 20 69 74 20 me's.height..More.precisely,.it.
c1a0 73 68 6f 75 6c 64 20 62 65 20 61 20 70 65 72 63 65 6e 74 61 67 65 20 6f 75 74 20 6f 66 20 74 68 should.be.a.percentage.out.of.th
c1c0 65 20 66 72 61 6d 65 27 73 20 72 6f 6f 74 20 77 69 6e 64 6f 77 27 73 0a 74 6f 74 61 6c 20 68 65 e.frame's.root.window's.total.he
c1e0 69 67 68 74 2e 22 0a 20 20 28 69 66 20 28 6e 61 74 6e 75 6d 70 20 68 65 69 67 68 74 2d 6f 72 2d ight."...(if.(natnump.height-or-
c200 70 65 72 63 65 6e 74 61 67 65 29 0a 20 20 20 20 20 20 68 65 69 67 68 74 2d 6f 72 2d 70 65 72 63 percentage).......height-or-perc
c220 65 6e 74 61 67 65 0a 20 20 20 20 28 72 6f 75 6e 64 20 28 2a 20 68 65 69 67 68 74 2d 6f 72 2d 70 entage.....(round.(*.height-or-p
c240 65 72 63 65 6e 74 61 67 65 20 28 77 69 6e 64 6f 77 2d 74 6f 74 61 6c 2d 68 65 69 67 68 74 20 28 ercentage.(window-total-height.(
c260 66 72 61 6d 65 2d 72 6f 6f 74 2d 77 69 6e 64 6f 77 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 frame-root-window))))))..(defun.
c280 77 68 69 63 68 2d 6b 65 79 2d 2d 66 72 61 6d 65 2d 73 69 7a 65 2d 63 68 61 6e 67 65 64 2d 70 20 which-key--frame-size-changed-p.
c2a0 28 29 0a 20 20 22 4e 6f 6e 2d 6e 69 6c 20 69 66 20 61 20 63 68 61 6e 67 65 20 69 6e 20 66 72 61 ()..."Non-nil.if.a.change.in.fra
c2c0 6d 65 20 73 69 7a 65 20 69 73 20 64 65 74 65 63 74 65 64 2e 22 0a 20 20 28 6c 65 74 20 28 28 6e me.size.is.detected."...(let.((n
c2e0 65 77 2d 73 69 7a 65 20 28 63 6f 6e 73 20 28 66 72 61 6d 65 2d 77 69 64 74 68 29 20 28 66 72 61 ew-size.(cons.(frame-width).(fra
c300 6d 65 2d 68 65 69 67 68 74 29 29 29 29 0a 20 20 20 20 28 63 6f 6e 64 20 28 28 6e 75 6c 6c 20 77 me-height)))).....(cond.((null.w
c320 68 69 63 68 2d 6b 65 79 2d 2d 70 72 65 76 69 6f 75 73 2d 66 72 61 6d 65 2d 73 69 7a 65 29 0a 20 hich-key--previous-frame-size)..
c340 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 77 68 69 63 68 2d 6b 65 79 2d 2d 70 72 65 76 69 ..........(setq.which-key--previ
c360 6f 75 73 2d 66 72 61 6d 65 2d 73 69 7a 65 20 6e 65 77 2d 73 69 7a 65 29 0a 20 20 20 20 20 20 20 ous-frame-size.new-size)........
c380 20 20 20 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 20 20 28 28 6e 6f 74 20 28 65 71 75 61 6c 20 ....nil)...........((not.(equal.
c3a0 77 68 69 63 68 2d 6b 65 79 2d 2d 70 72 65 76 69 6f 75 73 2d 66 72 61 6d 65 2d 73 69 7a 65 20 6e which-key--previous-frame-size.n
c3c0 65 77 2d 73 69 7a 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 77 68 69 63 68 ew-size))............(setq.which
c3e0 2d 6b 65 79 2d 2d 70 72 65 76 69 6f 75 73 2d 66 72 61 6d 65 2d 73 69 7a 65 20 6e 65 77 2d 73 69 -key--previous-frame-size.new-si
c400 7a 65 29 29 29 29 29 0a 0a 3b 3b 3b 20 53 68 6f 77 2f 68 69 64 65 20 77 68 69 63 68 2d 6b 65 79 ze)))))..;;;.Show/hide.which-key
c420 20 62 75 66 66 65 72 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 68 69 64 65 2d .buffer..(defun.which-key--hide-
c440 70 6f 70 75 70 20 28 29 0a 20 20 22 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 69 73 20 63 61 6c popup.()..."This.function.is.cal
c460 6c 65 64 20 74 6f 20 68 69 64 65 20 74 68 65 20 77 68 69 63 68 2d 6b 65 79 20 62 75 66 66 65 72 led.to.hide.the.which-key.buffer
c480 2e 22 0a 20 20 28 75 6e 6c 65 73 73 20 28 6f 72 20 77 68 69 63 68 2d 6b 65 79 2d 70 65 72 73 69 ."...(unless.(or.which-key-persi
c4a0 73 74 65 6e 74 2d 70 6f 70 75 70 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 65 6d 62 65 stent-popup...............(membe
c4c0 72 20 72 65 61 6c 2d 74 68 69 73 2d 63 6f 6d 6d 61 6e 64 20 77 68 69 63 68 2d 6b 65 79 2d 2d 70 r.real-this-command.which-key--p
c4e0 61 67 69 6e 67 2d 66 75 6e 63 74 69 6f 6e 73 29 29 0a 20 20 20 20 28 73 65 74 71 20 77 68 69 63 aging-functions)).....(setq.whic
c500 68 2d 6b 65 79 2d 2d 6c 61 73 74 2d 74 72 79 2d 32 2d 6c 6f 63 20 6e 69 6c 29 0a 20 20 20 20 28 h-key--last-try-2-loc.nil).....(
c520 73 65 74 71 20 77 68 69 63 68 2d 6b 65 79 2d 2d 70 61 67 65 73 2d 6f 62 6a 20 6e 69 6c 29 0a 20 setq.which-key--pages-obj.nil)..
c540 20 20 20 28 73 65 74 71 20 77 68 69 63 68 2d 6b 65 79 2d 2d 61 75 74 6f 6d 61 74 69 63 2d 64 69 ...(setq.which-key--automatic-di
c560 73 70 6c 61 79 20 6e 69 6c 29 0a 20 20 20 20 28 73 65 74 71 20 77 68 69 63 68 2d 6b 65 79 2d 2d splay.nil).....(setq.which-key--
c580 70 72 69 6f 72 2d 73 68 6f 77 2d 6b 65 79 6d 61 70 2d 61 72 67 73 20 6e 69 6c 29 0a 20 20 20 20 prior-show-keymap-args.nil).....
c5a0 28 77 68 65 6e 20 28 61 6e 64 20 77 68 69 63 68 2d 6b 65 79 2d 69 64 6c 65 2d 73 65 63 6f 6e 64 (when.(and.which-key-idle-second
c5c0 61 72 79 2d 64 65 6c 61 79 20 77 68 69 63 68 2d 6b 65 79 2d 2d 73 65 63 6f 6e 64 61 72 79 2d 74 ary-delay.which-key--secondary-t
c5e0 69 6d 65 72 2d 61 63 74 69 76 65 29 0a 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 73 imer-active).......(which-key--s
c600 74 61 72 74 2d 74 69 6d 65 72 29 29 0a 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 6c 69 67 tart-timer)).....(which-key--lig
c620 68 74 65 72 2d 72 65 73 74 6f 72 65 29 0a 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 68 69 hter-restore).....(which-key--hi
c640 64 65 2d 70 6f 70 75 70 2d 69 67 6e 6f 72 65 2d 63 6f 6d 6d 61 6e 64 29 29 29 0a 0a 28 64 65 66 de-popup-ignore-command)))..(def
c660 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 68 69 64 65 2d 70 6f 70 75 70 2d 69 67 6e 6f 72 65 2d un.which-key--hide-popup-ignore-
c680 63 6f 6d 6d 61 6e 64 20 28 29 0a 20 20 22 60 77 68 69 63 68 2d 6b 65 79 2d 2d 68 69 64 65 2d 70 command.()..."`which-key--hide-p
c6a0 6f 70 75 70 27 20 77 69 74 68 6f 75 74 20 74 68 65 20 63 68 65 63 6b 20 6f 66 20 60 72 65 61 6c opup'.without.the.check.of.`real
c6c0 2d 74 68 69 73 2d 63 6f 6d 6d 61 6e 64 27 2e 22 0a 20 20 28 63 6c 2d 63 61 73 65 20 77 68 69 63 -this-command'."...(cl-case.whic
c6e0 68 2d 6b 65 79 2d 70 6f 70 75 70 2d 74 79 70 65 0a 20 20 20 20 3b 3b 20 4e 6f 74 20 6e 65 63 65 h-key-popup-type.....;;.Not.nece
c700 73 73 61 72 79 20 74 6f 20 68 69 64 65 20 6d 69 6e 69 62 75 66 66 65 72 0a 20 20 20 20 3b 3b 20 ssary.to.hide.minibuffer.....;;.
c720 28 6d 69 6e 69 62 75 66 66 65 72 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 68 69 64 65 2d 62 75 66 (minibuffer.(which-key--hide-buf
c740 66 65 72 2d 6d 69 6e 69 62 75 66 66 65 72 29 29 0a 20 20 20 20 28 73 69 64 65 2d 77 69 6e 64 6f fer-minibuffer)).....(side-windo
c760 77 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 68 69 64 65 2d 62 75 66 66 65 72 2d 73 69 64 65 2d 77 w.(which-key--hide-buffer-side-w
c780 69 6e 64 6f 77 29 29 0a 20 20 20 20 28 66 72 61 6d 65 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 68 indow)).....(frame.(which-key--h
c7a0 69 64 65 2d 62 75 66 66 65 72 2d 66 72 61 6d 65 29 29 0a 20 20 20 20 28 63 75 73 74 6f 6d 20 28 ide-buffer-frame)).....(custom.(
c7c0 66 75 6e 63 61 6c 6c 20 77 68 69 63 68 2d 6b 65 79 2d 63 75 73 74 6f 6d 2d 68 69 64 65 2d 70 6f funcall.which-key-custom-hide-po
c7e0 70 75 70 2d 66 75 6e 63 74 69 6f 6e 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b pup-function))))..(defun.which-k
c800 65 79 2d 2d 68 69 64 65 2d 70 6f 70 75 70 2d 6f 6e 2d 66 72 61 6d 65 2d 73 69 7a 65 2d 63 68 61 ey--hide-popup-on-frame-size-cha
c820 6e 67 65 20 28 26 6f 70 74 69 6f 6e 61 6c 20 5f 29 0a 20 20 22 48 69 64 65 20 77 68 69 63 68 2d nge.(&optional._)..."Hide.which-
c840 6b 65 79 20 70 6f 70 75 70 20 69 66 20 74 68 65 20 66 72 61 6d 65 20 69 73 20 72 65 73 69 7a 65 key.popup.if.the.frame.is.resize
c860 64 20 28 74 6f 20 74 72 69 67 67 65 72 20 61 20 6e 65 77 20 70 6f 70 75 70 29 2e 22 0a 20 20 28 d.(to.trigger.a.new.popup)."...(
c880 77 68 65 6e 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 66 72 61 6d 65 2d 73 69 7a 65 2d 63 68 61 6e when.(which-key--frame-size-chan
c8a0 67 65 64 2d 70 29 0a 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 68 69 64 65 2d 70 6f 70 75 ged-p).....(which-key--hide-popu
c8c0 70 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 68 69 64 65 2d 62 75 66 p)))..(defun.which-key--hide-buf
c8e0 66 65 72 2d 73 69 64 65 2d 77 69 6e 64 6f 77 20 28 29 0a 20 20 22 48 69 64 65 20 77 68 69 63 68 fer-side-window.()..."Hide.which
c900 2d 6b 65 79 20 62 75 66 66 65 72 20 77 68 65 6e 20 73 69 64 65 2d 77 69 6e 64 6f 77 20 70 6f 70 -key.buffer.when.side-window.pop
c920 75 70 20 69 73 20 75 73 65 64 2e 22 0a 20 20 28 77 68 65 6e 20 28 62 75 66 66 65 72 2d 6c 69 76 up.is.used."...(when.(buffer-liv
c940 65 2d 70 20 77 68 69 63 68 2d 6b 65 79 2d 2d 62 75 66 66 65 72 29 0a 20 20 20 20 3b 3b 20 69 6e e-p.which-key--buffer).....;;.in
c960 20 63 61 73 65 20 77 68 69 63 68 2d 6b 65 79 20 62 75 66 66 65 72 20 77 61 73 20 73 68 6f 77 6e .case.which-key.buffer.was.shown
c980 20 69 6e 20 61 6e 20 65 78 69 73 74 69 6e 67 20 77 69 6e 64 6f 77 2c 20 60 71 75 69 74 2d 77 69 .in.an.existing.window,.`quit-wi
c9a0 6e 64 6f 77 27 0a 20 20 20 20 3b 3b 20 77 69 6c 6c 20 72 65 2d 73 68 6f 77 20 74 68 65 20 70 72 ndow'.....;;.will.re-show.the.pr
c9c0 65 76 69 6f 75 73 20 62 75 66 66 65 72 2c 20 69 6e 73 74 65 61 64 20 6f 66 20 63 6c 6f 73 69 6e evious.buffer,.instead.of.closin
c9e0 67 20 74 68 65 20 77 69 6e 64 6f 77 0a 20 20 20 20 28 71 75 69 74 2d 77 69 6e 64 6f 77 73 2d 6f g.the.window.....(quit-windows-o
ca00 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 62 75 66 66 65 72 29 0a 20 20 20 20 28 77 68 65 6e 20 28 n.which-key--buffer).....(when.(
ca20 61 6e 64 20 77 68 69 63 68 2d 6b 65 79 2d 70 72 65 73 65 72 76 65 2d 77 69 6e 64 6f 77 2d 63 6f and.which-key-preserve-window-co
ca40 6e 66 69 67 75 72 61 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 77 68 69 63 68 nfiguration................which
ca60 2d 6b 65 79 2d 2d 73 61 76 65 64 2d 77 69 6e 64 6f 77 2d 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e -key--saved-window-configuration
ca80 29 0a 20 20 20 20 20 20 28 73 65 74 2d 77 69 6e 64 6f 77 2d 63 6f 6e 66 69 67 75 72 61 74 69 6f ).......(set-window-configuratio
caa0 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 73 61 76 65 64 2d 77 69 6e 64 6f 77 2d 63 6f 6e 66 69 67 n.which-key--saved-window-config
cac0 75 72 61 74 69 6f 6e 29 0a 20 20 20 20 20 20 28 73 65 74 71 20 77 68 69 63 68 2d 6b 65 79 2d 2d uration).......(setq.which-key--
cae0 73 61 76 65 64 2d 77 69 6e 64 6f 77 2d 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20 6e 69 6c 29 29 saved-window-configuration.nil))
cb00 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 68 69 64 65 2d 62 75 66 66 65 ))..(defun.which-key--hide-buffe
cb20 72 2d 66 72 61 6d 65 20 28 29 0a 20 20 22 48 69 64 65 20 77 68 69 63 68 2d 6b 65 79 20 62 75 66 r-frame.()..."Hide.which-key.buf
cb40 66 65 72 20 77 68 65 6e 20 66 72 61 6d 65 20 70 6f 70 75 70 20 69 73 20 75 73 65 64 2e 22 0a 20 fer.when.frame.popup.is.used."..
cb60 20 28 77 68 65 6e 20 28 66 72 61 6d 65 2d 6c 69 76 65 2d 70 20 77 68 69 63 68 2d 6b 65 79 2d 2d .(when.(frame-live-p.which-key--
cb80 66 72 61 6d 65 29 0a 20 20 20 20 28 64 65 6c 65 74 65 2d 66 72 61 6d 65 20 77 68 69 63 68 2d 6b frame).....(delete-frame.which-k
cba0 65 79 2d 2d 66 72 61 6d 65 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d ey--frame)))..(defun.which-key--
cbc0 70 6f 70 75 70 2d 73 68 6f 77 69 6e 67 2d 70 20 28 29 0a 20 20 28 61 6e 64 20 28 62 75 66 66 65 popup-showing-p.()...(and.(buffe
cbe0 72 70 20 77 68 69 63 68 2d 6b 65 79 2d 2d 62 75 66 66 65 72 29 0a 20 20 20 20 20 20 20 28 6f 72 rp.which-key--buffer)........(or
cc00 20 28 77 69 6e 64 6f 77 2d 6c 69 76 65 2d 70 20 28 67 65 74 2d 62 75 66 66 65 72 2d 77 69 6e 64 .(window-live-p.(get-buffer-wind
cc20 6f 77 20 77 68 69 63 68 2d 6b 65 79 2d 2d 62 75 66 66 65 72 29 29 0a 20 20 20 20 20 20 20 20 20 ow.which-key--buffer))..........
cc40 20 20 28 6c 65 74 20 28 28 77 69 6e 64 6f 77 20 28 67 65 74 2d 62 75 66 66 65 72 2d 77 69 6e 64 ..(let.((window.(get-buffer-wind
cc60 6f 77 20 77 68 69 63 68 2d 6b 65 79 2d 2d 62 75 66 66 65 72 20 74 29 29 29 0a 20 20 20 20 20 20 ow.which-key--buffer.t))).......
cc80 20 20 20 20 20 20 20 28 61 6e 64 20 28 77 69 6e 64 6f 77 2d 6c 69 76 65 2d 70 20 77 69 6e 64 6f .......(and.(window-live-p.windo
cca0 77 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 72 61 6d 65 2d 76 69 73 69 w)...................(frame-visi
ccc0 62 6c 65 2d 70 20 28 77 69 6e 64 6f 77 2d 66 72 61 6d 65 20 77 69 6e 64 6f 77 29 29 29 29 29 29 ble-p.(window-frame.window))))))
cce0 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 73 68 6f 77 2d 70 6f 70 75 70 20 )..(defun.which-key--show-popup.
cd00 28 61 63 74 2d 70 6f 70 75 70 2d 64 69 6d 29 0a 20 20 22 53 68 6f 77 20 74 68 65 20 77 68 69 63 (act-popup-dim)..."Show.the.whic
cd20 68 2d 6b 65 79 20 62 75 66 66 65 72 2e 0a 41 43 54 2d 50 4f 50 55 50 2d 44 49 4d 20 69 6e 63 6c h-key.buffer..ACT-POPUP-DIM.incl
cd40 75 64 65 73 20 74 68 65 20 64 69 6d 65 6e 73 69 6f 6e 73 2c 20 28 68 65 69 67 68 74 20 2e 20 77 udes.the.dimensions,.(height...w
cd60 69 64 74 68 29 20 6f 66 20 74 68 65 0a 62 75 66 66 65 72 20 74 65 78 74 20 74 6f 20 62 65 20 64 idth).of.the.buffer.text.to.be.d
cd80 69 73 70 6c 61 79 65 64 20 69 6e 20 74 68 65 20 70 6f 70 75 70 2e 20 20 52 65 74 75 72 6e 20 6e isplayed.in.the.popup...Return.n
cda0 69 6c 20 69 66 20 6e 6f 20 77 69 6e 64 6f 77 0a 69 73 20 73 68 6f 77 6e 2c 20 6f 72 20 69 66 20 il.if.no.window.is.shown,.or.if.
cdc0 74 68 65 72 65 20 69 73 20 6e 6f 20 6e 65 65 64 20 74 6f 20 73 74 61 72 74 20 74 68 65 20 63 6c there.is.no.need.to.start.the.cl
cde0 6f 73 69 6e 67 20 74 69 6d 65 72 2e 22 0a 20 20 28 77 68 65 6e 20 28 61 6e 64 20 28 3e 20 28 63 osing.timer."...(when.(and.(>.(c
ce00 61 72 20 61 63 74 2d 70 6f 70 75 70 2d 64 69 6d 29 20 30 29 0a 20 20 20 20 20 20 20 20 20 20 20 ar.act-popup-dim).0)............
ce20 20 20 28 3e 20 28 63 64 72 20 61 63 74 2d 70 6f 70 75 70 2d 64 69 6d 29 20 30 29 29 0a 20 20 20 ..(>.(cdr.act-popup-dim).0))....
ce40 20 28 63 6c 2d 63 61 73 65 20 77 68 69 63 68 2d 6b 65 79 2d 70 6f 70 75 70 2d 74 79 70 65 0a 20 .(cl-case.which-key-popup-type..
ce60 20 20 20 20 20 3b 3b 20 4e 6f 74 20 63 61 6c 6c 65 64 20 66 6f 72 20 6d 69 6e 69 62 75 66 66 65 .....;;.Not.called.for.minibuffe
ce80 72 0a 20 20 20 20 20 20 3b 3b 20 28 6d 69 6e 69 62 75 66 66 65 72 20 28 77 68 69 63 68 2d 6b 65 r.......;;.(minibuffer.(which-ke
cea0 79 2d 2d 73 68 6f 77 2d 62 75 66 66 65 72 2d 6d 69 6e 69 62 75 66 66 65 72 20 61 63 74 2d 70 6f y--show-buffer-minibuffer.act-po
cec0 70 75 70 2d 64 69 6d 29 29 0a 20 20 20 20 20 20 28 73 69 64 65 2d 77 69 6e 64 6f 77 20 28 77 68 pup-dim)).......(side-window.(wh
cee0 69 63 68 2d 6b 65 79 2d 2d 73 68 6f 77 2d 62 75 66 66 65 72 2d 73 69 64 65 2d 77 69 6e 64 6f 77 ich-key--show-buffer-side-window
cf00 20 61 63 74 2d 70 6f 70 75 70 2d 64 69 6d 29 29 0a 20 20 20 20 20 20 28 66 72 61 6d 65 20 28 77 .act-popup-dim)).......(frame.(w
cf20 68 69 63 68 2d 6b 65 79 2d 2d 73 68 6f 77 2d 62 75 66 66 65 72 2d 66 72 61 6d 65 20 61 63 74 2d hich-key--show-buffer-frame.act-
cf40 70 6f 70 75 70 2d 64 69 6d 29 29 0a 20 20 20 20 20 20 28 63 75 73 74 6f 6d 20 28 66 75 6e 63 61 popup-dim)).......(custom.(funca
cf60 6c 6c 20 77 68 69 63 68 2d 6b 65 79 2d 63 75 73 74 6f 6d 2d 73 68 6f 77 2d 70 6f 70 75 70 2d 66 ll.which-key-custom-show-popup-f
cf80 75 6e 63 74 69 6f 6e 20 61 63 74 2d 70 6f 70 75 70 2d 64 69 6d 29 29 29 29 29 0a 0a 28 64 65 66 unction.act-popup-dim)))))..(def
cfa0 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 66 69 74 2d 62 75 66 66 65 72 2d 74 6f 2d 77 69 6e 64 un.which-key--fit-buffer-to-wind
cfc0 6f 77 2d 68 6f 72 69 7a 6f 6e 74 61 6c 6c 79 0a 20 20 20 20 28 26 6f 70 74 69 6f 6e 61 6c 20 77 ow-horizontally.....(&optional.w
cfe0 69 6e 64 6f 77 20 26 72 65 73 74 20 70 61 72 61 6d 73 29 0a 20 20 22 53 6c 69 67 68 74 6c 79 20 indow.&rest.params)..."Slightly.
d000 6d 6f 64 69 66 69 65 64 20 76 65 72 73 69 6f 6e 20 6f 66 20 60 66 69 74 2d 62 75 66 66 65 72 2d modified.version.of.`fit-buffer-
d020 74 6f 2d 77 69 6e 64 6f 77 27 2e 0a 55 73 65 20 26 72 65 73 74 20 70 61 72 61 6d 73 20 62 65 63 to-window'..Use.&rest.params.bec
d040 61 75 73 65 20 60 66 69 74 2d 62 75 66 66 65 72 2d 74 6f 2d 77 69 6e 64 6f 77 27 20 68 61 73 20 ause.`fit-buffer-to-window'.has.
d060 61 20 64 69 66 66 65 72 65 6e 74 0a 63 61 6c 6c 20 73 69 67 6e 61 74 75 72 65 20 69 6e 20 64 69 a.different.call.signature.in.di
d080 66 66 65 72 65 6e 74 20 45 6d 61 63 73 20 76 65 72 73 69 6f 6e 73 22 0a 20 20 28 6c 65 74 20 28 fferent.Emacs.versions"...(let.(
d0a0 28 66 69 74 2d 77 69 6e 64 6f 77 2d 74 6f 2d 62 75 66 66 65 72 2d 68 6f 72 69 7a 6f 6e 74 61 6c (fit-window-to-buffer-horizontal
d0c0 6c 79 20 74 29 0a 20 20 20 20 20 20 20 20 28 77 69 6e 64 6f 77 2d 6d 69 6e 2d 68 65 69 67 68 74 ly.t).........(window-min-height
d0e0 20 31 29 29 0a 20 20 20 20 28 61 70 70 6c 79 20 23 27 66 69 74 2d 77 69 6e 64 6f 77 2d 74 6f 2d .1)).....(apply.#'fit-window-to-
d100 62 75 66 66 65 72 20 77 69 6e 64 6f 77 20 70 61 72 61 6d 73 29 29 29 0a 0a 28 64 65 66 75 6e 20 buffer.window.params)))..(defun.
d120 77 68 69 63 68 2d 6b 65 79 2d 2d 73 68 6f 77 2d 62 75 66 66 65 72 2d 73 69 64 65 2d 77 69 6e 64 which-key--show-buffer-side-wind
d140 6f 77 20 28 61 63 74 2d 70 6f 70 75 70 2d 64 69 6d 29 0a 20 20 22 53 68 6f 77 20 77 68 69 63 68 ow.(act-popup-dim)..."Show.which
d160 2d 6b 65 79 20 62 75 66 66 65 72 20 77 68 65 6e 20 70 6f 70 75 70 20 74 79 70 65 20 69 73 20 73 -key.buffer.when.popup.type.is.s
d180 69 64 65 2d 77 69 6e 64 6f 77 2e 22 0a 20 20 28 77 68 65 6e 20 28 61 6e 64 20 77 68 69 63 68 2d ide-window."...(when.(and.which-
d1a0 6b 65 79 2d 70 72 65 73 65 72 76 65 2d 77 69 6e 64 6f 77 2d 63 6f 6e 66 69 67 75 72 61 74 69 6f key-preserve-window-configuratio
d1c0 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e 6f 74 20 77 68 69 63 68 2d 6b 65 79 2d 2d 73 n..............(not.which-key--s
d1e0 61 76 65 64 2d 77 69 6e 64 6f 77 2d 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 29 29 0a 20 20 20 20 aved-window-configuration)).....
d200 28 73 65 74 71 20 77 68 69 63 68 2d 6b 65 79 2d 2d 73 61 76 65 64 2d 77 69 6e 64 6f 77 2d 63 6f (setq.which-key--saved-window-co
d220 6e 66 69 67 75 72 61 74 69 6f 6e 20 28 63 75 72 72 65 6e 74 2d 77 69 6e 64 6f 77 2d 63 6f 6e 66 nfiguration.(current-window-conf
d240 69 67 75 72 61 74 69 6f 6e 29 29 29 0a 20 20 28 6c 65 74 2a 20 28 28 68 65 69 67 68 74 20 28 63 iguration)))...(let*.((height.(c
d260 61 72 20 61 63 74 2d 70 6f 70 75 70 2d 64 69 6d 29 29 0a 20 20 20 20 20 20 20 20 20 28 77 69 64 ar.act-popup-dim))..........(wid
d280 74 68 20 28 63 64 72 20 61 63 74 2d 70 6f 70 75 70 2d 64 69 6d 29 29 0a 20 20 20 20 20 20 20 20 th.(cdr.act-popup-dim)).........
d2a0 20 28 61 6c 69 73 74 0a 20 20 20 20 20 20 20 20 20 20 28 69 66 20 77 68 69 63 68 2d 6b 65 79 2d .(alist...........(if.which-key-
d2c0 61 6c 6c 6f 77 2d 69 6d 70 72 65 63 69 73 65 2d 77 69 6e 64 6f 77 2d 66 69 74 0a 20 20 20 20 20 allow-imprecise-window-fit......
d2e0 20 20 20 20 20 20 20 20 20 60 28 28 77 69 6e 64 6f 77 2d 77 69 64 74 68 20 2e 20 20 2c 28 77 68 .........`((window-width....,(wh
d300 69 63 68 2d 6b 65 79 2d 2d 74 65 78 74 2d 77 69 64 74 68 2d 74 6f 2d 74 6f 74 61 6c 20 77 69 64 ich-key--text-width-to-total.wid
d320 74 68 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 69 6e 64 6f 77 2d 68 65 69 th)).................(window-hei
d340 67 68 74 20 2e 20 2c 68 65 69 67 68 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 ght...,height).................(
d360 73 69 64 65 20 2e 20 2c 77 68 69 63 68 2d 6b 65 79 2d 73 69 64 65 2d 77 69 6e 64 6f 77 2d 6c 6f side...,which-key-side-window-lo
d380 63 61 74 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 6c 6f 74 20 2e 20 cation).................(slot...
d3a0 2c 77 68 69 63 68 2d 6b 65 79 2d 73 69 64 65 2d 77 69 6e 64 6f 77 2d 73 6c 6f 74 29 29 0a 20 20 ,which-key-side-window-slot))...
d3c0 20 20 20 20 20 20 20 20 20 20 60 28 28 77 69 6e 64 6f 77 2d 77 69 64 74 68 20 2e 20 77 68 69 63 ..........`((window-width...whic
d3e0 68 2d 6b 65 79 2d 2d 66 69 74 2d 62 75 66 66 65 72 2d 74 6f 2d 77 69 6e 64 6f 77 2d 68 6f 72 69 h-key--fit-buffer-to-window-hori
d400 7a 6f 6e 74 61 6c 6c 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 69 6e 64 6f 77 2d zontally)...............(window-
d420 68 65 69 67 68 74 20 2e 20 28 6c 61 6d 62 64 61 20 28 77 29 20 28 66 69 74 2d 77 69 6e 64 6f 77 height...(lambda.(w).(fit-window
d440 2d 74 6f 2d 62 75 66 66 65 72 20 77 20 6e 69 6c 20 31 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 -to-buffer.w.nil.1)))...........
d460 20 20 20 20 28 73 69 64 65 20 2e 20 2c 77 68 69 63 68 2d 6b 65 79 2d 73 69 64 65 2d 77 69 6e 64 ....(side...,which-key-side-wind
d480 6f 77 2d 6c 6f 63 61 74 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 6c 6f 74 ow-location)...............(slot
d4a0 20 2e 20 2c 77 68 69 63 68 2d 6b 65 79 2d 73 69 64 65 2d 77 69 6e 64 6f 77 2d 73 6c 6f 74 29 29 ...,which-key-side-window-slot))
d4c0 29 29 29 0a 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 64 65 62 75 67 2d 6d 65 73 73 61 67 ))).....(which-key--debug-messag
d4e0 65 20 22 41 6c 6c 6f 77 20 69 6d 70 72 65 63 69 73 65 20 66 69 74 3a 20 25 73 0a 44 69 73 70 6c e."Allow.imprecise.fit:.%s.Displ
d500 61 79 20 77 69 6e 64 6f 77 20 61 6c 69 73 74 3a 20 25 73 22 0a 20 20 20 20 20 20 20 20 20 20 20 ay.window.alist:.%s"............
d520 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 77 68 69 63 68 2d 6b 65 79 2d 61 6c 6c ...................which-key-all
d540 6f 77 2d 69 6d 70 72 65 63 69 73 65 2d 77 69 6e 64 6f 77 2d 66 69 74 0a 20 20 20 20 20 20 20 20 ow-imprecise-window-fit.........
d560 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 6c 69 73 74 29 0a 20 20 20 ......................alist)....
d580 20 3b 3b 20 50 72 65 76 69 6f 75 73 6c 79 20 75 73 65 64 20 60 64 69 73 70 6c 61 79 2d 62 75 66 .;;.Previously.used.`display-buf
d5a0 66 65 72 2d 69 6e 2d 6d 61 6a 6f 72 2d 73 69 64 65 2d 77 69 6e 64 6f 77 27 20 68 65 72 65 2c 20 fer-in-major-side-window'.here,.
d5c0 62 75 74 0a 20 20 20 20 3b 3b 20 61 70 70 61 72 65 6e 74 6c 79 20 74 68 61 74 20 69 73 20 6d 65 but.....;;.apparently.that.is.me
d5e0 61 6e 74 20 74 6f 20 62 65 20 61 6e 20 69 6e 74 65 72 6e 61 6c 20 66 75 6e 63 74 69 6f 6e 2e 20 ant.to.be.an.internal.function..
d600 53 65 65 20 65 6d 61 63 73 20 62 75 67 20 23 32 34 38 32 38 0a 20 20 20 20 3b 3b 20 61 6e 64 20 See.emacs.bug.#24828.....;;.and.
d620 61 64 76 69 63 65 20 67 69 76 65 6e 20 74 68 65 72 65 2e 0a 20 20 20 20 28 63 6f 6e 64 0a 20 20 advice.given.there......(cond...
d640 20 20 20 28 28 65 71 20 77 68 69 63 68 2d 6b 65 79 2d 2d 6d 75 6c 74 69 70 6c 65 2d 6c 6f 63 61 ...((eq.which-key--multiple-loca
d660 74 69 6f 6e 73 20 74 29 0a 20 20 20 20 20 20 3b 3b 20 70 6f 73 73 69 62 6c 79 20 77 61 6e 74 20 tions.t).......;;.possibly.want.
d680 74 6f 20 73 77 69 74 63 68 20 73 69 64 65 73 20 69 6e 20 74 68 69 73 20 63 61 73 65 20 73 6f 20 to.switch.sides.in.this.case.so.
d6a0 77 65 20 63 61 6e 27 74 20 72 65 75 73 65 20 74 68 65 20 77 69 6e 64 6f 77 0a 20 20 20 20 20 20 we.can't.reuse.the.window.......
d6c0 28 64 65 6c 65 74 65 2d 77 69 6e 64 6f 77 73 2d 6f 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 62 75 (delete-windows-on.which-key--bu
d6e0 66 66 65 72 29 0a 20 20 20 20 20 20 28 64 69 73 70 6c 61 79 2d 62 75 66 66 65 72 2d 69 6e 2d 73 ffer).......(display-buffer-in-s
d700 69 64 65 2d 77 69 6e 64 6f 77 20 77 68 69 63 68 2d 6b 65 79 2d 2d 62 75 66 66 65 72 20 61 6c 69 ide-window.which-key--buffer.ali
d720 73 74 29 29 0a 20 20 20 20 20 28 28 67 65 74 2d 62 75 66 66 65 72 2d 77 69 6e 64 6f 77 20 77 68 st))......((get-buffer-window.wh
d740 69 63 68 2d 6b 65 79 2d 2d 62 75 66 66 65 72 29 0a 20 20 20 20 20 20 28 64 69 73 70 6c 61 79 2d ich-key--buffer).......(display-
d760 62 75 66 66 65 72 2d 72 65 75 73 65 2d 77 69 6e 64 6f 77 20 77 68 69 63 68 2d 6b 65 79 2d 2d 62 buffer-reuse-window.which-key--b
d780 75 66 66 65 72 20 61 6c 69 73 74 29 29 0a 20 20 20 20 20 28 74 0a 20 20 20 20 20 20 28 64 69 73 uffer.alist))......(t.......(dis
d7a0 70 6c 61 79 2d 62 75 66 66 65 72 2d 69 6e 2d 73 69 64 65 2d 77 69 6e 64 6f 77 20 77 68 69 63 68 play-buffer-in-side-window.which
d7c0 2d 6b 65 79 2d 2d 62 75 66 66 65 72 20 61 6c 69 73 74 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 -key--buffer.alist)))))..(defun.
d7e0 77 68 69 63 68 2d 6b 65 79 2d 2d 73 68 6f 77 2d 62 75 66 66 65 72 2d 66 72 61 6d 65 20 28 61 63 which-key--show-buffer-frame.(ac
d800 74 2d 70 6f 70 75 70 2d 64 69 6d 29 0a 20 20 22 53 68 6f 77 20 77 68 69 63 68 2d 6b 65 79 20 62 t-popup-dim)..."Show.which-key.b
d820 75 66 66 65 72 20 77 68 65 6e 20 70 6f 70 75 70 20 74 79 70 65 20 69 73 20 66 72 61 6d 65 2e 22 uffer.when.popup.type.is.frame."
d840 0a 20 20 28 6c 65 74 2a 20 28 3b 28 6f 72 69 67 2d 77 69 6e 64 6f 77 20 28 73 65 6c 65 63 74 65 ...(let*.(;(orig-window.(selecte
d860 64 2d 77 69 6e 64 6f 77 29 29 0a 20 20 20 20 20 20 20 20 20 28 66 72 61 6d 65 2d 68 65 69 67 68 d-window))..........(frame-heigh
d880 74 20 28 2b 20 28 63 61 72 20 61 63 74 2d 70 6f 70 75 70 2d 64 69 6d 29 0a 20 20 20 20 20 20 20 t.(+.(car.act-popup-dim)........
d8a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 77 69 74 68 2d 63 75 72 ...................(if.(with-cur
d8c0 72 65 6e 74 2d 62 75 66 66 65 72 20 77 68 69 63 68 2d 6b 65 79 2d 2d 62 75 66 66 65 72 0a 20 20 rent-buffer.which-key--buffer...
d8e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 6f ..............................mo
d900 64 65 2d 6c 69 6e 65 2d 66 6f 72 6d 61 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 de-line-format).................
d920 20 20 20 20 20 20 20 20 20 20 20 20 20 20 31 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..............1.................
d940 20 20 20 20 20 20 20 20 20 20 20 20 30 29 29 29 0a 20 20 20 20 20 20 20 20 20 3b 3b 20 77 69 74 ............0)))..........;;.wit
d960 68 6f 75 74 20 61 64 64 69 6e 67 20 32 2c 20 66 72 61 6d 65 20 73 6f 6d 65 74 69 6d 65 73 20 69 hout.adding.2,.frame.sometimes.i
d980 73 6e 27 74 20 77 69 64 65 20 65 6e 6f 75 67 68 20 66 6f 72 20 74 68 65 20 62 75 66 66 65 72 2e sn't.wide.enough.for.the.buffer.
d9a0 0a 20 20 20 20 20 20 20 20 20 3b 3b 20 74 68 69 73 20 69 73 20 70 72 6f 62 61 62 6c 79 20 62 65 ..........;;.this.is.probably.be
d9c0 63 61 75 73 65 20 6f 66 20 74 68 65 20 66 72 69 6e 67 65 73 2e 20 68 6f 77 65 76 65 72 2c 20 73 cause.of.the.fringes..however,.s
d9e0 65 74 74 69 6e 67 20 66 72 69 6e 67 65 73 0a 20 20 20 20 20 20 20 20 20 3b 3b 20 73 69 7a 65 73 etting.fringes..........;;.sizes
da00 20 74 6f 20 30 20 28 69 6e 73 74 65 61 64 20 6f 66 20 61 64 64 69 6e 67 20 32 29 20 64 69 64 6e .to.0.(instead.of.adding.2).didn
da20 27 74 20 61 6c 77 61 79 73 20 6d 61 6b 65 20 74 68 65 20 66 72 61 6d 65 20 77 69 64 65 0a 20 20 't.always.make.the.frame.wide...
da40 20 20 20 20 20 20 20 3b 3b 20 65 6e 6f 75 67 68 2e 20 64 6f 6e 27 74 20 6b 6e 6f 77 20 77 68 79 .......;;.enough..don't.know.why
da60 20 69 74 20 69 73 20 73 6f 2e 0a 20 20 20 20 20 20 20 20 20 28 66 72 61 6d 65 2d 77 69 64 74 68 .it.is.so...........(frame-width
da80 20 28 2b 20 28 63 64 72 20 61 63 74 2d 70 6f 70 75 70 2d 64 69 6d 29 20 32 29 29 0a 20 20 20 20 .(+.(cdr.act-popup-dim).2)).....
daa0 20 20 20 20 20 28 6e 65 77 2d 77 69 6e 64 6f 77 20 28 69 66 20 28 61 6e 64 20 28 66 72 61 6d 65 .....(new-window.(if.(and.(frame
dac0 2d 6c 69 76 65 2d 70 20 77 68 69 63 68 2d 6b 65 79 2d 2d 66 72 61 6d 65 29 0a 20 20 20 20 20 20 -live-p.which-key--frame).......
dae0 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 71 20 77 68 69 63 ........................(eq.whic
db00 68 2d 6b 65 79 2d 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 h-key--buffer...................
db20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 69 6e 64 6f 77 2d 62 75 66 66 65 72 0a 20 ................(window-buffer..
db40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
db60 20 20 28 66 72 61 6d 65 2d 72 6f 6f 74 2d 77 69 6e 64 6f 77 20 77 68 69 63 68 2d 6b 65 79 2d 2d ..(frame-root-window.which-key--
db80 66 72 61 6d 65 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 frame)))).......................
dba0 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 73 68 6f 77 2d 62 75 66 66 65 72 2d 72 65 75 73 65 ...(which-key--show-buffer-reuse
dbc0 2d 66 72 61 6d 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 -frame..........................
dbe0 20 66 72 61 6d 65 2d 68 65 69 67 68 74 20 66 72 61 6d 65 2d 77 69 64 74 68 29 0a 20 20 20 20 20 .frame-height.frame-width)......
dc00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 73 68 ..................(which-key--sh
dc20 6f 77 2d 62 75 66 66 65 72 2d 6e 65 77 2d 66 72 61 6d 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 ow-buffer-new-frame.............
dc40 20 20 20 20 20 20 20 20 20 20 20 20 66 72 61 6d 65 2d 68 65 69 67 68 74 20 66 72 61 6d 65 2d 77 ............frame-height.frame-w
dc60 69 64 74 68 29 29 29 29 0a 20 20 20 20 28 77 68 65 6e 20 6e 65 77 2d 77 69 6e 64 6f 77 0a 20 20 idth)))).....(when.new-window...
dc80 20 20 20 20 3b 3b 20 64 69 73 70 6c 61 79 20 73 75 63 63 65 73 73 66 75 6c 0a 20 20 20 20 20 20 ....;;.display.successful.......
dca0 28 73 65 74 71 20 77 68 69 63 68 2d 6b 65 79 2d 2d 66 72 61 6d 65 20 28 77 69 6e 64 6f 77 2d 66 (setq.which-key--frame.(window-f
dcc0 72 61 6d 65 20 6e 65 77 2d 77 69 6e 64 6f 77 29 29 0a 20 20 20 20 20 20 6e 65 77 2d 77 69 6e 64 rame.new-window)).......new-wind
dce0 6f 77 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 73 68 6f 77 2d 62 75 ow)))..(defun.which-key--show-bu
dd00 66 66 65 72 2d 6e 65 77 2d 66 72 61 6d 65 20 28 66 72 61 6d 65 2d 68 65 69 67 68 74 20 66 72 61 ffer-new-frame.(frame-height.fra
dd20 6d 65 2d 77 69 64 74 68 29 0a 20 20 22 48 65 6c 70 65 72 20 66 6f 72 20 60 77 68 69 63 68 2d 6b me-width)..."Helper.for.`which-k
dd40 65 79 2d 2d 73 68 6f 77 2d 62 75 66 66 65 72 2d 66 72 61 6d 65 27 2e 22 0a 20 20 28 6c 65 74 2a ey--show-buffer-frame'."...(let*
dd60 20 28 28 66 72 61 6d 65 2d 70 61 72 61 6d 73 20 60 28 28 68 65 69 67 68 74 20 2e 20 2c 66 72 61 .((frame-params.`((height...,fra
dd80 6d 65 2d 68 65 69 67 68 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 me-height)......................
dda0 20 20 20 20 28 77 69 64 74 68 20 2e 20 2c 66 72 61 6d 65 2d 77 69 64 74 68 29 0a 20 20 20 20 20 ....(width...,frame-width)......
ddc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 74 65 6c 6c 20 74 68 65 20 ....................;;.tell.the.
dde0 77 69 6e 64 6f 77 20 6d 61 6e 61 67 65 72 20 74 6f 20 72 65 73 70 65 63 74 20 74 68 65 20 67 69 window.manager.to.respect.the.gi
de00 76 65 6e 20 73 69 7a 65 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ven.sizes.......................
de20 20 20 20 28 75 73 65 72 2d 73 69 7a 65 20 2e 20 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ...(user-size...t)..............
de40 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 77 68 69 63 68 2d 6b 65 79 20 66 72 61 6d 65 20 64 ............;;.which-key.frame.d
de60 6f 65 73 6e 27 74 20 6e 65 65 64 20 61 20 6d 69 6e 69 62 75 66 66 65 72 0a 20 20 20 20 20 20 20 oesn't.need.a.minibuffer........
de80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 69 6e 69 62 75 66 66 65 72 20 2e 20 ..................(minibuffer...
dea0 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e nil)..........................(n
dec0 61 6d 65 20 2e 20 22 77 68 69 63 68 2d 6b 65 79 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ame..."which-key")..............
dee0 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 6e 6f 20 6e 65 65 64 20 66 6f 72 20 73 63 72 6f 6c ............;;.no.need.for.scrol
df00 6c 20 62 61 72 73 20 69 6e 20 77 68 69 63 68 2d 6b 65 79 20 66 72 61 6d 65 0a 20 20 20 20 20 20 l.bars.in.which-key.frame.......
df20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 76 65 72 74 69 63 61 6c 2d 73 63 72 ...................(vertical-scr
df40 6f 6c 6c 2d 62 61 72 73 20 2e 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 oll-bars...nil).................
df60 20 20 20 20 20 20 20 20 20 3b 3b 20 28 6c 65 66 74 2d 66 72 69 6e 67 65 20 2e 20 30 29 0a 20 20 .........;;.(left-fringe...0)...
df80 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 28 72 69 67 68 74 .......................;;.(right
dfa0 2d 66 72 69 6e 67 65 20 2e 20 30 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 -fringe...0)....................
dfc0 20 20 20 20 20 20 3b 3b 20 28 72 69 67 68 74 2d 64 69 76 69 64 65 72 2d 77 69 64 74 68 20 2e 20 ......;;.(right-divider-width...
dfe0 30 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 6d 0)..........................;;.m
e000 61 6b 65 20 73 75 72 65 20 66 72 61 6d 65 20 69 73 20 76 69 73 69 62 6c 65 0a 20 20 20 20 20 20 ake.sure.frame.is.visible.......
e020 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 76 69 73 69 62 69 6c 69 74 79 20 2e ...................(visibility..
e040 20 74 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 61 6c 69 73 74 20 60 28 28 70 6f 70 2d 75 70 2d .t)))..........(alist.`((pop-up-
e060 66 72 61 6d 65 2d 70 61 72 61 6d 65 74 65 72 73 20 2e 20 2c 66 72 61 6d 65 2d 70 61 72 61 6d 73 frame-parameters...,frame-params
e080 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 6f 72 69 67 2d 66 72 61 6d 65 20 28 73 65 6c 65 63 74 )))..........(orig-frame.(select
e0a0 65 64 2d 66 72 61 6d 65 29 29 0a 20 20 20 20 20 20 20 20 20 28 6e 65 77 2d 77 69 6e 64 6f 77 20 ed-frame))..........(new-window.
e0c0 28 64 69 73 70 6c 61 79 2d 62 75 66 66 65 72 2d 70 6f 70 2d 75 70 2d 66 72 61 6d 65 20 77 68 69 (display-buffer-pop-up-frame.whi
e0e0 63 68 2d 6b 65 79 2d 2d 62 75 66 66 65 72 20 61 6c 69 73 74 29 29 29 0a 20 20 20 20 28 77 68 65 ch-key--buffer.alist))).....(whe
e100 6e 20 6e 65 77 2d 77 69 6e 64 6f 77 0a 20 20 20 20 20 20 3b 3b 20 64 69 73 70 6c 61 79 20 73 75 n.new-window.......;;.display.su
e120 63 63 65 73 73 66 75 6c 0a 20 20 20 20 20 20 28 72 65 64 69 72 65 63 74 2d 66 72 61 6d 65 2d 66 ccessful.......(redirect-frame-f
e140 6f 63 75 73 20 28 77 69 6e 64 6f 77 2d 66 72 61 6d 65 20 6e 65 77 2d 77 69 6e 64 6f 77 29 20 6f ocus.(window-frame.new-window).o
e160 72 69 67 2d 66 72 61 6d 65 29 0a 20 20 20 20 20 20 6e 65 77 2d 77 69 6e 64 6f 77 29 29 29 0a 0a rig-frame).......new-window)))..
e180 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 73 68 6f 77 2d 62 75 66 66 65 72 2d 72 65 (defun.which-key--show-buffer-re
e1a0 75 73 65 2d 66 72 61 6d 65 20 28 66 72 61 6d 65 2d 68 65 69 67 68 74 20 66 72 61 6d 65 2d 77 69 use-frame.(frame-height.frame-wi
e1c0 64 74 68 29 0a 20 20 22 48 65 6c 70 65 72 20 66 6f 72 20 60 77 68 69 63 68 2d 6b 65 79 2d 2d 73 dth)..."Helper.for.`which-key--s
e1e0 68 6f 77 2d 62 75 66 66 65 72 2d 66 72 61 6d 65 27 2e 22 0a 20 20 28 6c 65 74 20 28 28 77 69 6e how-buffer-frame'."...(let.((win
e200 64 6f 77 0a 20 20 20 20 20 20 20 20 20 28 64 69 73 70 6c 61 79 2d 62 75 66 66 65 72 2d 72 65 75 dow..........(display-buffer-reu
e220 73 65 2d 77 69 6e 64 6f 77 0a 20 20 20 20 20 20 20 20 20 20 77 68 69 63 68 2d 6b 65 79 2d 2d 62 se-window...........which-key--b
e240 75 66 66 65 72 20 60 28 28 72 65 75 73 61 62 6c 65 2d 66 72 61 6d 65 73 20 2e 20 2c 77 68 69 63 uffer.`((reusable-frames...,whic
e260 68 2d 6b 65 79 2d 2d 66 72 61 6d 65 29 29 29 29 29 0a 20 20 20 20 28 77 68 65 6e 20 77 69 6e 64 h-key--frame))))).....(when.wind
e280 6f 77 0a 20 20 20 20 20 20 3b 3b 20 64 69 73 70 6c 61 79 20 73 75 63 63 65 73 73 66 75 6c 0a 20 ow.......;;.display.successful..
e2a0 20 20 20 20 20 28 73 65 74 2d 66 72 61 6d 65 2d 73 69 7a 65 20 28 77 69 6e 64 6f 77 2d 66 72 61 .....(set-frame-size.(window-fra
e2c0 6d 65 20 77 69 6e 64 6f 77 29 20 66 72 61 6d 65 2d 77 69 64 74 68 20 66 72 61 6d 65 2d 68 65 69 me.window).frame-width.frame-hei
e2e0 67 68 74 29 0a 20 20 20 20 20 20 77 69 6e 64 6f 77 29 29 29 0a 0a 3b 3b 3b 20 4d 61 78 20 64 69 ght).......window)))..;;;.Max.di
e300 6d 65 6e 73 69 6f 6e 20 6f 66 20 61 76 61 69 6c 61 62 6c 65 20 77 69 6e 64 6f 77 20 66 75 6e 63 mension.of.available.window.func
e320 74 69 6f 6e 73 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 70 6f 70 75 70 2d 6d tions..(defun.which-key--popup-m
e340 61 78 2d 64 69 6d 65 6e 73 69 6f 6e 73 20 28 29 0a 20 20 22 52 65 74 75 72 6e 20 6d 61 78 69 6d ax-dimensions.()..."Return.maxim
e360 75 6d 20 64 69 6d 65 6e 73 69 6f 6e 20 61 76 61 69 6c 61 62 6c 65 20 66 6f 72 20 70 6f 70 75 70 um.dimension.available.for.popup
e380 2e 0a 44 69 6d 65 6e 73 69 6f 6e 20 66 75 6e 63 74 69 6f 6e 73 20 73 68 6f 75 6c 64 20 72 65 74 ..Dimension.functions.should.ret
e3a0 75 72 6e 20 74 68 65 20 6d 61 78 69 6d 75 6d 20 70 6f 73 73 69 62 6c 65 20 28 68 65 69 67 68 74 urn.the.maximum.possible.(height
e3c0 0a 2e 20 77 69 64 74 68 29 20 6f 66 20 74 68 65 20 69 6e 74 65 6e 64 65 64 20 70 6f 70 75 70 2e ...width).of.the.intended.popup.
e3e0 20 20 53 45 4c 45 43 54 45 44 2d 57 49 4e 44 4f 57 2d 57 49 44 54 48 20 69 73 20 74 68 65 0a 77 ..SELECTED-WINDOW-WIDTH.is.the.w
e400 69 64 74 68 20 6f 66 20 63 75 72 72 65 6e 74 6c 79 20 61 63 74 69 76 65 20 77 69 6e 64 6f 77 2c idth.of.currently.active.window,
e420 20 6e 6f 74 20 74 68 65 20 77 68 69 63 68 2d 6b 65 79 20 62 75 66 66 65 72 0a 77 69 6e 64 6f 77 .not.the.which-key.buffer.window
e440 2e 22 0a 20 20 28 63 6c 2d 65 63 61 73 65 20 77 68 69 63 68 2d 6b 65 79 2d 70 6f 70 75 70 2d 74 ."...(cl-ecase.which-key-popup-t
e460 79 70 65 0a 20 20 20 20 28 6d 69 6e 69 62 75 66 66 65 72 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d ype.....(minibuffer.(which-key--
e480 6d 69 6e 69 62 75 66 66 65 72 2d 6d 61 78 2d 64 69 6d 65 6e 73 69 6f 6e 73 29 29 0a 20 20 20 20 minibuffer-max-dimensions)).....
e4a0 28 73 69 64 65 2d 77 69 6e 64 6f 77 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 73 69 64 65 2d 77 69 (side-window.(which-key--side-wi
e4c0 6e 64 6f 77 2d 6d 61 78 2d 64 69 6d 65 6e 73 69 6f 6e 73 29 29 0a 20 20 20 20 28 66 72 61 6d 65 ndow-max-dimensions)).....(frame
e4e0 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 66 72 61 6d 65 2d 6d 61 78 2d 64 69 6d 65 6e 73 69 6f 6e .(which-key--frame-max-dimension
e500 73 29 29 0a 20 20 20 20 28 63 75 73 74 6f 6d 20 28 66 75 6e 63 61 6c 6c 20 77 68 69 63 68 2d 6b s)).....(custom.(funcall.which-k
e520 65 79 2d 63 75 73 74 6f 6d 2d 70 6f 70 75 70 2d 6d 61 78 2d 64 69 6d 65 6e 73 69 6f 6e 73 2d 66 ey-custom-popup-max-dimensions-f
e540 75 6e 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 28 77 69 unction......................(wi
e560 6e 64 6f 77 2d 77 69 64 74 68 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 ndow-width)))))..(defun.which-ke
e580 79 2d 2d 6d 69 6e 69 62 75 66 66 65 72 2d 6d 61 78 2d 64 69 6d 65 6e 73 69 6f 6e 73 20 28 29 0a y--minibuffer-max-dimensions.().
e5a0 20 20 22 52 65 74 75 72 6e 20 6d 61 78 2d 64 69 6d 65 6e 73 69 6f 6e 73 20 6f 66 20 6d 69 6e 69 .."Return.max-dimensions.of.mini
e5c0 62 75 66 66 65 72 20 28 68 65 69 67 68 74 20 2e 20 77 69 64 74 68 29 2e 0a 4d 65 61 73 75 72 65 buffer.(height...width)..Measure
e5e0 64 20 69 6e 20 6c 69 6e 65 73 20 61 6e 64 20 63 68 61 72 61 63 74 65 72 73 20 72 65 73 70 65 63 d.in.lines.and.characters.respec
e600 74 69 76 65 6c 79 2e 22 0a 20 20 28 63 6f 6e 73 0a 20 20 20 3b 3b 20 68 65 69 67 68 74 0a 20 20 tively."...(cons....;;.height...
e620 20 28 69 66 20 28 66 6c 6f 61 74 70 20 6d 61 78 2d 6d 69 6e 69 2d 77 69 6e 64 6f 77 2d 68 65 69 .(if.(floatp.max-mini-window-hei
e640 67 68 74 29 0a 20 20 20 20 20 20 20 28 66 6c 6f 6f 72 20 28 2a 20 28 66 72 61 6d 65 2d 74 65 78 ght)........(floor.(*.(frame-tex
e660 74 2d 6c 69 6e 65 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 61 78 2d 6d 69 t-lines)..................max-mi
e680 6e 69 2d 77 69 6e 64 6f 77 2d 68 65 69 67 68 74 29 29 0a 20 20 20 20 20 6d 61 78 2d 6d 69 6e 69 ni-window-height))......max-mini
e6a0 2d 77 69 6e 64 6f 77 2d 68 65 69 67 68 74 29 0a 20 20 20 3b 3b 20 77 69 64 74 68 0a 20 20 20 28 -window-height)....;;.width....(
e6c0 6d 61 78 20 30 20 28 2d 20 28 66 72 61 6d 65 2d 74 65 78 74 2d 63 6f 6c 73 29 20 77 68 69 63 68 max.0.(-.(frame-text-cols).which
e6e0 2d 6b 65 79 2d 75 6e 69 63 6f 64 65 2d 63 6f 72 72 65 63 74 69 6f 6e 29 29 29 29 0a 0a 28 64 65 -key-unicode-correction))))..(de
e700 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 73 69 64 65 2d 77 69 6e 64 6f 77 2d 6d 61 78 2d 64 fun.which-key--side-window-max-d
e720 69 6d 65 6e 73 69 6f 6e 73 20 28 29 0a 20 20 22 52 65 74 75 72 6e 20 6d 61 78 2d 64 69 6d 65 6e imensions.()..."Return.max-dimen
e740 73 69 6f 6e 73 20 6f 66 20 74 68 65 20 73 69 64 65 2d 77 69 6e 64 6f 77 20 70 6f 70 75 70 2e 0a sions.of.the.side-window.popup..
e760 54 68 65 20 72 65 74 75 72 6e 20 76 61 6c 75 65 20 73 68 6f 75 6c 64 20 62 65 20 28 68 65 69 67 The.return.value.should.be.(heig
e780 68 74 20 2e 20 77 69 64 74 68 29 20 69 6e 20 6c 69 6e 65 73 20 61 6e 64 0a 63 68 61 72 61 63 74 ht...width).in.lines.and.charact
e7a0 65 72 73 20 72 65 73 70 65 63 74 69 76 65 6c 79 2e 22 0a 20 20 28 63 6f 6e 73 0a 20 20 20 3b 3b ers.respectively."...(cons....;;
e7c0 20 68 65 69 67 68 74 0a 20 20 20 28 69 66 20 28 6d 65 6d 62 65 72 20 77 68 69 63 68 2d 6b 65 79 .height....(if.(member.which-key
e7e0 2d 73 69 64 65 2d 77 69 6e 64 6f 77 2d 6c 6f 63 61 74 69 6f 6e 20 27 28 6c 65 66 74 20 72 69 67 -side-window-location.'(left.rig
e800 68 74 29 29 0a 20 20 20 20 20 20 20 3b 3b 20 31 20 69 73 20 61 20 6b 6c 75 64 67 65 20 74 6f 20 ht))........;;.1.is.a.kludge.to.
e820 6d 61 6b 65 20 73 75 72 65 20 74 68 65 72 65 20 69 73 20 6e 6f 20 6f 76 65 72 6c 61 70 0a 20 20 make.sure.there.is.no.overlap...
e840 20 20 20 20 20 28 2d 20 28 66 72 61 6d 65 2d 68 65 69 67 68 74 29 20 28 77 69 6e 64 6f 77 2d 74 .....(-.(frame-height).(window-t
e860 65 78 74 2d 68 65 69 67 68 74 20 28 6d 69 6e 69 62 75 66 66 65 72 2d 77 69 6e 64 6f 77 29 29 20 ext-height.(minibuffer-window)).
e880 31 29 0a 20 20 20 20 20 3b 3b 20 28 77 69 6e 64 6f 77 2d 6d 6f 64 65 2d 6c 69 6e 65 2d 68 65 69 1)......;;.(window-mode-line-hei
e8a0 67 68 74 20 77 68 69 63 68 2d 6b 65 79 2d 2d 77 69 6e 64 6f 77 29 29 0a 20 20 20 20 20 3b 3b 20 ght.which-key--window))......;;.
e8c0 46 49 58 4d 45 3a 20 63 68 61 6e 67 65 20 74 6f 20 73 6f 6d 65 74 68 69 6e 67 20 6c 69 6b 65 0a FIXME:.change.to.something.like.
e8e0 20 20 20 20 20 3b 3b 20 28 6d 69 6e 20 77 68 69 63 68 2d 2a 2d 68 65 69 67 68 74 20 28 63 61 6c .....;;.(min.which-*-height.(cal
e900 63 75 6c 61 74 65 2d 6d 61 78 2d 68 65 69 67 68 74 29 29 0a 20 20 20 20 20 28 77 68 69 63 68 2d culate-max-height))......(which-
e920 6b 65 79 2d 2d 68 65 69 67 68 74 2d 6f 72 2d 70 65 72 63 65 6e 74 61 67 65 2d 74 6f 2d 68 65 69 key--height-or-percentage-to-hei
e940 67 68 74 0a 20 20 20 20 20 20 77 68 69 63 68 2d 6b 65 79 2d 73 69 64 65 2d 77 69 6e 64 6f 77 2d ght.......which-key-side-window-
e960 6d 61 78 2d 68 65 69 67 68 74 29 29 0a 20 20 20 3b 3b 20 77 69 64 74 68 0a 20 20 20 28 6d 61 78 max-height))....;;.width....(max
e980 20 30 0a 20 20 20 20 20 20 20 20 28 2d 20 28 69 66 20 28 6d 65 6d 71 20 77 68 69 63 68 2d 6b 65 .0.........(-.(if.(memq.which-ke
e9a0 79 2d 73 69 64 65 2d 77 69 6e 64 6f 77 2d 6c 6f 63 61 74 69 6f 6e 20 27 28 6c 65 66 74 20 72 69 y-side-window-location.'(left.ri
e9c0 67 68 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d ght))................(which-key-
e9e0 2d 74 6f 74 61 6c 2d 77 69 64 74 68 2d 74 6f 2d 74 65 78 74 0a 20 20 20 20 20 20 20 20 20 20 20 -total-width-to-text............
ea00 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 77 69 64 74 68 2d 6f 72 2d 70 65 72 63 65 6e .....(which-key--width-or-percen
ea20 74 61 67 65 2d 74 6f 2d 77 69 64 74 68 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 77 tage-to-width..................w
ea40 68 69 63 68 2d 6b 65 79 2d 73 69 64 65 2d 77 69 6e 64 6f 77 2d 6d 61 78 2d 77 69 64 74 68 29 29 hich-key-side-window-max-width))
ea60 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 74 6f 74 61 6c 2d ..............(which-key--total-
ea80 77 69 64 74 68 2d 74 6f 2d 74 65 78 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 width-to-text...............(whi
eaa0 63 68 2d 6b 65 79 2d 2d 77 69 64 74 68 2d 6f 72 2d 70 65 72 63 65 6e 74 61 67 65 2d 74 6f 2d 77 ch-key--width-or-percentage-to-w
eac0 69 64 74 68 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 31 2e 30 29 29 29 0a 20 20 20 20 20 idth................1.0)))......
eae0 20 20 20 20 20 20 77 68 69 63 68 2d 6b 65 79 2d 75 6e 69 63 6f 64 65 2d 63 6f 72 72 65 63 74 69 ......which-key-unicode-correcti
eb00 6f 6e 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 66 72 61 6d 65 2d on))))..(defun.which-key--frame-
eb20 6d 61 78 2d 64 69 6d 65 6e 73 69 6f 6e 73 20 28 29 0a 20 20 22 52 65 74 75 72 6e 20 6d 61 78 2d max-dimensions.()..."Return.max-
eb40 64 69 6d 65 6e 73 69 6f 6e 73 20 6f 66 20 74 68 65 20 66 72 61 6d 65 20 70 6f 70 75 70 2e 0a 54 dimensions.of.the.frame.popup..T
eb60 68 65 20 72 65 74 75 72 6e 20 76 61 6c 75 65 20 73 68 6f 75 6c 64 20 62 65 20 28 68 65 69 67 68 he.return.value.should.be.(heigh
eb80 74 20 2e 20 77 69 64 74 68 29 20 69 6e 20 6c 69 6e 65 73 20 61 6e 64 0a 63 68 61 72 61 63 74 65 t...width).in.lines.and.characte
eba0 72 73 20 72 65 73 70 65 63 74 69 76 65 6c 79 2e 22 0a 20 20 28 63 6f 6e 73 20 77 68 69 63 68 2d rs.respectively."...(cons.which-
ebc0 6b 65 79 2d 66 72 61 6d 65 2d 6d 61 78 2d 68 65 69 67 68 74 20 77 68 69 63 68 2d 6b 65 79 2d 66 key-frame-max-height.which-key-f
ebe0 72 61 6d 65 2d 6d 61 78 2d 77 69 64 74 68 29 29 0a 0a 3b 3b 3b 20 53 6f 72 74 69 6e 67 20 66 75 rame-max-width))..;;;.Sorting.fu
ec00 6e 63 74 69 6f 6e 73 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 73 74 72 69 6e nctions..(defun.which-key--strin
ec20 67 3c 20 28 61 20 62 20 26 6f 70 74 69 6f 6e 61 6c 20 61 6c 70 68 61 29 0a 20 20 28 6c 65 74 20 g<.(a.b.&optional.alpha)...(let.
ec40 28 28 64 61 20 28 64 6f 77 6e 63 61 73 65 20 61 29 29 0a 20 20 20 20 20 20 20 20 28 64 62 20 28 ((da.(downcase.a)).........(db.(
ec60 64 6f 77 6e 63 61 73 65 20 62 29 29 29 0a 20 20 20 20 28 63 6f 6e 64 0a 20 20 20 20 20 28 28 61 downcase.b))).....(cond......((a
ec80 6e 64 20 61 6c 70 68 61 20 28 6e 6f 74 20 77 68 69 63 68 2d 6b 65 79 2d 73 6f 72 74 2d 75 70 70 nd.alpha.(not.which-key-sort-upp
eca0 65 72 63 61 73 65 2d 66 69 72 73 74 29 29 0a 20 20 20 20 20 20 28 69 66 20 28 73 74 72 69 6e 67 ercase-first)).......(if.(string
ecc0 2d 65 71 75 61 6c 20 64 61 20 64 62 29 0a 20 20 20 20 20 20 20 20 20 20 28 6e 6f 74 20 28 73 74 -equal.da.db)...........(not.(st
ece0 72 69 6e 67 2d 6c 65 73 73 70 20 61 20 62 29 29 0a 20 20 20 20 20 20 20 20 28 73 74 72 69 6e 67 ring-lessp.a.b)).........(string
ed00 2d 6c 65 73 73 70 20 64 61 20 64 62 29 29 29 0a 20 20 20 20 20 28 28 61 6e 64 20 61 6c 70 68 61 -lessp.da.db)))......((and.alpha
ed20 20 77 68 69 63 68 2d 6b 65 79 2d 73 6f 72 74 2d 75 70 70 65 72 63 61 73 65 2d 66 69 72 73 74 29 .which-key-sort-uppercase-first)
ed40 0a 20 20 20 20 20 20 28 69 66 20 28 73 74 72 69 6e 67 2d 65 71 75 61 6c 20 64 61 20 64 62 29 0a .......(if.(string-equal.da.db).
ed60 20 20 20 20 20 20 20 20 20 20 28 73 74 72 69 6e 67 2d 6c 65 73 73 70 20 61 20 62 29 0a 20 20 20 ..........(string-lessp.a.b)....
ed80 20 20 20 20 20 28 73 74 72 69 6e 67 2d 6c 65 73 73 70 20 64 61 20 64 62 29 29 29 0a 20 20 20 20 .....(string-lessp.da.db))).....
eda0 20 28 28 6e 6f 74 20 77 68 69 63 68 2d 6b 65 79 2d 73 6f 72 74 2d 75 70 70 65 72 63 61 73 65 2d .((not.which-key-sort-uppercase-
edc0 66 69 72 73 74 29 0a 20 20 20 20 20 20 28 6c 65 74 20 28 28 61 75 70 20 28 6e 6f 74 20 28 73 74 first).......(let.((aup.(not.(st
ede0 72 69 6e 67 2d 65 71 75 61 6c 20 64 61 20 61 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 ring-equal.da.a))).............(
ee00 62 75 70 20 28 6e 6f 74 20 28 73 74 72 69 6e 67 2d 65 71 75 61 6c 20 64 62 20 62 29 29 29 29 0a bup.(not.(string-equal.db.b)))).
ee20 20 20 20 20 20 20 20 20 28 69 66 20 28 65 71 20 61 75 70 20 62 75 70 29 0a 20 20 20 20 20 20 20 ........(if.(eq.aup.bup)........
ee40 20 20 20 20 20 28 73 74 72 69 6e 67 2d 6c 65 73 73 70 20 61 20 62 29 0a 20 20 20 20 20 20 20 20 .....(string-lessp.a.b).........
ee60 20 20 62 75 70 29 29 29 0a 20 20 20 20 20 28 74 20 28 73 74 72 69 6e 67 2d 6c 65 73 73 70 20 61 ..bup)))......(t.(string-lessp.a
ee80 20 62 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 6b 65 79 2d 64 .b)))))..(defun.which-key--key-d
eea0 65 73 63 72 69 70 74 69 6f 6e 3c 20 28 61 20 62 20 26 6f 70 74 69 6f 6e 61 6c 20 61 6c 70 68 61 escription<.(a.b.&optional.alpha
eec0 29 0a 20 20 22 4b 65 79 20 73 6f 72 74 69 6e 67 20 66 75 6e 63 74 69 6f 6e 2e 0a 55 73 65 64 20 )..."Key.sorting.function..Used.
eee0 66 6f 72 20 60 77 68 69 63 68 2d 6b 65 79 2d 6b 65 79 2d 6f 72 64 65 72 27 20 61 6e 64 20 60 77 for.`which-key-key-order'.and.`w
ef00 68 69 63 68 2d 6b 65 79 2d 6b 65 79 2d 6f 72 64 65 72 2d 61 6c 70 68 61 27 2e 22 0a 20 20 28 73 hich-key-key-order-alpha'."...(s
ef20 61 76 65 2d 6d 61 74 63 68 2d 64 61 74 61 0a 20 20 20 20 28 6c 65 74 2a 20 28 28 61 20 28 77 68 ave-match-data.....(let*.((a.(wh
ef40 69 63 68 2d 6b 65 79 2d 2d 65 78 74 72 61 63 74 2d 6b 65 79 20 61 29 29 0a 20 20 20 20 20 20 20 ich-key--extract-key.a))........
ef60 20 20 20 20 28 62 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 65 78 74 72 61 63 74 2d 6b 65 79 20 62 ....(b.(which-key--extract-key.b
ef80 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 72 6e 67 72 67 78 70 20 22 5e 5c 5c 28 5b 5e 20 5d ))............(rngrgxp."^\\([^.]
efa0 2b 5c 5c 29 20 5c 5c 2e 5c 5c 2e 20 5b 5e 20 5d 2b 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 +\\).\\.\\..[^.]+")............(
efc0 61 20 28 69 66 20 28 73 74 72 69 6e 67 2d 6d 61 74 63 68 20 72 6e 67 72 67 78 70 20 61 29 20 28 a.(if.(string-match.rngrgxp.a).(
efe0 6d 61 74 63 68 2d 73 74 72 69 6e 67 20 31 20 61 29 20 61 29 29 0a 20 20 20 20 20 20 20 20 20 20 match-string.1.a).a))...........
f000 20 28 62 20 28 69 66 20 28 73 74 72 69 6e 67 2d 6d 61 74 63 68 20 72 6e 67 72 67 78 70 20 62 29 .(b.(if.(string-match.rngrgxp.b)
f020 20 28 6d 61 74 63 68 2d 73 74 72 69 6e 67 20 31 20 62 29 20 62 29 29 0a 20 20 20 20 20 20 20 20 .(match-string.1.b).b)).........
f040 20 20 20 28 61 65 6d 3f 20 28 73 74 72 69 6e 67 2d 65 71 75 61 6c 20 61 20 22 22 29 29 0a 20 20 ...(aem?.(string-equal.a.""))...
f060 20 20 20 20 20 20 20 20 20 28 62 65 6d 3f 20 28 73 74 72 69 6e 67 2d 65 71 75 61 6c 20 62 20 22 .........(bem?.(string-equal.b."
f080 22 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 61 31 3f 20 28 3d 20 31 20 28 6c 65 6e 67 74 68 "))............(a1?.(=.1.(length
f0a0 20 61 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 62 31 3f 20 28 3d 20 31 20 28 6c 65 6e 67 .a)))............(b1?.(=.1.(leng
f0c0 74 68 20 62 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 73 72 67 78 70 20 22 5e 5c 5c 28 52 th.b)))............(srgxp."^\\(R
f0e0 45 54 5c 5c 7c 53 50 43 5c 5c 7c 54 41 42 5c 5c 7c 44 45 4c 5c 5c 7c 4c 46 44 5c 5c 7c 45 53 43 ET\\|SPC\\|TAB\\|DEL\\|LFD\\|ESC
f100 5c 5c 7c 4e 55 4c 5c 5c 29 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 61 73 70 3f 20 28 73 74 \\|NUL\\)")............(asp?.(st
f120 72 69 6e 67 2d 6d 61 74 63 68 2d 70 20 73 72 67 78 70 20 61 29 29 0a 20 20 20 20 20 20 20 20 20 ring-match-p.srgxp.a))..........
f140 20 20 28 62 73 70 3f 20 28 73 74 72 69 6e 67 2d 6d 61 74 63 68 2d 70 20 73 72 67 78 70 20 62 29 ..(bsp?.(string-match-p.srgxp.b)
f160 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 70 72 72 67 78 70 20 22 5e 5c 5c 28 4d 5c 5c 7c 43 5c )............(prrgxp."^\\(M\\|C\
f180 5c 7c 53 5c 5c 7c 41 5c 5c 7c 48 5c 5c 7c 73 5c 5c 29 2d 22 29 0a 20 20 20 20 20 20 20 20 20 20 \|S\\|A\\|H\\|s\\)-")...........
f1a0 20 28 61 70 72 3f 20 28 73 74 72 69 6e 67 2d 6d 61 74 63 68 2d 70 20 70 72 72 67 78 70 20 61 29 .(apr?.(string-match-p.prrgxp.a)
f1c0 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 62 70 72 3f 20 28 73 74 72 69 6e 67 2d 6d 61 74 63 68 )............(bpr?.(string-match
f1e0 2d 70 20 70 72 72 67 78 70 20 62 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 61 66 6e 3f 20 28 -p.prrgxp.b))............(afn?.(
f200 73 74 72 69 6e 67 2d 6d 61 74 63 68 2d 70 20 22 3c 66 5b 30 2d 39 5d 2b 3e 22 20 61 29 29 0a 20 string-match-p."<f[0-9]+>".a))..
f220 20 20 20 20 20 20 20 20 20 20 28 62 66 6e 3f 20 28 73 74 72 69 6e 67 2d 6d 61 74 63 68 2d 70 20 ..........(bfn?.(string-match-p.
f240 22 3c 66 5b 30 2d 39 5d 2b 3e 22 20 62 29 29 29 0a 20 20 20 20 20 20 28 63 6f 6e 64 20 28 28 6f "<f[0-9]+>".b))).......(cond.((o
f260 72 20 61 65 6d 3f 20 62 65 6d 3f 29 20 28 61 6e 64 20 61 65 6d 3f 20 28 6e 6f 74 20 62 65 6d 3f r.aem?.bem?).(and.aem?.(not.bem?
f280 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 28 61 6e 64 20 61 73 70 3f 20 62 73 70 3f 29 ))).............((and.asp?.bsp?)
f2a0 0a 20 20 20 20 20 20 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 ..............(if.(string-equal.
f2c0 28 73 75 62 73 74 72 69 6e 67 20 61 20 30 20 33 29 20 28 73 75 62 73 74 72 69 6e 67 20 62 20 30 (substring.a.0.3).(substring.b.0
f2e0 20 33 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 .3))..................(which-key
f300 2d 2d 6b 65 79 2d 64 65 73 63 72 69 70 74 69 6f 6e 3c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 --key-description<..............
f320 20 20 20 20 20 28 73 75 62 73 74 72 69 6e 67 20 61 20 33 29 20 28 73 75 62 73 74 72 69 6e 67 20 .....(substring.a.3).(substring.
f340 62 20 33 29 20 61 6c 70 68 61 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 63 b.3).alpha)................(whic
f360 68 2d 6b 65 79 2d 2d 73 74 72 69 6e 67 3c 20 61 20 62 20 61 6c 70 68 61 29 29 29 0a 20 20 20 20 h-key--string<.a.b.alpha))).....
f380 20 20 20 20 20 20 20 20 28 28 6f 72 20 61 73 70 3f 20 62 73 70 3f 29 20 61 73 70 3f 29 0a 20 20 ........((or.asp?.bsp?).asp?)...
f3a0 20 20 20 20 20 20 20 20 20 20 28 28 61 6e 64 20 61 31 3f 20 62 31 3f 29 20 28 77 68 69 63 68 2d ..........((and.a1?.b1?).(which-
f3c0 6b 65 79 2d 2d 73 74 72 69 6e 67 3c 20 61 20 62 20 61 6c 70 68 61 29 29 0a 20 20 20 20 20 20 20 key--string<.a.b.alpha))........
f3e0 20 20 20 20 20 28 28 6f 72 20 61 31 3f 20 62 31 3f 29 20 61 31 3f 29 0a 20 20 20 20 20 20 20 20 .....((or.a1?.b1?).a1?).........
f400 20 20 20 20 28 28 61 6e 64 20 61 66 6e 3f 20 62 66 6e 3f 29 0a 20 20 20 20 20 20 20 20 20 20 20 ....((and.afn?.bfn?)............
f420 20 20 28 3c 20 28 73 74 72 69 6e 67 2d 74 6f 2d 6e 75 6d 62 65 72 0a 20 20 20 20 20 20 20 20 20 ..(<.(string-to-number..........
f440 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 69 6e ........(replace-regexp-in-strin
f460 67 20 22 3c 66 5c 5c 28 5b 30 2d 39 5d 2b 5c 5c 29 3e 22 20 22 5c 5c 31 22 20 61 29 29 0a 20 20 g."<f\\([0-9]+\\)>"."\\1".a))...
f480 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 74 72 69 6e 67 2d 74 6f 2d 6e 75 6d 62 65 72 0a ..............(string-to-number.
f4a0 20 20 20 20 20 20 20 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 .................(replace-regexp
f4c0 2d 69 6e 2d 73 74 72 69 6e 67 20 22 3c 66 5c 5c 28 5b 30 2d 39 5d 2b 5c 5c 29 3e 22 20 22 5c 5c -in-string."<f\\([0-9]+\\)>"."\\
f4e0 31 22 20 62 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 28 6f 72 20 61 66 6e 3f 20 62 1".b)))).............((or.afn?.b
f500 66 6e 3f 29 20 61 66 6e 3f 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 28 61 6e 64 20 61 70 72 fn?).afn?).............((and.apr
f520 3f 20 62 70 72 3f 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 73 74 72 69 6e 67 ?.bpr?)..............(if.(string
f540 2d 65 71 75 61 6c 20 28 73 75 62 73 74 72 69 6e 67 20 61 20 30 20 32 29 20 28 73 75 62 73 74 72 -equal.(substring.a.0.2).(substr
f560 69 6e 67 20 62 20 30 20 32 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 ing.b.0.2))..................(wh
f580 69 63 68 2d 6b 65 79 2d 2d 6b 65 79 2d 64 65 73 63 72 69 70 74 69 6f 6e 3c 0a 20 20 20 20 20 20 ich-key--key-description<.......
f5a0 20 20 20 20 20 20 20 20 20 20 20 20 28 73 75 62 73 74 72 69 6e 67 20 61 20 32 29 20 28 73 75 62 ............(substring.a.2).(sub
f5c0 73 74 72 69 6e 67 20 62 20 32 29 20 61 6c 70 68 61 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 string.b.2).alpha)..............
f5e0 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 73 74 72 69 6e 67 3c 20 61 20 62 20 61 6c 70 68 61 29 ..(which-key--string<.a.b.alpha)
f600 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 28 6f 72 20 61 70 72 3f 20 62 70 72 3f 29 20 61 )).............((or.apr?.bpr?).a
f620 70 72 3f 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 74 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d pr?).............(t.(which-key--
f640 73 74 72 69 6e 67 3c 20 61 20 62 20 61 6c 70 68 61 29 29 29 29 29 29 0a 0a 28 64 65 66 73 75 62 string<.a.b.alpha))))))..(defsub
f660 73 74 20 77 68 69 63 68 2d 6b 65 79 2d 6b 65 79 2d 6f 72 64 65 72 2d 61 6c 70 68 61 20 28 61 63 st.which-key-key-order-alpha.(ac
f680 6f 6e 73 20 62 63 6f 6e 73 29 0a 20 20 22 4f 72 64 65 72 20 6b 65 79 20 64 65 73 63 72 69 70 74 ons.bcons)..."Order.key.descript
f6a0 69 6f 6e 73 20 41 20 61 6e 64 20 42 2e 0a 4f 72 64 65 72 20 69 73 20 6c 65 78 69 63 6f 67 72 61 ions.A.and.B..Order.is.lexicogra
f6c0 70 68 69 63 20 77 69 74 68 69 6e 20 61 20 5c 22 63 6c 61 73 73 5c 22 2c 20 77 68 65 72 65 20 74 phic.within.a.\"class\",.where.t
f6e0 68 65 20 63 6c 61 73 73 65 73 20 61 6e 64 0a 74 68 65 20 6f 72 64 65 72 69 6e 67 20 6f 66 20 63 he.classes.and.the.ordering.of.c
f700 6c 61 73 73 65 73 20 61 72 65 20 6c 69 73 74 65 64 20 62 65 6c 6f 77 2e 0a 0a 73 70 65 63 69 61 lasses.are.listed.below...specia
f720 6c 20 28 53 50 43 2c 54 41 42 2c 2e 2e 2e 29 20 3c 20 73 69 6e 67 6c 65 20 63 68 61 72 20 3c 20 l.(SPC,TAB,...).<.single.char.<.
f740 6d 6f 64 20 28 43 2d 2c 4d 2d 2c 2e 2e 2e 29 20 3c 20 6f 74 68 65 72 2e 0a 53 6f 72 74 73 20 73 mod.(C-,M-,...).<.other..Sorts.s
f760 69 6e 67 6c 65 20 63 68 61 72 61 63 74 65 72 73 20 61 6c 70 68 61 62 65 74 69 63 61 6c 6c 79 20 ingle.characters.alphabetically.
f780 77 69 74 68 20 6c 6f 77 65 72 63 61 73 65 20 63 6f 6d 69 6e 67 0a 62 65 66 6f 72 65 20 75 70 70 with.lowercase.coming.before.upp
f7a0 65 72 2e 22 0a 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 6b 65 79 2d 64 65 73 63 72 69 70 74 69 er."...(which-key--key-descripti
f7c0 6f 6e 3c 20 28 63 61 72 20 61 63 6f 6e 73 29 20 28 63 61 72 20 62 63 6f 6e 73 29 20 74 29 29 0a on<.(car.acons).(car.bcons).t)).
f7e0 0a 28 64 65 66 73 75 62 73 74 20 77 68 69 63 68 2d 6b 65 79 2d 6b 65 79 2d 6f 72 64 65 72 20 28 .(defsubst.which-key-key-order.(
f800 61 63 6f 6e 73 20 62 63 6f 6e 73 29 0a 20 20 22 4f 72 64 65 72 20 6b 65 79 20 64 65 73 63 72 69 acons.bcons)..."Order.key.descri
f820 70 74 69 6f 6e 73 20 41 20 61 6e 64 20 42 2e 0a 4f 72 64 65 72 20 69 73 20 6c 65 78 69 63 6f 67 ptions.A.and.B..Order.is.lexicog
f840 72 61 70 68 69 63 20 77 69 74 68 69 6e 20 61 20 5c 22 63 6c 61 73 73 5c 22 2c 20 77 68 65 72 65 raphic.within.a.\"class\",.where
f860 20 74 68 65 20 63 6c 61 73 73 65 73 20 61 6e 64 0a 74 68 65 20 6f 72 64 65 72 69 6e 67 20 6f 66 .the.classes.and.the.ordering.of
f880 20 63 6c 61 73 73 65 73 20 61 72 65 20 6c 69 73 74 65 64 20 62 65 6c 6f 77 2e 0a 0a 73 70 65 63 .classes.are.listed.below...spec
f8a0 69 61 6c 20 28 53 50 43 2c 54 41 42 2c 2e 2e 2e 29 20 3c 20 73 69 6e 67 6c 65 20 63 68 61 72 20 ial.(SPC,TAB,...).<.single.char.
f8c0 3c 20 6d 6f 64 20 28 43 2d 2c 4d 2d 2c 2e 2e 2e 29 20 3c 20 6f 74 68 65 72 2e 22 0a 20 20 28 77 <.mod.(C-,M-,...).<.other."...(w
f8e0 68 69 63 68 2d 6b 65 79 2d 2d 6b 65 79 2d 64 65 73 63 72 69 70 74 69 6f 6e 3c 20 28 63 61 72 20 hich-key--key-description<.(car.
f900 61 63 6f 6e 73 29 20 28 63 61 72 20 62 63 6f 6e 73 29 29 29 0a 0a 28 64 65 66 73 75 62 73 74 20 acons).(car.bcons)))..(defsubst.
f920 77 68 69 63 68 2d 6b 65 79 2d 64 65 73 63 72 69 70 74 69 6f 6e 2d 6f 72 64 65 72 20 28 61 63 6f which-key-description-order.(aco
f940 6e 73 20 62 63 6f 6e 73 29 0a 20 20 22 4f 72 64 65 72 20 64 65 73 63 72 69 70 74 69 6f 6e 73 20 ns.bcons)..."Order.descriptions.
f960 6f 66 20 41 20 61 6e 64 20 42 2e 0a 55 73 65 73 20 60 73 74 72 69 6e 67 2d 6c 65 73 73 70 27 20 of.A.and.B..Uses.`string-lessp'.
f980 61 66 74 65 72 20 61 70 70 6c 79 69 6e 67 20 6c 6f 77 65 72 63 61 73 65 2e 22 0a 20 20 28 73 74 after.applying.lowercase."...(st
f9a0 72 69 6e 67 2d 6c 65 73 73 70 20 28 64 6f 77 6e 63 61 73 65 20 28 63 64 72 20 61 63 6f 6e 73 29 ring-lessp.(downcase.(cdr.acons)
f9c0 29 20 28 64 6f 77 6e 63 61 73 65 20 28 63 64 72 20 62 63 6f 6e 73 29 29 29 29 0a 0a 28 64 65 66 ).(downcase.(cdr.bcons))))..(def
f9e0 73 75 62 73 74 20 77 68 69 63 68 2d 6b 65 79 2d 2d 67 72 6f 75 70 2d 70 20 28 64 65 73 63 72 69 subst.which-key--group-p.(descri
fa00 70 74 69 6f 6e 29 0a 20 20 28 6f 72 20 28 73 74 72 69 6e 67 2d 65 71 75 61 6c 20 64 65 73 63 72 ption)...(or.(string-equal.descr
fa20 69 70 74 69 6f 6e 20 22 70 72 65 66 69 78 22 29 0a 20 20 20 20 20 20 28 73 74 72 69 6e 67 2d 6d iption."prefix").......(string-m
fa40 61 74 63 68 2d 70 20 22 5e 67 72 6f 75 70 3a 22 20 64 65 73 63 72 69 70 74 69 6f 6e 29 0a 20 20 atch-p."^group:".description)...
fa60 20 20 20 20 28 6b 65 79 6d 61 70 70 20 28 69 6e 74 65 72 6e 20 64 65 73 63 72 69 70 74 69 6f 6e ....(keymapp.(intern.description
fa80 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 70 72 65 66 69 78 2d 74 68 ))))..(defun.which-key-prefix-th
faa0 65 6e 2d 6b 65 79 2d 6f 72 64 65 72 20 28 61 63 6f 6e 73 20 62 63 6f 6e 73 29 0a 20 20 22 4f 72 en-key-order.(acons.bcons)..."Or
fac0 64 65 72 20 70 72 65 66 69 78 65 73 20 62 65 66 6f 72 65 20 6e 6f 6e 2d 70 72 65 66 69 78 65 73 der.prefixes.before.non-prefixes
fae0 2e 0a 57 69 74 68 69 6e 20 74 68 65 73 65 20 63 61 74 65 67 6f 72 69 65 73 20 6f 72 64 65 72 20 ..Within.these.categories.order.
fb00 75 73 69 6e 67 20 60 77 68 69 63 68 2d 6b 65 79 2d 6b 65 79 2d 6f 72 64 65 72 27 2e 22 0a 20 20 using.`which-key-key-order'."...
fb20 28 6c 65 74 20 28 28 61 70 72 65 66 3f 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 67 72 6f 75 70 2d (let.((apref?.(which-key--group-
fb40 70 20 28 63 64 72 20 61 63 6f 6e 73 29 29 29 0a 20 20 20 20 20 20 20 20 28 62 70 72 65 66 3f 20 p.(cdr.acons))).........(bpref?.
fb60 28 77 68 69 63 68 2d 6b 65 79 2d 2d 67 72 6f 75 70 2d 70 20 28 63 64 72 20 62 63 6f 6e 73 29 29 (which-key--group-p.(cdr.bcons))
fb80 29 29 0a 20 20 20 20 28 69 66 20 28 6e 6f 74 20 28 65 71 20 61 70 72 65 66 3f 20 62 70 72 65 66 )).....(if.(not.(eq.apref?.bpref
fba0 3f 29 29 0a 20 20 20 20 20 20 20 20 28 61 6e 64 20 28 6e 6f 74 20 61 70 72 65 66 3f 29 20 62 70 ?)).........(and.(not.apref?).bp
fbc0 72 65 66 3f 29 0a 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 6b 65 79 2d 6f 72 64 65 72 ref?).......(which-key-key-order
fbe0 20 61 63 6f 6e 73 20 62 63 6f 6e 73 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b .acons.bcons))))..(defun.which-k
fc00 65 79 2d 70 72 65 66 69 78 2d 74 68 65 6e 2d 6b 65 79 2d 6f 72 64 65 72 2d 72 65 76 65 72 73 65 ey-prefix-then-key-order-reverse
fc20 20 28 61 63 6f 6e 73 20 62 63 6f 6e 73 29 0a 20 20 22 4f 72 64 65 72 20 70 72 65 66 69 78 65 73 .(acons.bcons)..."Order.prefixes
fc40 20 62 65 66 6f 72 65 20 6e 6f 6e 2d 70 72 65 66 69 78 65 73 2e 0a 57 69 74 68 69 6e 20 74 68 65 .before.non-prefixes..Within.the
fc60 73 65 20 63 61 74 65 67 6f 72 69 65 73 20 6f 72 64 65 72 20 75 73 69 6e 67 20 60 77 68 69 63 68 se.categories.order.using.`which
fc80 2d 6b 65 79 2d 6b 65 79 2d 6f 72 64 65 72 27 2e 22 0a 20 20 28 6c 65 74 20 28 28 61 70 72 65 66 -key-key-order'."...(let.((apref
fca0 3f 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 67 72 6f 75 70 2d 70 20 28 63 64 72 20 61 63 6f 6e 73 ?.(which-key--group-p.(cdr.acons
fcc0 29 29 29 0a 20 20 20 20 20 20 20 20 28 62 70 72 65 66 3f 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d ))).........(bpref?.(which-key--
fce0 67 72 6f 75 70 2d 70 20 28 63 64 72 20 62 63 6f 6e 73 29 29 29 29 0a 20 20 20 20 28 69 66 20 28 group-p.(cdr.bcons)))).....(if.(
fd00 6e 6f 74 20 28 65 71 20 61 70 72 65 66 3f 20 62 70 72 65 66 3f 29 29 0a 20 20 20 20 20 20 20 20 not.(eq.apref?.bpref?)).........
fd20 28 61 6e 64 20 61 70 72 65 66 3f 20 28 6e 6f 74 20 62 70 72 65 66 3f 29 29 0a 20 20 20 20 20 20 (and.apref?.(not.bpref?)).......
fd40 28 77 68 69 63 68 2d 6b 65 79 2d 6b 65 79 2d 6f 72 64 65 72 20 61 63 6f 6e 73 20 62 63 6f 6e 73 (which-key-key-order.acons.bcons
fd60 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 6c 6f 63 61 6c 2d 74 68 65 ))))..(defun.which-key-local-the
fd80 6e 2d 6b 65 79 2d 6f 72 64 65 72 20 28 61 63 6f 6e 73 20 62 63 6f 6e 73 29 0a 20 20 22 4f 72 64 n-key-order.(acons.bcons)..."Ord
fda0 65 72 20 6c 6f 63 61 6c 20 62 69 6e 64 69 6e 67 73 20 62 65 66 6f 72 65 20 6e 6f 6e 2d 6c 6f 63 er.local.bindings.before.non-loc
fdc0 61 6c 20 6f 6e 65 73 2e 0a 57 69 74 68 69 6e 20 74 68 65 73 65 20 63 61 74 65 67 6f 72 69 65 73 al.ones..Within.these.categories
fde0 20 6f 72 64 65 72 20 75 73 69 6e 67 20 60 77 68 69 63 68 2d 6b 65 79 2d 6b 65 79 2d 6f 72 64 65 .order.using.`which-key-key-orde
fe00 72 27 2e 22 0a 20 20 28 6c 65 74 20 28 28 61 6c 6f 63 3f 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d r'."...(let.((aloc?.(which-key--
fe20 6c 6f 63 61 6c 2d 62 69 6e 64 69 6e 67 2d 70 20 61 63 6f 6e 73 29 29 0a 20 20 20 20 20 20 20 20 local-binding-p.acons)).........
fe40 28 62 6c 6f 63 3f 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 6c 6f 63 61 6c 2d 62 69 6e 64 69 6e 67 (bloc?.(which-key--local-binding
fe60 2d 70 20 62 63 6f 6e 73 29 29 29 0a 20 20 20 20 28 69 66 20 28 6e 6f 74 20 28 65 71 20 61 6c 6f -p.bcons))).....(if.(not.(eq.alo
fe80 63 3f 20 62 6c 6f 63 3f 29 29 0a 20 20 20 20 20 20 20 20 28 61 6e 64 20 61 6c 6f 63 3f 20 28 6e c?.bloc?)).........(and.aloc?.(n
fea0 6f 74 20 62 6c 6f 63 3f 29 29 0a 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 6b 65 79 2d ot.bloc?)).......(which-key-key-
fec0 6f 72 64 65 72 20 61 63 6f 6e 73 20 62 63 6f 6e 73 29 29 29 29 0a 0a 3b 3b 3b 20 46 75 6e 63 74 order.acons.bcons))))..;;;.Funct
fee0 69 6f 6e 73 20 66 6f 72 20 72 65 74 72 69 65 76 69 6e 67 20 61 6e 64 20 66 6f 72 6d 61 74 74 69 ions.for.retrieving.and.formatti
ff00 6e 67 20 6b 65 79 73 0a 0a 28 64 65 66 73 75 62 73 74 20 77 68 69 63 68 2d 6b 65 79 2d 2d 73 74 ng.keys..(defsubst.which-key--st
ff20 72 69 6e 67 2d 77 69 64 74 68 20 28 6d 61 79 62 65 2d 73 74 72 69 6e 67 29 0a 20 20 22 49 66 20 ring-width.(maybe-string)..."If.
ff40 4d 41 59 42 45 2d 53 54 52 49 4e 47 20 69 73 20 61 20 73 74 72 69 6e 67 20 75 73 65 20 60 77 68 MAYBE-STRING.is.a.string.use.`wh
ff60 69 63 68 2d 6b 65 79 2d 2d 73 74 72 69 6e 67 2d 77 69 64 74 68 27 20 6f 2f 77 20 72 65 74 75 72 ich-key--string-width'.o/w.retur
ff80 6e 20 30 2e 22 0a 20 20 28 69 66 20 28 73 74 72 69 6e 67 70 20 6d 61 79 62 65 2d 73 74 72 69 6e n.0."...(if.(stringp.maybe-strin
ffa0 67 29 20 28 73 74 72 69 6e 67 2d 77 69 64 74 68 20 6d 61 79 62 65 2d 73 74 72 69 6e 67 29 20 30 g).(string-width.maybe-string).0
ffc0 29 29 0a 0a 28 64 65 66 73 75 62 73 74 20 77 68 69 63 68 2d 6b 65 79 2d 2d 62 75 74 6c 61 73 74 ))..(defsubst.which-key--butlast
ffe0 2d 73 74 72 69 6e 67 20 28 73 74 72 29 0a 20 20 28 73 74 72 69 6e 67 2d 6a 6f 69 6e 20 28 62 75 -string.(str)...(string-join.(bu
10000 74 6c 61 73 74 20 28 73 70 6c 69 74 2d 73 74 72 69 6e 67 20 73 74 72 29 29 20 22 20 22 29 29 0a tlast.(split-string.str)).".")).
10020 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 6d 61 74 63 68 2d 72 65 70 6c 61 63 65 .(defun.which-key--match-replace
10040 6d 65 6e 74 20 28 6b 65 79 2d 62 69 6e 64 69 6e 67 20 72 65 70 6c 61 63 65 6d 65 6e 74 29 0a 20 ment.(key-binding.replacement)..
10060 20 3b 3b 20 74 68 65 73 65 20 61 72 65 20 6d 6f 64 65 20 73 70 65 63 69 66 69 63 20 6f 6e 65 73 .;;.these.are.mode.specific.ones
10080 20 74 6f 20 69 67 6e 6f 72 65 2e 20 54 68 65 20 6d 6f 64 65 20 73 70 65 63 69 66 69 63 20 63 61 .to.ignore..The.mode.specific.ca
100a0 73 65 20 69 73 0a 20 20 3b 3b 20 68 61 6e 64 6c 65 64 20 69 6e 20 74 68 65 20 73 65 6c 65 63 74 se.is...;;.handled.in.the.select
100c0 69 6f 6e 20 6f 66 20 61 6c 69 73 74 0a 20 20 28 77 68 65 6e 20 28 61 6e 64 20 28 63 6f 6e 73 70 ion.of.alist...(when.(and.(consp
100e0 20 6b 65 79 2d 62 69 6e 64 69 6e 67 29 20 28 6e 6f 74 20 28 73 79 6d 62 6f 6c 70 20 28 63 61 72 .key-binding).(not.(symbolp.(car
10100 20 72 65 70 6c 61 63 65 6d 65 6e 74 29 29 29 29 0a 20 20 20 20 28 6c 65 74 20 28 28 6b 65 79 2d .replacement)))).....(let.((key-
10120 72 65 67 65 78 70 20 28 63 61 61 72 20 72 65 70 6c 61 63 65 6d 65 6e 74 29 29 0a 20 20 20 20 20 regexp.(caar.replacement))......
10140 20 20 20 20 20 28 62 69 6e 64 69 6e 67 2d 72 65 67 65 78 70 20 28 63 64 61 72 20 72 65 70 6c 61 .....(binding-regexp.(cdar.repla
10160 63 65 6d 65 6e 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 63 61 73 65 2d 66 6f 6c 64 2d 73 65 cement))...........(case-fold-se
10180 61 72 63 68 20 6e 69 6c 29 29 0a 20 20 20 20 20 20 28 61 6e 64 20 28 6f 72 20 28 6e 75 6c 6c 20 arch.nil)).......(and.(or.(null.
101a0 6b 65 79 2d 72 65 67 65 78 70 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 74 72 69 key-regexp)................(stri
101c0 6e 67 2d 6d 61 74 63 68 2d 70 20 6b 65 79 2d 72 65 67 65 78 70 0a 20 20 20 20 20 20 20 20 20 20 ng-match-p.key-regexp...........
101e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 61 72 20 6b 65 79 2d 62 69 .....................(car.key-bi
10200 6e 64 69 6e 67 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 20 28 6e 75 6c 6c 20 62 69 nding)))............(or.(null.bi
10220 6e 64 69 6e 67 2d 72 65 67 65 78 70 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 74 nding-regexp)................(st
10240 72 69 6e 67 2d 6d 61 74 63 68 2d 70 20 62 69 6e 64 69 6e 67 2d 72 65 67 65 78 70 0a 20 20 20 20 ring-match-p.binding-regexp.....
10260 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 64 72 20 ...........................(cdr.
10280 6b 65 79 2d 62 69 6e 64 69 6e 67 29 29 29 29 29 29 29 0a 0a 28 64 65 66 73 75 62 73 74 20 77 68 key-binding)))))))..(defsubst.wh
102a0 69 63 68 2d 6b 65 79 2d 2d 72 65 70 6c 61 63 65 2d 69 6e 2d 62 69 6e 64 69 6e 67 20 28 6b 65 79 ich-key--replace-in-binding.(key
102c0 2d 62 69 6e 64 69 6e 67 20 72 65 70 6c 29 0a 20 20 28 63 6f 6e 64 20 28 28 6f 72 20 28 6e 6f 74 -binding.repl)...(cond.((or.(not
102e0 20 28 63 6f 6e 73 70 20 72 65 70 6c 29 29 20 28 6e 75 6c 6c 20 28 63 64 72 20 72 65 70 6c 29 29 .(consp.repl)).(null.(cdr.repl))
10300 29 0a 20 20 20 20 20 20 20 20 20 6b 65 79 2d 62 69 6e 64 69 6e 67 29 0a 20 20 20 20 20 20 20 20 )..........key-binding).........
10320 28 28 66 75 6e 63 74 69 6f 6e 70 20 28 63 64 72 20 72 65 70 6c 29 29 0a 20 20 20 20 20 20 20 20 ((functionp.(cdr.repl)).........
10340 20 28 66 75 6e 63 61 6c 6c 20 28 63 64 72 20 72 65 70 6c 29 20 6b 65 79 2d 62 69 6e 64 69 6e 67 .(funcall.(cdr.repl).key-binding
10360 29 29 0a 20 20 20 20 20 20 20 20 28 28 63 6f 6e 73 70 20 28 63 64 72 20 72 65 70 6c 29 29 0a 20 )).........((consp.(cdr.repl))..
10380 20 20 20 20 20 20 20 20 28 63 6f 6e 73 0a 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 64 20 28 28 ........(cons...........(cond.((
103a0 61 6e 64 20 28 63 61 61 72 20 72 65 70 6c 29 20 28 63 61 64 72 20 72 65 70 6c 29 29 0a 20 20 20 and.(caar.repl).(cadr.repl))....
103c0 20 20 20 20 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 ..............(replace-regexp-in
103e0 2d 73 74 72 69 6e 67 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 61 61 72 20 -string...................(caar.
10400 72 65 70 6c 29 20 28 63 61 64 72 20 72 65 70 6c 29 20 28 63 61 72 20 6b 65 79 2d 62 69 6e 64 69 repl).(cadr.repl).(car.key-bindi
10420 6e 67 29 20 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 63 61 64 72 20 72 ng).t)).................((cadr.r
10440 65 70 6c 29 20 28 63 61 64 72 20 72 65 70 6c 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 epl).(cadr.repl))...............
10460 20 20 28 74 20 28 63 61 72 20 6b 65 79 2d 62 69 6e 64 69 6e 67 29 29 29 0a 20 20 20 20 20 20 20 ..(t.(car.key-binding)))........
10480 20 20 20 28 63 6f 6e 64 20 28 28 61 6e 64 20 28 63 64 61 72 20 72 65 70 6c 29 20 28 63 64 64 72 ...(cond.((and.(cdar.repl).(cddr
104a0 20 72 65 70 6c 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 72 65 70 6c 61 63 .repl))..................(replac
104c0 65 2d 72 65 67 65 78 70 2d 69 6e 2d 73 74 72 69 6e 67 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 e-regexp-in-string..............
104e0 20 20 20 20 20 28 63 64 61 72 20 72 65 70 6c 29 20 28 63 64 64 72 20 72 65 70 6c 29 20 28 63 64 .....(cdar.repl).(cddr.repl).(cd
10500 72 20 6b 65 79 2d 62 69 6e 64 69 6e 67 29 20 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 r.key-binding).t))..............
10520 20 20 20 28 28 63 64 64 72 20 72 65 70 6c 29 20 28 63 64 64 72 20 72 65 70 6c 29 29 0a 20 20 20 ...((cddr.repl).(cddr.repl))....
10540 20 20 20 20 20 20 20 20 20 20 20 20 20 28 74 20 28 63 64 72 20 6b 65 79 2d 62 69 6e 64 69 6e 67 .............(t.(cdr.key-binding
10560 29 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 72 65 70 6c 61 )))))))..(defun.which-key--repla
10580 63 65 2d 69 6e 2d 72 65 70 6c 2d 6c 69 73 74 2d 6f 6e 63 65 20 28 6b 65 79 2d 62 69 6e 64 69 6e ce-in-repl-list-once.(key-bindin
105a0 67 20 72 65 70 6c 73 29 0a 20 20 28 63 6c 2d 64 6f 6c 69 73 74 20 28 72 65 70 6c 20 72 65 70 6c g.repls)...(cl-dolist.(repl.repl
105c0 73 29 0a 20 20 20 20 28 77 68 65 6e 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 6d 61 74 63 68 2d 72 s).....(when.(which-key--match-r
105e0 65 70 6c 61 63 65 6d 65 6e 74 20 6b 65 79 2d 62 69 6e 64 69 6e 67 20 72 65 70 6c 29 0a 20 20 20 eplacement.key-binding.repl)....
10600 20 20 20 28 63 6c 2d 72 65 74 75 72 6e 20 60 28 72 65 70 6c 61 63 65 64 20 2e 20 2c 28 77 68 69 ...(cl-return.`(replaced...,(whi
10620 63 68 2d 6b 65 79 2d 2d 72 65 70 6c 61 63 65 2d 69 6e 2d 62 69 6e 64 69 6e 67 20 6b 65 79 2d 62 ch-key--replace-in-binding.key-b
10640 69 6e 64 69 6e 67 20 72 65 70 6c 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d inding.repl))))))..(defun.which-
10660 6b 65 79 2d 2d 72 65 70 6c 61 63 65 2d 69 6e 2d 72 65 70 6c 2d 6c 69 73 74 2d 6d 61 6e 79 20 28 key--replace-in-repl-list-many.(
10680 6b 65 79 2d 62 69 6e 64 69 6e 67 20 72 65 70 6c 73 29 0a 20 20 28 6c 65 74 20 28 66 6f 75 6e 64 key-binding.repls)...(let.(found
106a0 29 0a 20 20 20 20 28 64 6f 6c 69 73 74 20 28 72 65 70 6c 20 72 65 70 6c 73 29 0a 20 20 20 20 20 ).....(dolist.(repl.repls)......
106c0 20 28 77 68 65 6e 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 6d 61 74 63 68 2d 72 65 70 6c 61 63 65 .(when.(which-key--match-replace
106e0 6d 65 6e 74 20 6b 65 79 2d 62 69 6e 64 69 6e 67 20 72 65 70 6c 29 0a 20 20 20 20 20 20 20 20 28 ment.key-binding.repl).........(
10700 73 65 74 71 20 66 6f 75 6e 64 20 74 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 71 20 6b 65 79 2d setq.found.t).........(setq.key-
10720 62 69 6e 64 69 6e 67 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 72 65 70 6c 61 63 65 2d 69 6e 2d 62 binding.(which-key--replace-in-b
10740 69 6e 64 69 6e 67 20 6b 65 79 2d 62 69 6e 64 69 6e 67 20 72 65 70 6c 29 29 29 29 0a 20 20 20 20 inding.key-binding.repl)))).....
10760 28 77 68 65 6e 20 66 6f 75 6e 64 20 60 28 72 65 70 6c 61 63 65 64 20 2e 20 2c 6b 65 79 2d 62 69 (when.found.`(replaced...,key-bi
10780 6e 64 69 6e 67 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 6d 61 79 nding))))..(defun.which-key--may
107a0 62 65 2d 72 65 70 6c 61 63 65 20 28 6b 65 79 2d 62 69 6e 64 69 6e 67 29 0a 20 20 22 55 73 65 20 be-replace.(key-binding)..."Use.
107c0 60 77 68 69 63 68 2d 6b 65 79 2d 72 65 70 6c 61 63 65 6d 65 6e 74 2d 61 6c 69 73 74 27 20 74 6f `which-key-replacement-alist'.to
107e0 20 6d 61 79 62 65 20 72 65 70 6c 61 63 65 20 4b 45 59 2d 42 49 4e 44 49 4e 47 2e 0a 4b 45 59 2d .maybe.replace.KEY-BINDING..KEY-
10800 42 49 4e 44 49 4e 47 20 69 73 20 61 20 63 6f 6e 73 20 63 65 6c 6c 20 6f 66 20 74 68 65 20 66 6f BINDING.is.a.cons.cell.of.the.fo
10820 72 6d 20 5c 28 4b 45 59 20 2e 20 42 49 4e 44 49 4e 47 5c 29 20 65 61 63 68 20 6f 66 0a 77 68 69 rm.\(KEY...BINDING\).each.of.whi
10840 63 68 20 61 72 65 20 73 74 72 69 6e 67 73 2e 20 20 4b 45 59 20 69 73 20 6f 66 20 74 68 65 20 66 ch.are.strings...KEY.is.of.the.f
10860 6f 72 6d 20 70 72 6f 64 75 63 65 64 20 62 79 20 60 6b 65 79 2d 62 69 6e 64 69 6e 67 27 2e 22 0a orm.produced.by.`key-binding'.".
10880 20 20 28 6c 65 74 2a 20 28 28 72 65 70 6c 61 63 65 72 20 28 69 66 20 77 68 69 63 68 2d 6b 65 79 ..(let*.((replacer.(if.which-key
108a0 2d 61 6c 6c 6f 77 2d 6d 75 6c 74 69 70 6c 65 2d 72 65 70 6c 61 63 65 6d 65 6e 74 73 0a 20 20 20 -allow-multiple-replacements....
108c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 27 77 68 69 63 68 2d 6b 65 79 2d ....................#'which-key-
108e0 2d 72 65 70 6c 61 63 65 2d 69 6e 2d 72 65 70 6c 2d 6c 69 73 74 2d 6d 61 6e 79 0a 20 20 20 20 20 -replace-in-repl-list-many......
10900 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 27 77 68 69 63 68 2d 6b 65 79 2d 2d 72 65 70 ................#'which-key--rep
10920 6c 61 63 65 2d 69 6e 2d 72 65 70 6c 2d 6c 69 73 74 2d 6f 6e 63 65 29 29 29 0a 20 20 20 20 28 70 lace-in-repl-list-once))).....(p
10940 63 61 73 65 0a 20 20 20 20 20 20 20 20 28 61 70 70 6c 79 20 72 65 70 6c 61 63 65 72 0a 20 20 20 case.........(apply.replacer....
10960 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 73 74 20 6b 65 79 2d 62 69 6e 64 69 6e 67 0a 20 20 ............(list.key-binding...
10980 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 64 72 2d 73 61 66 65 20 28 61 73 ...................(cdr-safe.(as
109a0 73 71 20 6d 61 6a 6f 72 2d 6d 6f 64 65 20 77 68 69 63 68 2d 6b 65 79 2d 72 65 70 6c 61 63 65 6d sq.major-mode.which-key-replacem
109c0 65 6e 74 2d 61 6c 69 73 74 29 29 29 29 0a 20 20 20 20 20 20 28 60 28 72 65 70 6c 61 63 65 64 20 ent-alist)))).......(`(replaced.
109e0 2e 20 2c 72 65 70 6c 29 0a 20 20 20 20 20 20 20 28 69 66 20 77 68 69 63 68 2d 6b 65 79 2d 61 6c ..,repl)........(if.which-key-al
10a00 6c 6f 77 2d 6d 75 6c 74 69 70 6c 65 2d 72 65 70 6c 61 63 65 6d 65 6e 74 73 0a 20 20 20 20 20 20 low-multiple-replacements.......
10a20 20 20 20 20 20 28 70 63 61 73 65 20 28 61 70 70 6c 79 20 72 65 70 6c 61 63 65 72 20 28 6c 69 73 .....(pcase.(apply.replacer.(lis
10a40 74 20 72 65 70 6c 20 77 68 69 63 68 2d 6b 65 79 2d 72 65 70 6c 61 63 65 6d 65 6e 74 2d 61 6c 69 t.repl.which-key-replacement-ali
10a60 73 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 60 28 72 65 70 6c 61 63 65 64 20 2e 20 st))..............(`(replaced...
10a80 2c 72 65 70 6c 29 20 72 65 70 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 27 28 29 20 72 ,repl).repl)..............('().r
10aa0 65 70 6c 29 29 0a 20 20 20 20 20 20 20 20 20 72 65 70 6c 29 29 0a 20 20 20 20 20 20 28 27 28 29 epl))..........repl)).......('()
10ac0 0a 20 20 20 20 20 20 20 28 70 63 61 73 65 20 28 61 70 70 6c 79 20 72 65 70 6c 61 63 65 72 20 28 ........(pcase.(apply.replacer.(
10ae0 6c 69 73 74 20 6b 65 79 2d 62 69 6e 64 69 6e 67 20 77 68 69 63 68 2d 6b 65 79 2d 72 65 70 6c 61 list.key-binding.which-key-repla
10b00 63 65 6d 65 6e 74 2d 61 6c 69 73 74 29 29 0a 20 20 20 20 20 20 20 20 20 28 60 28 72 65 70 6c 61 cement-alist))..........(`(repla
10b20 63 65 64 20 2e 20 2c 72 65 70 6c 29 20 72 65 70 6c 29 0a 20 20 20 20 20 20 20 20 20 28 27 28 29 ced...,repl).repl)..........('()
10b40 20 6b 65 79 2d 62 69 6e 64 69 6e 67 29 29 29 29 29 29 0a 0a 28 64 65 66 73 75 62 73 74 20 77 68 .key-binding))))))..(defsubst.wh
10b60 69 63 68 2d 6b 65 79 2d 2d 63 75 72 72 65 6e 74 2d 6b 65 79 2d 6c 69 73 74 20 28 26 6f 70 74 69 ich-key--current-key-list.(&opti
10b80 6f 6e 61 6c 20 6b 65 79 2d 73 74 72 29 0a 20 20 28 61 70 70 65 6e 64 20 28 6c 69 73 74 69 66 79 onal.key-str)...(append.(listify
10ba0 2d 6b 65 79 2d 73 65 71 75 65 6e 63 65 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 63 75 72 72 65 6e -key-sequence.(which-key--curren
10bc0 74 2d 70 72 65 66 69 78 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 6b 65 79 2d 73 t-prefix))...........(when.key-s
10be0 74 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 73 74 69 66 79 2d 6b 65 79 2d 73 65 71 75 tr.............(listify-key-sequ
10c00 65 6e 63 65 20 28 6b 62 64 20 6b 65 79 2d 73 74 72 29 29 29 29 29 0a 0a 28 64 65 66 73 75 62 73 ence.(kbd.key-str)))))..(defsubs
10c20 74 20 77 68 69 63 68 2d 6b 65 79 2d 2d 63 75 72 72 65 6e 74 2d 6b 65 79 2d 73 74 72 69 6e 67 20 t.which-key--current-key-string.
10c40 28 26 6f 70 74 69 6f 6e 61 6c 20 6b 65 79 2d 73 74 72 29 0a 20 20 28 6b 65 79 2d 64 65 73 63 72 (&optional.key-str)...(key-descr
10c60 69 70 74 69 6f 6e 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 63 75 72 72 65 6e 74 2d 6b 65 79 2d 6c iption.(which-key--current-key-l
10c80 69 73 74 20 6b 65 79 2d 73 74 72 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 ist.key-str)))..(defun.which-key
10ca0 2d 2d 6c 6f 63 61 6c 2d 62 69 6e 64 69 6e 67 2d 70 20 28 6b 65 79 64 65 73 63 29 0a 20 20 28 65 --local-binding-p.(keydesc)...(e
10cc0 71 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 73 61 66 65 2d 6c 6f 6f 6b 75 70 2d 6b 65 79 2d 64 65 q.(which-key--safe-lookup-key-de
10ce0 73 63 72 69 70 74 69 6f 6e 0a 20 20 20 20 20 20 20 28 63 75 72 72 65 6e 74 2d 6c 6f 63 61 6c 2d scription........(current-local-
10d00 6d 61 70 29 0a 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 63 75 72 72 65 6e 74 2d map)........(which-key--current-
10d20 6b 65 79 2d 73 74 72 69 6e 67 20 28 63 61 72 20 6b 65 79 64 65 73 63 29 29 29 0a 20 20 20 20 20 key-string.(car.keydesc)))......
10d40 20 28 69 6e 74 65 72 6e 20 28 63 64 72 20 6b 65 79 64 65 73 63 29 29 29 29 0a 0a 28 64 65 66 75 .(intern.(cdr.keydesc))))..(defu
10d60 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 6d 61 70 2d 62 69 6e 64 69 6e 67 2d 70 20 28 6d 61 70 20 n.which-key--map-binding-p.(map.
10d80 6b 65 79 64 65 73 63 29 0a 20 20 22 44 6f 65 73 20 4d 41 50 20 63 6f 6e 74 61 69 6e 20 4b 45 59 keydesc)..."Does.MAP.contain.KEY
10da0 44 45 53 43 20 3d 20 28 6b 65 79 20 2e 20 62 69 6e 64 69 6e 67 29 3f 22 0a 20 20 28 6f 72 0a 20 DESC.=.(key...binding)?"...(or..
10dc0 20 20 28 77 68 65 6e 20 28 62 6f 75 6e 64 2d 61 6e 64 2d 74 72 75 65 2d 70 20 65 76 69 6c 2d 73 ..(when.(bound-and-true-p.evil-s
10de0 74 61 74 65 29 0a 20 20 20 20 20 28 6c 65 74 20 28 28 6c 6f 6f 6b 75 70 0a 20 20 20 20 20 20 20 tate)......(let.((lookup........
10e00 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 73 61 66 65 2d 6c 6f 6f 6b 75 70 2d 6b 65 79 .....(which-key--safe-lookup-key
10e20 2d 64 65 73 63 72 69 70 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 61 70 0a 20 20 -description..............map...
10e40 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 63 75 72 72 65 6e 74 2d 6b ...........(which-key--current-k
10e60 65 79 2d 73 74 72 69 6e 67 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 6f 72 6d 61 74 20 ey-string...............(format.
10e80 22 3c 25 73 2d 73 74 61 74 65 3e 20 25 73 22 20 65 76 69 6c 2d 73 74 61 74 65 20 28 63 61 72 20 "<%s-state>.%s".evil-state.(car.
10ea0 6b 65 79 64 65 73 63 29 29 29 29 29 29 0a 20 20 20 20 20 20 20 28 6f 72 20 28 65 71 20 6c 6f 6f keydesc))))))........(or.(eq.loo
10ec0 6b 75 70 20 28 69 6e 74 65 72 6e 20 28 63 64 72 20 6b 65 79 64 65 73 63 29 29 29 0a 20 20 20 20 kup.(intern.(cdr.keydesc))).....
10ee0 20 20 20 20 20 20 20 28 61 6e 64 20 28 6b 65 79 6d 61 70 70 20 6c 6f 6f 6b 75 70 29 20 28 73 74 .......(and.(keymapp.lookup).(st
10f00 72 69 6e 67 3d 20 28 63 64 72 20 6b 65 79 64 65 73 63 29 20 22 50 72 65 66 69 78 20 43 6f 6d 6d ring=.(cdr.keydesc)."Prefix.Comm
10f20 61 6e 64 22 29 29 29 29 29 0a 20 20 20 28 6c 65 74 20 28 28 6c 6f 6f 6b 75 70 0a 20 20 20 20 20 and")))))....(let.((lookup......
10f40 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 73 61 66 65 2d 6c 6f 6f 6b 75 70 2d 6b 65 79 .....(which-key--safe-lookup-key
10f60 2d 64 65 73 63 72 69 70 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 6d 61 70 20 28 77 68 69 -description............map.(whi
10f80 63 68 2d 6b 65 79 2d 2d 63 75 72 72 65 6e 74 2d 6b 65 79 2d 73 74 72 69 6e 67 20 28 63 61 72 20 ch-key--current-key-string.(car.
10fa0 6b 65 79 64 65 73 63 29 29 29 29 29 0a 20 20 20 20 20 28 6f 72 20 28 65 71 20 6c 6f 6f 6b 75 70 keydesc)))))......(or.(eq.lookup
10fc0 20 28 69 6e 74 65 72 6e 20 28 63 64 72 20 6b 65 79 64 65 73 63 29 29 29 0a 20 20 20 20 20 20 20 .(intern.(cdr.keydesc)))........
10fe0 20 20 28 61 6e 64 20 28 6b 65 79 6d 61 70 70 20 6c 6f 6f 6b 75 70 29 20 28 73 74 72 69 6e 67 3d ..(and.(keymapp.lookup).(string=
11000 20 28 63 64 72 20 6b 65 79 64 65 73 63 29 20 22 50 72 65 66 69 78 20 43 6f 6d 6d 61 6e 64 22 29 .(cdr.keydesc)."Prefix.Command")
11020 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 6d 61 79 62 65 2d 67 )))))..(defun.which-key--maybe-g
11040 65 74 2d 70 72 65 66 69 78 2d 74 69 74 6c 65 20 28 6b 65 79 73 29 0a 20 20 22 4b 45 59 53 20 69 et-prefix-title.(keys)..."KEYS.i
11060 73 20 61 20 73 74 72 69 6e 67 20 70 72 6f 64 75 63 65 64 20 62 79 20 60 6b 65 79 2d 64 65 73 63 s.a.string.produced.by.`key-desc
11080 72 69 70 74 69 6f 6e 27 2e 0a 41 20 74 69 74 6c 65 20 69 73 20 70 6f 73 73 69 62 6c 79 20 72 65 ription'..A.title.is.possibly.re
110a0 74 75 72 6e 65 64 20 75 73 69 6e 67 0a 60 77 68 69 63 68 2d 6b 65 79 2d 2d 70 72 65 66 69 78 2d turned.using.`which-key--prefix-
110c0 74 69 74 6c 65 2d 61 6c 69 73 74 27 2e 20 20 41 6e 20 65 6d 70 74 79 20 73 74 72 69 6e 67 20 69 title-alist'...An.empty.string.i
110e0 73 20 72 65 74 75 72 6e 65 64 20 69 66 0a 6e 6f 20 74 69 74 6c 65 20 65 78 69 73 74 73 2e 22 0a s.returned.if.no.title.exists.".
11100 20 20 28 63 6f 6e 64 0a 20 20 20 28 28 6e 6f 74 20 28 73 74 72 69 6e 67 2d 65 71 75 61 6c 20 6b ..(cond....((not.(string-equal.k
11120 65 79 73 20 22 22 29 29 0a 20 20 20 20 28 6c 65 74 2a 20 28 28 74 69 74 6c 65 2d 72 65 73 0a 20 eys."")).....(let*.((title-res..
11140 20 20 20 20 20 20 20 20 20 20 20 28 63 64 72 2d 73 61 66 65 20 28 61 73 73 6f 63 2d 73 74 72 69 ...........(cdr-safe.(assoc-stri
11160 6e 67 20 6b 65 79 73 20 77 68 69 63 68 2d 6b 65 79 2d 2d 70 72 65 66 69 78 2d 74 69 74 6c 65 2d ng.keys.which-key--prefix-title-
11180 61 6c 69 73 74 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 72 65 70 6c 2d 72 65 73 0a 20 20 alist)))............(repl-res...
111a0 20 20 20 20 20 20 20 20 20 20 28 63 64 72 2d 73 61 66 65 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d ..........(cdr-safe.(which-key--
111c0 6d 61 79 62 65 2d 72 65 70 6c 61 63 65 20 28 63 6f 6e 73 20 6b 65 79 73 20 22 22 29 29 29 29 0a maybe-replace.(cons.keys."")))).
111e0 20 20 20 20 20 20 20 20 20 20 20 28 62 69 6e 64 69 6e 67 20 28 6b 65 79 2d 62 69 6e 64 69 6e 67 ...........(binding.(key-binding
11200 20 28 6b 62 64 20 6b 65 79 73 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 61 6c 74 65 72 6e .(kbd.keys)))............(altern
11220 61 74 65 20 28 77 68 65 6e 20 28 61 6e 64 20 62 69 6e 64 69 6e 67 20 28 73 79 6d 62 6f 6c 70 20 ate.(when.(and.binding.(symbolp.
11240 62 69 6e 64 69 6e 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 binding)).......................
11260 20 20 28 73 79 6d 62 6f 6c 2d 6e 61 6d 65 20 62 69 6e 64 69 6e 67 29 29 29 29 0a 20 20 20 20 20 ..(symbol-name.binding))))......
11280 20 28 63 6f 6e 64 20 28 74 69 74 6c 65 2d 72 65 73 20 74 69 74 6c 65 2d 72 65 73 29 0a 20 20 20 .(cond.(title-res.title-res)....
112a0 20 20 20 20 20 20 20 20 20 28 28 6e 6f 74 20 28 73 74 72 69 6e 67 2d 65 6d 70 74 79 2d 70 20 72 .........((not.(string-empty-p.r
112c0 65 70 6c 2d 72 65 73 29 29 20 72 65 70 6c 2d 72 65 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 epl-res)).repl-res).............
112e0 28 28 61 6e 64 20 28 65 71 20 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d 70 72 65 66 69 78 20 ((and.(eq.which-key-show-prefix.
11300 27 65 63 68 6f 29 20 61 6c 74 65 72 6e 61 74 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 61 'echo).alternate)..............a
11320 6c 74 65 72 6e 61 74 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 28 61 6e 64 20 28 6d 65 6d lternate).............((and.(mem
11340 62 65 72 20 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d 70 72 65 66 69 78 20 27 28 62 6f 74 74 ber.which-key-show-prefix.'(bott
11360 6f 6d 20 74 6f 70 20 6d 6f 64 65 2d 6c 69 6e 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 om.top.mode-line))..............
11380 20 20 20 20 20 28 65 71 20 77 68 69 63 68 2d 6b 65 79 2d 73 69 64 65 2d 77 69 6e 64 6f 77 2d 6c .....(eq.which-key-side-window-l
113a0 6f 63 61 74 69 6f 6e 20 27 62 6f 74 74 6f 6d 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ocation.'bottom)................
113c0 20 20 20 65 63 68 6f 2d 6b 65 79 73 74 72 6f 6b 65 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 ...echo-keystrokes).............
113e0 20 28 69 66 20 61 6c 74 65 72 6e 61 74 65 20 61 6c 74 65 72 6e 61 74 65 0a 20 20 20 20 20 20 20 .(if.alternate.alternate........
11400 20 20 20 20 20 20 20 20 28 63 6f 6e 63 61 74 20 22 46 6f 6c 6c 6f 77 69 6e 67 20 22 20 6b 65 79 ........(concat."Following.".key
11420 73 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 74 20 22 22 29 29 29 29 0a 20 20 20 28 74 s))).............(t.""))))....(t
11440 20 22 22 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 70 72 6f 70 65 72 ."")))..(defun.which-key--proper
11460 74 69 7a 65 20 28 73 74 72 69 6e 67 20 26 72 65 73 74 20 70 72 6f 70 65 72 74 69 65 73 29 0a 20 tize.(string.&rest.properties)..
11480 20 22 56 65 72 73 69 6f 6e 20 6f 66 20 60 70 72 6f 70 65 72 74 69 7a 65 27 20 74 68 61 74 20 63 ."Version.of.`propertize'.that.c
114a0 68 65 63 6b 73 20 74 79 70 65 20 6f 66 20 53 54 52 49 4e 47 2e 22 0a 20 20 28 77 68 65 6e 20 28 hecks.type.of.STRING."...(when.(
114c0 73 74 72 69 6e 67 70 20 73 74 72 69 6e 67 29 0a 20 20 20 20 28 61 70 70 6c 79 20 23 27 70 72 6f stringp.string).....(apply.#'pro
114e0 70 65 72 74 69 7a 65 20 73 74 72 69 6e 67 20 70 72 6f 70 65 72 74 69 65 73 29 29 29 0a 0a 28 64 pertize.string.properties)))..(d
11500 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 70 72 6f 70 65 72 74 69 7a 65 2d 6b 65 79 20 28 efun.which-key--propertize-key.(
11520 6b 65 79 29 0a 20 20 22 41 64 64 20 61 20 66 61 63 65 20 74 6f 20 4b 45 59 2e 0a 49 66 20 4b 45 key)..."Add.a.face.to.KEY..If.KE
11540 59 20 63 6f 6e 74 61 69 6e 73 20 61 6e 79 20 5c 22 73 70 65 63 69 61 6c 20 6b 65 79 73 5c 22 20 Y.contains.any.\"special.keys\".
11560 64 65 66 69 6e 65 64 20 69 6e 0a 60 77 68 69 63 68 2d 6b 65 79 2d 73 70 65 63 69 61 6c 2d 6b 65 defined.in.`which-key-special-ke
11580 79 73 27 20 74 68 65 6e 20 74 72 75 6e 63 61 74 65 20 61 6e 64 20 61 64 64 20 74 68 65 20 63 6f ys'.then.truncate.and.add.the.co
115a0 72 72 65 73 70 6f 6e 64 69 6e 67 0a 60 77 68 69 63 68 2d 6b 65 79 2d 73 70 65 63 69 61 6c 2d 6b rresponding.`which-key-special-k
115c0 65 79 2d 66 61 63 65 27 2e 22 0a 20 20 28 6c 65 74 20 28 28 6b 65 79 2d 77 2d 66 61 63 65 20 28 ey-face'."...(let.((key-w-face.(
115e0 77 68 69 63 68 2d 6b 65 79 2d 2d 70 72 6f 70 65 72 74 69 7a 65 20 6b 65 79 20 27 66 61 63 65 20 which-key--propertize.key.'face.
11600 27 77 68 69 63 68 2d 6b 65 79 2d 6b 65 79 2d 66 61 63 65 29 29 0a 20 20 20 20 20 20 20 20 28 72 'which-key-key-face)).........(r
11620 65 67 65 78 70 20 28 63 6f 6e 63 61 74 20 22 5c 5c 28 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 egexp.(concat."\\(".............
11640 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
11660 79 20 77 68 69 63 68 2d 6b 65 79 2d 73 70 65 63 69 61 6c 2d 6b 65 79 73 0a 20 20 20 20 20 20 20 y.which-key-special-keys........
11680 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 5c 5c 7c ............................"\\|
116a0 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 5c 5c 29 22 ")........................."\\)"
116c0 29 29 0a 20 20 20 20 20 20 20 20 28 63 61 73 65 2d 66 6f 6c 64 2d 73 65 61 72 63 68 20 6e 69 6c )).........(case-fold-search.nil
116e0 29 29 0a 20 20 20 20 28 73 61 76 65 2d 6d 61 74 63 68 2d 64 61 74 61 0a 20 20 20 20 20 20 28 69 )).....(save-match-data.......(i
11700 66 20 28 61 6e 64 20 77 68 69 63 68 2d 6b 65 79 2d 73 70 65 63 69 61 6c 2d 6b 65 79 73 0a 20 20 f.(and.which-key-special-keys...
11720 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 78 .............(string-match.regex
11740 70 20 6b 65 79 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 62 65 67 20 28 6d 61 p.key))...........(let.((beg.(ma
11760 74 63 68 2d 62 65 67 69 6e 6e 69 6e 67 20 30 29 29 20 28 65 6e 64 20 28 6d 61 74 63 68 2d 65 6e tch-beginning.0)).(end.(match-en
11780 64 20 30 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 63 61 74 20 28 73 75 62 73 d.0))).............(concat.(subs
117a0 74 72 69 6e 67 20 6b 65 79 2d 77 2d 66 61 63 65 20 30 20 62 65 67 29 0a 20 20 20 20 20 20 20 20 tring.key-w-face.0.beg).........
117c0 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 70 72 6f 70 65 72 74 69 ............(which-key--properti
117e0 7a 65 20 28 73 75 62 73 74 72 69 6e 67 20 6b 65 79 2d 77 2d 66 61 63 65 20 62 65 67 20 28 31 2b ze.(substring.key-w-face.beg.(1+
11800 20 62 65 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 .beg))..........................
11820 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 66 61 63 65 20 27 77 68 69 63 68 2d 6b ..................'face.'which-k
11840 65 79 2d 73 70 65 63 69 61 6c 2d 6b 65 79 2d 66 61 63 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 ey-special-key-face)............
11860 20 20 20 20 20 20 20 20 20 28 73 75 62 73 74 72 69 6e 67 20 6b 65 79 2d 77 2d 66 61 63 65 20 65 .........(substring.key-w-face.e
11880 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nd..............................
118a0 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 73 74 72 69 6e 67 2d 77 69 64 74 68 20 6b 65 79 2d 77 ..(which-key--string-width.key-w
118c0 2d 66 61 63 65 29 29 29 29 0a 20 20 20 20 20 20 20 20 6b 65 79 2d 77 2d 66 61 63 65 29 29 29 29 -face)))).........key-w-face))))
118e0 0a 0a 28 64 65 66 73 75 62 73 74 20 77 68 69 63 68 2d 6b 65 79 2d 2d 74 72 75 6e 63 61 74 65 2d ..(defsubst.which-key--truncate-
11900 64 65 73 63 72 69 70 74 69 6f 6e 20 28 64 65 73 63 20 61 76 6c 2d 77 69 64 74 68 29 0a 20 20 22 description.(desc.avl-width)..."
11920 54 72 75 6e 63 61 74 65 20 44 45 53 43 20 64 65 73 63 72 69 70 74 69 6f 6e 20 74 6f 20 60 77 68 Truncate.DESC.description.to.`wh
11940 69 63 68 2d 6b 65 79 2d 6d 61 78 2d 64 65 73 63 72 69 70 74 69 6f 6e 2d 6c 65 6e 67 74 68 27 2e ich-key-max-description-length'.
11960 22 0a 20 20 28 6c 65 74 2a 20 28 28 6d 61 78 20 77 68 69 63 68 2d 6b 65 79 2d 6d 61 78 2d 64 65 "...(let*.((max.which-key-max-de
11980 73 63 72 69 70 74 69 6f 6e 2d 6c 65 6e 67 74 68 29 0a 20 20 20 20 20 20 20 20 20 28 6d 61 78 20 scription-length)..........(max.
119a0 28 63 6c 2d 65 74 79 70 65 63 61 73 65 20 6d 61 78 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 (cl-etypecase.max...............
119c0 20 20 28 6e 75 6c 6c 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 6e ..(null.nil).................(in
119e0 74 65 67 65 72 20 6d 61 78 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 6c 6f 61 teger.max).................(floa
11a00 74 20 28 74 72 75 6e 63 61 74 65 20 28 2a 20 6d 61 78 20 61 76 6c 2d 77 69 64 74 68 29 29 29 0a t.(truncate.(*.max.avl-width))).
11a20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 75 6e 63 74 69 6f 6e 20 28 6c 65 74 20 28 ................(function.(let.(
11a40 28 76 61 6c 20 28 66 75 6e 63 61 6c 6c 20 6d 61 78 20 61 76 6c 2d 77 69 64 74 68 29 29 29 0a 20 (val.(funcall.max.avl-width)))..
11a60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 ...........................(if.(
11a80 66 6c 6f 61 74 70 20 76 61 6c 29 20 28 74 72 75 6e 63 61 74 65 20 76 61 6c 29 20 76 61 6c 29 29 floatp.val).(truncate.val).val))
11aa0 29 29 29 29 0a 20 20 20 20 28 69 66 20 28 61 6e 64 20 6d 61 78 20 28 3e 20 28 6c 65 6e 67 74 68 )))).....(if.(and.max.(>.(length
11ac0 20 64 65 73 63 29 20 6d 61 78 29 29 0a 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 64 6f 74 73 .desc).max)).........(let.((dots
11ae0 20 28 61 6e 64 20 28 6e 6f 74 20 28 65 71 75 61 6c 20 77 68 69 63 68 2d 6b 65 79 2d 65 6c 6c 69 .(and.(not.(equal.which-key-elli
11b00 70 73 69 73 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 20 20 psis."")).......................
11b20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 70 72 6f 70 65 72 74 69 7a 65 0a 20 20 20 20 20 20 ...(which-key--propertize.......
11b40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 77 68 69 63 68 2d 6b 65 79 2d 65 6c ....................which-key-el
11b60 6c 69 70 73 69 73 20 27 66 61 63 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 lipsis.'face....................
11b80 20 20 20 20 20 20 20 28 67 65 74 2d 74 65 78 74 2d 70 72 6f 70 65 72 74 79 20 28 31 2d 20 28 6c .......(get-text-property.(1-.(l
11ba0 65 6e 67 74 68 20 64 65 73 63 29 29 20 27 66 61 63 65 20 64 65 73 63 29 29 29 29 29 0a 20 20 20 ength.desc)).'face.desc)))))....
11bc0 20 20 20 20 20 20 20 28 69 66 20 64 6f 74 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 .......(if.dots...............(c
11be0 6f 6e 63 61 74 20 28 73 75 62 73 74 72 69 6e 67 20 64 65 73 63 20 30 20 28 2d 20 6d 61 78 20 28 oncat.(substring.desc.0.(-.max.(
11c00 6c 65 6e 67 74 68 20 64 6f 74 73 29 29 29 20 64 6f 74 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 length.dots))).dots)............
11c20 20 28 73 75 62 73 74 72 69 6e 67 20 64 65 73 63 20 30 20 6d 61 78 29 29 29 0a 20 20 20 20 20 20 .(substring.desc.0.max))).......
11c40 64 65 73 63 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 68 69 67 68 6c desc)))..(defun.which-key--highl
11c60 69 67 68 74 2d 66 61 63 65 20 28 64 65 73 63 72 69 70 74 69 6f 6e 29 0a 20 20 22 52 65 74 75 72 ight-face.(description)..."Retur
11c80 6e 20 74 68 65 20 68 69 67 68 6c 69 67 68 74 20 66 61 63 65 20 66 6f 72 20 44 45 53 43 52 49 50 n.the.highlight.face.for.DESCRIP
11ca0 54 49 4f 4e 20 69 66 20 69 74 20 68 61 73 20 6f 6e 65 2e 22 0a 20 20 28 6c 65 74 20 28 66 61 63 TION.if.it.has.one."...(let.(fac
11cc0 65 29 0a 20 20 20 20 28 64 6f 6c 69 73 74 20 28 65 6c 20 77 68 69 63 68 2d 6b 65 79 2d 68 69 67 e).....(dolist.(el.which-key-hig
11ce0 68 6c 69 67 68 74 65 64 2d 63 6f 6d 6d 61 6e 64 2d 6c 69 73 74 29 0a 20 20 20 20 20 20 28 75 6e hlighted-command-list).......(un
11d00 6c 65 73 73 20 66 61 63 65 0a 20 20 20 20 20 20 20 20 28 63 6f 6e 64 20 28 28 63 6f 6e 73 70 20 less.face.........(cond.((consp.
11d20 65 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 73 74 72 69 6e 67 el)................(when.(string
11d40 2d 6d 61 74 63 68 2d 70 20 28 63 61 72 20 65 6c 29 20 64 65 73 63 72 69 70 74 69 6f 6e 29 0a 20 -match-p.(car.el).description)..
11d60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 66 61 63 65 20 28 63 64 72 20 ................(setq.face.(cdr.
11d80 65 6c 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 73 74 72 69 6e 67 70 20 65 el))))...............((stringp.e
11da0 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 73 74 72 69 6e 67 2d l)................(when.(string-
11dc0 6d 61 74 63 68 2d 70 20 65 6c 20 64 65 73 63 72 69 70 74 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 match-p.el.description).........
11de0 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 66 61 63 65 20 27 77 68 69 63 68 2d 6b 65 79 2d 68 .........(setq.face.'which-key-h
11e00 69 67 68 6c 69 67 68 74 65 64 2d 63 6f 6d 6d 61 6e 64 2d 66 61 63 65 29 29 29 0a 20 20 20 20 20 ighlighted-command-face)))......
11e20 20 20 20 20 20 20 20 20 20 28 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 65 73 73 .........(t................(mess
11e40 61 67 65 20 22 77 68 69 63 68 2d 6b 65 79 3a 20 77 61 72 6e 69 6e 67 3a 20 65 6c 65 6d 65 6e 74 age."which-key:.warning:.element
11e60 20 25 73 20 6f 66 20 5c 0a 77 68 69 63 68 2d 6b 65 79 2d 68 69 67 68 6c 69 67 68 74 65 64 2d 63 .%s.of.\.which-key-highlighted-c
11e80 6f 6d 6d 61 6e 64 2d 6c 69 73 74 20 69 73 20 6e 6f 74 20 61 20 73 74 72 69 6e 67 20 6f 72 20 61 ommand-list.is.not.a.string.or.a
11ea0 20 63 6f 6e 73 0a 63 65 6c 6c 22 20 65 6c 29 29 29 29 29 0a 20 20 20 20 66 61 63 65 29 29 0a 0a .cons.cell".el))))).....face))..
11ec0 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 70 72 6f 70 65 72 74 69 7a 65 2d 64 65 73 (defun.which-key--propertize-des
11ee0 63 72 69 70 74 69 6f 6e 0a 20 20 20 20 28 64 65 73 63 72 69 70 74 69 6f 6e 20 67 72 6f 75 70 20 cription.....(description.group.
11f00 6c 6f 63 61 6c 20 68 6c 2d 66 61 63 65 20 26 6f 70 74 69 6f 6e 61 6c 20 6f 72 69 67 69 6e 61 6c local.hl-face.&optional.original
11f20 2d 64 65 73 63 72 69 70 74 69 6f 6e 29 0a 20 20 22 41 64 64 20 66 61 63 65 20 74 6f 20 44 45 53 -description)..."Add.face.to.DES
11f40 43 52 49 50 54 49 4f 4e 2e 0a 54 68 65 20 66 61 63 65 20 63 68 6f 73 65 6e 20 64 65 70 65 6e 64 CRIPTION..The.face.chosen.depend
11f60 73 20 6f 6e 20 77 68 65 74 68 65 72 20 74 68 65 20 64 65 73 63 72 69 70 74 69 6f 6e 20 72 65 70 s.on.whether.the.description.rep
11f80 72 65 73 65 6e 74 73 20 61 0a 67 72 6f 75 70 20 6f 72 20 61 20 63 6f 6d 6d 61 6e 64 2e 20 20 41 resents.a.group.or.a.command...A
11fa0 6c 73 6f 20 6d 61 6b 65 20 73 6f 6d 65 20 6d 69 6e 6f 72 20 61 64 6a 75 73 74 6d 65 6e 74 73 20 lso.make.some.minor.adjustments.
11fc0 74 6f 20 74 68 65 0a 64 65 73 63 72 69 70 74 69 6f 6e 20 73 74 72 69 6e 67 2c 20 6c 69 6b 65 20 to.the.description.string,.like.
11fe0 72 65 6d 6f 76 69 6e 67 20 61 20 5c 22 67 72 6f 75 70 3a 5c 22 20 70 72 65 66 69 78 2e 0a 0a 4f removing.a.\"group:\".prefix...O
12000 52 49 47 49 4e 41 4c 2d 44 45 53 43 52 49 50 54 49 4f 4e 20 69 73 20 74 68 65 20 64 65 73 63 72 RIGINAL-DESCRIPTION.is.the.descr
12020 69 70 74 69 6f 6e 20 67 69 76 65 6e 20 62 79 0a 60 64 65 73 63 72 69 62 65 2d 62 75 66 66 65 72 iption.given.by.`describe-buffer
12040 2d 62 69 6e 64 69 6e 67 73 27 2e 22 0a 20 20 28 77 68 65 6e 20 64 65 73 63 72 69 70 74 69 6f 6e -bindings'."...(when.description
12060 0a 20 20 20 20 28 6c 65 74 2a 20 28 28 64 65 73 63 20 64 65 73 63 72 69 70 74 69 6f 6e 29 0a 20 .....(let*.((desc.description)..
12080 20 20 20 20 20 20 20 20 20 20 28 64 65 73 63 20 28 69 66 20 28 73 74 72 69 6e 67 2d 6d 61 74 63 ..........(desc.(if.(string-matc
120a0 68 2d 70 20 22 5e 67 72 6f 75 70 3a 22 20 64 65 73 63 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 h-p."^group:".desc).............
120c0 20 20 20 20 20 20 20 20 20 28 73 75 62 73 74 72 69 6e 67 20 64 65 73 63 20 36 29 20 64 65 73 63 .........(substring.desc.6).desc
120e0 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 64 65 73 63 20 28 69 66 20 67 72 6f 75 70 20 28 63 ))............(desc.(if.group.(c
12100 6f 6e 63 61 74 20 77 68 69 63 68 2d 6b 65 79 2d 70 72 65 66 69 78 2d 70 72 65 66 69 78 20 64 65 oncat.which-key-prefix-prefix.de
12120 73 63 29 20 64 65 73 63 29 29 29 0a 20 20 20 20 20 20 28 6d 61 6b 65 2d 74 65 78 74 2d 62 75 74 sc).desc))).......(make-text-but
12140 74 6f 6e 0a 20 20 20 20 20 20 20 64 65 73 63 20 6e 69 6c 0a 20 20 20 20 20 20 20 27 66 61 63 65 ton........desc.nil........'face
12160 20 28 63 6f 6e 64 20 28 68 6c 2d 66 61 63 65 20 68 6c 2d 66 61 63 65 29 0a 20 20 20 20 20 20 20 .(cond.(hl-face.hl-face)........
12180 20 20 20 20 20 20 20 20 20 20 20 20 28 67 72 6f 75 70 20 27 77 68 69 63 68 2d 6b 65 79 2d 67 72 ............(group.'which-key-gr
121a0 6f 75 70 2d 64 65 73 63 72 69 70 74 69 6f 6e 2d 66 61 63 65 29 0a 20 20 20 20 20 20 20 20 20 20 oup-description-face)...........
121c0 20 20 20 20 20 20 20 20 20 28 6c 6f 63 61 6c 20 27 77 68 69 63 68 2d 6b 65 79 2d 6c 6f 63 61 6c .........(local.'which-key-local
121e0 2d 6d 61 70 2d 64 65 73 63 72 69 70 74 69 6f 6e 2d 66 61 63 65 29 0a 20 20 20 20 20 20 20 20 20 -map-description-face)..........
12200 20 20 20 20 20 20 20 20 20 20 28 74 20 27 77 68 69 63 68 2d 6b 65 79 2d 63 6f 6d 6d 61 6e 64 2d ..........(t.'which-key-command-
12220 64 65 73 63 72 69 70 74 69 6f 6e 2d 66 61 63 65 29 29 0a 20 20 20 20 20 20 20 27 68 65 6c 70 2d description-face))........'help-
12240 65 63 68 6f 20 28 63 6f 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 echo.(cond....................((
12260 61 6e 64 20 6f 72 69 67 69 6e 61 6c 2d 64 65 73 63 72 69 70 74 69 6f 6e 0a 20 20 20 20 20 20 20 and.original-description........
12280 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 62 6f 75 6e 64 70 20 28 69 6e 74 65 ..................(fboundp.(inte
122a0 72 6e 20 6f 72 69 67 69 6e 61 6c 2d 64 65 73 63 72 69 70 74 69 6f 6e 29 29 0a 20 20 20 20 20 20 rn.original-description)).......
122c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 6f 63 75 6d 65 6e 74 61 74 69 6f ...................(documentatio
122e0 6e 20 28 69 6e 74 65 72 6e 20 6f 72 69 67 69 6e 61 6c 2d 64 65 73 63 72 69 70 74 69 6f 6e 29 29 n.(intern.original-description))
12300 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 20 74 6f 6f ..........................;;.too
12320 6c 74 69 70 2d 6d 6f 64 65 20 64 6f 65 73 6e 27 74 20 65 78 69 73 74 20 69 6e 20 65 6d 61 63 73 ltip-mode.doesn't.exist.in.emacs
12340 2d 6e 6f 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 28 62 -nox..........................(b
12360 6f 75 6e 64 70 20 27 74 6f 6f 6c 74 69 70 2d 6d 6f 64 65 29 20 74 6f 6f 6c 74 69 70 2d 6d 6f 64 oundp.'tooltip-mode).tooltip-mod
12380 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 6f 63 75 6d 65 6e 74 e).....................(document
123a0 61 74 69 6f 6e 20 28 69 6e 74 65 72 6e 20 6f 72 69 67 69 6e 61 6c 2d 64 65 73 63 72 69 70 74 69 ation.(intern.original-descripti
123c0 6f 6e 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 61 6e 64 20 6f on)))....................((and.o
123e0 72 69 67 69 6e 61 6c 2d 64 65 73 63 72 69 70 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 riginal-description.............
12400 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 62 6f 75 6e 64 70 20 28 69 6e 74 65 72 6e 20 6f 72 .............(fboundp.(intern.or
12420 69 67 69 6e 61 6c 2d 64 65 73 63 72 69 70 74 69 6f 6e 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 iginal-description))............
12440 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 28 69 6e ..............(documentation.(in
12460 74 65 72 6e 20 6f 72 69 67 69 6e 61 6c 2d 64 65 73 63 72 69 70 74 69 6f 6e 29 29 0a 20 20 20 20 tern.original-description)).....
12480 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 2a 20 28 28 64 6f 63 .....................(let*.((doc
124a0 20 28 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .(documentation.................
124c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 6e 74 65 72 6e 20 6f 72 ......................(intern.or
124e0 69 67 69 6e 61 6c 2d 64 65 73 63 72 69 70 74 69 6f 6e 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 iginal-description)))...........
12500 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 20 28 72 65 70 6c ......................(str.(repl
12520 61 63 65 2d 72 65 67 65 78 70 2d 69 6e 2d 73 74 72 69 6e 67 20 22 5c 6e 22 20 22 20 22 20 64 6f ace-regexp-in-string."\n".".".do
12540 63 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 c)).............................
12560 20 20 20 20 28 6d 61 78 20 28 66 6c 6f 6f 72 20 28 2a 20 28 66 72 61 6d 65 2d 77 69 64 74 68 29 ....(max.(floor.(*.(frame-width)
12580 20 30 2e 38 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 .0.8))))........................
125a0 20 20 20 20 28 69 66 20 28 3e 20 28 6c 65 6e 67 74 68 20 73 74 72 29 20 6d 61 78 29 0a 20 20 20 ....(if.(>.(length.str).max)....
125c0 20 20 20 20 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 6f 6e ............................(con
125e0 63 61 74 20 28 73 75 62 73 74 72 69 6e 67 20 73 74 72 20 30 20 6d 61 78 29 20 22 2e 2e 2e 22 29 cat.(substring.str.0.max)."...")
12600 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 73 74 ..............................st
12620 72 29 29 29 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 65 78 r)))))))))..(defun.which-key--ex
12640 74 72 61 63 74 2d 6b 65 79 20 28 6b 65 79 2d 73 74 72 29 0a 20 20 22 50 75 6c 6c 20 74 68 65 20 tract-key.(key-str)..."Pull.the.
12660 6c 61 73 74 20 6b 65 79 20 28 6f 72 20 6b 65 79 20 72 61 6e 67 65 29 20 6f 75 74 20 6f 66 20 4b last.key.(or.key.range).out.of.K
12680 45 59 2d 53 54 52 2e 22 0a 20 20 28 73 61 76 65 2d 6d 61 74 63 68 2d 64 61 74 61 0a 20 20 20 20 EY-STR."...(save-match-data.....
126a0 28 6c 65 74 20 28 28 6b 65 79 2d 72 61 6e 67 65 2d 72 65 67 65 78 70 20 22 5c 5c 60 2e 2a 5c 5c (let.((key-range-regexp."\\`.*\\
126c0 28 5b 5e 20 5c 74 5d 2b 20 5c 5c 2e 5c 5c 2e 20 5b 5e 20 5c 74 5d 2b 5c 5c 29 5c 5c 27 22 29 29 ([^.\t]+.\\.\\..[^.\t]+\\)\\'"))
126e0 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 6b 65 79 2d 72 61 6e .......(if.(string-match.key-ran
12700 67 65 2d 72 65 67 65 78 70 20 6b 65 79 2d 73 74 72 29 0a 20 20 20 20 20 20 20 20 20 20 28 6d 61 ge-regexp.key-str)...........(ma
12720 74 63 68 2d 73 74 72 69 6e 67 20 31 20 6b 65 79 2d 73 74 72 29 0a 20 20 20 20 20 20 20 20 28 63 tch-string.1.key-str).........(c
12740 61 72 20 28 6c 61 73 74 20 28 73 70 6c 69 74 2d 73 74 72 69 6e 67 20 6b 65 79 2d 73 74 72 20 22 ar.(last.(split-string.key-str."
12760 20 22 29 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 6d 61 79 .")))))))..(defun.which-key--may
12780 62 65 2d 61 64 64 2d 64 6f 63 73 74 72 69 6e 67 20 28 63 75 72 72 65 6e 74 20 6f 72 69 67 69 6e be-add-docstring.(current.origin
127a0 61 6c 29 0a 20 20 22 4d 61 79 62 65 20 63 6f 6e 63 61 74 20 61 20 64 6f 63 73 74 72 69 6e 67 20 al)..."Maybe.concat.a.docstring.
127c0 74 6f 20 43 55 52 52 45 4e 54 20 61 6e 64 20 72 65 74 75 72 6e 20 72 65 73 75 6c 74 2e 0a 53 70 to.CURRENT.and.return.result..Sp
127e0 65 63 69 66 69 63 61 6c 6c 79 2c 20 64 6f 20 74 68 69 73 20 69 66 20 4f 52 49 47 49 4e 41 4c 20 ecifically,.do.this.if.ORIGINAL.
12800 69 73 20 61 20 63 6f 6d 6d 61 6e 64 20 77 69 74 68 20 61 20 64 6f 63 73 74 72 69 6e 67 0a 61 6e is.a.command.with.a.docstring.an
12820 64 20 60 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d 64 6f 63 73 74 72 69 6e 67 73 27 20 69 73 d.`which-key-show-docstrings'.is
12840 20 6e 6f 6e 2d 6e 69 6c 2e 20 20 49 66 0a 60 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d 64 6f .non-nil...If.`which-key-show-do
12860 63 73 74 72 69 6e 67 73 27 20 69 73 20 74 68 65 20 73 79 6d 62 6f 6c 20 64 6f 63 73 74 72 69 6e cstrings'.is.the.symbol.docstrin
12880 67 2d 6f 6e 6c 79 2c 20 6a 75 73 74 0a 72 65 74 75 72 6e 20 74 68 65 20 64 6f 63 73 74 72 69 6e g-only,.just.return.the.docstrin
128a0 67 2e 22 0a 20 20 28 6c 65 74 2a 20 28 28 6f 72 69 67 2d 73 79 6d 20 28 69 6e 74 65 72 6e 20 6f g."...(let*.((orig-sym.(intern.o
128c0 72 69 67 69 6e 61 6c 29 29 0a 20 20 20 20 20 20 20 20 20 28 64 6f 63 20 28 77 68 65 6e 20 28 63 riginal))..........(doc.(when.(c
128e0 6f 6d 6d 61 6e 64 70 20 6f 72 69 67 2d 73 79 6d 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ommandp.orig-sym)...............
12900 20 20 28 64 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 20 6f 72 69 67 2d 73 79 6d 29 29 29 0a 20 20 20 ..(documentation.orig-sym)))....
12920 20 20 20 20 20 20 28 64 6f 63 20 28 77 68 65 6e 20 64 6f 63 0a 20 20 20 20 20 20 20 20 20 20 20 ......(doc.(when.doc............
12940 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 69 6e 67 0a 20 .....(replace-regexp-in-string..
12960 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 5c 5c 28 3f 3a 3a ................(concat."^\\(?::
12980 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 28 72 65 67 65 "..........................(rege
129a0 78 70 2d 6f 70 74 20 27 28 22 61 72 6f 75 6e 64 22 20 22 6f 76 65 72 72 69 64 65 22 0a 20 20 20 xp-opt.'("around"."override"....
129c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
129e0 20 20 20 20 22 61 66 74 65 72 22 20 22 61 66 74 65 72 2d 75 6e 74 69 6c 22 20 22 61 66 74 65 72 ...."after"."after-until"."after
12a00 2d 77 68 69 6c 65 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 -while".........................
12a20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 62 65 66 6f 72 65 22 20 22 62 65 66 6f 72 65 2d ..............."before"."before-
12a40 75 6e 74 69 6c 22 20 22 62 65 66 6f 72 65 2d 77 68 69 6c 65 22 0a 20 20 20 20 20 20 20 20 20 20 until"."before-while"...........
12a60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 66 69 ............................."fi
12a80 6c 74 65 72 2d 61 72 67 73 22 20 22 66 69 6c 74 65 72 2d 72 65 74 75 72 6e 22 29 29 0a 20 20 20 lter-args"."filter-return"))....
12aa0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 20 61 64 76 69 63 65 3a 20 ......................".advice:.
12ac0 5b 5e 5c 6e 5d 2b 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 [^\n]+\n".......................
12ae0 20 20 20 22 5c 5c 29 2b 5c 6e 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 22 ..."\\)+\n")..................""
12b00 20 64 6f 63 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 64 6f 63 73 74 72 69 6e 67 20 28 77 68 65 .doc)))..........(docstring.(whe
12b20 6e 20 64 6f 63 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 n.doc.......................(whi
12b40 63 68 2d 6b 65 79 2d 2d 70 72 6f 70 65 72 74 69 7a 65 20 28 63 61 72 20 28 73 70 6c 69 74 2d 73 ch-key--propertize.(car.(split-s
12b60 74 72 69 6e 67 20 64 6f 63 20 22 5c 6e 22 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 tring.doc."\n"))................
12b80 20 20 20 20 20 20 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 ..............................'f
12ba0 61 63 65 20 27 77 68 69 63 68 2d 6b 65 79 2d 64 6f 63 73 74 72 69 6e 67 2d 66 61 63 65 29 29 29 ace.'which-key-docstring-face)))
12bc0 29 0a 20 20 20 20 28 63 6f 6e 64 20 28 28 6e 6f 74 20 28 61 6e 64 20 77 68 69 63 68 2d 6b 65 79 ).....(cond.((not.(and.which-key
12be0 2d 73 68 6f 77 2d 64 6f 63 73 74 72 69 6e 67 73 20 64 6f 63 73 74 72 69 6e 67 29 29 0a 20 20 20 -show-docstrings.docstring))....
12c00 20 20 20 20 20 20 20 20 63 75 72 72 65 6e 74 29 0a 20 20 20 20 20 20 20 20 20 20 28 28 65 71 20 ........current)...........((eq.
12c20 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d 64 6f 63 73 74 72 69 6e 67 73 20 27 64 6f 63 73 74 which-key-show-docstrings.'docst
12c40 72 69 6e 67 2d 6f 6e 6c 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 64 6f 63 73 74 72 69 6e 67 29 ring-only)............docstring)
12c60 0a 20 20 20 20 20 20 20 20 20 20 28 74 0a 20 20 20 20 20 20 20 20 20 20 20 28 66 6f 72 6d 61 74 ...........(t............(format
12c80 20 22 25 73 20 25 73 22 20 63 75 72 72 65 6e 74 20 64 6f 63 73 74 72 69 6e 67 29 29 29 29 29 0a ."%s.%s".current.docstring))))).
12ca0 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 66 6f 72 6d 61 74 2d 61 6e 64 2d 72 65 .(defun.which-key--format-and-re
12cc0 70 6c 61 63 65 20 28 75 6e 66 6f 72 6d 61 74 74 65 64 20 26 6f 70 74 69 6f 6e 61 6c 20 70 72 65 place.(unformatted.&optional.pre
12ce0 73 65 72 76 65 2d 66 75 6c 6c 2d 6b 65 79 29 0a 20 20 22 4d 61 6b 65 20 6c 69 73 74 20 6f 66 20 serve-full-key)..."Make.list.of.
12d00 6b 65 79 20 62 69 6e 64 69 6e 67 73 20 77 69 74 68 20 73 65 70 61 72 61 74 6f 72 73 20 61 6e 64 key.bindings.with.separators.and
12d20 20 64 65 73 63 72 69 70 74 69 6f 6e 73 2e 0a 54 61 6b 65 20 61 20 6c 69 73 74 20 6f 66 20 28 6b .descriptions..Take.a.list.of.(k
12d40 65 79 20 2e 20 64 65 73 63 29 20 63 6f 6e 73 20 63 65 6c 6c 73 20 69 6e 20 55 4e 46 4f 52 4d 41 ey...desc).cons.cells.in.UNFORMA
12d60 54 54 45 44 2c 20 61 64 64 0a 66 61 63 65 73 20 61 6e 64 20 70 65 72 66 6f 72 6d 20 72 65 70 6c TTED,.add.faces.and.perform.repl
12d80 61 63 65 6d 65 6e 74 73 20 61 63 63 6f 72 64 69 6e 67 20 74 6f 20 74 68 65 20 74 68 72 65 65 20 acements.according.to.the.three.
12da0 72 65 70 6c 61 63 65 6d 65 6e 74 0a 61 6c 69 73 74 73 2e 20 20 52 65 74 75 72 6e 20 61 20 6c 69 replacement.alists...Return.a.li
12dc0 73 74 20 28 6b 65 79 20 73 65 70 61 72 61 74 6f 72 20 64 65 73 63 72 69 70 74 69 6f 6e 29 2e 22 st.(key.separator.description)."
12de0 0a 20 20 28 6c 65 74 20 28 28 73 65 70 2d 77 2d 66 61 63 65 0a 20 20 20 20 20 20 20 20 20 28 77 ...(let.((sep-w-face..........(w
12e00 68 69 63 68 2d 6b 65 79 2d 2d 70 72 6f 70 65 72 74 69 7a 65 20 77 68 69 63 68 2d 6b 65 79 2d 73 hich-key--propertize.which-key-s
12e20 65 70 61 72 61 74 6f 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 eparator........................
12e40 20 20 20 20 20 20 20 20 20 27 66 61 63 65 20 27 77 68 69 63 68 2d 6b 65 79 2d 73 65 70 61 72 61 .........'face.'which-key-separa
12e60 74 6f 72 2d 66 61 63 65 29 29 0a 20 20 20 20 20 20 20 20 28 6c 6f 63 61 6c 2d 6d 61 70 20 28 63 tor-face)).........(local-map.(c
12e80 75 72 72 65 6e 74 2d 6c 6f 63 61 6c 2d 6d 61 70 29 29 0a 09 28 61 76 6c 2d 77 69 64 74 68 20 28 urrent-local-map))..(avl-width.(
12ea0 63 64 72 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 70 6f 70 75 70 2d 6d 61 78 2d 64 69 6d 65 6e 73 cdr.(which-key--popup-max-dimens
12ec0 69 6f 6e 73 29 29 29 0a 20 20 20 20 20 20 20 20 6e 65 77 2d 6c 69 73 74 29 0a 20 20 20 20 28 64 ions))).........new-list).....(d
12ee0 6f 6c 69 73 74 20 28 6b 65 79 2d 62 69 6e 64 69 6e 67 20 75 6e 66 6f 72 6d 61 74 74 65 64 29 0a olist.(key-binding.unformatted).
12f00 20 20 20 20 20 20 28 6c 65 74 2a 20 28 28 6b 65 79 73 20 28 63 61 72 20 6b 65 79 2d 62 69 6e 64 ......(let*.((keys.(car.key-bind
12f20 69 6e 67 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 69 67 2d 64 65 73 63 20 28 63 ing))..............(orig-desc.(c
12f40 64 72 20 6b 65 79 2d 62 69 6e 64 69 6e 67 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 67 dr.key-binding))..............(g
12f60 72 6f 75 70 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 67 72 6f 75 70 2d 70 20 6f 72 69 67 2d 64 65 roup.(which-key--group-p.orig-de
12f80 73 63 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 6f 63 61 6c 20 28 65 71 20 28 77 68 sc))..............(local.(eq.(wh
12fa0 69 63 68 2d 6b 65 79 2d 2d 73 61 66 65 2d 6c 6f 6f 6b 75 70 2d 6b 65 79 2d 64 65 73 63 72 69 70 ich-key--safe-lookup-key-descrip
12fc0 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6c 6f tion..........................lo
12fe0 63 61 6c 2d 6d 61 70 20 6b 65 79 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 cal-map.keys)...................
13000 20 20 20 20 20 20 28 69 6e 74 65 72 6e 20 6f 72 69 67 2d 64 65 73 63 29 29 29 0a 20 20 20 20 20 ......(intern.orig-desc)))......
13020 20 20 20 20 20 20 20 20 28 68 6c 2d 66 61 63 65 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 68 69 67 ........(hl-face.(which-key--hig
13040 68 6c 69 67 68 74 2d 66 61 63 65 20 6f 72 69 67 2d 64 65 73 63 29 29 0a 20 20 20 20 20 20 20 20 hlight-face.orig-desc)).........
13060 20 20 20 20 20 28 6b 65 79 2d 62 69 6e 64 69 6e 67 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 6d 61 .....(key-binding.(which-key--ma
13080 79 62 65 2d 72 65 70 6c 61 63 65 20 6b 65 79 2d 62 69 6e 64 69 6e 67 29 29 0a 20 20 20 20 20 20 ybe-replace.key-binding)).......
130a0 20 20 20 20 20 20 20 28 66 69 6e 61 6c 2d 64 65 73 63 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 70 .......(final-desc.(which-key--p
130c0 72 6f 70 65 72 74 69 7a 65 2d 64 65 73 63 72 69 70 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 ropertize-description...........
130e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 64 72 20 6b 65 79 2d 62 69 6e 64 69 6e 67 ................(cdr.key-binding
13100 29 20 67 72 6f 75 70 20 6c 6f 63 61 6c 20 68 6c 2d 66 61 63 65 20 6f 72 69 67 2d 64 65 73 63 29 ).group.local.hl-face.orig-desc)
13120 29 29 0a 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 66 69 6e 61 6c 2d 64 65 73 63 0a 20 20 20 20 )).........(when.final-desc.....
13140 20 20 20 20 20 20 28 73 65 74 71 20 66 69 6e 61 6c 2d 64 65 73 63 0a 20 20 20 20 20 20 20 20 20 ......(setq.final-desc..........
13160 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 74 72 75 6e 63 61 74 65 2d 64 65 73 63 .......(which-key--truncate-desc
13180 72 69 70 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d ription..................(which-
131a0 6b 65 79 2d 2d 6d 61 79 62 65 2d 61 64 64 2d 64 6f 63 73 74 72 69 6e 67 20 66 69 6e 61 6c 2d 64 key--maybe-add-docstring.final-d
131c0 65 73 63 20 6f 72 69 67 2d 64 65 73 63 29 0a 09 09 20 61 76 6c 2d 77 69 64 74 68 29 29 29 0a 20 esc.orig-desc)....avl-width)))..
131e0 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 63 6f 6e 73 70 20 6b 65 79 2d 62 69 6e 64 69 6e 67 29 .......(when.(consp.key-binding)
13200 0a 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 0a 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 73 ...........(push............(lis
13220 74 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 70 72 6f 70 65 72 74 69 7a 65 2d 6b 65 79 0a 20 20 20 t.(which-key--propertize-key....
13240 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 70 72 65 73 65 72 76 65 2d 66 75 6c 6c ...............(if.preserve-full
13260 2d 6b 65 79 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 61 72 20 -key.......................(car.
13280 6b 65 79 2d 62 69 6e 64 69 6e 67 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 key-binding)....................
132a0 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 65 78 74 72 61 63 74 2d 6b 65 79 20 28 63 61 72 20 6b 65 .(which-key--extract-key.(car.ke
132c0 79 2d 62 69 6e 64 69 6e 67 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 y-binding))))..................s
132e0 65 70 2d 77 2d 66 61 63 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 69 6e 61 6c ep-w-face..................final
13300 2d 64 65 73 63 29 0a 20 20 20 20 20 20 20 20 20 20 20 6e 65 77 2d 6c 69 73 74 29 29 29 29 0a 20 -desc)............new-list))))..
13320 20 20 20 28 6e 72 65 76 65 72 73 65 20 6e 65 77 2d 6c 69 73 74 29 29 29 0a 0a 28 64 65 66 75 6e ...(nreverse.new-list)))..(defun
13340 20 77 68 69 63 68 2d 6b 65 79 2d 2d 63 6f 6d 70 75 74 65 2d 62 69 6e 64 69 6e 67 20 28 62 69 6e .which-key--compute-binding.(bin
13360 64 69 6e 67 29 0a 20 20 22 52 65 70 6c 61 63 65 20 42 49 4e 44 49 4e 47 20 77 69 74 68 20 72 65 ding)..."Replace.BINDING.with.re
13380 6d 61 70 70 65 64 20 62 69 6e 64 69 6e 67 20 69 66 20 69 74 20 65 78 69 73 74 73 2e 0a 52 65 71 mapped.binding.if.it.exists..Req
133a0 75 69 72 65 73 20 60 77 68 69 63 68 2d 6b 65 79 2d 63 6f 6d 70 75 74 65 2d 72 65 6d 61 70 73 27 uires.`which-key-compute-remaps'
133c0 20 74 6f 20 62 65 20 6e 6f 6e 2d 6e 69 6c 2e 22 0a 20 20 28 63 6f 70 79 2d 73 65 71 75 65 6e 63 .to.be.non-nil."...(copy-sequenc
133e0 65 20 28 73 79 6d 62 6f 6c 2d 6e 61 6d 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 e.(symbol-name..................
13400 20 28 6f 72 20 28 61 6e 64 20 77 68 69 63 68 2d 6b 65 79 2d 63 6f 6d 70 75 74 65 2d 72 65 6d 61 .(or.(and.which-key-compute-rema
13420 70 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 28 63 ps............................(c
13440 6f 6d 6d 61 6e 64 2d 72 65 6d 61 70 70 69 6e 67 20 62 69 6e 64 69 6e 67 29 29 0a 20 20 20 20 20 ommand-remapping.binding))......
13460 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 69 6e 64 69 6e 67 29 29 29 29 0a 0a 28 64 .................binding))))..(d
13480 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 67 65 74 2d 6d 65 6e 75 2d 69 74 65 6d 2d 62 69 efun.which-key--get-menu-item-bi
134a0 6e 64 69 6e 67 20 28 64 65 66 29 0a 20 20 22 52 65 74 72 69 65 76 65 20 62 69 6e 64 69 6e 67 20 nding.(def)..."Retrieve.binding.
134c0 66 6f 72 20 6d 65 6e 75 2d 69 74 65 6d 2e 22 0a 20 20 3b 3b 20 73 65 65 20 60 6b 65 79 6d 61 70 for.menu-item."...;;.see.`keymap
134e0 2d 2d 6d 65 6e 75 2d 69 74 65 6d 2d 62 69 6e 64 69 6e 67 27 0a 20 20 28 6c 65 74 2a 20 28 28 62 --menu-item-binding'...(let*.((b
13500 69 6e 64 69 6e 67 20 28 6e 74 68 20 32 20 64 65 66 29 29 0a 20 20 20 20 20 20 20 20 20 28 70 6c inding.(nth.2.def))..........(pl
13520 69 73 74 20 28 6e 74 68 63 64 72 20 33 20 64 65 66 29 29 0a 20 20 20 20 20 20 20 20 20 28 66 69 ist.(nthcdr.3.def))..........(fi
13540 6c 74 65 72 20 28 70 6c 69 73 74 2d 67 65 74 20 70 6c 69 73 74 20 3a 66 69 6c 74 65 72 29 29 29 lter.(plist-get.plist.:filter)))
13560 0a 20 20 20 20 28 69 66 20 66 69 6c 74 65 72 20 28 66 75 6e 63 61 6c 6c 20 66 69 6c 74 65 72 20 .....(if.filter.(funcall.filter.
13580 62 69 6e 64 69 6e 67 29 20 62 69 6e 64 69 6e 67 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 binding).binding)))..(defun.whic
135a0 68 2d 6b 65 79 2d 2d 67 65 74 2d 6b 65 79 6d 61 70 2d 62 69 6e 64 69 6e 67 73 2d 31 0a 20 20 20 h-key--get-keymap-bindings-1....
135c0 20 28 6b 65 79 6d 61 70 20 73 74 61 72 74 20 26 6f 70 74 69 6f 6e 61 6c 20 70 72 65 66 69 78 20 .(keymap.start.&optional.prefix.
135e0 66 69 6c 74 65 72 20 61 6c 6c 20 69 67 6e 6f 72 65 2d 63 6f 6d 6d 61 6e 64 73 29 0a 20 20 22 53 filter.all.ignore-commands)..."S
13600 65 65 20 60 77 68 69 63 68 2d 6b 65 79 2d 2d 67 65 74 2d 6b 65 79 6d 61 70 2d 62 69 6e 64 69 6e ee.`which-key--get-keymap-bindin
13620 67 73 27 2e 22 0a 20 20 28 6c 65 74 20 28 28 62 69 6e 64 69 6e 67 73 20 73 74 61 72 74 29 0a 20 gs'."...(let.((bindings.start)..
13640 20 20 20 20 20 20 20 28 70 72 65 66 69 78 2d 6d 61 70 20 28 69 66 20 70 72 65 66 69 78 20 28 6c .......(prefix-map.(if.prefix.(l
13660 6f 6f 6b 75 70 2d 6b 65 79 20 6b 65 79 6d 61 70 20 70 72 65 66 69 78 29 20 6b 65 79 6d 61 70 29 ookup-key.keymap.prefix).keymap)
13680 29 29 0a 20 20 20 20 28 77 68 65 6e 20 28 6b 65 79 6d 61 70 70 20 70 72 65 66 69 78 2d 6d 61 70 )).....(when.(keymapp.prefix-map
136a0 29 0a 20 20 20 20 20 20 28 6d 61 70 2d 6b 65 79 6d 61 70 0a 20 20 20 20 20 20 20 28 6c 61 6d 62 ).......(map-keymap........(lamb
136c0 64 61 20 28 65 76 20 64 65 66 29 0a 20 20 20 20 20 20 20 20 20 28 6c 65 74 2a 20 28 28 6b 65 79 da.(ev.def)..........(let*.((key
136e0 20 28 76 63 6f 6e 63 61 74 20 70 72 65 66 69 78 20 28 6c 69 73 74 20 65 76 29 29 29 0a 20 20 20 .(vconcat.prefix.(list.ev)))....
13700 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6b 65 79 2d 64 65 73 63 20 28 6b 65 79 2d 64 65 73 63 .............(key-desc.(key-desc
13720 72 69 70 74 69 6f 6e 20 6b 65 79 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 64 0a ription.key)))............(cond.
13740 20 20 20 20 20 20 20 20 20 20 20 20 28 28 61 73 73 6f 63 20 6b 65 79 2d 64 65 73 63 20 62 69 6e ............((assoc.key-desc.bin
13760 64 69 6e 67 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 28 61 6e 64 20 28 6c 69 73 74 70 dings)).............((and.(listp
13780 20 69 67 6e 6f 72 65 2d 63 6f 6d 6d 61 6e 64 73 29 20 28 73 79 6d 62 6f 6c 70 20 64 65 66 29 20 .ignore-commands).(symbolp.def).
137a0 28 6d 65 6d 71 20 64 65 66 20 69 67 6e 6f 72 65 2d 63 6f 6d 6d 61 6e 64 73 29 29 29 0a 20 20 20 (memq.def.ignore-commands)))....
137c0 20 20 20 20 20 20 20 20 20 28 28 6f 72 20 28 73 74 72 69 6e 67 2d 6d 61 74 63 68 2d 70 0a 20 20 .........((or.(string-match-p...
137e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 77 68 69 63 68 2d 6b 65 79 2d 2d 69 67 6e 6f 72 ................which-key--ignor
13800 65 2d 6e 6f 6e 2d 65 76 69 6c 2d 6b 65 79 73 2d 72 65 67 65 78 70 20 6b 65 79 2d 64 65 73 63 29 e-non-evil-keys-regexp.key-desc)
13820 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 71 20 65 76 20 27 6d 65 6e 75 2d 62 ..................(eq.ev.'menu-b
13840 61 72 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 28 61 6e 64 20 28 6b 65 79 6d 61 70 70 ar))).............((and.(keymapp
13860 20 64 65 66 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 74 72 69 6e 67 2d .def)...................(string-
13880 6d 61 74 63 68 2d 70 20 77 68 69 63 68 2d 6b 65 79 2d 2d 65 76 69 6c 2d 6b 65 79 73 2d 72 65 67 match-p.which-key--evil-keys-reg
138a0 65 78 70 20 6b 65 79 2d 64 65 73 63 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 28 61 6e exp.key-desc))).............((an
138c0 64 20 28 6b 65 79 6d 61 70 70 20 64 65 66 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 d.(keymapp.def).................
138e0 20 20 28 6f 72 20 61 6c 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..(or.all.......................
13900 3b 3b 20 65 76 65 6e 74 20 32 37 20 69 73 20 65 73 63 61 70 65 2c 20 73 6f 20 74 68 69 73 20 77 ;;.event.27.is.escape,.so.this.w
13920 69 6c 6c 20 70 69 63 6b 20 75 70 20 6d 65 74 61 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ill.pick.up.meta................
13940 20 20 20 20 20 20 20 3b 3b 20 62 69 6e 64 69 6e 67 73 20 61 6e 64 20 68 6f 70 65 66 75 6c 6c 79 .......;;.bindings.and.hopefully
13960 20 6e 6f 74 20 74 6f 6f 20 6d 75 63 68 20 6d 6f 72 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 .not.too.much.more..............
13980 20 20 20 20 20 20 20 20 20 28 65 71 6c 20 65 76 20 32 37 29 29 29 0a 20 20 20 20 20 20 20 20 20 .........(eql.ev.27)))..........
139a0 20 20 20 20 28 73 65 74 71 20 62 69 6e 64 69 6e 67 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 ....(setq.bindings..............
139c0 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 67 65 74 2d 6b 65 79 6d 61 70 2d 62 69 6e ......(which-key--get-keymap-bin
139e0 64 69 6e 67 73 2d 31 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6b 65 79 6d dings-1.....................keym
13a00 61 70 20 62 69 6e 64 69 6e 67 73 20 6b 65 79 20 6e 69 6c 20 61 6c 6c 20 69 67 6e 6f 72 65 2d 63 ap.bindings.key.nil.all.ignore-c
13a20 6f 6d 6d 61 6e 64 73 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65 66 0a 20 20 20 20 ommands))).............(def.....
13a40 20 20 20 20 20 20 20 20 20 28 6c 65 74 2a 20 28 28 64 65 66 20 28 69 66 20 28 65 71 20 27 6d 65 .........(let*.((def.(if.(eq.'me
13a60 6e 75 2d 69 74 65 6d 20 28 63 61 72 2d 73 61 66 65 20 64 65 66 29 29 0a 20 20 20 20 20 20 20 20 nu-item.(car-safe.def)).........
13a80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d .....................(which-key-
13aa0 2d 67 65 74 2d 6d 65 6e 75 2d 69 74 65 6d 2d 62 69 6e 64 69 6e 67 20 64 65 66 29 0a 20 20 20 20 -get-menu-item-binding.def).....
13ac0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 65 66 29 29 0a 20 20 20 .......................def))....
13ae0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 62 69 6e 64 69 6e 67 0a 20 20 20 20 20 20 .................(binding.......
13b00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 20 6b 65 79 2d 64 65 73 63 0a 20 20 ...............(cons.key-desc...
13b20 20 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 6f 6e 64 0a 20 .........................(cond..
13b40 20 20 20 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 28 73 79 6d ...........................((sym
13b60 62 6f 6c 70 20 64 65 66 29 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 63 6f 6d 70 75 74 65 2d 62 69 bolp.def).(which-key--compute-bi
13b80 6e 64 69 6e 67 20 64 65 66 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nding.def)).....................
13ba0 20 20 20 20 20 20 20 20 28 28 6b 65 79 6d 61 70 70 20 64 65 66 29 20 22 70 72 65 66 69 78 22 29 ........((keymapp.def)."prefix")
13bc0 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 28 66 .............................((f
13be0 75 6e 63 74 69 6f 6e 70 20 64 65 66 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 unctionp.def)...................
13c00 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...........(cond................
13c20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 65 71 20 27 6c 61 6d 62 64 61 20 28 63 61 72 ...............((eq.'lambda.(car
13c40 2d 73 61 66 65 20 64 65 66 29 29 20 22 6c 61 6d 62 64 61 22 29 0a 20 20 20 20 20 20 20 20 20 20 -safe.def))."lambda")...........
13c60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 65 71 20 27 63 6c 6f 73 75 72 ....................((eq.'closur
13c80 65 20 28 63 61 72 2d 73 61 66 65 20 64 65 66 29 29 20 22 63 6c 6f 73 75 72 65 22 29 0a 20 20 20 e.(car-safe.def))."closure")....
13ca0 20 20 20 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 22 66 ...........................(t."f
13cc0 75 6e 63 74 69 6f 6e 22 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 unction"))).....................
13ce0 20 20 20 20 20 20 20 20 28 28 73 74 72 69 6e 67 70 20 64 65 66 29 20 64 65 66 29 0a 20 20 20 20 ........((stringp.def).def).....
13d00 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 28 76 65 63 74 6f 72 ........................((vector
13d20 70 20 64 65 66 29 20 28 6b 65 79 2d 64 65 73 63 72 69 70 74 69 6f 6e 20 64 65 66 29 29 0a 20 20 p.def).(key-description.def))...
13d40 20 20 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 28 61 6e 64 20 ..........................((and.
13d60 28 63 6f 6e 73 70 20 64 65 66 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 (consp.def).....................
13d80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 6c 6f 6f 6b 69 6e 67 20 66 6f 72 20 28 53 54 ..............;;.looking.for.(ST
13da0 52 49 4e 47 20 2e 20 44 45 46 4e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 RING...DEFN)....................
13dc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 74 72 69 6e 67 70 20 28 63 61 72 20 64 65 66 ...............(stringp.(car.def
13de0 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ))).............................
13e00 20 28 63 6f 6e 63 61 74 20 28 77 68 65 6e 20 28 6b 65 79 6d 61 70 70 20 28 63 64 72 2d 73 61 66 .(concat.(when.(keymapp.(cdr-saf
13e20 65 20 64 65 66 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 e.def)).........................
13e40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 67 72 6f 75 70 3a 22 29 0a 20 20 20 20 20 20 20 ..............."group:")........
13e60 20 20 20 20 20 20 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
13e80 61 72 20 64 65 66 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 ar.def))).......................
13ea0 20 20 20 20 20 20 28 74 20 22 75 6e 6b 6e 6f 77 6e 22 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 ......(t."unknown"))))).........
13ec0 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 6f 72 20 28 6e 75 6c 6c 20 66 69 6c 74 65 72 29 0a 20 .......(when.(or.(null.filter)..
13ee0 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 66 75 ........................(and.(fu
13f00 6e 63 74 69 6f 6e 70 20 66 69 6c 74 65 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nctionp.filter).................
13f20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 66 69 6c 74 65 72 20 62 69 ..............(funcall.filter.bi
13f40 6e 64 69 6e 67 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 nding)))..................(push.
13f60 62 69 6e 64 69 6e 67 20 62 69 6e 64 69 6e 67 73 29 29 29 29 29 29 29 0a 20 20 20 20 20 20 20 70 binding.bindings)))))))........p
13f80 72 65 66 69 78 2d 6d 61 70 29 29 0a 20 20 20 20 62 69 6e 64 69 6e 67 73 29 29 0a 0a 28 64 65 66 refix-map)).....bindings))..(def
13fa0 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 67 65 74 2d 6b 65 79 6d 61 70 2d 62 69 6e 64 69 6e 67 un.which-key--get-keymap-binding
13fc0 73 0a 20 20 20 20 28 6b 65 79 6d 61 70 20 26 6f 70 74 69 6f 6e 61 6c 20 73 74 61 72 74 20 70 72 s.....(keymap.&optional.start.pr
13fe0 65 66 69 78 20 66 69 6c 74 65 72 20 61 6c 6c 20 65 76 69 6c 29 0a 20 20 22 52 65 74 72 69 65 76 efix.filter.all.evil)..."Retriev
14000 65 20 74 6f 70 2d 6c 65 76 65 6c 20 62 69 6e 64 69 6e 67 73 20 66 72 6f 6d 20 4b 45 59 4d 41 50 e.top-level.bindings.from.KEYMAP
14020 2e 0a 50 52 45 46 49 58 20 6c 69 6d 69 74 73 20 62 69 6e 64 69 6e 67 73 20 74 6f 20 74 68 6f 73 ..PREFIX.limits.bindings.to.thos
14040 65 20 73 74 61 72 74 69 6e 67 20 77 69 74 68 20 74 68 69 73 20 6b 65 79 0a 73 65 71 75 65 6e 63 e.starting.with.this.key.sequenc
14060 65 2e 20 20 53 54 41 52 54 20 69 73 20 61 20 6c 69 73 74 20 6f 66 20 65 78 69 73 74 69 6e 67 20 e...START.is.a.list.of.existing.
14080 62 69 6e 64 69 6e 67 73 20 74 6f 20 61 64 64 20 74 6f 2e 20 20 49 66 20 41 4c 4c 0a 69 73 20 6e bindings.to.add.to...If.ALL.is.n
140a0 6f 6e 2d 6e 69 6c 2c 20 72 65 63 75 72 73 69 76 65 6c 79 20 72 65 74 72 69 65 76 65 20 61 6c 6c on-nil,.recursively.retrieve.all
140c0 20 62 69 6e 64 69 6e 67 73 20 62 65 6c 6f 77 20 50 52 45 46 49 58 2e 20 20 49 66 0a 45 56 49 4c .bindings.below.PREFIX...If.EVIL
140e0 20 69 73 20 6e 6f 6e 2d 6e 69 6c 2c 20 65 78 74 72 61 63 74 20 61 63 74 69 76 65 20 65 76 69 6c .is.non-nil,.extract.active.evil
14100 20 62 69 6e 64 69 6e 67 73 2e 22 0a 20 20 28 6c 65 74 20 28 28 62 69 6e 64 69 6e 67 73 20 73 74 .bindings."...(let.((bindings.st
14120 61 72 74 29 0a 20 20 20 20 20 20 20 20 28 69 67 6e 6f 72 65 20 27 28 73 65 6c 66 2d 69 6e 73 65 art).........(ignore.'(self-inse
14140 72 74 2d 63 6f 6d 6d 61 6e 64 20 69 67 6e 6f 72 65 20 69 67 6e 6f 72 65 2d 65 76 65 6e 74 20 63 rt-command.ignore.ignore-event.c
14160 6f 6d 70 61 6e 79 2d 69 67 6e 6f 72 65 29 29 0a 20 20 20 20 20 20 20 20 28 65 76 69 6c 2d 6d 61 ompany-ignore)).........(evil-ma
14180 70 0a 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 61 6e 64 20 65 76 69 6c 20 28 62 6f 75 6e p..........(when.(and.evil.(boun
141a0 64 2d 61 6e 64 2d 74 72 75 65 2d 70 20 65 76 69 6c 2d 6c 6f 63 61 6c 2d 6d 6f 64 65 29 29 0a 20 d-and-true-p.evil-local-mode))..
141c0 20 20 20 20 20 20 20 20 20 20 28 6c 6f 6f 6b 75 70 2d 6b 65 79 20 6b 65 79 6d 61 70 20 28 6b 62 ..........(lookup-key.keymap.(kb
141e0 64 20 28 66 6f 72 6d 61 74 20 22 3c 25 73 2d 73 74 61 74 65 3e 22 20 65 76 69 6c 2d 73 74 61 74 d.(format."<%s-state>".evil-stat
14200 65 29 29 29 29 29 29 0a 20 20 20 20 28 77 68 65 6e 20 28 6b 65 79 6d 61 70 70 20 65 76 69 6c 2d e)))))).....(when.(keymapp.evil-
14220 6d 61 70 29 0a 20 20 20 20 20 20 28 73 65 74 71 20 62 69 6e 64 69 6e 67 73 20 28 77 68 69 63 68 map).......(setq.bindings.(which
14240 2d 6b 65 79 2d 2d 67 65 74 2d 6b 65 79 6d 61 70 2d 62 69 6e 64 69 6e 67 73 2d 31 0a 20 20 20 20 -key--get-keymap-bindings-1.....
14260 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 76 69 6c 2d 6d 61 70 20 62 69 6e 64 69 ..................evil-map.bindi
14280 6e 67 73 20 70 72 65 66 69 78 20 66 69 6c 74 65 72 20 61 6c 6c 20 69 67 6e 6f 72 65 29 29 29 0a ngs.prefix.filter.all.ignore))).
142a0 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 67 65 74 2d 6b 65 79 6d 61 70 2d 62 69 6e 64 69 ....(which-key--get-keymap-bindi
142c0 6e 67 73 2d 31 0a 20 20 20 20 20 6b 65 79 6d 61 70 20 62 69 6e 64 69 6e 67 73 20 70 72 65 66 69 ngs-1......keymap.bindings.prefi
142e0 78 20 66 69 6c 74 65 72 20 61 6c 6c 20 69 67 6e 6f 72 65 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 x.filter.all.ignore)))..(defun.w
14300 68 69 63 68 2d 6b 65 79 2d 2d 67 65 74 2d 63 75 72 72 65 6e 74 2d 62 69 6e 64 69 6e 67 73 20 28 hich-key--get-current-bindings.(
14320 26 6f 70 74 69 6f 6e 61 6c 20 70 72 65 66 69 78 20 66 69 6c 74 65 72 29 0a 20 20 22 47 65 6e 65 &optional.prefix.filter)..."Gene
14340 72 61 74 65 20 61 20 6c 69 73 74 20 6f 66 20 63 75 72 72 65 6e 74 20 61 63 74 69 76 65 20 62 69 rate.a.list.of.current.active.bi
14360 6e 64 69 6e 67 73 2e 22 0a 20 20 28 6c 65 74 20 28 62 69 6e 64 69 6e 67 73 0a 20 20 20 20 20 20 ndings."...(let.(bindings.......
14380 20 20 28 6d 61 70 73 20 28 6e 63 6f 6e 63 20 28 63 75 72 72 65 6e 74 2d 61 63 74 69 76 65 2d 6d ..(maps.(nconc.(current-active-m
143a0 61 70 73 20 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 61 70 aps.t)......................(map
143c0 63 61 72 20 23 27 73 79 6d 62 6f 6c 2d 76 61 6c 75 65 20 77 68 69 63 68 2d 6b 65 79 2d 65 78 74 car.#'symbol-value.which-key-ext
143e0 72 61 2d 6b 65 79 6d 61 70 73 29 29 29 29 0a 20 20 20 20 28 64 6f 6c 69 73 74 20 28 6d 61 70 20 ra-keymaps)))).....(dolist.(map.
14400 6d 61 70 73 20 62 69 6e 64 69 6e 67 73 29 0a 20 20 20 20 20 20 28 77 68 65 6e 20 28 63 64 72 20 maps.bindings).......(when.(cdr.
14420 6d 61 70 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 71 20 62 69 6e 64 69 6e 67 73 0a 20 20 20 20 map).........(setq.bindings.....
14440 20 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 67 65 74 2d 6b 65 79 6d 61 70 ..........(which-key--get-keymap
14460 2d 62 69 6e 64 69 6e 67 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 61 70 20 62 69 6e -bindings................map.bin
14480 64 69 6e 67 73 20 70 72 65 66 69 78 20 66 69 6c 74 65 72 29 29 29 29 29 29 0a 0a 28 64 65 66 75 dings.prefix.filter))))))..(defu
144a0 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 67 65 74 2d 62 69 6e 64 69 6e 67 73 20 28 26 6f 70 74 69 n.which-key--get-bindings.(&opti
144c0 6f 6e 61 6c 20 70 72 65 66 69 78 20 6b 65 79 6d 61 70 20 66 69 6c 74 65 72 20 72 65 63 75 72 73 onal.prefix.keymap.filter.recurs
144e0 69 76 65 29 0a 20 20 22 43 6f 6c 6c 65 63 74 20 6b 65 79 20 62 69 6e 64 69 6e 67 73 2e 0a 49 66 ive)..."Collect.key.bindings..If
14500 20 4b 45 59 4d 41 50 20 69 73 20 6e 69 6c 2c 20 63 6f 6c 6c 65 63 74 20 66 72 6f 6d 20 63 75 72 .KEYMAP.is.nil,.collect.from.cur
14520 72 65 6e 74 20 62 75 66 66 65 72 20 75 73 69 6e 67 20 74 68 65 20 63 75 72 72 65 6e 74 0a 6b 65 rent.buffer.using.the.current.ke
14540 79 20 73 65 71 75 65 6e 63 65 20 61 73 20 61 20 70 72 65 66 69 78 2e 20 20 4f 74 68 65 72 77 69 y.sequence.as.a.prefix...Otherwi
14560 73 65 2c 20 63 6f 6c 6c 65 63 74 20 66 72 6f 6d 20 4b 45 59 4d 41 50 2e 20 20 46 49 4c 54 45 52 se,.collect.from.KEYMAP...FILTER
14580 0a 69 73 20 61 20 66 75 6e 63 74 69 6f 6e 20 74 6f 20 75 73 65 20 74 6f 20 66 69 6c 74 65 72 20 .is.a.function.to.use.to.filter.
145a0 74 68 65 20 62 69 6e 64 69 6e 67 73 2e 20 20 49 66 20 52 45 43 55 52 53 49 56 45 20 69 73 0a 6e the.bindings...If.RECURSIVE.is.n
145c0 6f 6e 2d 6e 69 6c 2c 20 74 68 65 6e 20 62 69 6e 64 69 6e 67 73 20 61 72 65 20 63 6f 6c 6c 65 63 on-nil,.then.bindings.are.collec
145e0 74 65 64 20 72 65 63 75 72 73 69 76 65 6c 79 20 66 6f 72 20 61 6c 6c 20 70 72 65 66 69 78 65 73 ted.recursively.for.all.prefixes
14600 2e 22 0a 20 20 28 6c 65 74 2a 20 28 28 75 6e 66 6f 72 6d 61 74 74 65 64 0a 20 20 20 20 20 20 20 ."...(let*.((unformatted........
14620 20 20 20 28 63 6f 6e 64 20 28 28 6b 65 79 6d 61 70 70 20 6b 65 79 6d 61 70 29 0a 20 20 20 20 20 ...(cond.((keymapp.keymap)......
14640 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 67 65 74 2d 6b 65 79 6d ............(which-key--get-keym
14660 61 70 2d 62 69 6e 64 69 6e 67 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6b 65 ap-bindings...................ke
14680 79 6d 61 70 20 6e 69 6c 20 70 72 65 66 69 78 20 66 69 6c 74 65 72 20 72 65 63 75 72 73 69 76 65 ymap.nil.prefix.filter.recursive
146a0 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6b 65 79 6d 61 70 0a 20 20 20 20 20 )).................(keymap......
146c0 20 20 20 20 20 20 20 20 20 20 20 20 28 65 72 72 6f 72 20 22 25 73 20 69 73 20 6e 6f 74 20 61 20 ............(error."%s.is.not.a.
146e0 6b 65 79 6d 61 70 22 20 6b 65 79 6d 61 70 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 keymap".keymap))................
14700 20 28 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d .(t..................(which-key-
14720 2d 67 65 74 2d 63 75 72 72 65 6e 74 2d 62 69 6e 64 69 6e 67 73 20 70 72 65 66 69 78 20 66 69 6c -get-current-bindings.prefix.fil
14740 74 65 72 29 29 29 29 29 0a 20 20 20 20 28 77 68 65 6e 20 77 68 69 63 68 2d 6b 65 79 2d 73 6f 72 ter))))).....(when.which-key-sor
14760 74 2d 6f 72 64 65 72 0a 20 20 20 20 20 20 28 73 65 74 71 20 75 6e 66 6f 72 6d 61 74 74 65 64 0a t-order.......(setq.unformatted.
14780 20 20 20 20 20 20 20 20 20 20 20 20 28 73 6f 72 74 20 75 6e 66 6f 72 6d 61 74 74 65 64 20 77 68 ............(sort.unformatted.wh
147a0 69 63 68 2d 6b 65 79 2d 73 6f 72 74 2d 6f 72 64 65 72 29 29 29 0a 20 20 20 20 28 77 68 69 63 68 ich-key-sort-order))).....(which
147c0 2d 6b 65 79 2d 2d 66 6f 72 6d 61 74 2d 61 6e 64 2d 72 65 70 6c 61 63 65 20 75 6e 66 6f 72 6d 61 -key--format-and-replace.unforma
147e0 74 74 65 64 20 72 65 63 75 72 73 69 76 65 29 29 29 0a 0a 3b 3b 3b 20 46 75 6e 63 74 69 6f 6e 73 tted.recursive)))..;;;.Functions
14800 20 66 6f 72 20 6c 61 79 69 6e 67 20 6f 75 74 20 77 68 69 63 68 2d 6b 65 79 20 62 75 66 66 65 72 .for.laying.out.which-key.buffer
14820 20 70 61 67 65 73 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 6e 6f 72 6d 61 6c .pages..(defun.which-key--normal
14840 69 7a 65 2d 63 6f 6c 75 6d 6e 73 20 28 63 6f 6c 75 6d 6e 73 29 0a 20 20 22 50 61 64 20 43 4f 4c ize-columns.(columns)..."Pad.COL
14860 55 4d 4e 53 20 74 6f 20 74 68 65 20 73 61 6d 65 20 6c 65 6e 67 74 68 20 75 73 69 6e 67 20 65 6d UMNS.to.the.same.length.using.em
14880 70 74 79 20 73 74 72 69 6e 67 73 2e 22 0a 20 20 28 6c 65 74 20 28 28 6d 61 78 2d 6c 65 6e 20 28 pty.strings."...(let.((max-len.(
148a0 63 6c 2d 72 65 64 75 63 65 20 28 6c 61 6d 62 64 61 20 28 61 20 78 29 20 28 6d 61 78 20 61 20 28 cl-reduce.(lambda.(a.x).(max.a.(
148c0 6c 65 6e 67 74 68 20 78 29 29 29 20 63 6f 6c 75 6d 6e 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 length.x))).columns.............
148e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 69 6e 69 74 69 61 6c 2d 76 61 6c 75 65 20 30 ................:initial-value.0
14900 29 29 29 0a 20 20 20 20 28 6d 61 70 63 61 72 0a 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 63 29 ))).....(mapcar......(lambda.(c)
14920 0a 20 20 20 20 20 20 20 28 69 66 20 28 3c 20 28 6c 65 6e 67 74 68 20 63 29 20 6d 61 78 2d 6c 65 ........(if.(<.(length.c).max-le
14940 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 61 70 70 65 6e 64 20 63 20 28 6d 61 6b 65 2d 6c 69 n)............(append.c.(make-li
14960 73 74 20 28 2d 20 6d 61 78 2d 6c 65 6e 20 28 6c 65 6e 67 74 68 20 63 29 29 20 22 22 29 29 0a 20 st.(-.max-len.(length.c)).""))..
14980 20 20 20 20 20 20 20 20 63 29 29 0a 20 20 20 20 20 63 6f 6c 75 6d 6e 73 29 29 29 0a 0a 28 64 65 ........c))......columns)))..(de
149a0 66 73 75 62 73 74 20 77 68 69 63 68 2d 6b 65 79 2d 2d 6a 6f 69 6e 2d 63 6f 6c 75 6d 6e 73 20 28 fsubst.which-key--join-columns.(
149c0 63 6f 6c 75 6d 6e 73 29 0a 20 20 22 54 72 61 6e 73 70 6f 73 65 20 63 6f 6c 75 6d 6e 73 20 69 6e columns)..."Transpose.columns.in
149e0 74 6f 20 72 6f 77 73 2c 20 63 6f 6e 63 61 74 20 72 6f 77 73 20 69 6e 74 6f 20 6c 69 6e 65 73 20 to.rows,.concat.rows.into.lines.
14a00 61 6e 64 20 72 6f 77 73 20 69 6e 74 6f 20 70 61 67 65 2e 22 0a 20 20 28 6c 65 74 2a 20 28 28 70 and.rows.into.page."...(let*.((p
14a20 61 64 64 65 64 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 6e 6f 72 6d 61 6c 69 7a 65 2d 63 6f 6c 75 added.(which-key--normalize-colu
14a40 6d 6e 73 20 28 6e 72 65 76 65 72 73 65 20 63 6f 6c 75 6d 6e 73 29 29 29 0a 20 20 20 20 20 20 20 mns.(nreverse.columns)))........
14a60 20 20 28 72 6f 77 73 20 28 61 70 70 6c 79 20 23 27 63 6c 2d 6d 61 70 63 61 72 20 23 27 6c 69 73 ..(rows.(apply.#'cl-mapcar.#'lis
14a80 74 20 70 61 64 64 65 64 29 29 29 0a 20 20 20 20 28 6d 61 70 63 6f 6e 63 61 74 20 28 6c 61 6d 62 t.padded))).....(mapconcat.(lamb
14aa0 64 61 20 28 72 6f 77 29 20 28 6d 61 70 63 6f 6e 63 61 74 20 23 27 69 64 65 6e 74 69 74 79 20 72 da.(row).(mapconcat.#'identity.r
14ac0 6f 77 20 22 20 22 29 29 20 72 6f 77 73 20 22 5c 6e 22 29 29 29 0a 0a 28 64 65 66 73 75 62 73 74 ow.".")).rows."\n")))..(defsubst
14ae0 20 77 68 69 63 68 2d 6b 65 79 2d 2d 6d 61 78 2d 6c 65 6e 20 28 6b 65 79 73 20 69 6e 64 65 78 20 .which-key--max-len.(keys.index.
14b00 26 6f 70 74 69 6f 6e 61 6c 20 69 6e 69 74 69 61 6c 2d 76 61 6c 75 65 29 0a 20 20 22 46 69 6e 64 &optional.initial-value)..."Find
14b20 20 74 68 65 20 6d 61 78 20 6c 65 6e 67 74 68 20 6f 66 20 74 68 65 20 49 4e 44 45 58 20 65 6c 65 .the.max.length.of.the.INDEX.ele
14b40 6d 65 6e 74 20 69 6e 20 65 61 63 68 20 6f 66 20 4b 45 59 53 2e 22 0a 20 20 28 63 6c 2d 72 65 64 ment.in.each.of.KEYS."...(cl-red
14b60 75 63 65 0a 20 20 20 28 6c 61 6d 62 64 61 20 28 78 20 79 29 20 28 6d 61 78 20 78 20 28 77 68 69 uce....(lambda.(x.y).(max.x.(whi
14b80 63 68 2d 6b 65 79 2d 2d 73 74 72 69 6e 67 2d 77 69 64 74 68 20 28 6e 74 68 20 69 6e 64 65 78 20 ch-key--string-width.(nth.index.
14ba0 79 29 29 29 29 0a 20 20 20 6b 65 79 73 20 3a 69 6e 69 74 69 61 6c 2d 76 61 6c 75 65 20 28 69 66 y))))....keys.:initial-value.(if
14bc0 20 69 6e 69 74 69 61 6c 2d 76 61 6c 75 65 20 69 6e 69 74 69 61 6c 2d 76 61 6c 75 65 20 30 29 29 .initial-value.initial-value.0))
14be0 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 70 61 64 2d 63 6f 6c 75 6d 6e 20 )..(defun.which-key--pad-column.
14c00 28 63 6f 6c 2d 6b 65 79 73 20 61 76 6c 2d 77 69 64 74 68 29 0a 20 20 22 50 61 64 20 63 65 6c 6c (col-keys.avl-width)..."Pad.cell
14c20 73 20 6f 66 20 43 4f 4c 2d 4b 45 59 53 20 74 6f 20 41 56 4c 2d 57 49 44 54 48 2e 0a 54 61 6b 65 s.of.COL-KEYS.to.AVL-WIDTH..Take
14c40 20 61 20 63 6f 6c 75 6d 6e 20 6f 66 20 28 6b 65 79 20 73 65 70 61 72 61 74 6f 72 20 64 65 73 63 .a.column.of.(key.separator.desc
14c60 72 69 70 74 69 6f 6e 29 20 43 4f 4c 2d 4b 45 59 53 2c 0a 63 61 6c 63 75 6c 61 74 65 20 74 68 65 ription).COL-KEYS,.calculate.the
14c80 20 6d 61 78 20 77 69 64 74 68 20 69 6e 20 74 68 65 20 63 6f 6c 75 6d 6e 20 61 6e 64 20 70 61 64 .max.width.in.the.column.and.pad
14ca0 20 61 6c 6c 20 63 65 6c 6c 73 20 6f 75 74 20 74 6f 0a 74 68 61 74 20 77 69 64 74 68 2e 22 0a 20 .all.cells.out.to.that.width."..
14cc0 20 28 6c 65 74 2a 20 28 28 63 6f 6c 2d 6b 65 79 2d 77 69 64 74 68 20 20 28 2b 20 77 68 69 63 68 .(let*.((col-key-width..(+.which
14ce0 2d 6b 65 79 2d 61 64 64 2d 63 6f 6c 75 6d 6e 2d 70 61 64 64 69 6e 67 0a 20 20 20 20 20 20 20 20 -key-add-column-padding.........
14d00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d ....................(which-key--
14d20 6d 61 78 2d 6c 65 6e 20 63 6f 6c 2d 6b 65 79 73 20 30 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 max-len.col-keys.0)))..........(
14d40 63 6f 6c 2d 73 65 70 2d 77 69 64 74 68 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 6d 61 78 2d 6c col-sep-width..(which-key--max-l
14d60 65 6e 20 63 6f 6c 2d 6b 65 79 73 20 31 29 29 0a 20 20 20 20 20 20 20 20 20 28 61 76 6c 2d 77 69 en.col-keys.1))..........(avl-wi
14d80 64 74 68 20 20 20 20 20 20 28 2d 20 61 76 6c 2d 77 69 64 74 68 20 63 6f 6c 2d 6b 65 79 2d 77 69 dth......(-.avl-width.col-key-wi
14da0 64 74 68 20 63 6f 6c 2d 73 65 70 2d 77 69 64 74 68 29 29 0a 20 20 20 20 20 20 20 20 20 28 63 6f dth.col-sep-width))..........(co
14dc0 6c 2d 64 65 73 63 2d 77 69 64 74 68 20 28 6d 69 6e 20 61 76 6c 2d 77 69 64 74 68 0a 20 20 20 20 l-desc-width.(min.avl-width.....
14de0 20 20 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 77 68 69 63 68 ..........................(which
14e00 2d 6b 65 79 2d 2d 6d 61 78 2d 6c 65 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 -key--max-len...................
14e20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 2d 6b 65 79 73 20 32 0a 20 20 20 20 20 20 20 20 .............col-keys.2.........
14e40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 77 68 69 63 68 2d 6b 65 79 .......................which-key
14e60 2d 6d 69 6e 2d 63 6f 6c 75 6d 6e 2d 64 65 73 63 72 69 70 74 69 6f 6e 2d 77 69 64 74 68 29 29 29 -min-column-description-width)))
14e80 0a 20 20 20 20 20 20 20 20 20 28 63 6f 6c 2d 77 69 64 74 68 20 20 20 20 20 20 28 2b 20 63 6f 6c ..........(col-width......(+.col
14ea0 2d 6b 65 79 2d 77 69 64 74 68 20 63 6f 6c 2d 73 65 70 2d 77 69 64 74 68 20 63 6f 6c 2d 64 65 73 -key-width.col-sep-width.col-des
14ec0 63 2d 77 69 64 74 68 29 29 0a 20 20 20 20 20 20 20 20 20 28 63 6f 6c 2d 66 6f 72 6d 61 74 20 20 c-width))..........(col-format..
14ee0 20 20 20 28 63 6f 6e 63 61 74 20 22 25 22 20 28 69 6e 74 2d 74 6f 2d 73 74 72 69 6e 67 20 63 6f ...(concat."%".(int-to-string.co
14f00 6c 2d 6b 65 79 2d 77 69 64 74 68 29 20 22 73 25 73 25 73 22 29 29 29 0a 20 20 20 20 28 63 6f 6e l-key-width)."s%s%s"))).....(con
14f20 73 20 63 6f 6c 2d 77 69 64 74 68 0a 20 20 20 20 20 20 20 20 20 20 28 6d 61 70 63 61 72 20 28 70 s.col-width...........(mapcar.(p
14f40 63 61 73 65 2d 6c 61 6d 62 64 61 20 28 60 28 2c 6b 65 79 20 2c 73 65 70 20 2c 64 65 73 63 20 2c case-lambda.(`(,key.,sep.,desc.,
14f60 5f 64 6f 63 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 63 _doc)).....................(conc
14f80 61 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 6f 72 6d 61 74 20 at......................(format.
14fa0 63 6f 6c 2d 66 6f 72 6d 61 74 20 6b 65 79 20 73 65 70 20 64 65 73 63 29 0a 20 20 20 20 20 20 20 col-format.key.sep.desc)........
14fc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 61 6b 65 2d 73 74 72 69 6e 67 20 28 2d 20 63 6f ..............(make-string.(-.co
14fe0 6c 2d 64 65 73 63 2d 77 69 64 74 68 20 28 6c 65 6e 67 74 68 20 64 65 73 63 29 29 20 3f 5c 73 29 l-desc-width.(length.desc)).?\s)
15000 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 2d 6b 65 79 73 29 29 29 ))...................col-keys)))
15020 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 70 61 72 74 69 74 69 6f 6e 2d 6c )..(defun.which-key--partition-l
15040 69 73 74 20 28 6e 20 6c 69 73 74 29 0a 20 20 22 50 61 72 74 69 74 69 6f 6e 20 4c 49 53 54 20 69 ist.(n.list)..."Partition.LIST.i
15060 6e 74 6f 20 4e 2d 73 69 7a 65 64 20 73 75 62 6c 69 73 74 73 2e 22 0a 20 20 28 6c 65 74 20 28 72 nto.N-sized.sublists."...(let.(r
15080 65 73 29 0a 20 20 20 20 28 77 68 69 6c 65 20 6c 69 73 74 0a 20 20 20 20 20 20 28 73 65 74 71 20 es).....(while.list.......(setq.
150a0 72 65 73 20 28 63 6f 6e 73 20 28 63 6c 2d 73 75 62 73 65 71 20 6c 69 73 74 20 30 20 28 6d 69 6e res.(cons.(cl-subseq.list.0.(min
150c0 20 6e 20 28 6c 65 6e 67 74 68 20 6c 69 73 74 29 29 29 20 72 65 73 29 0a 20 20 20 20 20 20 20 20 .n.(length.list))).res).........
150e0 20 20 20 20 6c 69 73 74 20 28 6e 74 68 63 64 72 20 6e 20 6c 69 73 74 29 29 29 0a 20 20 20 20 28 ....list.(nthcdr.n.list))).....(
15100 6e 72 65 76 65 72 73 65 20 72 65 73 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 nreverse.res)))..(defun.which-ke
15120 79 2d 2d 6c 69 73 74 2d 74 6f 2d 70 61 67 65 73 20 28 6b 65 79 73 20 61 76 6c 2d 6c 69 6e 65 73 y--list-to-pages.(keys.avl-lines
15140 20 61 76 6c 2d 77 69 64 74 68 29 0a 20 20 22 43 6f 6e 76 65 72 74 20 6c 69 73 74 20 6f 66 20 4b .avl-width)..."Convert.list.of.K
15160 45 59 53 20 74 6f 20 63 6f 6c 75 6d 6e 73 20 62 61 73 65 64 20 6f 6e 20 64 69 6d 65 6e 73 69 6f EYS.to.columns.based.on.dimensio
15180 6e 73 20 41 56 4c 2d 4c 49 4e 45 53 20 61 6e 64 20 41 56 4c 2d 57 49 44 54 48 2e 0a 52 65 74 75 ns.AVL-LINES.and.AVL-WIDTH..Retu
151a0 72 6e 20 61 20 60 77 68 69 63 68 2d 6b 65 79 2d 2d 70 61 67 65 73 27 20 6f 62 6a 65 63 74 20 74 rn.a.`which-key--pages'.object.t
151c0 68 61 74 20 68 6f 6c 64 73 20 74 68 65 20 70 61 67 65 20 73 74 72 69 6e 67 73 2c 0a 61 73 20 77 hat.holds.the.page.strings,.as.w
151e0 65 6c 6c 20 61 73 20 6d 65 74 61 64 61 74 61 2e 22 0a 20 20 28 6c 65 74 20 28 28 63 6f 6c 73 2d ell.as.metadata."...(let.((cols-
15200 77 2d 77 69 64 74 68 73 20 28 6d 61 70 63 61 72 20 28 6c 61 6d 62 64 61 20 28 63 29 20 28 77 68 w-widths.(mapcar.(lambda.(c).(wh
15220 69 63 68 2d 6b 65 79 2d 2d 70 61 64 2d 63 6f 6c 75 6d 6e 20 63 20 61 76 6c 2d 77 69 64 74 68 29 ich-key--pad-column.c.avl-width)
15240 29 0a 09 09 09 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 70 61 72 74 69 74 69 6f )...........(which-key--partitio
15260 6e 2d 6c 69 73 74 20 61 76 6c 2d 6c 69 6e 65 73 20 6b 65 79 73 29 29 29 0a 20 20 20 20 20 20 20 n-list.avl-lines.keys)))........
15280 20 28 70 61 67 65 2d 77 69 64 74 68 20 30 29 20 28 6e 2d 70 61 67 65 73 20 30 29 20 28 6e 2d 6b .(page-width.0).(n-pages.0).(n-k
152a0 65 79 73 20 30 29 20 28 6e 2d 63 6f 6c 75 6d 6e 73 20 30 29 0a 20 20 20 20 20 20 20 20 70 61 67 eys.0).(n-columns.0).........pag
152c0 65 2d 63 6f 6c 73 20 70 61 67 65 73 20 70 61 67 65 2d 77 69 64 74 68 73 20 6b 65 79 73 2f 70 61 e-cols.pages.page-widths.keys/pa
152e0 67 65 20 63 6f 6c 29 0a 20 20 20 20 28 69 66 20 28 3e 20 28 61 70 70 6c 79 20 23 27 6d 61 78 20 ge.col).....(if.(>.(apply.#'max.
15300 28 6d 61 70 63 61 72 20 23 27 63 61 72 20 63 6f 6c 73 2d 77 2d 77 69 64 74 68 73 29 29 20 61 76 (mapcar.#'car.cols-w-widths)).av
15320 6c 2d 77 69 64 74 68 29 0a 20 20 20 20 20 20 20 20 3b 3b 20 67 69 76 65 20 75 70 20 69 66 20 6e l-width).........;;.give.up.if.n
15340 6f 20 63 6f 6c 75 6d 6e 73 20 66 69 74 0a 20 20 20 20 20 20 20 20 6e 69 6c 0a 20 20 20 20 20 20 o.columns.fit.........nil.......
15360 28 77 68 69 6c 65 20 63 6f 6c 73 2d 77 2d 77 69 64 74 68 73 0a 20 20 20 20 20 20 20 20 3b 3b 20 (while.cols-w-widths.........;;.
15380 73 74 61 72 74 20 6e 65 77 20 70 61 67 65 0a 20 20 20 20 20 20 20 20 28 63 6c 2d 69 6e 63 66 20 start.new.page.........(cl-incf.
153a0 6e 2d 70 61 67 65 73 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 71 20 63 6f 6c 20 28 70 6f 70 20 n-pages).........(setq.col.(pop.
153c0 63 6f 6c 73 2d 77 2d 77 69 64 74 68 73 29 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 71 20 70 61 cols-w-widths)).........(setq.pa
153e0 67 65 2d 63 6f 6c 73 20 28 6c 69 73 74 20 28 63 64 72 20 63 6f 6c 29 29 29 0a 20 20 20 20 20 20 ge-cols.(list.(cdr.col))).......
15400 20 20 28 73 65 74 71 20 70 61 67 65 2d 77 69 64 74 68 20 28 63 61 72 20 63 6f 6c 29 29 0a 20 20 ..(setq.page-width.(car.col))...
15420 20 20 20 20 20 20 28 73 65 74 71 20 6e 2d 6b 65 79 73 20 28 6c 65 6e 67 74 68 20 28 63 64 72 20 ......(setq.n-keys.(length.(cdr.
15440 63 6f 6c 29 29 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 71 20 6e 2d 63 6f 6c 75 6d 6e 73 20 31 col))).........(setq.n-columns.1
15460 29 0a 20 20 20 20 20 20 20 20 3b 3b 20 61 64 64 20 61 64 64 69 74 69 6f 6e 61 6c 20 63 6f 6c 75 ).........;;.add.additional.colu
15480 6d 6e 73 20 61 73 20 6c 6f 6e 67 20 61 73 20 74 68 65 79 20 66 69 74 0a 20 20 20 20 20 20 20 20 mns.as.long.as.they.fit.........
154a0 28 77 68 69 6c 65 20 28 61 6e 64 20 63 6f 6c 73 2d 77 2d 77 69 64 74 68 73 0a 20 20 20 20 20 20 (while.(and.cols-w-widths.......
154c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 20 28 6e 75 6c 6c 20 77 68 69 63 68 2d 6b 65 ..............(or.(null.which-ke
154e0 79 2d 6d 61 78 2d 64 69 73 70 6c 61 79 2d 63 6f 6c 75 6d 6e 73 29 0a 20 20 20 20 20 20 20 20 20 y-max-display-columns)..........
15500 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 3c 20 6e 2d 63 6f 6c 75 6d 6e 73 20 77 68 69 63 ...............(<.n-columns.whic
15520 68 2d 6b 65 79 2d 6d 61 78 2d 64 69 73 70 6c 61 79 2d 63 6f 6c 75 6d 6e 73 29 29 0a 20 20 20 20 h-key-max-display-columns)).....
15540 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 3c 3d 20 28 2b 20 70 61 67 65 2d 77 69 64 74 ................(<=.(+.page-widt
15560 68 20 31 20 28 63 61 61 72 20 63 6f 6c 73 2d 77 2d 77 69 64 74 68 73 29 29 20 61 76 6c 2d 77 69 h.1.(caar.cols-w-widths)).avl-wi
15580 64 74 68 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 63 6f 6c 20 28 70 6f 70 20 63 dth))...........(setq.col.(pop.c
155a0 6f 6c 73 2d 77 2d 77 69 64 74 68 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20 28 ols-w-widths))...........(push.(
155c0 63 64 72 20 63 6f 6c 29 20 70 61 67 65 2d 63 6f 6c 73 29 0a 20 20 20 20 20 20 20 20 20 20 28 63 cdr.col).page-cols)...........(c
155e0 6c 2d 69 6e 63 66 20 70 61 67 65 2d 77 69 64 74 68 20 28 31 2b 20 28 63 61 72 20 63 6f 6c 29 29 l-incf.page-width.(1+.(car.col))
15600 29 0a 20 20 20 20 20 20 20 20 20 20 28 63 6c 2d 69 6e 63 66 20 6e 2d 6b 65 79 73 20 28 6c 65 6e )...........(cl-incf.n-keys.(len
15620 67 74 68 20 28 63 64 72 20 63 6f 6c 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 63 6c 2d 69 6e gth.(cdr.col)))...........(cl-in
15640 63 66 20 6e 2d 63 6f 6c 75 6d 6e 73 29 29 0a 20 20 20 20 20 20 20 20 28 70 75 73 68 20 28 77 68 cf.n-columns)).........(push.(wh
15660 69 63 68 2d 6b 65 79 2d 2d 6a 6f 69 6e 2d 63 6f 6c 75 6d 6e 73 20 70 61 67 65 2d 63 6f 6c 73 29 ich-key--join-columns.page-cols)
15680 20 70 61 67 65 73 29 0a 20 20 20 20 20 20 20 20 28 70 75 73 68 20 6e 2d 6b 65 79 73 20 6b 65 79 .pages).........(push.n-keys.key
156a0 73 2f 70 61 67 65 29 0a 20 20 20 20 20 20 20 20 28 70 75 73 68 20 70 61 67 65 2d 77 69 64 74 68 s/page).........(push.page-width
156c0 20 70 61 67 65 2d 77 69 64 74 68 73 29 29 0a 20 20 20 20 20 20 28 6d 61 6b 65 2d 77 68 69 63 68 .page-widths)).......(make-which
156e0 2d 6b 65 79 2d 2d 70 61 67 65 73 0a 20 20 20 20 20 20 20 3a 70 61 67 65 73 20 28 6e 72 65 76 65 -key--pages........:pages.(nreve
15700 72 73 65 20 70 61 67 65 73 29 0a 20 20 20 20 20 20 20 3a 68 65 69 67 68 74 20 28 69 66 20 28 3e rse.pages)........:height.(if.(>
15720 20 6e 2d 70 61 67 65 73 20 31 29 20 61 76 6c 2d 6c 69 6e 65 73 20 28 6d 69 6e 20 61 76 6c 2d 6c .n-pages.1).avl-lines.(min.avl-l
15740 69 6e 65 73 20 6e 2d 6b 65 79 73 29 29 0a 20 20 20 20 20 20 20 3a 77 69 64 74 68 73 20 28 6e 72 ines.n-keys))........:widths.(nr
15760 65 76 65 72 73 65 20 70 61 67 65 2d 77 69 64 74 68 73 29 0a 20 20 20 20 20 20 20 3a 6b 65 79 73 everse.page-widths)........:keys
15780 2f 70 61 67 65 20 28 72 65 76 65 72 73 65 20 6b 65 79 73 2f 70 61 67 65 29 0a 20 20 20 20 20 20 /page.(reverse.keys/page).......
157a0 20 3a 70 61 67 65 2d 6e 75 6d 73 20 28 6e 75 6d 62 65 72 2d 73 65 71 75 65 6e 63 65 20 31 20 6e .:page-nums.(number-sequence.1.n
157c0 2d 70 61 67 65 73 29 0a 20 20 20 20 20 20 20 3a 6e 75 6d 2d 70 61 67 65 73 20 6e 2d 70 61 67 65 -pages)........:num-pages.n-page
157e0 73 0a 20 20 20 20 20 20 20 3a 74 6f 74 61 6c 2d 6b 65 79 73 20 28 61 70 70 6c 79 20 23 27 2b 20 s........:total-keys.(apply.#'+.
15800 6b 65 79 73 2f 70 61 67 65 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 keys/page)))))..(defun.which-key
15820 2d 2d 63 72 65 61 74 65 2d 70 61 67 65 73 2d 31 0a 20 20 20 20 28 6b 65 79 73 20 61 76 61 69 6c --create-pages-1.....(keys.avail
15840 61 62 6c 65 2d 6c 69 6e 65 73 20 61 76 61 69 6c 61 62 6c 65 2d 77 69 64 74 68 20 26 6f 70 74 69 able-lines.available-width.&opti
15860 6f 6e 61 6c 20 6d 69 6e 2d 6c 69 6e 65 73 20 76 65 72 74 69 63 61 6c 29 0a 20 20 22 43 72 65 61 onal.min-lines.vertical)..."Crea
15880 74 65 20 70 61 67 65 20 73 74 72 69 6e 67 73 20 75 73 69 6e 67 20 60 77 68 69 63 68 2d 6b 65 79 te.page.strings.using.`which-key
158a0 2d 2d 6c 69 73 74 2d 74 6f 2d 70 61 67 65 73 27 2e 0a 57 69 6c 6c 20 74 72 79 20 74 6f 20 66 69 --list-to-pages'..Will.try.to.fi
158c0 6e 64 20 74 68 65 20 62 65 73 74 20 6e 75 6d 62 65 72 20 6f 66 20 72 6f 77 73 20 61 6e 64 20 63 nd.the.best.number.of.rows.and.c
158e0 6f 6c 75 6d 6e 73 20 75 73 69 6e 67 20 74 68 65 0a 67 69 76 65 6e 20 64 69 6d 65 6e 73 69 6f 6e olumns.using.the.given.dimension
15900 73 20 61 6e 64 20 74 68 65 20 6c 65 6e 67 74 68 20 61 6e 64 20 77 69 64 74 68 73 20 6f 66 20 49 s.and.the.length.and.widths.of.I
15920 54 45 4d 53 2e 20 20 55 73 65 20 56 45 52 54 49 43 41 4c 0a 69 66 20 74 68 65 20 49 54 45 4d 53 TEMS...Use.VERTICAL.if.the.ITEMS
15940 20 61 72 65 20 6c 61 69 64 20 6f 75 74 20 76 65 72 74 69 63 61 6c 6c 79 20 61 6e 64 20 74 68 65 .are.laid.out.vertically.and.the
15960 20 6e 75 6d 62 65 72 20 6f 66 20 63 6f 6c 75 6d 6e 73 0a 73 68 6f 75 6c 64 20 62 65 20 6d 69 6e .number.of.columns.should.be.min
15980 69 6d 69 7a 65 64 2e 22 0a 20 20 28 6c 65 74 20 28 28 72 65 73 75 6c 74 20 28 77 68 69 63 68 2d imized."...(let.((result.(which-
159a0 6b 65 79 2d 2d 6c 69 73 74 2d 74 6f 2d 70 61 67 65 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 key--list-to-pages..............
159c0 20 20 20 20 6b 65 79 73 20 61 76 61 69 6c 61 62 6c 65 2d 6c 69 6e 65 73 20 61 76 61 69 6c 61 62 ....keys.available-lines.availab
159e0 6c 65 2d 77 69 64 74 68 29 29 0a 20 20 20 20 20 20 20 20 28 6d 69 6e 2d 6c 69 6e 65 73 20 28 6f le-width)).........(min-lines.(o
15a00 72 20 6d 69 6e 2d 6c 69 6e 65 73 20 30 29 29 0a 20 20 20 20 20 20 20 20 66 6f 75 6e 64 20 70 72 r.min-lines.0)).........found.pr
15a20 65 76 2d 72 65 73 75 6c 74 29 0a 20 20 20 20 28 69 66 20 28 6f 72 20 28 6e 75 6c 6c 20 72 65 73 ev-result).....(if.(or.(null.res
15a40 75 6c 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 65 72 74 69 63 61 6c 0a 20 20 20 20 20 20 ult).............vertical.......
15a60 20 20 20 20 20 20 28 3e 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 70 61 67 65 73 2d 6e 75 6d 2d 70 ......(>.(which-key--pages-num-p
15a80 61 67 65 73 20 72 65 73 75 6c 74 29 20 31 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 3d 20 31 ages.result).1).............(=.1
15aa0 20 61 76 61 69 6c 61 62 6c 65 2d 6c 69 6e 65 73 29 29 0a 20 20 20 20 20 20 20 20 72 65 73 75 6c .available-lines)).........resul
15ac0 74 0a 20 20 20 20 20 20 3b 3b 20 73 69 6d 70 6c 65 20 73 65 61 72 63 68 20 66 6f 72 20 61 20 66 t.......;;.simple.search.for.a.f
15ae0 69 74 74 69 6e 67 20 70 61 67 65 0a 20 20 20 20 20 20 28 77 68 69 6c 65 20 28 61 6e 64 20 28 3e itting.page.......(while.(and.(>
15b00 20 61 76 61 69 6c 61 62 6c 65 2d 6c 69 6e 65 73 20 6d 69 6e 2d 6c 69 6e 65 73 29 0a 20 20 20 20 .available-lines.min-lines).....
15b20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e 6f 74 20 66 6f 75 6e 64 29 29 0a 20 20 20 20 20 ..............(not.found))......
15b40 20 20 20 28 73 65 74 71 20 61 76 61 69 6c 61 62 6c 65 2d 6c 69 6e 65 73 20 28 63 6c 2d 64 65 63 ...(setq.available-lines.(cl-dec
15b60 66 20 61 76 61 69 6c 61 62 6c 65 2d 6c 69 6e 65 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 f.available-lines)..............
15b80 20 70 72 65 76 2d 72 65 73 75 6c 74 20 72 65 73 75 6c 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 .prev-result.result.............
15ba0 20 20 72 65 73 75 6c 74 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 6c 69 73 74 2d 74 6f 2d 70 61 67 ..result.(which-key--list-to-pag
15bc0 65 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6b 65 79 73 20 61 76 es.......................keys.av
15be0 61 69 6c 61 62 6c 65 2d 6c 69 6e 65 73 20 61 76 61 69 6c 61 62 6c 65 2d 77 69 64 74 68 29 0a 20 ailable-lines.available-width)..
15c00 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 75 6e 64 20 28 3e 20 28 77 68 69 63 68 2d 6b 65 79 .............found.(>.(which-key
15c20 2d 2d 70 61 67 65 73 2d 6e 75 6d 2d 70 61 67 65 73 20 72 65 73 75 6c 74 29 20 31 29 29 29 0a 20 --pages-num-pages.result).1)))..
15c40 20 20 20 20 20 28 69 66 20 66 6f 75 6e 64 20 70 72 65 76 2d 72 65 73 75 6c 74 20 72 65 73 75 6c .....(if.found.prev-result.resul
15c60 74 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 63 72 65 61 74 65 2d t))))..(defun.which-key--create-
15c80 70 61 67 65 73 20 28 6b 65 79 73 20 26 6f 70 74 69 6f 6e 61 6c 20 70 72 65 66 69 78 2d 6b 65 79 pages.(keys.&optional.prefix-key
15ca0 73 20 70 72 65 66 69 78 2d 74 69 74 6c 65 29 0a 20 20 22 43 72 65 61 74 65 20 70 61 67 65 20 73 s.prefix-title)..."Create.page.s
15cc0 74 72 69 6e 67 73 20 75 73 69 6e 67 20 60 77 68 69 63 68 2d 6b 65 79 2d 2d 6c 69 73 74 2d 74 6f trings.using.`which-key--list-to
15ce0 2d 70 61 67 65 73 27 2e 0a 57 69 6c 6c 20 74 72 79 20 74 6f 20 66 69 6e 64 20 74 68 65 20 62 65 -pages'..Will.try.to.find.the.be
15d00 73 74 20 6e 75 6d 62 65 72 20 6f 66 20 72 6f 77 73 20 61 6e 64 20 63 6f 6c 75 6d 6e 73 20 75 73 st.number.of.rows.and.columns.us
15d20 69 6e 67 20 74 68 65 0a 67 69 76 65 6e 20 64 69 6d 65 6e 73 69 6f 6e 73 20 61 6e 64 20 74 68 65 ing.the.given.dimensions.and.the
15d40 20 6c 65 6e 67 74 68 20 61 6e 64 20 77 69 64 74 68 73 20 6f 66 20 4b 45 59 53 2e 20 20 53 45 4c .length.and.widths.of.KEYS...SEL
15d60 2d 57 49 4e 2d 57 49 44 54 48 0a 69 73 20 74 68 65 20 77 69 64 74 68 20 6f 66 20 74 68 65 20 6c -WIN-WIDTH.is.the.width.of.the.l
15d80 69 76 65 20 77 69 6e 64 6f 77 2e 22 0a 20 20 28 6c 65 74 2a 20 28 28 6d 61 78 2d 64 69 6d 73 20 ive.window."...(let*.((max-dims.
15da0 28 77 68 69 63 68 2d 6b 65 79 2d 2d 70 6f 70 75 70 2d 6d 61 78 2d 64 69 6d 65 6e 73 69 6f 6e 73 (which-key--popup-max-dimensions
15dc0 29 29 0a 20 20 20 20 20 20 20 20 20 28 6d 61 78 2d 6c 69 6e 65 73 20 28 63 61 72 20 6d 61 78 2d ))..........(max-lines.(car.max-
15de0 64 69 6d 73 29 29 0a 20 20 20 20 20 20 20 20 20 28 6d 61 78 2d 77 69 64 74 68 20 28 63 64 72 20 dims))..........(max-width.(cdr.
15e00 6d 61 78 2d 64 69 6d 73 29 29 0a 20 20 20 20 20 20 20 20 20 28 70 72 65 66 69 78 2d 64 65 73 63 max-dims))..........(prefix-desc
15e20 20 28 6b 65 79 2d 64 65 73 63 72 69 70 74 69 6f 6e 20 70 72 65 66 69 78 2d 6b 65 79 73 29 29 0a .(key-description.prefix-keys)).
15e40 20 20 20 20 20 20 20 20 20 28 66 75 6c 6c 2d 70 72 65 66 69 78 20 28 77 68 69 63 68 2d 6b 65 79 .........(full-prefix.(which-key
15e60 2d 2d 66 75 6c 6c 2d 70 72 65 66 69 78 20 70 72 65 66 69 78 2d 64 65 73 63 29 29 0a 20 20 20 20 --full-prefix.prefix-desc)).....
15e80 20 20 20 20 20 28 70 72 65 66 69 78 20 28 77 68 65 6e 20 28 65 71 20 77 68 69 63 68 2d 6b 65 79 .....(prefix.(when.(eq.which-key
15ea0 2d 73 68 6f 77 2d 70 72 65 66 69 78 20 27 6c 65 66 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 -show-prefix.'left).............
15ec0 20 20 20 20 20 20 20 28 2b 20 32 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 73 74 72 69 6e 67 2d 77 .......(+.2.(which-key--string-w
15ee0 69 64 74 68 20 66 75 6c 6c 2d 70 72 65 66 69 78 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 70 idth.full-prefix))))..........(p
15f00 72 65 66 69 78 2d 74 6f 70 2d 62 6f 74 74 6f 6d 20 28 6d 65 6d 62 65 72 20 77 68 69 63 68 2d 6b refix-top-bottom.(member.which-k
15f20 65 79 2d 73 68 6f 77 2d 70 72 65 66 69 78 20 27 28 62 6f 74 74 6f 6d 20 74 6f 70 29 29 29 0a 20 ey-show-prefix.'(bottom.top)))..
15f40 20 20 20 20 20 20 20 20 28 61 76 6c 2d 6c 69 6e 65 73 20 28 69 66 20 70 72 65 66 69 78 2d 74 6f ........(avl-lines.(if.prefix-to
15f60 70 2d 62 6f 74 74 6f 6d 20 28 2d 20 6d 61 78 2d 6c 69 6e 65 73 20 31 29 20 6d 61 78 2d 6c 69 6e p-bottom.(-.max-lines.1).max-lin
15f80 65 73 29 29 0a 20 20 20 20 20 20 20 20 20 28 6d 69 6e 2d 6c 69 6e 65 73 20 28 6d 69 6e 20 61 76 es))..........(min-lines.(min.av
15fa0 6c 2d 6c 69 6e 65 73 20 77 68 69 63 68 2d 6b 65 79 2d 6d 69 6e 2d 64 69 73 70 6c 61 79 2d 6c 69 l-lines.which-key-min-display-li
15fc0 6e 65 73 29 29 0a 20 20 20 20 20 20 20 20 20 28 61 76 6c 2d 77 69 64 74 68 20 28 69 66 20 70 72 nes))..........(avl-width.(if.pr
15fe0 65 66 69 78 20 28 2d 20 6d 61 78 2d 77 69 64 74 68 20 70 72 65 66 69 78 29 20 6d 61 78 2d 77 69 efix.(-.max-width.prefix).max-wi
16000 64 74 68 29 29 0a 20 20 20 20 20 20 20 20 20 28 76 65 72 74 69 63 61 6c 20 28 6f 72 20 28 61 6e dth))..........(vertical.(or.(an
16020 64 20 28 65 71 20 77 68 69 63 68 2d 6b 65 79 2d 70 6f 70 75 70 2d 74 79 70 65 20 27 73 69 64 65 d.(eq.which-key-popup-type.'side
16040 2d 77 69 6e 64 6f 77 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 -window)........................
16060 20 20 20 20 20 28 6d 65 6d 62 65 72 20 77 68 69 63 68 2d 6b 65 79 2d 73 69 64 65 2d 77 69 6e 64 .....(member.which-key-side-wind
16080 6f 77 2d 6c 6f 63 61 74 69 6f 6e 20 27 28 6c 65 66 74 20 72 69 67 68 74 29 29 29 0a 20 20 20 20 ow-location.'(left.right))).....
160a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 71 20 77 68 69 63 68 2d 6b 65 79 ...................(eq.which-key
160c0 2d 6d 61 78 2d 64 69 73 70 6c 61 79 2d 63 6f 6c 75 6d 6e 73 20 31 29 29 29 0a 20 20 20 20 20 20 -max-display-columns.1))).......
160e0 20 20 20 72 65 73 75 6c 74 29 0a 20 20 20 20 28 73 65 74 71 20 72 65 73 75 6c 74 0a 20 20 20 20 ...result).....(setq.result.....
16100 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 63 72 65 61 74 65 2d 70 61 67 65 73 2d 31 ......(which-key--create-pages-1
16120 0a 20 20 20 20 20 20 20 20 20 20 20 6b 65 79 73 20 61 76 6c 2d 6c 69 6e 65 73 20 61 76 6c 2d 77 ............keys.avl-lines.avl-w
16140 69 64 74 68 20 6d 69 6e 2d 6c 69 6e 65 73 20 76 65 72 74 69 63 61 6c 29 29 0a 20 20 20 20 28 77 idth.min-lines.vertical)).....(w
16160 68 65 6e 20 28 61 6e 64 20 72 65 73 75 6c 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 hen.(and.result................(
16180 3e 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 70 61 67 65 73 2d 6e 75 6d 2d 70 61 67 65 73 20 72 65 >.(which-key--pages-num-pages.re
161a0 73 75 6c 74 29 20 30 29 29 0a 20 20 20 20 20 20 28 73 65 74 66 20 28 77 68 69 63 68 2d 6b 65 79 sult).0)).......(setf.(which-key
161c0 2d 2d 70 61 67 65 73 2d 70 72 65 66 69 78 20 72 65 73 75 6c 74 29 20 70 72 65 66 69 78 2d 6b 65 --pages-prefix.result).prefix-ke
161e0 79 73 29 0a 20 20 20 20 20 20 28 73 65 74 66 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 70 61 67 65 ys).......(setf.(which-key--page
16200 73 2d 70 72 65 66 69 78 2d 74 69 74 6c 65 20 72 65 73 75 6c 74 29 0a 20 20 20 20 20 20 20 20 20 s-prefix-title.result)..........
16220 20 20 20 28 6f 72 20 70 72 65 66 69 78 2d 74 69 74 6c 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 ...(or.prefix-title.............
16240 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 6d 61 79 62 65 2d 67 65 74 2d 70 72 65 66 69 78 ....(which-key--maybe-get-prefix
16260 2d 74 69 74 6c 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6b 65 79 2d 64 65 73 -title..................(key-des
16280 63 72 69 70 74 69 6f 6e 20 70 72 65 66 69 78 2d 6b 65 79 73 29 29 29 29 0a 20 20 20 20 20 20 28 cription.prefix-keys)))).......(
162a0 77 68 65 6e 20 70 72 65 66 69 78 2d 74 6f 70 2d 62 6f 74 74 6f 6d 0a 20 20 20 20 20 20 20 20 3b when.prefix-top-bottom.........;
162c0 3b 20 41 64 64 20 62 61 63 6b 20 74 68 65 20 6c 69 6e 65 20 65 61 72 6c 69 65 72 20 72 65 73 65 ;.Add.back.the.line.earlier.rese
162e0 72 76 65 64 20 66 6f 72 20 74 68 65 20 70 61 67 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 2e 0a 20 rved.for.the.page.information...
16300 20 20 20 20 20 20 20 28 73 65 74 66 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 70 61 67 65 73 2d 68 .......(setf.(which-key--pages-h
16320 65 69 67 68 74 20 72 65 73 75 6c 74 29 20 6d 61 78 2d 6c 69 6e 65 73 29 29 0a 20 20 20 20 20 20 eight.result).max-lines)).......
16340 28 77 68 65 6e 20 28 61 6e 64 20 28 3d 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 70 61 67 65 73 2d (when.(and.(=.(which-key--pages-
16360 6e 75 6d 2d 70 61 67 65 73 20 72 65 73 75 6c 74 29 20 31 29 0a 20 20 20 20 20 20 20 20 20 20 20 num-pages.result).1)............
16380 20 20 20 20 20 20 28 3e 20 77 68 69 63 68 2d 6b 65 79 2d 6d 69 6e 2d 64 69 73 70 6c 61 79 2d 6c ......(>.which-key-min-display-l
163a0 69 6e 65 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d ines.....................(which-
163c0 6b 65 79 2d 2d 70 61 67 65 73 2d 68 65 69 67 68 74 20 72 65 73 75 6c 74 29 29 29 0a 20 20 20 20 key--pages-height.result))).....
163e0 20 20 20 20 3b 3b 20 72 65 73 75 6c 74 20 69 73 20 73 68 6f 72 74 65 72 20 74 68 61 6e 20 72 65 ....;;.result.is.shorter.than.re
16400 71 75 65 73 74 65 64 2c 20 73 6f 20 77 65 20 61 72 74 69 66 69 63 69 61 6c 6c 79 20 69 6e 63 72 quested,.so.we.artificially.incr
16420 65 61 73 65 20 74 68 65 0a 20 20 20 20 20 20 20 20 3b 3b 20 68 65 69 67 68 74 2e 20 53 65 65 20 ease.the.........;;.height..See.
16440 23 33 32 35 2e 20 4e 6f 74 65 20 74 68 69 73 20 6f 6e 6c 79 20 68 61 73 20 61 6e 20 65 66 66 65 #325..Note.this.only.has.an.effe
16460 63 74 20 69 66 0a 20 20 20 20 20 20 20 20 3b 3b 20 60 77 68 69 63 68 2d 6b 65 79 2d 61 6c 6c 6f ct.if.........;;.`which-key-allo
16480 77 2d 69 6d 70 72 65 63 69 73 65 2d 77 69 6e 64 6f 77 2d 66 69 74 27 20 69 73 20 6e 6f 6e 2d 6e w-imprecise-window-fit'.is.non-n
164a0 69 6c 2e 0a 20 20 20 20 20 20 20 20 28 73 65 74 66 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 70 61 il..........(setf.(which-key--pa
164c0 67 65 73 2d 68 65 69 67 68 74 20 72 65 73 75 6c 74 29 20 77 68 69 63 68 2d 6b 65 79 2d 6d 69 6e ges-height.result).which-key-min
164e0 2d 64 69 73 70 6c 61 79 2d 6c 69 6e 65 73 29 29 0a 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 -display-lines)).......(which-ke
16500 79 2d 2d 64 65 62 75 67 2d 6d 65 73 73 61 67 65 20 22 46 72 61 6d 65 20 68 65 69 67 68 74 3a 20 y--debug-message."Frame.height:.
16520 25 73 0a 46 72 61 6d 65 20 70 69 78 65 6c 20 77 69 64 74 68 3a 20 25 73 0a 46 72 61 6d 65 20 63 %s.Frame.pixel.width:.%s.Frame.c
16540 68 61 72 20 77 69 64 74 68 3a 20 25 73 0a 46 72 61 6d 65 20 77 69 64 74 68 3a 20 25 73 0a 57 68 har.width:.%s.Frame.width:.%s.Wh
16560 69 63 68 2d 6b 65 79 20 69 6e 69 74 69 61 6c 20 77 69 64 74 68 3a 20 25 73 0a 57 68 69 63 68 2d ich-key.initial.width:.%s.Which-
16580 6b 65 79 20 61 64 6a 75 73 74 65 64 20 77 69 64 74 68 3a 20 25 73 0a 4d 69 6e 69 62 75 66 66 65 key.adjusted.width:.%s.Minibuffe
165a0 72 20 68 65 69 67 68 74 3a 20 25 73 0a 4d 61 78 20 64 69 6d 65 6e 73 69 6f 6e 73 3a 20 28 25 73 r.height:.%s.Max.dimensions:.(%s
165c0 2c 20 25 73 29 0a 41 76 61 69 6c 61 62 6c 65 20 66 6f 72 20 62 69 6e 64 69 6e 67 73 3a 20 28 25 ,.%s).Available.for.bindings:.(%
165e0 73 2c 20 25 73 29 0a 50 6f 70 75 70 20 74 79 70 65 20 69 6e 66 6f 3a 20 28 25 73 2c 20 25 73 2c s,.%s).Popup.type.info:.(%s,.%s,
16600 20 25 73 29 0a 43 6f 6d 70 75 74 65 64 20 70 61 67 65 20 77 69 64 74 68 73 3a 20 25 73 0a 41 63 .%s).Computed.page.widths:.%s.Ac
16620 74 75 61 6c 20 6c 69 6e 65 73 3a 20 25 73 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 tual.lines:.%s".................
16640 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 72 61 6d 65 2d 68 65 69 67 68 74 29 0a 20 ................(frame-height)..
16660 20 20 20 20 20 20 20 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 ...............................(
16680 66 72 61 6d 65 2d 70 69 78 65 6c 2d 77 69 64 74 68 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 frame-pixel-width)..............
166a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 72 61 6d 65 2d 63 68 61 72 2d 77 ...................(frame-char-w
166c0 69 64 74 68 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 idth)...........................
166e0 20 20 20 20 20 20 28 77 69 6e 64 6f 77 2d 74 6f 74 61 6c 2d 77 69 64 74 68 20 28 66 72 61 6d 65 ......(window-total-width.(frame
16700 2d 72 6f 6f 74 2d 77 69 6e 64 6f 77 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 -root-window))..................
16720 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 77 69 64 74 68 ...............(which-key--width
16740 2d 6f 72 2d 70 65 72 63 65 6e 74 61 67 65 2d 74 6f 2d 77 69 64 74 68 0a 20 20 20 20 20 20 20 20 -or-percentage-to-width.........
16760 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 77 68 69 63 68 2d ..........................which-
16780 6b 65 79 2d 73 69 64 65 2d 77 69 6e 64 6f 77 2d 6d 61 78 2d 77 69 64 74 68 29 0a 20 20 20 20 20 key-side-window-max-width)......
167a0 20 20 20 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 77 68 69 63 ...........................(whic
167c0 68 2d 6b 65 79 2d 2d 74 6f 74 61 6c 2d 77 69 64 74 68 2d 74 6f 2d 74 65 78 74 0a 20 20 20 20 20 h-key--total-width-to-text......
167e0 20 20 20 20 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 77 68 69 ............................(whi
16800 63 68 2d 6b 65 79 2d 2d 77 69 64 74 68 2d 6f 72 2d 70 65 72 63 65 6e 74 61 67 65 2d 74 6f 2d 77 ch-key--width-or-percentage-to-w
16820 69 64 74 68 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 idth............................
16840 20 20 20 20 20 20 20 77 68 69 63 68 2d 6b 65 79 2d 73 69 64 65 2d 77 69 6e 64 6f 77 2d 6d 61 78 .......which-key-side-window-max
16860 2d 77 69 64 74 68 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 -width))........................
16880 20 20 20 20 20 20 20 20 20 28 77 69 6e 64 6f 77 2d 74 65 78 74 2d 68 65 69 67 68 74 20 28 6d 69 .........(window-text-height.(mi
168a0 6e 69 62 75 66 66 65 72 2d 77 69 6e 64 6f 77 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 nibuffer-window))...............
168c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 61 78 2d 6c 69 6e 65 73 0a 20 20 20 20 ..................max-lines.....
168e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 61 78 2d ............................max-
16900 77 69 64 74 68 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 width...........................
16920 20 20 20 20 20 20 61 76 6c 2d 6c 69 6e 65 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ......avl-lines.................
16940 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 76 6c 2d 77 69 64 74 68 0a 20 20 20 20 20 20 ................avl-width.......
16960 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 77 68 69 63 68 2d ..........................which-
16980 6b 65 79 2d 70 6f 70 75 70 2d 74 79 70 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 key-popup-type..................
169a0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 77 68 69 63 68 2d 6b 65 79 2d 73 69 64 65 2d 77 69 ...............which-key-side-wi
169c0 6e 64 6f 77 2d 6c 6f 63 61 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ndow-location...................
169e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 77 68 69 63 68 2d 6b 65 79 2d 73 69 64 65 2d 77 69 6e ..............which-key-side-win
16a00 64 6f 77 2d 6d 61 78 2d 77 69 64 74 68 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 dow-max-width...................
16a20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 70 61 67 65 73 2d ..............(which-key--pages-
16a40 77 69 64 74 68 73 20 72 65 73 75 6c 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 widths.result)..................
16a60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 70 61 67 65 73 ...............(which-key--pages
16a80 2d 68 65 69 67 68 74 20 72 65 73 75 6c 74 29 29 0a 20 20 20 20 20 20 72 65 73 75 6c 74 29 29 29 -height.result)).......result)))
16aa0 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 6c 69 67 68 74 65 72 2d 73 74 61 74 ..(defun.which-key--lighter-stat
16ac0 75 73 20 28 29 0a 20 20 22 50 6f 73 73 69 62 6c 79 20 73 68 6f 77 20 6e 75 6d 62 65 72 20 6f 66 us.()..."Possibly.show.number.of
16ae0 20 6b 65 79 73 20 61 6e 64 20 74 6f 74 61 6c 20 69 6e 20 74 68 65 20 6d 6f 64 65 20 6c 69 6e 65 .keys.and.total.in.the.mode.line
16b00 2e 22 0a 20 20 28 77 68 65 6e 20 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d 72 65 6d 61 69 6e ."...(when.which-key-show-remain
16b20 69 6e 67 2d 6b 65 79 73 0a 20 20 20 20 28 6c 65 74 20 28 28 6e 2d 73 68 6f 77 6e 20 28 63 61 72 ing-keys.....(let.((n-shown.(car
16b40 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 70 61 67 65 73 2d 6b 65 79 73 2f 70 61 67 65 20 77 68 69 .(which-key--pages-keys/page.whi
16b60 63 68 2d 6b 65 79 2d 2d 70 61 67 65 73 2d 6f 62 6a 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 ch-key--pages-obj)))...........(
16b80 6e 2d 74 6f 74 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 70 61 67 65 73 2d 74 6f 74 61 6c 2d 6b 65 n-tot.(which-key--pages-total-ke
16ba0 79 73 20 77 68 69 63 68 2d 6b 65 79 2d 2d 70 61 67 65 73 2d 6f 62 6a 29 29 29 0a 20 20 20 20 20 ys.which-key--pages-obj)))......
16bc0 20 28 73 65 74 63 61 72 20 28 63 64 72 20 28 61 73 73 71 20 27 77 68 69 63 68 2d 6b 65 79 2d 6d .(setcar.(cdr.(assq.'which-key-m
16be0 6f 64 65 20 6d 69 6e 6f 72 2d 6d 6f 64 65 2d 61 6c 69 73 74 29 29 0a 20 20 20 20 20 20 20 20 20 ode.minor-mode-alist))..........
16c00 20 20 20 20 20 28 66 6f 72 6d 61 74 20 22 20 57 4b 3a 20 25 73 2f 25 73 20 6b 65 79 73 22 20 6e .....(format.".WK:.%s/%s.keys".n
16c20 2d 73 68 6f 77 6e 20 6e 2d 74 6f 74 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d -shown.n-tot)))))..(defun.which-
16c40 6b 65 79 2d 2d 6c 69 67 68 74 65 72 2d 72 65 73 74 6f 72 65 20 28 29 0a 20 20 22 52 65 73 74 6f key--lighter-restore.()..."Resto
16c60 72 65 20 74 68 65 20 6c 69 67 68 74 65 72 20 66 6f 72 20 77 68 69 63 68 2d 6b 65 79 2e 22 0a 20 re.the.lighter.for.which-key."..
16c80 20 28 77 68 65 6e 20 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d 72 65 6d 61 69 6e 69 6e 67 2d .(when.which-key-show-remaining-
16ca0 6b 65 79 73 0a 20 20 20 20 28 73 65 74 63 61 72 20 28 63 64 72 20 28 61 73 73 71 20 27 77 68 69 keys.....(setcar.(cdr.(assq.'whi
16cc0 63 68 2d 6b 65 79 2d 6d 6f 64 65 20 6d 69 6e 6f 72 2d 6d 6f 64 65 2d 61 6c 69 73 74 29 29 0a 20 ch-key-mode.minor-mode-alist))..
16ce0 20 20 20 20 20 20 20 20 20 20 20 77 68 69 63 68 2d 6b 65 79 2d 6c 69 67 68 74 65 72 29 29 29 0a ...........which-key-lighter))).
16d00 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 65 63 68 6f 20 28 74 65 78 74 29 0a 20 .(defun.which-key--echo.(text)..
16d20 20 22 45 63 68 6f 20 54 45 58 54 20 74 6f 20 6d 69 6e 69 62 75 66 66 65 72 20 77 69 74 68 6f 75 ."Echo.TEXT.to.minibuffer.withou
16d40 74 20 6c 6f 67 67 69 6e 67 2e 22 0a 20 20 28 6c 65 74 20 28 6d 65 73 73 61 67 65 2d 6c 6f 67 2d t.logging."...(let.(message-log-
16d60 6d 61 78 29 0a 20 20 20 20 28 6d 65 73 73 61 67 65 20 22 25 73 22 20 74 65 78 74 29 29 29 0a 0a max).....(message."%s".text)))..
16d80 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 6e 65 78 74 2d 70 61 67 65 2d 68 69 6e 74 (defun.which-key--next-page-hint
16da0 20 28 70 72 65 66 69 78 2d 6b 65 79 73 29 0a 20 20 22 52 65 74 75 72 6e 20 73 74 72 69 6e 67 20 .(prefix-keys)..."Return.string.
16dc0 66 6f 72 20 6e 65 78 74 20 70 61 67 65 20 68 69 6e 74 2e 22 0a 20 20 28 6c 65 74 2a 20 28 28 70 for.next.page.hint."...(let*.((p
16de0 61 67 69 6e 67 2d 6b 65 79 20 28 63 6f 6e 63 61 74 20 70 72 65 66 69 78 2d 6b 65 79 73 20 22 20 aging-key.(concat.prefix-keys.".
16e00 22 20 77 68 69 63 68 2d 6b 65 79 2d 70 61 67 69 6e 67 2d 6b 65 79 29 29 0a 20 20 20 20 20 20 20 ".which-key-paging-key))........
16e20 20 20 28 70 61 67 69 6e 67 2d 6b 65 79 2d 62 6f 75 6e 64 20 28 65 71 20 27 77 68 69 63 68 2d 6b ..(paging-key-bound.(eq.'which-k
16e40 65 79 2d 43 2d 68 2d 64 69 73 70 61 74 63 68 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ey-C-h-dispatch.................
16e60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6b 65 79 2d 62 69 6e 64 69 6e 67 20 28 6b 62 64 ...............(key-binding.(kbd
16e80 20 70 61 67 69 6e 67 2d 6b 65 79 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 6b 65 79 20 28 6b .paging-key))))..........(key.(k
16ea0 65 79 2d 64 65 73 63 72 69 70 74 69 6f 6e 20 28 76 65 63 74 6f 72 20 68 65 6c 70 2d 63 68 61 72 ey-description.(vector.help-char
16ec0 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 6b 65 79 20 28 69 66 20 70 61 67 69 6e 67 2d 6b 65 79 )))..........(key.(if.paging-key
16ee0 2d 62 6f 75 6e 64 0a 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 -bound...................(concat
16f00 20 6b 65 79 20 22 20 6f 72 20 22 20 77 68 69 63 68 2d 6b 65 79 2d 70 61 67 69 6e 67 2d 6b 65 79 .key.".or.".which-key-paging-key
16f20 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6b 65 79 29 29 29 0a 20 20 20 20 28 77 68 ).................key))).....(wh
16f40 65 6e 20 28 61 6e 64 20 77 68 69 63 68 2d 6b 65 79 2d 75 73 65 2d 43 2d 68 2d 63 6f 6d 6d 61 6e en.(and.which-key-use-C-h-comman
16f60 64 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e 6f 74 20 28 65 71 75 61 6c 20 28 76 ds................(not.(equal.(v
16f80 65 63 74 6f 72 20 68 65 6c 70 2d 63 68 61 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ector.help-char)................
16fa0 20 20 20 20 20 20 20 20 20 20 20 20 28 76 63 6f 6e 63 61 74 20 28 6b 62 64 20 70 72 65 66 69 78 ............(vconcat.(kbd.prefix
16fc0 2d 6b 65 79 73 29 29 29 29 29 0a 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 70 72 6f -keys))))).......(which-key--pro
16fe0 70 65 72 74 69 7a 65 20 28 66 6f 72 6d 61 74 20 22 5b 25 73 20 70 61 67 69 6e 67 2f 68 65 6c 70 pertize.(format."[%s.paging/help
17000 5d 22 20 6b 65 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ]".key).........................
17020 20 20 20 20 20 27 66 61 63 65 20 27 77 68 69 63 68 2d 6b 65 79 2d 6e 6f 74 65 2d 66 61 63 65 29 .....'face.'which-key-note-face)
17040 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 66 75 6c 6c 2d 70 72 65 66 )))..(defun.which-key--full-pref
17060 69 78 20 28 70 72 65 66 69 78 2d 6b 65 79 73 20 26 6f 70 74 69 6f 6e 61 6c 20 2d 70 72 65 66 69 ix.(prefix-keys.&optional.-prefi
17080 78 2d 61 72 67 20 64 6f 6e 74 2d 70 72 6f 70 2d 6b 65 79 73 29 0a 20 20 22 52 65 74 75 72 6e 20 x-arg.dont-prop-keys)..."Return.
170a0 61 20 64 65 73 63 72 69 70 74 69 6f 6e 20 6f 66 20 74 68 65 20 66 75 6c 6c 20 6b 65 79 20 73 65 a.description.of.the.full.key.se
170c0 71 75 65 6e 63 65 20 75 70 20 74 6f 20 6e 6f 77 2e 0a 49 6e 63 6c 75 64 65 20 70 72 65 66 69 78 quence.up.to.now..Include.prefix
170e0 20 61 72 67 75 6d 65 6e 74 73 2e 22 0a 20 20 28 6c 65 74 2a 20 28 28 6c 65 66 74 20 28 65 71 20 .arguments."...(let*.((left.(eq.
17100 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d 70 72 65 66 69 78 20 27 6c 65 66 74 29 29 0a 20 20 which-key-show-prefix.'left))...
17120 20 20 20 20 20 20 20 28 70 72 65 66 69 78 2d 61 72 67 20 28 69 66 20 2d 70 72 65 66 69 78 2d 61 .......(prefix-arg.(if.-prefix-a
17140 72 67 20 2d 70 72 65 66 69 78 2d 61 72 67 20 70 72 65 66 69 78 2d 61 72 67 29 29 0a 20 20 20 20 rg.-prefix-arg.prefix-arg)).....
17160 20 20 20 20 20 28 73 74 72 20 28 63 6f 6e 63 61 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .....(str.(concat...............
17180 20 28 75 6e 69 76 65 72 73 61 6c 2d 61 72 67 75 6d 65 6e 74 2d 2d 64 65 73 63 72 69 70 74 69 6f .(universal-argument--descriptio
171a0 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 70 72 65 66 69 78 2d 61 n)................(when.prefix-a
171c0 72 67 20 22 20 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 72 65 66 69 78 2d 6b 65 rg.".")................prefix-ke
171e0 79 73 29 29 0a 20 20 20 20 20 20 20 20 20 28 64 61 73 68 20 28 69 66 20 28 61 6e 64 20 28 6e 6f ys))..........(dash.(if.(and.(no
17200 74 20 28 73 74 72 69 6e 67 3d 20 70 72 65 66 69 78 2d 6b 65 79 73 20 22 22 29 29 0a 20 20 20 20 t.(string=.prefix-keys."")).....
17220 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e 75 6c 6c 20 6c 65 66 74 29 29 ....................(null.left))
17240 20 22 2d 22 20 22 22 29 29 29 0a 20 20 20 20 28 69 66 20 28 6f 72 20 28 65 71 20 77 68 69 63 68 ."-".""))).....(if.(or.(eq.which
17260 2d 6b 65 79 2d 73 68 6f 77 2d 70 72 65 66 69 78 20 27 65 63 68 6f 29 20 64 6f 6e 74 2d 70 72 6f -key-show-prefix.'echo).dont-pro
17280 70 2d 6b 65 79 73 29 0a 20 20 20 20 20 20 20 20 28 63 6f 6e 63 61 74 20 73 74 72 20 64 61 73 68 p-keys).........(concat.str.dash
172a0 29 0a 20 20 20 20 20 20 28 63 6f 6e 63 61 74 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 70 72 6f 70 ).......(concat.(which-key--prop
172c0 65 72 74 69 7a 65 2d 6b 65 79 20 73 74 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 ertize-key.str)...............(w
172e0 68 69 63 68 2d 6b 65 79 2d 2d 70 72 6f 70 65 72 74 69 7a 65 20 64 61 73 68 20 27 66 61 63 65 20 hich-key--propertize.dash.'face.
17300 27 77 68 69 63 68 2d 6b 65 79 2d 6b 65 79 2d 66 61 63 65 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 'which-key-key-face)))))..(defun
17320 20 77 68 69 63 68 2d 6b 65 79 2d 2d 67 65 74 2d 70 6f 70 75 70 2d 6d 61 70 20 28 29 0a 20 20 22 .which-key--get-popup-map.()..."
17340 47 65 6e 65 72 61 74 65 20 74 72 61 6e 73 69 65 6e 74 20 6d 61 70 20 66 6f 72 20 75 73 65 20 69 Generate.transient.map.for.use.i
17360 6e 20 74 68 65 20 74 6f 70 20 6c 65 76 65 6c 20 62 69 6e 64 69 6e 67 20 64 69 73 70 6c 61 79 2e n.the.top.level.binding.display.
17380 22 0a 20 20 28 75 6e 6c 65 73 73 20 77 68 69 63 68 2d 6b 65 79 2d 2d 61 75 74 6f 6d 61 74 69 63 "...(unless.which-key--automatic
173a0 2d 64 69 73 70 6c 61 79 0a 20 20 20 20 28 6c 65 74 20 28 28 6d 61 70 20 28 6d 61 6b 65 2d 73 70 -display.....(let.((map.(make-sp
173c0 61 72 73 65 2d 6b 65 79 6d 61 70 29 29 29 0a 20 20 20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65 79 arse-keymap))).......(define-key
173e0 20 6d 61 70 20 28 6b 62 64 20 77 68 69 63 68 2d 6b 65 79 2d 70 61 67 69 6e 67 2d 6b 65 79 29 20 .map.(kbd.which-key-paging-key).
17400 23 27 77 68 69 63 68 2d 6b 65 79 2d 43 2d 68 2d 64 69 73 70 61 74 63 68 29 0a 20 20 20 20 20 20 #'which-key-C-h-dispatch).......
17420 28 77 68 65 6e 20 77 68 69 63 68 2d 6b 65 79 2d 75 73 65 2d 43 2d 68 2d 63 6f 6d 6d 61 6e 64 73 (when.which-key-use-C-h-commands
17440 0a 20 20 20 20 20 20 20 20 3b 3b 20 53 68 6f 77 20 6e 65 78 74 20 70 61 67 65 20 65 76 65 6e 20 .........;;.Show.next.page.even.
17460 77 68 65 6e 20 43 2d 68 20 69 73 20 70 72 65 73 73 65 64 0a 20 20 20 20 20 20 20 20 28 64 65 66 when.C-h.is.pressed.........(def
17480 69 6e 65 2d 6b 65 79 20 6d 61 70 20 28 76 65 63 74 6f 72 20 68 65 6c 70 2d 63 68 61 72 29 20 23 ine-key.map.(vector.help-char).#
174a0 27 77 68 69 63 68 2d 6b 65 79 2d 43 2d 68 2d 64 69 73 70 61 74 63 68 29 29 0a 20 20 20 20 20 20 'which-key-C-h-dispatch)).......
174c0 6d 61 70 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 70 72 6f 63 65 73 map)))..(defun.which-key--proces
174e0 73 2d 70 61 67 65 20 28 70 61 67 65 73 2d 6f 62 6a 29 0a 20 20 22 41 64 64 20 69 6e 66 6f 72 6d s-page.(pages-obj)..."Add.inform
17500 61 74 69 6f 6e 20 74 6f 20 74 68 65 20 62 61 73 69 63 20 6c 69 73 74 20 6f 66 20 6b 65 79 20 62 ation.to.the.basic.list.of.key.b
17520 69 6e 64 69 6e 67 73 2e 0a 49 6e 63 6c 75 64 65 2c 20 69 66 20 61 70 70 6c 69 63 61 62 6c 65 2c indings..Include,.if.applicable,
17540 20 74 68 65 20 63 75 72 72 65 6e 74 20 70 72 65 66 69 78 2c 20 74 68 65 20 6e 61 6d 65 20 6f 66 .the.current.prefix,.the.name.of
17560 20 74 68 65 20 63 75 72 72 65 6e 74 0a 70 72 65 66 69 78 2c 20 61 6e 64 20 61 20 70 61 67 65 20 .the.current.prefix,.and.a.page.
17580 63 6f 75 6e 74 2e 22 0a 20 20 28 6c 65 74 2a 20 28 28 70 61 67 65 20 28 63 61 72 20 28 77 68 69 count."...(let*.((page.(car.(whi
175a0 63 68 2d 6b 65 79 2d 2d 70 61 67 65 73 2d 70 61 67 65 73 20 70 61 67 65 73 2d 6f 62 6a 29 29 29 ch-key--pages-pages.pages-obj)))
175c0 0a 20 20 20 20 20 20 20 20 20 28 68 65 69 67 68 74 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 70 61 ..........(height.(which-key--pa
175e0 67 65 73 2d 68 65 69 67 68 74 20 70 61 67 65 73 2d 6f 62 6a 29 29 0a 20 20 20 20 20 20 20 20 20 ges-height.pages-obj))..........
17600 28 6e 2d 70 61 67 65 73 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 70 61 67 65 73 2d 6e 75 6d 2d 70 (n-pages.(which-key--pages-num-p
17620 61 67 65 73 20 70 61 67 65 73 2d 6f 62 6a 29 29 0a 20 20 20 20 20 20 20 20 20 28 70 61 67 65 2d ages.pages-obj))..........(page-
17640 6e 20 28 63 61 72 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 70 61 67 65 73 2d 70 61 67 65 2d 6e 75 n.(car.(which-key--pages-page-nu
17660 6d 73 20 70 61 67 65 73 2d 6f 62 6a 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 70 72 65 66 69 78 ms.pages-obj)))..........(prefix
17680 2d 64 65 73 63 20 28 6b 65 79 2d 64 65 73 63 72 69 70 74 69 6f 6e 20 28 77 68 69 63 68 2d 6b 65 -desc.(key-description.(which-ke
176a0 79 2d 2d 70 61 67 65 73 2d 70 72 65 66 69 78 20 70 61 67 65 73 2d 6f 62 6a 29 29 29 0a 20 20 20 y--pages-prefix.pages-obj)))....
176c0 20 20 20 20 20 20 28 70 72 65 66 69 78 2d 74 69 74 6c 65 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d ......(prefix-title.(which-key--
176e0 70 61 67 65 73 2d 70 72 65 66 69 78 2d 74 69 74 6c 65 20 70 61 67 65 73 2d 6f 62 6a 29 29 0a 20 pages-prefix-title.pages-obj))..
17700 20 20 20 20 20 20 20 20 28 66 75 6c 6c 2d 70 72 65 66 69 78 20 28 77 68 69 63 68 2d 6b 65 79 2d ........(full-prefix.(which-key-
17720 2d 66 75 6c 6c 2d 70 72 65 66 69 78 20 70 72 65 66 69 78 2d 64 65 73 63 29 29 0a 20 20 20 20 20 -full-prefix.prefix-desc))......
17740 20 20 20 20 28 6e 78 74 2d 70 67 2d 68 69 6e 74 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 6e 65 78 ....(nxt-pg-hint.(which-key--nex
17760 74 2d 70 61 67 65 2d 68 69 6e 74 20 70 72 65 66 69 78 2d 64 65 73 63 29 29 0a 20 20 20 20 20 20 t-page-hint.prefix-desc)).......
17780 20 20 20 3b 3b 20 6e 6f 74 20 75 73 65 64 20 69 6e 20 6c 65 66 74 20 63 61 73 65 0a 20 20 20 20 ...;;.not.used.in.left.case.....
177a0 20 20 20 20 20 28 73 74 61 74 75 73 2d 6c 69 6e 65 0a 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e .....(status-line...........(con
177c0 63 61 74 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 70 72 6f 70 65 72 74 69 7a 65 20 70 72 65 66 69 cat.(which-key--propertize.prefi
177e0 78 2d 74 69 74 6c 65 20 27 66 61 63 65 20 27 77 68 69 63 68 2d 6b 65 79 2d 6e 6f 74 65 2d 66 61 x-title.'face.'which-key-note-fa
17800 63 65 29 0a 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 31 ce)...................(when.(<.1
17820 20 6e 2d 70 61 67 65 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 .n-pages).....................(w
17840 68 69 63 68 2d 6b 65 79 2d 2d 70 72 6f 70 65 72 74 69 7a 65 20 28 66 6f 72 6d 61 74 20 22 20 28 hich-key--propertize.(format.".(
17860 25 73 20 6f 66 20 25 73 29 22 20 70 61 67 65 2d 6e 20 6e 2d 70 61 67 65 73 29 0a 20 20 20 20 20 %s.of.%s)".page-n.n-pages)......
17880 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
178a0 20 20 20 20 20 20 27 66 61 63 65 20 27 77 68 69 63 68 2d 6b 65 79 2d 6e 6f 74 65 2d 66 61 63 65 ......'face.'which-key-note-face
178c0 29 29 29 29 29 0a 20 20 20 20 28 70 63 61 73 65 20 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d ))))).....(pcase.which-key-show-
178e0 70 72 65 66 69 78 0a 20 20 20 20 20 20 28 60 6c 65 66 74 0a 20 20 20 20 20 20 20 28 6c 65 74 2a prefix.......(`left........(let*
17900 20 28 28 70 61 67 65 2d 63 6e 74 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 70 72 6f 70 65 72 74 69 .((page-cnt.(which-key--properti
17920 7a 65 20 28 66 6f 72 6d 61 74 20 22 25 73 2f 25 73 22 20 70 61 67 65 2d 6e 20 6e 2d 70 61 67 65 ze.(format."%s/%s".page-n.n-page
17940 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 s)..............................
17960 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 66 61 63 65 20 27 77 68 69 63 68 2d 6b ..................'face.'which-k
17980 65 79 2d 73 65 70 61 72 61 74 6f 72 2d 66 61 63 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 ey-separator-face)).............
179a0 20 20 28 66 69 72 73 74 2d 63 6f 6c 2d 77 69 64 74 68 20 28 2b 20 32 20 28 6d 61 78 20 28 77 68 ..(first-col-width.(+.2.(max.(wh
179c0 69 63 68 2d 6b 65 79 2d 2d 73 74 72 69 6e 67 2d 77 69 64 74 68 20 66 75 6c 6c 2d 70 72 65 66 69 ich-key--string-width.full-prefi
179e0 78 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 x)..............................
17a00 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 73 74 72 69 6e 67 2d 77 ............(which-key--string-w
17a20 69 64 74 68 20 70 61 67 65 2d 63 6e 74 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 idth.page-cnt))))...............
17a40 28 70 72 65 66 69 78 20 28 66 6f 72 6d 61 74 20 28 63 6f 6e 63 61 74 20 22 25 2d 22 20 28 69 6e (prefix.(format.(concat."%-".(in
17a60 74 2d 74 6f 2d 73 74 72 69 6e 67 20 66 69 72 73 74 2d 63 6f 6c 2d 77 69 64 74 68 29 20 22 73 22 t-to-string.first-col-width)."s"
17a80 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 )...............................
17aa0 66 75 6c 6c 2d 70 72 65 66 69 78 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 61 67 full-prefix))...............(pag
17ac0 65 2d 63 6e 74 20 28 69 66 20 28 3e 20 6e 2d 70 61 67 65 73 20 31 29 0a 20 20 20 20 20 20 20 20 e-cnt.(if.(>.n-pages.1).........
17ae0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 6f 72 6d 61 74 0a 20 20 20 20 ....................(format.....
17b00 20 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 6f 6e 63 61 74 .........................(concat
17b20 20 22 25 2d 22 20 28 69 6e 74 2d 74 6f 2d 73 74 72 69 6e 67 20 66 69 72 73 74 2d 63 6f 6c 2d 77 ."%-".(int-to-string.first-col-w
17b40 69 64 74 68 29 20 22 73 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 idth)."s")......................
17b60 20 20 20 20 20 20 20 20 70 61 67 65 2d 63 6e 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ........page-cnt)...............
17b80 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 61 6b 65 2d 73 74 72 69 6e 67 20 66 69 72 73 74 2d 63 ............(make-string.first-c
17ba0 6f 6c 2d 77 69 64 74 68 20 3f 5c 73 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6c 69 ol-width.?\s)))...............li
17bc0 6e 65 73 20 66 69 72 73 74 2d 6c 69 6e 65 20 6e 65 77 2d 65 6e 64 29 0a 20 20 20 20 20 20 20 20 nes.first-line.new-end).........
17be0 20 28 69 66 20 28 3d 20 31 20 68 65 69 67 68 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 .(if.(=.1.height)..............(
17c00 63 6f 6e 73 20 28 63 6f 6e 63 61 74 20 70 72 65 66 69 78 20 70 61 67 65 29 20 6e 69 6c 29 0a 20 cons.(concat.prefix.page).nil)..
17c20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 6c 69 6e 65 73 20 28 73 70 6c 69 74 2d 73 74 72 ..........(setq.lines.(split-str
17c40 69 6e 67 20 70 61 67 65 20 22 5c 6e 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ing.page."\n")..................
17c60 66 69 72 73 74 2d 6c 69 6e 65 20 28 63 6f 6e 63 61 74 20 70 72 65 66 69 78 20 28 63 61 72 20 6c first-line.(concat.prefix.(car.l
17c80 69 6e 65 73 29 20 22 5c 6e 22 20 70 61 67 65 2d 63 6e 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 ines)."\n".page-cnt)............
17ca0 20 20 20 20 20 20 6e 65 77 2d 65 6e 64 20 28 63 6f 6e 63 61 74 20 22 5c 6e 22 20 28 6d 61 6b 65 ......new-end.(concat."\n".(make
17cc0 2d 73 74 72 69 6e 67 20 66 69 72 73 74 2d 63 6f 6c 2d 77 69 64 74 68 20 3f 5c 73 29 29 29 0a 20 -string.first-col-width.?\s)))..
17ce0 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e ..........(cons.............(con
17d00 63 61 74 20 66 69 72 73 74 2d 6c 69 6e 65 20 28 6d 61 70 63 6f 6e 63 61 74 20 23 27 69 64 65 6e cat.first-line.(mapconcat.#'iden
17d20 74 69 74 79 20 28 63 64 72 20 6c 69 6e 65 73 29 20 6e 65 77 2d 65 6e 64 29 29 0a 20 20 20 20 20 tity.(cdr.lines).new-end))......
17d40 20 20 20 20 20 20 20 6e 69 6c 29 29 29 29 0a 20 20 20 20 20 20 28 60 74 6f 70 0a 20 20 20 20 20 .......nil)))).......(`top......
17d60 20 20 28 63 6f 6e 73 0a 20 20 20 20 20 20 20 20 28 63 6f 6e 63 61 74 20 28 77 68 65 6e 20 28 6f ..(cons.........(concat.(when.(o
17d80 72 20 28 3d 20 30 20 65 63 68 6f 2d 6b 65 79 73 74 72 6f 6b 65 73 29 0a 20 20 20 20 20 20 20 20 r.(=.0.echo-keystrokes).........
17da0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e 6f 74 20 28 65 71 20 77 68 69 63 68 ..................(not.(eq.which
17dc0 2d 6b 65 79 2d 73 69 64 65 2d 77 69 6e 64 6f 77 2d 6c 6f 63 61 74 69 6f 6e 20 27 62 6f 74 74 6f -key-side-window-location.'botto
17de0 6d 29 29 29 0a 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 66 m)))...................(concat.f
17e00 75 6c 6c 2d 70 72 65 66 69 78 20 22 20 22 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ull-prefix."."))................
17e20 20 73 74 61 74 75 73 2d 6c 69 6e 65 20 22 20 22 20 6e 78 74 2d 70 67 2d 68 69 6e 74 20 22 5c 6e .status-line.".".nxt-pg-hint."\n
17e40 22 20 70 61 67 65 29 0a 20 20 20 20 20 20 20 20 6e 69 6c 29 29 0a 20 20 20 20 20 20 28 60 62 6f ".page).........nil)).......(`bo
17e60 74 74 6f 6d 0a 20 20 20 20 20 20 20 28 63 6f 6e 73 0a 20 20 20 20 20 20 20 20 28 63 6f 6e 63 61 ttom........(cons.........(conca
17e80 74 20 70 61 67 65 20 22 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 t.page."\n".................(whe
17ea0 6e 20 28 6f 72 20 28 3d 20 30 20 65 63 68 6f 2d 6b 65 79 73 74 72 6f 6b 65 73 29 0a 20 20 20 20 n.(or.(=.0.echo-keystrokes).....
17ec0 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 28 65 71 20 77 ......................(not.(eq.w
17ee0 68 69 63 68 2d 6b 65 79 2d 73 69 64 65 2d 77 69 6e 64 6f 77 2d 6c 6f 63 61 74 69 6f 6e 20 27 62 hich-key-side-window-location.'b
17f00 6f 74 74 6f 6d 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 63 ottom)))...................(conc
17f20 61 74 20 66 75 6c 6c 2d 70 72 65 66 69 78 20 22 20 22 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 at.full-prefix."."))............
17f40 20 20 20 20 20 73 74 61 74 75 73 2d 6c 69 6e 65 20 22 20 22 20 6e 78 74 2d 70 67 2d 68 69 6e 74 .....status-line.".".nxt-pg-hint
17f60 29 0a 20 20 20 20 20 20 20 20 6e 69 6c 29 29 0a 20 20 20 20 20 20 28 60 65 63 68 6f 0a 20 20 20 ).........nil)).......(`echo....
17f80 20 20 20 20 28 63 6f 6e 73 20 70 61 67 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d ....(cons.page..............(lam
17fa0 62 64 61 20 28 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 bda.()................(which-key
17fc0 2d 2d 65 63 68 6f 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 63 61 74 20 66 --echo.................(concat.f
17fe0 75 6c 6c 2d 70 72 65 66 69 78 20 28 77 68 65 6e 20 70 72 65 66 69 78 2d 64 65 73 63 20 22 20 22 ull-prefix.(when.prefix-desc."."
18000 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 73 74 61 74 75 73 ).........................status
18020 2d 6c 69 6e 65 20 28 77 68 65 6e 20 73 74 61 74 75 73 2d 6c 69 6e 65 20 22 20 22 29 0a 20 20 20 -line.(when.status-line.".")....
18040 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 78 74 2d 70 67 2d 68 69 6e 74 .....................nxt-pg-hint
18060 29 29 29 29 29 0a 20 20 20 20 20 20 28 60 6d 6f 64 65 2d 6c 69 6e 65 0a 20 20 20 20 20 20 20 28 ))))).......(`mode-line........(
18080 63 6f 6e 73 20 70 61 67 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 cons.page..............(lambda.(
180a0 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 )................(with-current-b
180c0 75 66 66 65 72 20 77 68 69 63 68 2d 6b 65 79 2d 2d 62 75 66 66 65 72 0a 20 20 20 20 20 20 20 20 uffer.which-key--buffer.........
180e0 20 20 20 20 20 20 20 20 20 28 73 65 74 71 2d 6c 6f 63 61 6c 20 6d 6f 64 65 2d 6c 69 6e 65 2d 66 .........(setq-local.mode-line-f
18100 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...........................
18120 20 20 20 28 63 6f 6e 63 61 74 20 22 20 22 20 66 75 6c 6c 2d 70 72 65 66 69 78 0a 20 20 20 20 20 ...(concat.".".full-prefix......
18140 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
18160 22 20 22 20 73 74 61 74 75 73 2d 6c 69 6e 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ".".status-line.................
18180 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 20 22 20 6e 78 74 2d 70 67 2d .....................".".nxt-pg-
181a0 68 69 6e 74 29 29 29 29 29 29 0a 20 20 20 20 20 20 28 5f 20 28 63 6f 6e 73 20 70 61 67 65 20 6e hint)))))).......(_.(cons.page.n
181c0 69 6c 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 73 68 6f 77 2d il)))))..(defun.which-key--show-
181e0 70 61 67 65 20 28 26 6f 70 74 69 6f 6e 61 6c 20 6e 29 0a 20 20 22 53 68 6f 77 20 63 75 72 72 65 page.(&optional.n)..."Show.curre
18200 6e 74 20 70 61 67 65 2e 0a 4e 20 63 68 61 6e 67 65 73 20 74 68 65 20 63 75 72 72 65 6e 74 20 70 nt.page..N.changes.the.current.p
18220 61 67 65 20 74 6f 20 74 68 65 20 4e 74 68 20 70 61 67 65 20 72 65 6c 61 74 69 76 65 20 74 6f 20 age.to.the.Nth.page.relative.to.
18240 74 68 65 0a 63 75 72 72 65 6e 74 20 6f 6e 65 2e 22 0a 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d the.current.one."...(which-key--
18260 69 6e 69 74 2d 62 75 66 66 65 72 29 20 3b 3b 20 69 6e 20 63 61 73 65 20 69 74 20 77 61 73 20 6b init-buffer).;;.in.case.it.was.k
18280 69 6c 6c 65 64 0a 20 20 28 6c 65 74 20 28 28 70 72 65 66 69 78 2d 6b 65 79 73 20 28 77 68 69 63 illed...(let.((prefix-keys.(whic
182a0 68 2d 6b 65 79 2d 2d 63 75 72 72 65 6e 74 2d 6b 65 79 2d 73 74 72 69 6e 67 29 29 0a 20 20 20 20 h-key--current-key-string)).....
182c0 20 20 20 20 67 6f 6c 64 65 6e 2d 72 61 74 69 6f 2d 6d 6f 64 65 29 0a 20 20 20 20 28 69 66 20 28 ....golden-ratio-mode).....(if.(
182e0 6e 75 6c 6c 20 77 68 69 63 68 2d 6b 65 79 2d 2d 70 61 67 65 73 2d 6f 62 6a 29 0a 20 20 20 20 20 null.which-key--pages-obj)......
18300 20 20 20 28 6d 65 73 73 61 67 65 20 22 25 73 2d 20 77 68 69 63 68 2d 6b 65 79 20 63 61 6e 27 74 ...(message."%s-.which-key.can't
18320 20 73 68 6f 77 20 6b 65 79 73 3a 20 54 68 65 72 65 20 69 73 20 6e 6f 74 20 5c 0a 65 6e 6f 75 67 .show.keys:.There.is.not.\.enoug
18340 68 20 73 70 61 63 65 20 62 61 73 65 64 20 6f 6e 20 79 6f 75 72 20 73 65 74 74 69 6e 67 73 20 61 h.space.based.on.your.settings.a
18360 6e 64 20 66 72 61 6d 65 20 73 69 7a 65 2e 22 20 70 72 65 66 69 78 2d 6b 65 79 73 29 0a 20 20 20 nd.frame.size.".prefix-keys)....
18380 20 20 20 28 77 68 65 6e 20 6e 0a 20 20 20 20 20 20 20 20 28 73 65 74 71 20 77 68 69 63 68 2d 6b ...(when.n.........(setq.which-k
183a0 65 79 2d 2d 70 61 67 65 73 2d 6f 62 6a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 ey--pages-obj...............(whi
183c0 63 68 2d 6b 65 79 2d 2d 70 61 67 65 73 2d 73 65 74 2d 63 75 72 72 65 6e 74 2d 70 61 67 65 20 77 ch-key--pages-set-current-page.w
183e0 68 69 63 68 2d 6b 65 79 2d 2d 70 61 67 65 73 2d 6f 62 6a 20 6e 29 29 29 0a 20 20 20 20 20 20 28 hich-key--pages-obj.n))).......(
18400 6c 65 74 20 28 28 70 61 67 65 2d 65 63 68 6f 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 70 72 6f 63 let.((page-echo.(which-key--proc
18420 65 73 73 2d 70 61 67 65 20 77 68 69 63 68 2d 6b 65 79 2d 2d 70 61 67 65 73 2d 6f 62 6a 29 29 0a ess-page.which-key--pages-obj)).
18440 20 20 20 20 20 20 20 20 20 20 20 20 28 68 65 69 67 68 74 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d ............(height.(which-key--
18460 70 61 67 65 73 2d 68 65 69 67 68 74 20 77 68 69 63 68 2d 6b 65 79 2d 2d 70 61 67 65 73 2d 6f 62 pages-height.which-key--pages-ob
18480 6a 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 77 69 64 74 68 20 28 63 61 72 20 28 77 68 69 j)).............(width.(car.(whi
184a0 63 68 2d 6b 65 79 2d 2d 70 61 67 65 73 2d 77 69 64 74 68 73 20 77 68 69 63 68 2d 6b 65 79 2d 2d ch-key--pages-widths.which-key--
184c0 70 61 67 65 73 2d 6f 62 6a 29 29 29 29 0a 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 pages-obj)))).........(which-key
184e0 2d 2d 6c 69 67 68 74 65 72 2d 73 74 61 74 75 73 29 0a 20 20 20 20 20 20 20 20 28 69 66 20 28 65 --lighter-status).........(if.(e
18500 71 20 77 68 69 63 68 2d 6b 65 79 2d 70 6f 70 75 70 2d 74 79 70 65 20 27 6d 69 6e 69 62 75 66 66 q.which-key-popup-type.'minibuff
18520 65 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 65 63 68 6f er).............(which-key--echo
18540 20 28 63 61 72 20 70 61 67 65 2d 65 63 68 6f 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 77 69 74 .(car.page-echo))...........(wit
18560 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 77 68 69 63 68 2d 6b 65 79 2d 2d 62 75 66 66 h-current-buffer.which-key--buff
18580 65 72 0a 20 20 20 20 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 er.............(erase-buffer)...
185a0 20 20 20 20 20 20 20 20 20 20 28 69 6e 73 65 72 74 20 28 63 61 72 20 70 61 67 65 2d 65 63 68 6f ..........(insert.(car.page-echo
185c0 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 70 6f 69 6e 74 )).............(goto-char.(point
185e0 2d 6d 69 6e 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 63 64 72 20 70 61 67 -min)))...........(when.(cdr.pag
18600 65 2d 65 63 68 6f 29 20 28 66 75 6e 63 61 6c 6c 20 28 63 64 72 20 70 61 67 65 2d 65 63 68 6f 29 e-echo).(funcall.(cdr.page-echo)
18620 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 73 68 6f 77 2d 70 6f ))...........(which-key--show-po
18640 70 75 70 20 28 63 6f 6e 73 20 68 65 69 67 68 74 20 77 69 64 74 68 29 29 29 29 29 0a 20 20 20 20 pup.(cons.height.width))))).....
18660 3b 3b 20 75 73 65 64 20 66 6f 72 20 70 61 67 69 6e 67 20 61 74 20 74 6f 70 2d 6c 65 76 65 6c 0a ;;.used.for.paging.at.top-level.
18680 20 20 20 20 28 69 66 20 28 66 62 6f 75 6e 64 70 20 27 73 65 74 2d 74 72 61 6e 73 69 65 6e 74 2d ....(if.(fboundp.'set-transient-
186a0 6d 61 70 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 2d 74 72 61 6e 73 69 65 6e 74 2d 6d 61 70 20 map).........(set-transient-map.
186c0 28 77 68 69 63 68 2d 6b 65 79 2d 2d 67 65 74 2d 70 6f 70 75 70 2d 6d 61 70 29 29 0a 20 20 20 20 (which-key--get-popup-map)).....
186e0 20 20 28 77 69 74 68 2d 6e 6f 2d 77 61 72 6e 69 6e 67 73 0a 20 20 20 20 20 20 20 20 28 73 65 74 ..(with-no-warnings.........(set
18700 2d 74 65 6d 70 6f 72 61 72 79 2d 6f 76 65 72 6c 61 79 2d 6d 61 70 20 28 77 68 69 63 68 2d 6b 65 -temporary-overlay-map.(which-ke
18720 79 2d 2d 67 65 74 2d 70 6f 70 75 70 2d 6d 61 70 29 29 29 29 29 29 0a 0a 3b 3b 3b 20 50 61 67 69 y--get-popup-map))))))..;;;.Pagi
18740 6e 67 20 66 75 6e 63 74 69 6f 6e 73 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 ng.functions..;;;###autoload.(de
18760 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 72 65 6c 6f 61 64 2d 6b 65 79 2d 73 65 71 75 65 6e 63 fun.which-key-reload-key-sequenc
18780 65 20 28 26 6f 70 74 69 6f 6e 61 6c 20 6b 65 79 2d 73 65 71 29 0a 20 20 22 53 69 6d 75 6c 61 74 e.(&optional.key-seq)..."Simulat
187a0 65 20 65 6e 74 65 72 69 6e 67 20 74 68 65 20 6b 65 79 20 73 65 71 75 65 6e 63 65 20 4b 45 59 2d e.entering.the.key.sequence.KEY-
187c0 53 45 51 2e 0a 4b 45 59 2d 53 45 51 20 73 68 6f 75 6c 64 20 62 65 20 61 20 6c 69 73 74 20 6f 66 SEQ..KEY-SEQ.should.be.a.list.of
187e0 20 65 76 65 6e 74 73 20 61 73 20 70 72 6f 64 75 63 65 64 20 62 79 0a 60 6c 69 73 74 69 66 79 2d .events.as.produced.by.`listify-
18800 6b 65 79 2d 73 65 71 75 65 6e 63 65 27 2e 20 20 49 66 20 6e 69 6c 2c 20 4b 45 59 2d 53 45 51 20 key-sequence'...If.nil,.KEY-SEQ.
18820 64 65 66 61 75 6c 74 73 20 74 6f 0a 60 77 68 69 63 68 2d 6b 65 79 2d 2d 63 75 72 72 65 6e 74 2d defaults.to.`which-key--current-
18840 6b 65 79 2d 6c 69 73 74 27 2e 20 20 41 6e 79 20 70 72 65 66 69 78 20 61 72 67 75 6d 65 6e 74 73 key-list'...Any.prefix.arguments
18860 20 74 68 61 74 20 77 65 72 65 0a 75 73 65 64 20 61 72 65 20 72 65 61 70 70 6c 69 65 64 20 74 6f .that.were.used.are.reapplied.to
18880 20 74 68 65 20 6e 65 77 20 6b 65 79 20 73 65 71 75 65 6e 63 65 2e 22 0a 20 20 28 6c 65 74 2a 20 .the.new.key.sequence."...(let*.
188a0 28 28 6b 65 79 2d 73 65 71 20 28 6f 72 20 6b 65 79 2d 73 65 71 20 28 77 68 69 63 68 2d 6b 65 79 ((key-seq.(or.key-seq.(which-key
188c0 2d 2d 63 75 72 72 65 6e 74 2d 6b 65 79 2d 6c 69 73 74 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 --current-key-list)))..........(
188e0 6e 65 78 74 2d 65 76 65 6e 74 20 28 6d 61 70 63 61 72 20 28 6c 61 6d 62 64 61 20 28 65 76 29 20 next-event.(mapcar.(lambda.(ev).
18900 28 63 6f 6e 73 20 74 20 65 76 29 29 20 6b 65 79 2d 73 65 71 29 29 29 0a 20 20 20 20 28 73 65 74 (cons.t.ev)).key-seq))).....(set
18920 71 20 70 72 65 66 69 78 2d 61 72 67 20 63 75 72 72 65 6e 74 2d 70 72 65 66 69 78 2d 61 72 67 0a q.prefix-arg.current-prefix-arg.
18940 20 20 20 20 20 20 20 20 20 20 75 6e 72 65 61 64 2d 63 6f 6d 6d 61 6e 64 2d 65 76 65 6e 74 73 20 ..........unread-command-events.
18960 6e 65 78 74 2d 65 76 65 6e 74 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d next-event)))..(defun.which-key-
18980 74 75 72 6e 2d 70 61 67 65 20 28 64 65 6c 74 61 29 0a 20 20 22 53 68 6f 77 20 74 68 65 20 6e 65 turn-page.(delta)..."Show.the.ne
189a0 78 74 20 70 61 67 65 20 6f 66 20 6b 65 79 73 2e 22 0a 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 72 xt.page.of.keys."...(which-key-r
189c0 65 6c 6f 61 64 2d 6b 65 79 2d 73 65 71 75 65 6e 63 65 29 0a 20 20 28 69 66 20 77 68 69 63 68 2d eload-key-sequence)...(if.which-
189e0 6b 65 79 2d 2d 6c 61 73 74 2d 74 72 79 2d 32 2d 6c 6f 63 0a 20 20 20 20 20 20 28 6c 65 74 20 28 key--last-try-2-loc.......(let.(
18a00 28 77 68 69 63 68 2d 6b 65 79 2d 73 69 64 65 2d 77 69 6e 64 6f 77 2d 6c 6f 63 61 74 69 6f 6e 20 (which-key-side-window-location.
18a20 77 68 69 63 68 2d 6b 65 79 2d 2d 6c 61 73 74 2d 74 72 79 2d 32 2d 6c 6f 63 29 0a 20 20 20 20 20 which-key--last-try-2-loc)......
18a40 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 6d 75 6c 74 69 70 6c 65 2d 6c 6f 63 61 .......(which-key--multiple-loca
18a60 74 69 6f 6e 73 20 74 29 29 0a 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 73 68 tions.t)).........(which-key--sh
18a80 6f 77 2d 70 61 67 65 20 64 65 6c 74 61 29 29 0a 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d ow-page.delta)).....(which-key--
18aa0 73 68 6f 77 2d 70 61 67 65 20 64 65 6c 74 61 29 29 0a 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d show-page.delta))...(which-key--
18ac0 73 74 61 72 74 2d 70 61 67 69 6e 67 2d 74 69 6d 65 72 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f start-paging-timer))..;;;###auto
18ae0 6c 6f 61 64 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d 73 74 61 6e 64 load.(defun.which-key-show-stand
18b00 61 72 64 2d 68 65 6c 70 20 28 26 6f 70 74 69 6f 6e 61 6c 20 5f 29 0a 20 20 22 43 61 6c 6c 20 74 ard-help.(&optional._)..."Call.t
18b20 68 65 20 63 6f 6d 6d 61 6e 64 20 69 6e 20 60 77 68 69 63 68 2d 6b 65 79 2d 2d 70 72 65 66 69 78 he.command.in.`which-key--prefix
18b40 2d 68 65 6c 70 2d 63 6d 64 2d 62 61 63 6b 75 70 27 2e 0a 55 73 75 61 6c 6c 79 20 74 68 69 73 20 -help-cmd-backup'..Usually.this.
18b60 69 73 20 60 64 65 73 63 72 69 62 65 2d 70 72 65 66 69 78 2d 62 69 6e 64 69 6e 67 73 27 2e 22 0a is.`describe-prefix-bindings'.".
18b80 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 77 68 69 63 68 2d 6b ..(interactive)...(let.((which-k
18ba0 65 79 2d 69 6e 68 69 62 69 74 20 74 29 0a 20 20 20 20 20 20 20 20 28 70 6f 70 75 70 2d 73 68 6f ey-inhibit.t).........(popup-sho
18bc0 77 69 6e 67 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 70 6f 70 75 70 2d 73 68 6f 77 69 6e 67 2d 70 wing.(which-key--popup-showing-p
18be0 29 29 29 0a 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 68 69 64 65 2d 70 6f 70 75 70 2d 69 ))).....(which-key--hide-popup-i
18c00 67 6e 6f 72 65 2d 63 6f 6d 6d 61 6e 64 29 0a 20 20 20 20 28 63 6f 6e 64 20 28 28 61 6e 64 20 28 gnore-command).....(cond.((and.(
18c20 65 71 20 77 68 69 63 68 2d 6b 65 79 2d 2d 70 72 65 66 69 78 2d 68 65 6c 70 2d 63 6d 64 2d 62 61 eq.which-key--prefix-help-cmd-ba
18c40 63 6b 75 70 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 64 65 73 63 72 69 ckup.....................'descri
18c60 62 65 2d 70 72 65 66 69 78 2d 62 69 6e 64 69 6e 67 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 be-prefix-bindings).............
18c80 20 20 20 20 3b 3b 20 49 66 20 74 68 65 20 70 6f 70 75 70 20 69 73 20 6e 6f 74 20 73 68 6f 77 69 ....;;.If.the.popup.is.not.showi
18ca0 6e 67 2c 20 77 65 20 63 61 6c 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 60 ng,.we.call.................;;.`
18cc0 64 65 73 63 72 69 62 65 2d 70 72 65 66 69 78 2d 62 69 6e 64 69 6e 67 73 27 20 64 69 72 65 63 74 describe-prefix-bindings'.direct
18ce0 6c 79 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 6f 70 75 70 2d 73 68 6f 77 69 6e ly..................popup-showin
18d00 67 29 0a 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 54 68 69 73 20 69 73 20 65 73 73 65 6e 74 69 g)............;;.This.is.essenti
18d20 61 6c 6c 79 20 77 68 61 74 20 60 64 65 73 63 72 69 62 65 2d 70 72 65 66 69 78 2d 62 69 6e 64 69 ally.what.`describe-prefix-bindi
18d40 6e 67 73 27 20 64 6f 65 73 2e 20 57 65 20 63 61 6e 27 74 0a 20 20 20 20 20 20 20 20 20 20 20 3b ngs'.does..We.can't............;
18d60 3b 20 75 73 65 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 64 69 72 65 63 74 6c 79 2c 20 62 65 ;.use.this.function.directly,.be
18d80 63 61 75 73 65 20 74 68 65 20 70 72 65 66 69 78 20 77 69 6c 6c 20 6e 6f 74 20 62 65 20 63 6f 72 cause.the.prefix.will.not.be.cor
18da0 72 65 63 74 0a 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 77 68 65 6e 20 77 65 20 65 6e 74 65 72 rect............;;.when.we.enter
18dc0 20 75 73 69 6e 67 20 60 77 68 69 63 68 2d 6b 65 79 2d 43 2d 68 2d 64 69 73 70 61 74 63 68 27 2e .using.`which-key-C-h-dispatch'.
18de0 0a 20 20 20 20 20 20 20 20 20 20 20 28 64 65 73 63 72 69 62 65 2d 62 69 6e 64 69 6e 67 73 20 28 ............(describe-bindings.(
18e00 6b 62 64 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 63 75 72 72 65 6e 74 2d 6b 65 79 2d 73 74 72 69 kbd.(which-key--current-key-stri
18e20 6e 67 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 28 66 75 6e 63 74 69 6f 6e 70 20 77 68 69 ng))))...........((functionp.whi
18e40 63 68 2d 6b 65 79 2d 2d 70 72 65 66 69 78 2d 68 65 6c 70 2d 63 6d 64 2d 62 61 63 6b 75 70 29 0a ch-key--prefix-help-cmd-backup).
18e60 20 20 20 20 20 20 20 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 77 68 69 63 68 2d 6b 65 79 2d 2d 70 ...........(funcall.which-key--p
18e80 72 65 66 69 78 2d 68 65 6c 70 2d 63 6d 64 2d 62 61 63 6b 75 70 29 29 29 29 29 0a 0a 3b 3b 3b 23 refix-help-cmd-backup)))))..;;;#
18ea0 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 ##autoload.(defun.which-key-show
18ec0 2d 6e 65 78 74 2d 70 61 67 65 2d 6e 6f 2d 63 79 63 6c 65 20 28 29 0a 20 20 22 53 68 6f 77 20 6e -next-page-no-cycle.()..."Show.n
18ee0 65 78 74 20 70 61 67 65 20 6f 66 20 6b 65 79 73 20 6f 72 20 60 77 68 69 63 68 2d 6b 65 79 2d 73 ext.page.of.keys.or.`which-key-s
18f00 68 6f 77 2d 73 74 61 6e 64 61 72 64 2d 68 65 6c 70 27 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 how-standard-help'."...(interact
18f20 69 76 65 29 0a 20 20 28 6c 65 74 20 28 28 77 68 69 63 68 2d 6b 65 79 2d 69 6e 68 69 62 69 74 20 ive)...(let.((which-key-inhibit.
18f40 74 29 29 0a 20 20 20 20 28 69 66 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 6f 6e 2d 6c 61 73 74 2d t)).....(if.(which-key--on-last-
18f60 70 61 67 65 29 0a 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d 73 74 page).........(which-key-show-st
18f80 61 6e 64 61 72 64 2d 68 65 6c 70 29 0a 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 74 75 andard-help).......(which-key-tu
18fa0 72 6e 2d 70 61 67 65 20 31 29 29 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 rn-page.1))))..;;;###autoload.(d
18fc0 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d 70 72 65 76 69 6f 75 73 2d 70 61 67 efun.which-key-show-previous-pag
18fe0 65 2d 6e 6f 2d 63 79 63 6c 65 20 28 29 0a 20 20 22 53 68 6f 77 20 70 72 65 76 69 6f 75 73 20 70 e-no-cycle.()..."Show.previous.p
19000 61 67 65 20 6f 66 20 6b 65 79 73 20 69 66 20 6f 6e 65 20 65 78 69 73 74 73 2e 22 0a 20 20 28 69 age.of.keys.if.one.exists."...(i
19020 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20 28 6c 65 74 20 28 28 77 68 69 63 68 2d 6b 65 79 2d 69 nteractive)...(let.((which-key-i
19040 6e 68 69 62 69 74 20 74 29 29 0a 20 20 20 20 28 75 6e 6c 65 73 73 20 28 77 68 69 63 68 2d 6b 65 nhibit.t)).....(unless.(which-ke
19060 79 2d 2d 6f 6e 2d 66 69 72 73 74 2d 70 61 67 65 29 0a 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b y--on-first-page).......(which-k
19080 65 79 2d 74 75 72 6e 2d 70 61 67 65 20 2d 31 29 29 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c ey-turn-page.-1))))..;;;###autol
190a0 6f 61 64 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d 6e 65 78 74 2d 70 oad.(defun.which-key-show-next-p
190c0 61 67 65 2d 63 79 63 6c 65 20 28 26 6f 70 74 69 6f 6e 61 6c 20 5f 29 0a 20 20 22 53 68 6f 77 20 age-cycle.(&optional._)..."Show.
190e0 74 68 65 20 6e 65 78 74 20 70 61 67 65 20 6f 66 20 6b 65 79 73 2c 20 63 79 63 6c 69 6e 67 20 66 the.next.page.of.keys,.cycling.f
19100 72 6f 6d 20 65 6e 64 20 74 6f 20 62 65 67 69 6e 6e 69 6e 67 2e 22 0a 20 20 28 69 6e 74 65 72 61 rom.end.to.beginning."...(intera
19120 63 74 69 76 65 29 0a 20 20 28 6c 65 74 20 28 28 77 68 69 63 68 2d 6b 65 79 2d 69 6e 68 69 62 69 ctive)...(let.((which-key-inhibi
19140 74 20 74 29 29 0a 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 74 75 72 6e 2d 70 61 67 65 20 31 t.t)).....(which-key-turn-page.1
19160 29 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 77 68 69 63 68 )))..;;;###autoload.(defun.which
19180 2d 6b 65 79 2d 73 68 6f 77 2d 70 72 65 76 69 6f 75 73 2d 70 61 67 65 2d 63 79 63 6c 65 20 28 26 -key-show-previous-page-cycle.(&
191a0 6f 70 74 69 6f 6e 61 6c 20 5f 29 0a 20 20 22 53 68 6f 77 20 74 68 65 20 70 72 65 76 69 6f 75 73 optional._)..."Show.the.previous
191c0 20 70 61 67 65 20 6f 66 20 6b 65 79 73 2c 20 63 79 63 6c 69 6e 67 20 66 72 6f 6d 20 62 65 67 69 .page.of.keys,.cycling.from.begi
191e0 6e 6e 69 6e 67 20 74 6f 20 65 6e 64 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 nning.to.end."...(interactive)..
19200 20 28 6c 65 74 20 28 28 77 68 69 63 68 2d 6b 65 79 2d 69 6e 68 69 62 69 74 20 74 29 29 0a 20 20 .(let.((which-key-inhibit.t))...
19220 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 74 75 72 6e 2d 70 61 67 65 20 2d 31 29 29 29 0a 0a 3b 3b ..(which-key-turn-page.-1)))..;;
19240 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 73 68 ;###autoload.(defun.which-key-sh
19260 6f 77 2d 74 6f 70 2d 6c 65 76 65 6c 20 28 26 6f 70 74 69 6f 6e 61 6c 20 5f 29 0a 20 20 22 53 68 ow-top-level.(&optional._)..."Sh
19280 6f 77 20 74 6f 70 2d 6c 65 76 65 6c 20 62 69 6e 64 69 6e 67 73 2e 22 0a 20 20 28 69 6e 74 65 72 ow.top-level.bindings."...(inter
192a0 61 63 74 69 76 65 29 0a 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 63 72 65 61 74 65 2d 62 75 66 active)...(which-key--create-buf
192c0 66 65 72 2d 61 6e 64 2d 73 68 6f 77 20 6e 69 6c 20 6e 69 6c 20 6e 69 6c 20 22 54 6f 70 2d 6c 65 fer-and-show.nil.nil.nil."Top-le
192e0 76 65 6c 20 62 69 6e 64 69 6e 67 73 22 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a vel.bindings"))..;;;###autoload.
19300 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d 6d 61 6a 6f 72 2d 6d 6f 64 65 (defun.which-key-show-major-mode
19320 20 28 26 6f 70 74 69 6f 6e 61 6c 20 61 6c 6c 29 0a 20 20 22 53 68 6f 77 20 74 6f 70 2d 6c 65 76 .(&optional.all)..."Show.top-lev
19340 65 6c 20 62 69 6e 64 69 6e 67 73 20 69 6e 20 74 68 65 20 6d 61 70 20 6f 66 20 74 68 65 20 63 75 el.bindings.in.the.map.of.the.cu
19360 72 72 65 6e 74 20 6d 61 6a 6f 72 20 6d 6f 64 65 2e 0a 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 rrent.major.mode..This.function.
19380 77 69 6c 6c 20 61 6c 73 6f 20 64 65 74 65 63 74 20 65 76 69 6c 20 62 69 6e 64 69 6e 67 73 20 6d will.also.detect.evil.bindings.m
193a0 61 64 65 20 75 73 69 6e 67 0a 60 65 76 69 6c 2d 64 65 66 69 6e 65 2d 6b 65 79 27 20 69 6e 20 74 ade.using.`evil-define-key'.in.t
193c0 68 69 73 20 6d 61 70 2e 20 20 54 68 65 73 65 20 62 69 6e 64 69 6e 67 73 20 77 69 6c 6c 20 64 65 his.map...These.bindings.will.de
193e0 70 65 6e 64 20 6f 6e 20 74 68 65 0a 63 75 72 72 65 6e 74 20 65 76 69 6c 20 73 74 61 74 65 2e 22 pend.on.the.current.evil.state."
19400 0a 20 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 ...(interactive."P")...(let.((ma
19420 70 2d 73 79 6d 20 28 69 6e 74 65 72 6e 20 28 66 6f 72 6d 61 74 20 22 25 73 2d 6d 61 70 22 20 6d p-sym.(intern.(format."%s-map".m
19440 61 6a 6f 72 2d 6d 6f 64 65 29 29 29 29 0a 20 20 20 20 28 69 66 20 28 61 6e 64 20 28 62 6f 75 6e ajor-mode)))).....(if.(and.(boun
19460 64 70 20 6d 61 70 2d 73 79 6d 29 20 28 6b 65 79 6d 61 70 70 20 28 73 79 6d 62 6f 6c 2d 76 61 6c dp.map-sym).(keymapp.(symbol-val
19480 75 65 20 6d 61 70 2d 73 79 6d 29 29 29 0a 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 ue.map-sym))).........(which-key
194a0 2d 2d 73 68 6f 77 2d 6b 65 79 6d 61 70 0a 20 20 20 20 20 20 20 20 20 22 4d 61 6a 6f 72 2d 6d 6f --show-keymap.........."Major-mo
194c0 64 65 20 62 69 6e 64 69 6e 67 73 22 0a 20 20 20 20 20 20 20 20 20 28 73 79 6d 62 6f 6c 2d 76 61 de.bindings"..........(symbol-va
194e0 6c 75 65 20 6d 61 70 2d 73 79 6d 29 0a 20 20 20 20 20 20 20 20 20 28 61 70 70 6c 79 2d 70 61 72 lue.map-sym)..........(apply-par
19500 74 69 61 6c 6c 79 20 23 27 77 68 69 63 68 2d 6b 65 79 2d 2d 6d 61 70 2d 62 69 6e 64 69 6e 67 2d tially.#'which-key--map-binding-
19520 70 20 28 73 79 6d 62 6f 6c 2d 76 61 6c 75 65 20 6d 61 70 2d 73 79 6d 29 29 0a 20 20 20 20 20 20 p.(symbol-value.map-sym)).......
19540 20 20 20 61 6c 6c 29 0a 20 20 20 20 20 20 28 6d 65 73 73 61 67 65 20 22 77 68 69 63 68 2d 6b 65 ...all).......(message."which-ke
19560 79 3a 20 4e 6f 20 6d 61 70 20 6e 61 6d 65 64 20 25 73 22 20 6d 61 70 2d 73 79 6d 29 29 29 29 0a y:.No.map.named.%s".map-sym)))).
19580 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 .;;;###autoload.(defun.which-key
195a0 2d 73 68 6f 77 2d 66 75 6c 6c 2d 6d 61 6a 6f 72 2d 6d 6f 64 65 20 28 29 0a 20 20 22 53 68 6f 77 -show-full-major-mode.()..."Show
195c0 20 61 6c 6c 20 62 69 6e 64 69 6e 67 73 20 69 6e 20 74 68 65 20 6d 61 70 20 6f 66 20 74 68 65 20 .all.bindings.in.the.map.of.the.
195e0 63 75 72 72 65 6e 74 20 6d 61 6a 6f 72 20 6d 6f 64 65 2e 0a 54 68 69 73 20 66 75 6e 63 74 69 6f current.major.mode..This.functio
19600 6e 20 77 69 6c 6c 20 61 6c 73 6f 20 64 65 74 65 63 74 20 65 76 69 6c 20 62 69 6e 64 69 6e 67 73 n.will.also.detect.evil.bindings
19620 20 6d 61 64 65 20 75 73 69 6e 67 0a 60 65 76 69 6c 2d 64 65 66 69 6e 65 2d 6b 65 79 27 20 69 6e .made.using.`evil-define-key'.in
19640 20 74 68 69 73 20 6d 61 70 2e 20 20 54 68 65 73 65 20 62 69 6e 64 69 6e 67 73 20 77 69 6c 6c 20 .this.map...These.bindings.will.
19660 64 65 70 65 6e 64 20 6f 6e 20 74 68 65 0a 63 75 72 72 65 6e 74 20 65 76 69 6c 20 73 74 61 74 65 depend.on.the.current.evil.state
19680 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20 28 77 68 69 63 68 2d 6b 65 79 2d ."...(interactive)...(which-key-
196a0 73 68 6f 77 2d 6d 61 6a 6f 72 2d 6d 6f 64 65 20 74 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c show-major-mode.t))..;;;###autol
196c0 6f 61 64 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 64 75 6d 70 2d 62 69 6e 64 69 6e oad.(defun.which-key-dump-bindin
196e0 67 73 20 28 70 72 65 66 69 78 20 62 75 66 66 65 72 2d 6e 61 6d 65 29 0a 20 20 22 44 75 6d 70 20 gs.(prefix.buffer-name)..."Dump.
19700 62 69 6e 64 69 6e 67 73 20 66 72 6f 6d 20 50 52 45 46 49 58 20 69 6e 74 6f 20 62 75 66 66 65 72 bindings.from.PREFIX.into.buffer
19720 20 6e 61 6d 65 64 20 42 55 46 46 45 52 2d 4e 41 4d 45 2e 0a 50 52 45 46 49 58 20 73 68 6f 75 6c .named.BUFFER-NAME..PREFIX.shoul
19740 64 20 62 65 20 61 20 73 74 72 69 6e 67 20 73 75 69 74 61 62 6c 65 20 66 6f 72 20 60 6b 62 64 27 d.be.a.string.suitable.for.`kbd'
19760 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 20 22 73 50 72 65 66 69 78 3a 20 5c 6e 42 22 ."...(interactive."sPrefix:.\nB"
19780 29 0a 20 20 28 6c 65 74 2a 20 28 28 62 75 66 66 65 72 20 28 67 65 74 2d 62 75 66 66 65 72 2d 63 )...(let*.((buffer.(get-buffer-c
197a0 72 65 61 74 65 20 62 75 66 66 65 72 2d 6e 61 6d 65 29 29 0a 20 20 20 20 20 20 20 20 20 28 6b 65 reate.buffer-name))..........(ke
197c0 79 73 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 67 65 74 2d 62 69 6e 64 69 6e 67 73 20 28 6b 62 64 ys.(which-key--get-bindings.(kbd
197e0 20 70 72 65 66 69 78 29 29 29 29 0a 20 20 20 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 .prefix)))).....(with-current-bu
19800 66 66 65 72 20 62 75 66 66 65 72 0a 20 20 20 20 20 20 28 70 6f 69 6e 74 2d 6d 61 78 29 0a 20 20 ffer.buffer.......(point-max)...
19820 20 20 20 20 28 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e 0a 20 20 20 20 20 20 20 20 28 64 6f 6c ....(save-excursion.........(dol
19840 69 73 74 20 28 6b 65 79 20 6b 65 79 73 29 0a 20 20 20 20 20 20 20 20 20 20 28 69 6e 73 65 72 74 ist.(key.keys)...........(insert
19860 20 28 61 70 70 6c 79 20 23 27 66 6f 72 6d 61 74 20 22 25 73 25 73 25 73 5c 6e 22 20 6b 65 79 29 .(apply.#'format."%s%s%s\n".key)
19880 29 29 29 29 0a 20 20 20 20 28 73 77 69 74 63 68 2d 74 6f 2d 62 75 66 66 65 72 2d 6f 74 68 65 72 )))).....(switch-to-buffer-other
198a0 2d 77 69 6e 64 6f 77 20 62 75 66 66 65 72 29 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 -window.buffer)))..;;;###autoloa
198c0 64 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 75 6e 64 6f 2d 6b 65 79 20 28 26 6f 70 d.(defun.which-key-undo-key.(&op
198e0 74 69 6f 6e 61 6c 20 5f 29 0a 20 20 22 55 6e 64 6f 20 6c 61 73 74 20 6b 65 79 70 72 65 73 73 20 tional._)..."Undo.last.keypress.
19900 61 6e 64 20 66 6f 72 63 65 20 77 68 69 63 68 2d 6b 65 79 20 75 70 64 61 74 65 2e 22 0a 20 20 28 and.force.which-key.update."...(
19920 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20 28 6c 65 74 2a 20 28 28 6b 65 79 2d 6c 73 74 20 28 interactive)...(let*.((key-lst.(
19940 62 75 74 6c 61 73 74 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 63 75 72 72 65 6e 74 2d 6b 65 79 2d butlast.(which-key--current-key-
19960 6c 69 73 74 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 69 6e 68 69 list)))..........(which-key-inhi
19980 62 69 74 20 74 29 29 0a 20 20 20 20 28 63 6f 6e 64 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 70 72 bit.t)).....(cond.(which-key--pr
199a0 69 6f 72 2d 73 68 6f 77 2d 6b 65 79 6d 61 70 2d 61 72 67 73 0a 20 20 20 20 20 20 20 20 20 20 20 ior-show-keymap-args............
199c0 28 69 66 20 28 6b 65 79 6d 61 70 70 20 28 63 64 72 20 28 63 61 72 2d 73 61 66 65 20 77 68 69 63 (if.(keymapp.(cdr.(car-safe.whic
199e0 68 2d 6b 65 79 2d 2d 70 72 69 6f 72 2d 73 68 6f 77 2d 6b 65 79 6d 61 70 2d 61 72 67 73 29 29 29 h-key--prior-show-keymap-args)))
19a00 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 61 72 67 73 20 28 70 6f 70 ................(let.((args.(pop
19a20 20 77 68 69 63 68 2d 6b 65 79 2d 2d 70 72 69 6f 72 2d 73 68 6f 77 2d 6b 65 79 6d 61 70 2d 61 72 .which-key--prior-show-keymap-ar
19a40 67 73 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 gs)))..................(which-ke
19a60 79 2d 2d 73 68 6f 77 2d 6b 65 79 6d 61 70 20 28 63 61 72 20 61 72 67 73 29 20 28 63 64 72 20 61 y--show-keymap.(car.args).(cdr.a
19a80 72 67 73 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d rgs)))..............(which-key--
19aa0 68 69 64 65 2d 70 6f 70 75 70 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 6b 65 79 2d 6c 73 74 hide-popup)))...........(key-lst
19ac0 0a 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 72 65 6c 6f 61 64 2d 6b 65 ............(which-key-reload-ke
19ae0 79 2d 73 65 71 75 65 6e 63 65 20 6b 65 79 2d 6c 73 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 y-sequence.key-lst)............(
19b00 77 68 69 63 68 2d 6b 65 79 2d 2d 63 72 65 61 74 65 2d 62 75 66 66 65 72 2d 61 6e 64 2d 73 68 6f which-key--create-buffer-and-sho
19b20 77 20 28 61 70 70 6c 79 20 23 27 76 65 63 74 6f 72 20 6b 65 79 2d 6c 73 74 29 29 29 0a 20 20 20 w.(apply.#'vector.key-lst)))....
19b40 20 20 20 20 20 20 20 28 74 20 28 73 65 74 71 20 77 68 69 63 68 2d 6b 65 79 2d 2d 61 75 74 6f 6d .......(t.(setq.which-key--autom
19b60 61 74 69 63 2d 64 69 73 70 6c 61 79 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 atic-display.nil)..............(
19b80 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d 74 6f 70 2d 6c 65 76 65 6c 29 29 29 29 29 0a 28 64 which-key-show-top-level))))).(d
19ba0 65 66 61 6c 69 61 73 20 27 77 68 69 63 68 2d 6b 65 79 2d 75 6e 64 6f 20 23 27 77 68 69 63 68 2d efalias.'which-key-undo.#'which-
19bc0 6b 65 79 2d 75 6e 64 6f 2d 6b 65 79 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d key-undo-key)..(defun.which-key-
19be0 61 62 6f 72 74 20 28 26 6f 70 74 69 6f 6e 61 6c 20 5f 29 0a 20 20 22 41 62 6f 72 74 20 6b 65 79 abort.(&optional._)..."Abort.key
19c00 20 73 65 71 75 65 6e 63 65 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20 28 6c .sequence."...(interactive)...(l
19c20 65 74 20 28 28 77 68 69 63 68 2d 6b 65 79 2d 69 6e 68 69 62 69 74 20 74 29 29 0a 20 20 20 20 28 et.((which-key-inhibit.t)).....(
19c40 77 68 69 63 68 2d 6b 65 79 2d 2d 68 69 64 65 2d 70 6f 70 75 70 2d 69 67 6e 6f 72 65 2d 63 6f 6d which-key--hide-popup-ignore-com
19c60 6d 61 6e 64 29 0a 20 20 20 20 28 6b 65 79 62 6f 61 72 64 2d 71 75 69 74 29 29 29 0a 0a 28 64 65 mand).....(keyboard-quit)))..(de
19c80 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 64 69 67 69 74 2d 61 72 67 75 6d 65 6e 74 20 28 6b 65 fun.which-key-digit-argument.(ke
19ca0 79 29 0a 20 20 22 56 65 72 73 69 6f 6e 20 6f 66 20 60 64 69 67 69 74 2d 61 72 67 75 6d 65 6e 74 y)..."Version.of.`digit-argument
19cc0 27 20 66 6f 72 20 75 73 65 20 69 6e 20 60 77 68 69 63 68 2d 6b 65 79 2d 43 2d 68 2d 6d 61 70 27 '.for.use.in.`which-key-C-h-map'
19ce0 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 6c 61 73 74 ."...(interactive)...(let.((last
19d00 2d 63 6f 6d 6d 61 6e 64 2d 65 76 65 6e 74 20 28 73 74 72 69 6e 67 2d 74 6f 2d 63 68 61 72 20 6b -command-event.(string-to-char.k
19d20 65 79 29 29 29 0a 20 20 20 20 28 64 69 67 69 74 2d 61 72 67 75 6d 65 6e 74 20 6b 65 79 29 29 0a ey))).....(digit-argument.key)).
19d40 20 20 28 6c 65 74 20 28 28 63 75 72 72 65 6e 74 2d 70 72 65 66 69 78 2d 61 72 67 20 70 72 65 66 ..(let.((current-prefix-arg.pref
19d60 69 78 2d 61 72 67 29 29 0a 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 72 65 6c 6f 61 64 2d 6b ix-arg)).....(which-key-reload-k
19d80 65 79 2d 73 65 71 75 65 6e 63 65 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 ey-sequence)))..(defun.which-key
19da0 2d 74 6f 67 67 6c 65 2d 64 6f 63 73 74 72 69 6e 67 73 20 28 26 6f 70 74 69 6f 6e 61 6c 20 5f 29 -toggle-docstrings.(&optional._)
19dc0 0a 20 20 22 54 6f 67 67 6c 65 20 74 68 65 20 64 69 73 70 6c 61 79 20 6f 66 20 64 6f 63 73 74 72 ..."Toggle.the.display.of.docstr
19de0 69 6e 67 73 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20 28 75 6e 6c 65 73 73 ings."...(interactive)...(unless
19e00 20 28 65 71 20 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d 64 6f 63 73 74 72 69 6e 67 73 20 27 .(eq.which-key-show-docstrings.'
19e20 64 6f 63 73 74 72 69 6e 67 2d 6f 6e 6c 79 29 0a 20 20 20 20 28 73 65 74 71 20 77 68 69 63 68 2d docstring-only).....(setq.which-
19e40 6b 65 79 2d 73 68 6f 77 2d 64 6f 63 73 74 72 69 6e 67 73 20 28 6e 75 6c 6c 20 77 68 69 63 68 2d key-show-docstrings.(null.which-
19e60 6b 65 79 2d 73 68 6f 77 2d 64 6f 63 73 74 72 69 6e 67 73 29 29 29 0a 20 20 28 77 68 69 63 68 2d key-show-docstrings)))...(which-
19e80 6b 65 79 2d 72 65 6c 6f 61 64 2d 6b 65 79 2d 73 65 71 75 65 6e 63 65 29 0a 20 20 28 77 68 69 63 key-reload-key-sequence)...(whic
19ea0 68 2d 6b 65 79 2d 2d 63 72 65 61 74 65 2d 62 75 66 66 65 72 2d 61 6e 64 2d 73 68 6f 77 20 28 77 h-key--create-buffer-and-show.(w
19ec0 68 69 63 68 2d 6b 65 79 2d 2d 63 75 72 72 65 6e 74 2d 70 72 65 66 69 78 29 29 29 0a 0a 3b 3b 3b hich-key--current-prefix)))..;;;
19ee0 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 43 2d 68 ###autoload.(defun.which-key-C-h
19f00 2d 64 69 73 70 61 74 63 68 20 28 29 0a 20 20 22 44 69 73 70 61 74 63 68 20 5c 5c 60 43 2d 68 27 -dispatch.()..."Dispatch.\\`C-h'
19f20 20 63 6f 6d 6d 61 6e 64 73 20 62 79 20 6c 6f 6f 6b 69 6e 67 20 75 70 20 6b 65 79 20 69 6e 20 60 .commands.by.looking.up.key.in.`
19f40 77 68 69 63 68 2d 6b 65 79 2d 43 2d 68 2d 6d 61 70 27 2e 0a 54 68 69 73 20 63 6f 6d 6d 61 6e 64 which-key-C-h-map'..This.command
19f60 20 69 73 20 61 6c 77 61 79 73 20 61 63 63 65 73 73 69 62 6c 65 20 28 66 72 6f 6d 20 61 6e 79 20 .is.always.accessible.(from.any.
19f80 70 72 65 66 69 78 29 20 69 66 0a 60 77 68 69 63 68 2d 6b 65 79 2d 75 73 65 2d 43 2d 68 2d 63 6f prefix).if.`which-key-use-C-h-co
19fa0 6d 6d 61 6e 64 73 27 20 69 73 20 6e 6f 6e 20 6e 69 6c 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 mmands'.is.non.nil."...(interact
19fc0 69 76 65 29 0a 20 20 28 63 6f 6e 64 20 28 28 61 6e 64 20 28 6e 6f 74 20 28 77 68 69 63 68 2d 6b ive)...(cond.((and.(not.(which-k
19fe0 65 79 2d 2d 70 6f 70 75 70 2d 73 68 6f 77 69 6e 67 2d 70 29 29 0a 20 20 20 20 20 20 20 20 20 20 ey--popup-showing-p))...........
1a000 20 20 20 20 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d 65 61 72 6c 79 2d 6f 6e 2d 43 2d 68 29 ....which-key-show-early-on-C-h)
1a020 0a 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 63 75 72 72 65 6e 74 2d 70 72 65 66 69 78 0a ..........(let.((current-prefix.
1a040 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 62 75 74 6c 61 73 74 0a 20 20 20 20 20 20 20 ................(butlast........
1a060 20 20 20 20 20 20 20 20 20 20 28 6c 69 73 74 69 66 79 2d 6b 65 79 2d 73 65 71 75 65 6e 63 65 0a ..........(listify-key-sequence.
1a080 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 77 68 69 63 68 ..................(funcall.which
1a0a0 2d 6b 65 79 2d 74 68 69 73 2d 63 6f 6d 6d 61 6e 64 2d 6b 65 79 73 2d 66 75 6e 63 74 69 6f 6e 29 -key-this-command-keys-function)
1a0c0 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 72 65 6c 6f 61 ))))............(which-key-reloa
1a0e0 64 2d 6b 65 79 2d 73 65 71 75 65 6e 63 65 20 63 75 72 72 65 6e 74 2d 70 72 65 66 69 78 29 0a 20 d-key-sequence.current-prefix)..
1a100 20 20 20 20 20 20 20 20 20 20 28 69 66 20 77 68 69 63 68 2d 6b 65 79 2d 69 64 6c 65 2d 73 65 63 ..........(if.which-key-idle-sec
1a120 6f 6e 64 61 72 79 2d 64 65 6c 61 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 ondary-delay................(whi
1a140 63 68 2d 6b 65 79 2d 2d 73 74 61 72 74 2d 74 69 6d 65 72 20 77 68 69 63 68 2d 6b 65 79 2d 69 64 ch-key--start-timer.which-key-id
1a160 6c 65 2d 73 65 63 6f 6e 64 61 72 79 2d 64 65 6c 61 79 20 74 29 0a 20 20 20 20 20 20 20 20 20 20 le-secondary-delay.t)...........
1a180 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 73 74 61 72 74 2d 74 69 6d 65 72 20 30 2e 30 35 20 ...(which-key--start-timer.0.05.
1a1a0 74 29 29 29 29 0a 20 20 20 20 20 20 20 20 28 28 6e 6f 74 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d t)))).........((not.(which-key--
1a1c0 70 6f 70 75 70 2d 73 68 6f 77 69 6e 67 2d 70 29 29 0a 20 20 20 20 20 20 20 20 20 28 77 68 69 63 popup-showing-p))..........(whic
1a1e0 68 2d 6b 65 79 2d 73 68 6f 77 2d 73 74 61 6e 64 61 72 64 2d 68 65 6c 70 29 29 0a 20 20 20 20 20 h-key-show-standard-help))......
1a200 20 20 20 28 74 0a 20 20 20 20 20 20 20 20 20 28 69 66 20 28 6e 6f 74 20 28 77 68 69 63 68 2d 6b ...(t..........(if.(not.(which-k
1a220 65 79 2d 2d 70 6f 70 75 70 2d 73 68 6f 77 69 6e 67 2d 70 29 29 0a 20 20 20 20 20 20 20 20 20 20 ey--popup-showing-p))...........
1a240 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d 73 74 61 6e 64 61 72 64 2d 68 65 6c 70 ...(which-key-show-standard-help
1a260 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 2a 20 28 28 70 72 65 66 69 78 2d 6b 65 79 73 )............(let*.((prefix-keys
1a280 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 63 75 72 72 65 6e 74 2d 6b 65 79 2d 73 74 72 69 6e 67 29 .(which-key--current-key-string)
1a2a0 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66 75 6c 6c 2d 70 72 65 66 69 78 )...................(full-prefix
1a2c0 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 66 75 6c 6c 2d 70 72 65 66 69 78 20 70 72 65 66 69 78 2d .(which-key--full-prefix.prefix-
1a2e0 6b 65 79 73 20 63 75 72 72 65 6e 74 2d 70 72 65 66 69 78 2d 61 72 67 20 74 29 29 0a 20 20 20 20 keys.current-prefix-arg.t)).....
1a300 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 6d 70 74 20 28 63 6f 6e 63 61 74 20 28 77 ..............(prompt.(concat.(w
1a320 68 65 6e 20 28 73 74 72 69 6e 67 2d 65 71 75 61 6c 20 70 72 65 66 69 78 2d 6b 65 79 73 20 22 22 hen.(string-equal.prefix-keys.""
1a340 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 )...............................
1a360 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 70 72 6f 70 65 72 74 69 7a 65 0a 20 20 20 ......(which-key--propertize....
1a380 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1a3a0 20 20 28 63 6f 6e 63 61 74 20 22 20 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..(concat."."...................
1a3c0 20 20 20 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 77 68 69 63 ...........................(whic
1a3e0 68 2d 6b 65 79 2d 2d 70 61 67 65 73 2d 70 72 65 66 69 78 2d 74 69 74 6c 65 0a 20 20 20 20 20 20 h-key--pages-prefix-title.......
1a400 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1a420 20 20 20 20 20 20 20 20 77 68 69 63 68 2d 6b 65 79 2d 2d 70 61 67 65 73 2d 6f 62 6a 29 29 0a 20 ........which-key--pages-obj))..
1a440 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1a460 20 20 20 20 27 66 61 63 65 20 27 77 68 69 63 68 2d 6b 65 79 2d 6e 6f 74 65 2d 66 61 63 65 29 29 ....'face.'which-key-note-face))
1a480 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 ................................
1a4a0 20 20 20 66 75 6c 6c 2d 70 72 65 66 69 78 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ...full-prefix..................
1a4c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 70 72 6f .................(which-key--pro
1a4e0 70 65 72 74 69 7a 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 pertize.........................
1a500 20 20 20 20 20 20 20 20 20 20 20 28 73 75 62 73 74 69 74 75 74 65 2d 63 6f 6d 6d 61 6e 64 2d 6b ...........(substitute-command-k
1a520 65 79 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 eys.............................
1a540 20 20 20 20 20 20 20 20 77 68 69 63 68 2d 6b 65 79 2d 43 2d 68 2d 6d 61 70 2d 70 72 6f 6d 70 74 ........which-key-C-h-map-prompt
1a560 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 )...............................
1a580 20 20 20 20 20 27 66 61 63 65 20 27 77 68 69 63 68 2d 6b 65 79 2d 6e 6f 74 65 2d 66 61 63 65 29 .....'face.'which-key-note-face)
1a5a0 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6b 65 79 20 28 6c 65 74 20 28 ))...................(key.(let.(
1a5c0 28 6b 65 79 20 28 72 65 61 64 2d 6b 65 79 20 70 72 6f 6d 70 74 29 29 29 0a 20 20 20 20 20 20 20 (key.(read-key.prompt)))........
1a5e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 6e 75 6d 62 65 72 70 20 6b ..................(if.(numberp.k
1a600 65 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ey).............................
1a620 20 28 73 74 72 69 6e 67 20 6b 65 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .(string.key)...................
1a640 20 20 20 20 20 20 20 20 20 28 76 65 63 74 6f 72 20 6b 65 79 29 29 29 29 0a 20 20 20 20 20 20 20 .........(vector.key))))........
1a660 20 20 20 20 20 20 20 20 20 20 20 28 63 6d 64 20 28 6c 6f 6f 6b 75 70 2d 6b 65 79 20 77 68 69 63 ...........(cmd.(lookup-key.whic
1a680 68 2d 6b 65 79 2d 43 2d 68 2d 6d 61 70 20 6b 65 79 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 h-key-C-h-map.key)).............
1a6a0 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 69 6e 68 69 62 69 74 20 74 29 29 0a 20 20 20 ......(which-key-inhibit.t))....
1a6c0 20 20 20 20 20 20 20 20 20 20 28 69 66 20 63 6d 64 20 28 66 75 6e 63 61 6c 6c 20 63 6d 64 20 6b ..........(if.cmd.(funcall.cmd.k
1a6e0 65 79 29 20 28 77 68 69 63 68 2d 6b 65 79 2d 74 75 72 6e 2d 70 61 67 65 20 30 29 29 29 29 29 29 ey).(which-key-turn-page.0))))))
1a700 29 0a 0a 3b 3b 3b 20 55 70 64 61 74 65 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d )..;;;.Update..(defun.which-key-
1a720 2d 61 6e 79 2d 6d 61 74 63 68 2d 70 20 28 72 65 67 65 78 70 73 20 73 74 72 69 6e 67 29 0a 20 20 -any-match-p.(regexps.string)...
1a740 22 4e 6f 6e 2d 6e 69 6c 20 69 66 20 61 6e 79 20 6f 66 20 52 45 47 45 58 50 53 20 6d 61 74 63 68 "Non-nil.if.any.of.REGEXPS.match
1a760 20 53 54 52 49 4e 47 2e 22 0a 20 20 28 63 61 74 63 68 20 27 6d 61 74 63 68 0a 20 20 20 20 28 64 .STRING."...(catch.'match.....(d
1a780 6f 6c 69 73 74 20 28 72 65 67 65 78 70 20 72 65 67 65 78 70 73 29 0a 20 20 20 20 20 20 28 77 68 olist.(regexp.regexps).......(wh
1a7a0 65 6e 20 28 73 74 72 69 6e 67 2d 6d 61 74 63 68 2d 70 20 72 65 67 65 78 70 20 73 74 72 69 6e 67 en.(string-match-p.regexp.string
1a7c0 29 0a 20 20 20 20 20 20 20 20 28 74 68 72 6f 77 20 27 6d 61 74 63 68 20 74 29 29 29 29 29 0a 0a ).........(throw.'match.t)))))..
1a7e0 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 74 72 79 2d 32 2d 73 69 64 65 2d 77 69 6e (defun.which-key--try-2-side-win
1a800 64 6f 77 73 0a 20 20 20 20 28 62 69 6e 64 69 6e 67 73 20 70 72 65 66 69 78 2d 6b 65 79 73 20 70 dows.....(bindings.prefix-keys.p
1a820 72 65 66 69 78 2d 74 69 74 6c 65 20 6c 6f 63 31 20 6c 6f 63 32 20 26 72 65 73 74 20 5f 69 67 6e refix-title.loc1.loc2.&rest._ign
1a840 6f 72 65 29 0a 20 20 22 54 72 79 20 74 6f 20 73 68 6f 77 20 42 49 4e 44 49 4e 47 53 20 28 50 41 ore)..."Try.to.show.BINDINGS.(PA
1a860 47 45 2d 4e 29 20 69 6e 20 4c 4f 43 31 20 66 69 72 73 74 2e 0a 4f 6e 6c 79 20 69 66 20 6e 6f 20 GE-N).in.LOC1.first..Only.if.no.
1a880 62 69 6e 64 69 6e 67 73 20 66 69 74 20 66 61 6c 6c 62 61 63 6b 20 74 6f 20 4c 4f 43 32 2e 22 0a bindings.fit.fallback.to.LOC2.".
1a8a0 20 20 28 6c 65 74 20 28 70 61 67 65 73 31 29 0a 20 20 20 20 28 6c 65 74 20 28 28 77 68 69 63 68 ..(let.(pages1).....(let.((which
1a8c0 2d 6b 65 79 2d 73 69 64 65 2d 77 69 6e 64 6f 77 2d 6c 6f 63 61 74 69 6f 6e 20 6c 6f 63 31 29 0a -key-side-window-location.loc1).
1a8e0 20 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 6d 75 6c 74 69 70 6c 65 2d 6c ..........(which-key--multiple-l
1a900 6f 63 61 74 69 6f 6e 73 20 74 29 29 0a 20 20 20 20 20 20 28 73 65 74 71 20 70 61 67 65 73 31 20 ocations.t)).......(setq.pages1.
1a920 28 77 68 69 63 68 2d 6b 65 79 2d 2d 63 72 65 61 74 65 2d 70 61 67 65 73 0a 20 20 20 20 20 20 20 (which-key--create-pages........
1a940 20 20 20 20 20 20 20 20 20 20 20 20 20 62 69 6e 64 69 6e 67 73 20 70 72 65 66 69 78 2d 6b 65 79 .............bindings.prefix-key
1a960 73 20 70 72 65 66 69 78 2d 74 69 74 6c 65 29 29 29 0a 20 20 20 20 28 69 66 20 70 61 67 65 73 31 s.prefix-title))).....(if.pages1
1a980 0a 20 20 20 20 20 20 20 20 28 70 72 6f 67 6e 0a 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 .........(progn...........(setq.
1a9a0 77 68 69 63 68 2d 6b 65 79 2d 2d 70 61 67 65 73 2d 6f 62 6a 20 70 61 67 65 73 31 29 0a 20 20 20 which-key--pages-obj.pages1)....
1a9c0 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 77 68 69 63 68 2d 6b 65 79 2d 73 69 64 65 2d 77 69 6e .......(let.((which-key-side-win
1a9e0 64 6f 77 2d 6c 6f 63 61 74 69 6f 6e 20 6c 6f 63 31 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 dow-location.loc1)..............
1aa00 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 6d 75 6c 74 69 70 6c 65 2d 6c 6f 63 61 74 69 6f 6e ...(which-key--multiple-location
1aa20 73 20 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 73 68 s.t)).............(which-key--sh
1aa40 6f 77 2d 70 61 67 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 6c 6f 63 31 29 0a 20 20 20 20 20 20 ow-page))...........loc1).......
1aa60 28 6c 65 74 20 28 28 77 68 69 63 68 2d 6b 65 79 2d 73 69 64 65 2d 77 69 6e 64 6f 77 2d 6c 6f 63 (let.((which-key-side-window-loc
1aa80 61 74 69 6f 6e 20 6c 6f 63 32 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b ation.loc2).............(which-k
1aaa0 65 79 2d 2d 6d 75 6c 74 69 70 6c 65 2d 6c 6f 63 61 74 69 6f 6e 73 20 74 29 29 0a 20 20 20 20 20 ey--multiple-locations.t))......
1aac0 20 20 20 28 73 65 74 71 20 77 68 69 63 68 2d 6b 65 79 2d 2d 70 61 67 65 73 2d 6f 62 6a 0a 20 20 ...(setq.which-key--pages-obj...
1aae0 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 63 72 65 61 74 65 2d 70 ............(which-key--create-p
1ab00 61 67 65 73 20 62 69 6e 64 69 6e 67 73 20 70 72 65 66 69 78 2d 6b 65 79 73 20 70 72 65 66 69 78 ages.bindings.prefix-keys.prefix
1ab20 2d 74 69 74 6c 65 29 29 0a 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 73 68 6f -title)).........(which-key--sho
1ab40 77 2d 70 61 67 65 29 0a 20 20 20 20 20 20 20 20 6c 6f 63 32 29 29 29 29 0a 0a 28 64 65 66 75 6e w-page).........loc2))))..(defun
1ab60 20 77 68 69 63 68 2d 6b 65 79 2d 2d 72 65 61 64 2d 6b 65 79 6d 61 70 20 28 29 0a 20 20 22 52 65 .which-key--read-keymap.()..."Re
1ab80 61 64 20 6b 65 79 6d 61 70 20 73 79 6d 62 6f 6c 20 66 72 6f 6d 20 6d 69 6e 69 62 75 66 66 65 72 ad.keymap.symbol.from.minibuffer
1aba0 2e 22 0a 20 20 28 69 6e 74 65 72 6e 0a 20 20 20 28 63 6f 6d 70 6c 65 74 69 6e 67 2d 72 65 61 64 ."...(intern....(completing-read
1abc0 20 22 4b 65 79 6d 61 70 3a 20 22 20 6f 62 61 72 72 61 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 ."Keymap:.".obarray.............
1abe0 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 6d 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 ........(lambda.(m).............
1ac00 20 20 20 20 20 20 20 20 20 20 28 61 6e 64 20 28 62 6f 75 6e 64 70 20 6d 29 0a 20 20 20 20 20 20 ..........(and.(boundp.m).......
1ac20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6b 65 79 6d 61 70 70 20 28 73 .....................(keymapp.(s
1ac40 79 6d 62 6f 6c 2d 76 61 6c 75 65 20 6d 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ymbol-value.m)).................
1ac60 20 20 20 20 20 20 20 20 20 20 20 28 6e 6f 74 20 28 65 71 75 61 6c 20 28 73 79 6d 62 6f 6c 2d 76 ...........(not.(equal.(symbol-v
1ac80 61 6c 75 65 20 6d 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 alue.m).........................
1aca0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 61 6b 65 2d 73 70 61 72 73 65 2d 6b 65 79 6d ...............(make-sparse-keym
1acc0 61 70 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 74 0a 20 20 ap))))).....................t...
1ace0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 73 79 6d 20 28 73 79 ..................(let.((sym.(sy
1ad00 6d 62 6f 6c 2d 61 74 2d 70 6f 69 6e 74 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 mbol-at-point)))................
1ad20 20 20 20 20 20 20 20 28 61 6e 64 20 28 62 6f 75 6e 64 70 20 73 79 6d 29 0a 20 20 20 20 20 20 20 .......(and.(boundp.sym)........
1ad40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6b 65 79 6d 61 70 70 20 28 73 79 ....................(keymapp.(sy
1ad60 6d 62 6f 6c 2d 76 61 6c 75 65 20 73 79 6d 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 mbol-value.sym))................
1ad80 20 20 20 20 20 20 20 20 20 20 20 20 28 73 79 6d 62 6f 6c 2d 6e 61 6d 65 20 73 79 6d 29 29 29 0a ............(symbol-name.sym))).
1ada0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 77 68 69 63 68 2d 6b 65 79 2d 6b ....................'which-key-k
1adc0 65 79 6d 61 70 2d 68 69 73 74 6f 72 79 29 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 eymap-history)))..;;;###autoload
1ade0 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d 6b 65 79 6d 61 70 20 28 6b .(defun.which-key-show-keymap.(k
1ae00 65 79 6d 61 70 20 26 6f 70 74 69 6f 6e 61 6c 20 6e 6f 2d 70 61 67 69 6e 67 29 0a 20 20 22 53 68 eymap.&optional.no-paging)..."Sh
1ae20 6f 77 20 74 68 65 20 74 6f 70 2d 6c 65 76 65 6c 20 62 69 6e 64 69 6e 67 73 20 69 6e 20 4b 45 59 ow.the.top-level.bindings.in.KEY
1ae40 4d 41 50 20 75 73 69 6e 67 20 77 68 69 63 68 2d 6b 65 79 2e 0a 4b 45 59 4d 41 50 20 69 73 20 73 MAP.using.which-key..KEYMAP.is.s
1ae60 65 6c 65 63 74 65 64 20 69 6e 74 65 72 61 63 74 69 76 65 6c 79 20 66 72 6f 6d 20 61 6c 6c 20 61 elected.interactively.from.all.a
1ae80 76 61 69 6c 61 62 6c 65 20 6b 65 79 6d 61 70 73 2e 0a 0a 49 66 20 4e 4f 2d 50 41 47 49 4e 47 20 vailable.keymaps...If.NO-PAGING.
1aea0 69 73 20 6e 6f 6e 2d 6e 69 6c 2c 20 77 68 69 63 68 2d 6b 65 79 20 77 69 6c 6c 20 6e 6f 74 20 69 is.non-nil,.which-key.will.not.i
1aec0 6e 74 65 72 63 65 70 74 20 73 75 62 73 65 71 75 65 6e 74 0a 6b 65 79 70 72 65 73 73 65 73 20 66 ntercept.subsequent.keypresses.f
1aee0 6f 72 20 74 68 65 20 70 61 67 69 6e 67 20 66 75 6e 63 74 69 6f 6e 61 6c 69 74 79 2e 22 0a 20 20 or.the.paging.functionality."...
1af00 28 69 6e 74 65 72 61 63 74 69 76 65 20 28 6c 69 73 74 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 72 (interactive.(list.(which-key--r
1af20 65 61 64 2d 6b 65 79 6d 61 70 29 29 29 0a 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 73 68 6f 77 ead-keymap)))...(which-key--show
1af40 2d 6b 65 79 6d 61 70 20 28 73 79 6d 62 6f 6c 2d 6e 61 6d 65 20 6b 65 79 6d 61 70 29 0a 20 20 20 -keymap.(symbol-name.keymap)....
1af60 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 79 6d 62 6f 6c 2d 76 .......................(symbol-v
1af80 61 6c 75 65 20 6b 65 79 6d 61 70 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 alue.keymap)....................
1afa0 20 20 20 20 20 20 20 6e 69 6c 20 6e 69 6c 20 6e 6f 2d 70 61 67 69 6e 67 29 29 0a 0a 3b 3b 3b 23 .......nil.nil.no-paging))..;;;#
1afc0 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 ##autoload.(defun.which-key-show
1afe0 2d 66 75 6c 6c 2d 6b 65 79 6d 61 70 20 28 6b 65 79 6d 61 70 29 0a 20 20 22 53 68 6f 77 20 61 6c -full-keymap.(keymap)..."Show.al
1b000 6c 20 62 69 6e 64 69 6e 67 73 20 69 6e 20 4b 45 59 4d 41 50 20 75 73 69 6e 67 20 77 68 69 63 68 l.bindings.in.KEYMAP.using.which
1b020 2d 6b 65 79 2e 0a 4b 45 59 4d 41 50 20 69 73 20 73 65 6c 65 63 74 65 64 20 69 6e 74 65 72 61 63 -key..KEYMAP.is.selected.interac
1b040 74 69 76 65 6c 79 20 66 72 6f 6d 20 61 6c 6c 20 61 76 61 69 6c 61 62 6c 65 20 6b 65 79 6d 61 70 tively.from.all.available.keymap
1b060 73 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 20 28 6c 69 73 74 20 28 77 68 69 63 68 2d s."...(interactive.(list.(which-
1b080 6b 65 79 2d 2d 72 65 61 64 2d 6b 65 79 6d 61 70 29 29 29 0a 20 20 28 77 68 69 63 68 2d 6b 65 79 key--read-keymap)))...(which-key
1b0a0 2d 2d 73 68 6f 77 2d 6b 65 79 6d 61 70 20 28 73 79 6d 62 6f 6c 2d 6e 61 6d 65 20 6b 65 79 6d 61 --show-keymap.(symbol-name.keyma
1b0c0 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 28 73 79 p)...........................(sy
1b0e0 6d 62 6f 6c 2d 76 61 6c 75 65 20 6b 65 79 6d 61 70 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 mbol-value.keymap)..............
1b100 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 69 6c 20 74 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f .............nil.t))..;;;###auto
1b120 6c 6f 61 64 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d 6d 69 6e 6f 72 load.(defun.which-key-show-minor
1b140 2d 6d 6f 64 65 2d 6b 65 79 6d 61 70 20 28 26 6f 70 74 69 6f 6e 61 6c 20 61 6c 6c 29 0a 20 20 22 -mode-keymap.(&optional.all)..."
1b160 53 68 6f 77 20 74 68 65 20 74 6f 70 2d 6c 65 76 65 6c 20 62 69 6e 64 69 6e 67 73 20 69 6e 20 4b Show.the.top-level.bindings.in.K
1b180 45 59 4d 41 50 20 75 73 69 6e 67 20 77 68 69 63 68 2d 6b 65 79 2e 0a 4b 45 59 4d 41 50 20 69 73 EYMAP.using.which-key..KEYMAP.is
1b1a0 20 73 65 6c 65 63 74 65 64 20 69 6e 74 65 72 61 63 74 69 76 65 6c 79 20 62 79 20 6d 6f 64 65 20 .selected.interactively.by.mode.
1b1c0 69 6e 0a 60 6d 69 6e 6f 72 2d 6d 6f 64 65 2d 6d 61 70 2d 61 6c 69 73 74 27 2e 22 0a 20 20 28 69 in.`minor-mode-map-alist'."...(i
1b1e0 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20 28 6c 65 74 20 28 28 6d 6f 64 65 2d 73 79 6d 0a 20 20 nteractive)...(let.((mode-sym...
1b200 20 20 20 20 20 20 20 28 69 6e 74 65 72 6e 0a 20 20 20 20 20 20 20 20 20 20 28 63 6f 6d 70 6c 65 .......(intern...........(comple
1b220 74 69 6e 67 2d 72 65 61 64 0a 20 20 20 20 20 20 20 20 20 20 20 22 4d 69 6e 6f 72 20 4d 6f 64 65 ting-read............"Minor.Mode
1b240 3a 20 22 0a 20 20 20 20 20 20 20 20 20 20 20 28 6d 61 70 63 61 72 20 23 27 63 61 72 0a 20 20 20 :."............(mapcar.#'car....
1b260 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6c 2d 72 65 6d 6f 76 65 2d 69 66 2d 6e 6f ................(cl-remove-if-no
1b280 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 65 t.....................(lambda.(e
1b2a0 6e 74 72 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 6e 64 ntry).......................(and
1b2c0 20 28 73 79 6d 62 6f 6c 2d 76 61 6c 75 65 20 28 63 61 72 20 65 6e 74 72 79 29 29 0a 20 20 20 20 .(symbol-value.(car.entry)).....
1b2e0 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 28 65 71 75 .......................(not.(equ
1b300 61 6c 20 28 63 64 72 20 65 6e 74 72 79 29 20 28 6d 61 6b 65 2d 73 70 61 72 73 65 2d 6b 65 79 6d al.(cdr.entry).(make-sparse-keym
1b320 61 70 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 6d 69 6e 6f ap))))).....................mino
1b340 72 2d 6d 6f 64 65 2d 6d 61 70 2d 61 6c 69 73 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 6e 69 r-mode-map-alist))............ni
1b360 6c 20 74 20 6e 69 6c 20 27 77 68 69 63 68 2d 6b 65 79 2d 6b 65 79 6d 61 70 2d 68 69 73 74 6f 72 l.t.nil.'which-key-keymap-histor
1b380 79 29 29 29 29 0a 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 73 68 6f 77 2d 6b 65 79 6d 61 y)))).....(which-key--show-keyma
1b3a0 70 20 28 73 79 6d 62 6f 6c 2d 6e 61 6d 65 20 6d 6f 64 65 2d 73 79 6d 29 0a 20 20 20 20 20 20 20 p.(symbol-name.mode-sym)........
1b3c0 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 71 20 .....................(cdr.(assq.
1b3e0 6d 6f 64 65 2d 73 79 6d 20 6d 69 6e 6f 72 2d 6d 6f 64 65 2d 6d 61 70 2d 61 6c 69 73 74 29 29 0a mode-sym.minor-mode-map-alist)).
1b400 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 6c 6c 29 ............................all)
1b420 29 29 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b )).;;;###autoload.(defun.which-k
1b440 65 79 2d 73 68 6f 77 2d 66 75 6c 6c 2d 6d 69 6e 6f 72 2d 6d 6f 64 65 2d 6b 65 79 6d 61 70 20 28 ey-show-full-minor-mode-keymap.(
1b460 29 0a 20 20 22 53 68 6f 77 20 61 6c 6c 20 62 69 6e 64 69 6e 67 73 20 69 6e 20 4b 45 59 4d 41 50 )..."Show.all.bindings.in.KEYMAP
1b480 20 75 73 69 6e 67 20 77 68 69 63 68 2d 6b 65 79 2e 0a 4b 45 59 4d 41 50 20 69 73 20 73 65 6c 65 .using.which-key..KEYMAP.is.sele
1b4a0 63 74 65 64 20 69 6e 74 65 72 61 63 74 69 76 65 6c 79 20 62 79 20 6d 6f 64 65 20 69 6e 0a 60 6d cted.interactively.by.mode.in.`m
1b4c0 69 6e 6f 72 2d 6d 6f 64 65 2d 6d 61 70 2d 61 6c 69 73 74 27 2e 22 0a 20 20 28 69 6e 74 65 72 61 inor-mode-map-alist'."...(intera
1b4e0 63 74 69 76 65 29 0a 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d 6d 69 6e 6f 72 2d 6d ctive)...(which-key-show-minor-m
1b500 6f 64 65 2d 6b 65 79 6d 61 70 20 74 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 ode-keymap.t))..(defun.which-key
1b520 2d 2d 73 68 6f 77 2d 6b 65 79 6d 61 70 0a 20 20 20 20 28 6b 65 79 6d 61 70 2d 6e 61 6d 65 20 6b --show-keymap.....(keymap-name.k
1b540 65 79 6d 61 70 20 26 6f 70 74 69 6f 6e 61 6c 20 70 72 69 6f 72 2d 61 72 67 73 20 61 6c 6c 20 6e eymap.&optional.prior-args.all.n
1b560 6f 2d 70 61 67 69 6e 67 20 66 69 6c 74 65 72 29 0a 20 20 28 77 68 65 6e 20 70 72 69 6f 72 2d 61 o-paging.filter)...(when.prior-a
1b580 72 67 73 20 28 70 75 73 68 20 70 72 69 6f 72 2d 61 72 67 73 20 77 68 69 63 68 2d 6b 65 79 2d 2d rgs.(push.prior-args.which-key--
1b5a0 70 72 69 6f 72 2d 73 68 6f 77 2d 6b 65 79 6d 61 70 2d 61 72 67 73 29 29 0a 20 20 28 6c 65 74 20 prior-show-keymap-args))...(let.
1b5c0 28 28 62 69 6e 64 69 6e 67 73 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 67 65 74 2d 62 69 6e 64 69 ((bindings.(which-key--get-bindi
1b5e0 6e 67 73 20 6e 69 6c 20 6b 65 79 6d 61 70 20 66 69 6c 74 65 72 20 61 6c 6c 29 29 29 0a 20 20 20 ngs.nil.keymap.filter.all)))....
1b600 20 28 69 66 20 28 6e 75 6c 6c 20 62 69 6e 64 69 6e 67 73 29 0a 20 20 20 20 20 20 20 20 28 6d 65 .(if.(null.bindings).........(me
1b620 73 73 61 67 65 20 22 77 68 69 63 68 2d 6b 65 79 3a 20 4e 6f 20 62 69 6e 64 69 6e 67 73 20 66 6f ssage."which-key:.No.bindings.fo
1b640 75 6e 64 20 69 6e 20 25 73 22 20 6b 65 79 6d 61 70 2d 6e 61 6d 65 29 0a 20 20 20 20 20 20 28 63 und.in.%s".keymap-name).......(c
1b660 6f 6e 64 20 28 28 6c 69 73 74 70 20 77 68 69 63 68 2d 6b 65 79 2d 73 69 64 65 2d 77 69 6e 64 6f ond.((listp.which-key-side-windo
1b680 77 2d 6c 6f 63 61 74 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 77 w-location)..............(setq.w
1b6a0 68 69 63 68 2d 6b 65 79 2d 2d 6c 61 73 74 2d 74 72 79 2d 32 2d 6c 6f 63 0a 20 20 20 20 20 20 20 hich-key--last-try-2-loc........
1b6c0 20 20 20 20 20 20 20 20 20 20 20 20 28 61 70 70 6c 79 20 23 27 77 68 69 63 68 2d 6b 65 79 2d 2d ............(apply.#'which-key--
1b6e0 74 72 79 2d 32 2d 73 69 64 65 2d 77 69 6e 64 6f 77 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 try-2-side-windows..............
1b700 20 20 20 20 20 20 20 20 20 20 20 20 20 62 69 6e 64 69 6e 67 73 20 6e 69 6c 20 6b 65 79 6d 61 70 .............bindings.nil.keymap
1b720 2d 6e 61 6d 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 -name...........................
1b740 77 68 69 63 68 2d 6b 65 79 2d 73 69 64 65 2d 77 69 6e 64 6f 77 2d 6c 6f 63 61 74 69 6f 6e 29 29 which-key-side-window-location))
1b760 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 74 20 28 73 65 74 71 20 77 68 69 63 68 2d 6b 65 79 ).............(t.(setq.which-key
1b780 2d 2d 70 61 67 65 73 2d 6f 62 6a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 --pages-obj.....................
1b7a0 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 63 72 65 61 74 65 2d 70 61 67 65 73 20 62 69 6e 64 69 6e .(which-key--create-pages.bindin
1b7c0 67 73 20 6e 69 6c 20 6b 65 79 6d 61 70 2d 6e 61 6d 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 gs.nil.keymap-name))............
1b7e0 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 73 68 6f 77 2d 70 61 67 65 29 29 29 0a 20 20 20 ....(which-key--show-page)))....
1b800 20 20 20 28 75 6e 6c 65 73 73 20 6e 6f 2d 70 61 67 69 6e 67 0a 20 20 20 20 20 20 20 20 28 6c 65 ...(unless.no-paging.........(le
1b820 74 2a 20 28 28 6b 65 79 20 28 72 65 61 64 2d 6b 65 79 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 t*.((key.(read-key))............
1b840 20 20 20 20 28 6b 65 79 2d 64 65 73 63 20 28 6b 65 79 2d 64 65 73 63 72 69 70 74 69 6f 6e 20 28 ....(key-desc.(key-description.(
1b860 6c 69 73 74 20 6b 65 79 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e 65 78 74 list.key)))................(next
1b880 2d 64 65 66 20 28 6c 6f 6f 6b 75 70 2d 6b 65 79 20 6b 65 79 6d 61 70 20 28 76 65 63 74 6f 72 20 -def.(lookup-key.keymap.(vector.
1b8a0 6b 65 79 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 64 20 28 28 61 6e 64 20 77 68 key))))...........(cond.((and.wh
1b8c0 69 63 68 2d 6b 65 79 2d 75 73 65 2d 43 2d 68 2d 63 6f 6d 6d 61 6e 64 73 0a 20 20 20 20 20 20 20 ich-key-use-C-h-commands........
1b8e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e 75 6d 62 65 72 70 20 6b 65 79 29 20 28 3d 20 ...............(numberp.key).(=.
1b900 6b 65 79 20 68 65 6c 70 2d 63 68 61 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 key.help-char)).................
1b920 20 28 77 68 69 63 68 2d 6b 65 79 2d 43 2d 68 2d 64 69 73 70 61 74 63 68 29 29 0a 20 20 20 20 20 .(which-key-C-h-dispatch))......
1b940 20 20 20 20 20 20 20 20 20 20 20 28 28 6b 65 79 6d 61 70 70 20 6e 65 78 74 2d 64 65 66 29 0a 20 ...........((keymapp.next-def)..
1b960 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 68 69 64 65 ................(which-key--hide
1b980 2d 70 6f 70 75 70 2d 69 67 6e 6f 72 65 2d 63 6f 6d 6d 61 6e 64 29 0a 20 20 20 20 20 20 20 20 20 -popup-ignore-command)..........
1b9a0 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 73 68 6f 77 2d 6b 65 79 6d 61 70 0a ........(which-key--show-keymap.
1b9c0 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 6b 65 79 6d 61 70 ..................(concat.keymap
1b9e0 2d 6e 61 6d 65 20 22 20 22 20 6b 65 79 2d 64 65 73 63 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 -name.".".key-desc).............
1ba00 20 20 20 20 20 20 6e 65 78 74 2d 64 65 66 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ......next-def..................
1ba20 20 28 63 6f 6e 73 20 6b 65 79 6d 61 70 2d 6e 61 6d 65 20 6b 65 79 6d 61 70 29 29 29 0a 20 20 20 .(cons.keymap-name.keymap)))....
1ba40 20 20 20 20 20 20 20 20 20 20 20 20 20 28 74 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 68 69 64 65 .............(t.(which-key--hide
1ba60 2d 70 6f 70 75 70 29 29 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 -popup))))))))..(defun.which-key
1ba80 2d 2d 65 76 69 6c 2d 6f 70 65 72 61 74 6f 72 2d 66 69 6c 74 65 72 20 28 62 69 6e 64 69 6e 67 29 --evil-operator-filter.(binding)
1baa0 0a 20 20 28 6c 65 74 20 28 28 64 65 66 20 28 69 6e 74 65 72 6e 20 28 63 64 72 20 62 69 6e 64 69 ...(let.((def.(intern.(cdr.bindi
1bac0 6e 67 29 29 29 29 0a 20 20 20 20 28 61 6e 64 20 28 66 75 6e 63 74 69 6f 6e 70 20 64 65 66 29 0a ng)))).....(and.(functionp.def).
1bae0 20 20 20 20 20 20 20 20 20 28 6e 6f 74 20 28 65 76 69 6c 2d 67 65 74 2d 63 6f 6d 6d 61 6e 64 2d .........(not.(evil-get-command-
1bb00 70 72 6f 70 65 72 74 79 20 64 65 66 20 3a 73 75 70 70 72 65 73 73 2d 6f 70 65 72 61 74 6f 72 29 property.def.:suppress-operator)
1bb20 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 73 68 6f 77 2d 65 76 69 ))))..(defun.which-key--show-evi
1bb40 6c 2d 6f 70 65 72 61 74 6f 72 2d 6b 65 79 6d 61 70 20 28 29 0a 20 20 28 69 66 20 77 68 69 63 68 l-operator-keymap.()...(if.which
1bb60 2d 6b 65 79 2d 2d 69 6e 68 69 62 69 74 2d 6e 65 78 74 2d 6f 70 65 72 61 74 6f 72 2d 70 6f 70 75 -key--inhibit-next-operator-popu
1bb80 70 0a 20 20 20 20 20 20 28 73 65 74 71 20 77 68 69 63 68 2d 6b 65 79 2d 2d 69 6e 68 69 62 69 74 p.......(setq.which-key--inhibit
1bba0 2d 6e 65 78 74 2d 6f 70 65 72 61 74 6f 72 2d 70 6f 70 75 70 20 6e 69 6c 29 0a 20 20 20 20 28 6c -next-operator-popup.nil).....(l
1bbc0 65 74 20 28 28 6b 65 79 6d 61 70 0a 20 20 20 20 20 20 20 20 20 20 20 28 6d 61 6b 65 2d 63 6f 6d et.((keymap............(make-com
1bbe0 70 6f 73 65 64 2d 6b 65 79 6d 61 70 20 28 6c 69 73 74 20 65 76 69 6c 2d 6f 70 65 72 61 74 6f 72 posed-keymap.(list.evil-operator
1bc00 2d 73 68 6f 72 74 63 75 74 2d 6d 61 70 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 -shortcut-map...................
1bc20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 76 69 6c 2d 6f 70 65 72 61 74 .....................evil-operat
1bc40 6f 72 2d 73 74 61 74 65 2d 6d 61 70 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 or-state-map....................
1bc60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 65 76 69 6c 2d 6d 6f 74 69 6f 6e 2d ....................evil-motion-
1bc80 73 74 61 74 65 2d 6d 61 70 29 29 29 29 0a 20 20 20 20 20 20 28 77 68 65 6e 20 28 6b 65 79 6d 61 state-map)))).......(when.(keyma
1bca0 70 70 20 6b 65 79 6d 61 70 29 0a 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 66 6f 72 6d 61 74 pp.keymap).........(let.((format
1bcc0 74 65 64 2d 6b 65 79 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b ted-keys................(which-k
1bce0 65 79 2d 2d 67 65 74 2d 62 69 6e 64 69 6e 67 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ey--get-bindings................
1bd00 20 6e 69 6c 20 6b 65 79 6d 61 70 20 23 27 77 68 69 63 68 2d 6b 65 79 2d 2d 65 76 69 6c 2d 6f 70 .nil.keymap.#'which-key--evil-op
1bd20 65 72 61 74 6f 72 2d 66 69 6c 74 65 72 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 64 erator-filter)))...........(cond
1bd40 20 28 28 6e 75 6c 6c 20 66 6f 72 6d 61 74 74 65 64 2d 6b 65 79 73 29 0a 20 20 20 20 20 20 20 20 .((null.formatted-keys).........
1bd60 20 20 20 20 20 20 20 20 20 28 6d 65 73 73 61 67 65 20 22 77 68 69 63 68 2d 6b 65 79 3a 20 4b 65 .........(message."which-key:.Ke
1bd80 79 6d 61 70 20 65 6d 70 74 79 22 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 ymap.empty")).................((
1bda0 6c 69 73 74 70 20 77 68 69 63 68 2d 6b 65 79 2d 73 69 64 65 2d 77 69 6e 64 6f 77 2d 6c 6f 63 61 listp.which-key-side-window-loca
1bdc0 74 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 77 68 69 tion)..................(setq.whi
1bde0 63 68 2d 6b 65 79 2d 2d 6c 61 73 74 2d 74 72 79 2d 32 2d 6c 6f 63 0a 20 20 20 20 20 20 20 20 20 ch-key--last-try-2-loc..........
1be00 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 70 70 6c 79 20 23 27 77 68 69 63 68 2d 6b 65 79 ..............(apply.#'which-key
1be20 2d 2d 74 72 79 2d 32 2d 73 69 64 65 2d 77 69 6e 64 6f 77 73 0a 20 20 20 20 20 20 20 20 20 20 20 --try-2-side-windows............
1be40 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 6d 61 74 74 65 64 2d 6b 65 79 ...................formatted-key
1be60 73 20 6e 69 6c 20 22 65 76 69 6c 20 6f 70 65 72 61 74 6f 72 2f 6d 6f 74 69 6f 6e 20 6b 65 79 73 s.nil."evil.operator/motion.keys
1be80 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 "...............................
1bea0 77 68 69 63 68 2d 6b 65 79 2d 73 69 64 65 2d 77 69 6e 64 6f 77 2d 6c 6f 63 61 74 69 6f 6e 29 29 which-key-side-window-location))
1bec0 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 74 20 28 73 65 74 71 20 77 68 69 63 68 ).................(t.(setq.which
1bee0 2d 6b 65 79 2d 2d 70 61 67 65 73 2d 6f 62 6a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 -key--pages-obj.................
1bf00 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 63 72 65 61 74 65 2d 70 61 67 65 .........(which-key--create-page
1bf20 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 66 6f 72 6d s...........................form
1bf40 61 74 74 65 64 2d 6b 65 79 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 atted-keys......................
1bf60 20 20 20 20 20 6e 69 6c 20 22 65 76 69 6c 20 6f 70 65 72 61 74 6f 72 2f 6d 6f 74 69 6f 6e 20 6b .....nil."evil.operator/motion.k
1bf80 65 79 73 22 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 eys"))....................(which
1bfa0 2d 6b 65 79 2d 2d 73 68 6f 77 2d 70 61 67 65 29 29 29 29 29 0a 20 20 20 20 20 20 28 6c 65 74 20 -key--show-page))))).......(let.
1bfc0 28 28 6b 65 79 20 28 72 65 61 64 2d 6b 65 79 29 29 29 0a 20 20 20 20 20 20 20 20 28 77 68 65 6e ((key.(read-key))).........(when
1bfe0 20 28 6d 65 6d 71 20 6b 65 79 20 27 28 3f 66 20 3f 46 20 3f 74 20 3f 54 20 3f 60 29 29 0a 20 20 .(memq.key.'(?f.?F.?t.?T.?`))...
1c000 20 20 20 20 20 20 20 20 3b 3b 20 74 68 65 73 65 20 6b 65 79 73 20 74 72 69 67 67 65 72 20 63 6f ........;;.these.keys.trigger.co
1c020 6d 6d 61 6e 64 73 20 74 68 61 74 20 72 65 61 64 20 74 68 65 20 6e 65 78 74 20 63 68 61 72 20 6d mmands.that.read.the.next.char.m
1c040 61 6e 75 61 6c 6c 79 0a 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 77 68 69 63 68 2d 6b 65 anually...........(setq.which-ke
1c060 79 2d 2d 69 6e 68 69 62 69 74 2d 6e 65 78 74 2d 6f 70 65 72 61 74 6f 72 2d 70 6f 70 75 70 20 74 y--inhibit-next-operator-popup.t
1c080 29 29 0a 20 20 20 20 20 20 20 20 28 63 6f 6e 64 20 28 28 61 6e 64 20 77 68 69 63 68 2d 6b 65 79 )).........(cond.((and.which-key
1c0a0 2d 75 73 65 2d 43 2d 68 2d 63 6f 6d 6d 61 6e 64 73 20 28 6e 75 6d 62 65 72 70 20 6b 65 79 29 20 -use-C-h-commands.(numberp.key).
1c0c0 28 3d 20 6b 65 79 20 68 65 6c 70 2d 63 68 61 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 (=.key.help-char))..............
1c0e0 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 43 2d 68 2d 64 69 73 70 61 74 63 68 29 29 0a 20 20 20 20 ..(which-key-C-h-dispatch)).....
1c100 20 20 20 20 20 20 20 20 20 20 28 28 61 6e 64 20 28 6e 75 6d 62 65 72 70 20 6b 65 79 29 20 28 3d ..........((and.(numberp.key).(=
1c120 20 6b 65 79 20 3f 5c 43 2d 5c 5b 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 .key.?\C-\[))................(wh
1c140 69 63 68 2d 6b 65 79 2d 2d 68 69 64 65 2d 70 6f 70 75 70 29 0a 20 20 20 20 20 20 20 20 20 20 20 ich-key--hide-popup)............
1c160 20 20 20 20 28 6b 65 79 62 6f 61 72 64 2d 71 75 69 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 ....(keyboard-quit))............
1c180 20 20 20 28 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d ...(t................(which-key-
1c1a0 2d 68 69 64 65 2d 70 6f 70 75 70 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 -hide-popup)................(set
1c1c0 71 20 75 6e 72 65 61 64 2d 63 6f 6d 6d 61 6e 64 2d 65 76 65 6e 74 73 20 28 76 65 63 74 6f 72 20 q.unread-command-events.(vector.
1c1e0 6b 65 79 29 29 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 63 key))))))))..(defun.which-key--c
1c200 72 65 61 74 65 2d 62 75 66 66 65 72 2d 61 6e 64 2d 73 68 6f 77 0a 20 20 20 20 28 26 6f 70 74 69 reate-buffer-and-show.....(&opti
1c220 6f 6e 61 6c 20 70 72 65 66 69 78 2d 6b 65 79 73 20 66 72 6f 6d 2d 6b 65 79 6d 61 70 20 66 69 6c onal.prefix-keys.from-keymap.fil
1c240 74 65 72 20 70 72 65 66 69 78 2d 74 69 74 6c 65 29 0a 20 20 22 46 69 6c 6c 20 60 77 68 69 63 68 ter.prefix-title)..."Fill.`which
1c260 2d 6b 65 79 2d 2d 62 75 66 66 65 72 27 20 77 69 74 68 20 6b 65 79 20 64 65 73 63 72 69 70 74 69 -key--buffer'.with.key.descripti
1c280 6f 6e 73 20 61 6e 64 20 72 65 66 6f 72 6d 61 74 2e 0a 46 69 6e 61 6c 6c 79 2c 20 73 68 6f 77 20 ons.and.reformat..Finally,.show.
1c2a0 74 68 65 20 62 75 66 66 65 72 2e 22 0a 20 20 28 6c 65 74 20 28 28 73 74 61 72 74 2d 74 69 6d 65 the.buffer."...(let.((start-time
1c2c0 20 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 66 6f 72 6d 61 74 .(current-time)).........(format
1c2e0 74 65 64 2d 6b 65 79 73 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 67 65 74 2d 62 69 6e 64 69 6e 67 ted-keys.(which-key--get-binding
1c300 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 70 72 65 66 69 s..........................prefi
1c320 78 2d 6b 65 79 73 20 66 72 6f 6d 2d 6b 65 79 6d 61 70 20 66 69 6c 74 65 72 29 29 0a 20 20 20 20 x-keys.from-keymap.filter)).....
1c340 20 20 20 20 28 70 72 65 66 69 78 2d 64 65 73 63 20 28 6b 65 79 2d 64 65 73 63 72 69 70 74 69 6f ....(prefix-desc.(key-descriptio
1c360 6e 20 70 72 65 66 69 78 2d 6b 65 79 73 29 29 29 0a 20 20 20 20 28 63 6f 6e 64 20 28 28 6e 75 6c n.prefix-keys))).....(cond.((nul
1c380 6c 20 66 6f 72 6d 61 74 74 65 64 2d 6b 65 79 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 6d 65 l.formatted-keys)............(me
1c3a0 73 73 61 67 65 20 22 25 73 2d 20 20 77 68 69 63 68 2d 6b 65 79 3a 20 54 68 65 72 65 20 61 72 65 ssage."%s-..which-key:.There.are
1c3c0 20 6e 6f 20 6b 65 79 73 20 74 6f 20 73 68 6f 77 22 20 70 72 65 66 69 78 2d 64 65 73 63 29 29 0a .no.keys.to.show".prefix-desc)).
1c3e0 20 20 20 20 20 20 20 20 20 20 28 28 6c 69 73 74 70 20 77 68 69 63 68 2d 6b 65 79 2d 73 69 64 65 ..........((listp.which-key-side
1c400 2d 77 69 6e 64 6f 77 2d 6c 6f 63 61 74 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 73 65 -window-location)............(se
1c420 74 71 20 77 68 69 63 68 2d 6b 65 79 2d 2d 6c 61 73 74 2d 74 72 79 2d 32 2d 6c 6f 63 0a 20 20 20 tq.which-key--last-try-2-loc....
1c440 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 70 70 6c 79 20 23 27 77 68 69 63 68 2d 6b 65 79 ..............(apply.#'which-key
1c460 2d 2d 74 72 79 2d 32 2d 73 69 64 65 2d 77 69 6e 64 6f 77 73 0a 20 20 20 20 20 20 20 20 20 20 20 --try-2-side-windows............
1c480 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 6d 61 74 74 65 64 2d 6b 65 79 73 20 70 72 65 66 .............formatted-keys.pref
1c4a0 69 78 2d 6b 65 79 73 20 70 72 65 66 69 78 2d 74 69 74 6c 65 0a 20 20 20 20 20 20 20 20 20 20 20 ix-keys.prefix-title............
1c4c0 20 20 20 20 20 20 20 20 20 20 20 20 20 77 68 69 63 68 2d 6b 65 79 2d 73 69 64 65 2d 77 69 6e 64 .............which-key-side-wind
1c4e0 6f 77 2d 6c 6f 63 61 74 69 6f 6e 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 74 20 28 73 65 74 ow-location)))...........(t.(set
1c500 71 20 77 68 69 63 68 2d 6b 65 79 2d 2d 70 61 67 65 73 2d 6f 62 6a 0a 20 20 20 20 20 20 20 20 20 q.which-key--pages-obj..........
1c520 20 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 63 72 65 61 74 65 2d 70 61 67 ..........(which-key--create-pag
1c540 65 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 6d 61 74 74 65 64 es.....................formatted
1c560 2d 6b 65 79 73 20 70 72 65 66 69 78 2d 6b 65 79 73 20 70 72 65 66 69 78 2d 74 69 74 6c 65 29 29 -keys.prefix-keys.prefix-title))
1c580 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 73 68 6f 77 2d 70 ..............(which-key--show-p
1c5a0 61 67 65 29 29 29 0a 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 64 65 62 75 67 2d 6d 65 73 age))).....(which-key--debug-mes
1c5c0 73 61 67 65 0a 20 20 20 20 20 22 4f 6e 20 70 72 65 66 69 78 20 5c 22 25 73 5c 22 20 77 68 69 63 sage......"On.prefix.\"%s\".whic
1c5e0 68 2d 6b 65 79 20 74 6f 6f 6b 20 25 2e 30 66 20 6d 73 2e 22 20 70 72 65 66 69 78 2d 64 65 73 63 h-key.took.%.0f.ms.".prefix-desc
1c600 0a 20 20 20 20 20 28 2a 20 31 30 30 30 20 28 66 6c 6f 61 74 2d 74 69 6d 65 20 28 74 69 6d 65 2d ......(*.1000.(float-time.(time-
1c620 73 69 6e 63 65 20 73 74 61 72 74 2d 74 69 6d 65 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 since.start-time))))))..(defun.w
1c640 68 69 63 68 2d 6b 65 79 2d 2d 75 70 64 61 74 65 20 28 29 0a 20 20 22 46 75 6e 63 74 69 6f 6e 20 hich-key--update.()..."Function.
1c660 72 75 6e 20 62 79 20 74 69 6d 65 72 20 74 6f 20 70 6f 73 73 69 62 6c 79 20 74 72 69 67 67 65 72 run.by.timer.to.possibly.trigger
1c680 20 60 77 68 69 63 68 2d 6b 65 79 2d 2d 63 72 65 61 74 65 2d 62 75 66 66 65 72 2d 61 6e 64 2d 73 .`which-key--create-buffer-and-s
1c6a0 68 6f 77 27 2e 22 0a 20 20 28 6c 65 74 20 28 28 70 72 65 66 69 78 2d 6b 65 79 73 20 28 66 75 6e how'."...(let.((prefix-keys.(fun
1c6c0 63 61 6c 6c 20 77 68 69 63 68 2d 6b 65 79 2d 74 68 69 73 2d 63 6f 6d 6d 61 6e 64 2d 6b 65 79 73 call.which-key-this-command-keys
1c6e0 2d 66 75 6e 63 74 69 6f 6e 29 29 0a 20 20 20 20 20 20 20 20 64 65 6c 61 79 2d 74 69 6d 65 29 0a -function)).........delay-time).
1c700 20 20 20 20 28 63 6f 6e 64 20 28 28 61 6e 64 20 28 3e 20 28 6c 65 6e 67 74 68 20 70 72 65 66 69 ....(cond.((and.(>.(length.prefi
1c720 78 2d 6b 65 79 73 29 20 30 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 20 28 x-keys).0).................(or.(
1c740 6b 65 79 6d 61 70 70 20 28 6b 65 79 2d 62 69 6e 64 69 6e 67 20 70 72 65 66 69 78 2d 6b 65 79 73 keymapp.(key-binding.prefix-keys
1c760 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 53 6f 6d 65 20 6b )).....................;;.Some.k
1c780 65 79 6d 61 70 73 20 61 72 65 20 73 74 6f 72 65 64 20 68 65 72 65 20 6c 69 6b 65 20 69 73 6f 2d eymaps.are.stored.here.like.iso-
1c7a0 74 72 61 6e 73 6c 2d 63 74 6c 2d 78 2d 38 2d 6d 61 70 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 transl-ctl-x-8-map..............
1c7c0 20 20 20 20 20 20 20 28 6b 65 79 6d 61 70 70 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 73 61 66 65 .......(keymapp.(which-key--safe
1c7e0 2d 6c 6f 6f 6b 75 70 2d 6b 65 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 -lookup-key.....................
1c800 20 20 20 20 20 20 20 20 20 20 6b 65 79 2d 74 72 61 6e 73 6c 61 74 69 6f 6e 2d 6d 61 70 20 70 72 ..........key-translation-map.pr
1c820 65 66 69 78 2d 6b 65 79 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 efix-keys)).....................
1c840 3b 3b 20 6a 75 73 74 20 69 6e 20 63 61 73 65 20 73 6f 6d 65 6f 6e 65 20 75 73 65 73 20 6f 6e 65 ;;.just.in.case.someone.uses.one
1c860 20 6f 66 20 74 68 65 73 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6b .of.these.....................(k
1c880 65 79 6d 61 70 70 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 73 61 66 65 2d 6c 6f 6f 6b 75 70 2d 6b eymapp.(which-key--safe-lookup-k
1c8a0 65 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 20 20 ey..............................
1c8c0 20 66 75 6e 63 74 69 6f 6e 2d 6b 65 79 2d 6d 61 70 20 70 72 65 66 69 78 2d 6b 65 79 73 29 29 29 .function-key-map.prefix-keys)))
1c8e0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e 6f 74 20 77 68 69 63 68 2d 6b 65 79 2d .................(not.which-key-
1c900 69 6e 68 69 62 69 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 20 28 6e 75 inhibit).................(or.(nu
1c920 6c 6c 20 77 68 69 63 68 2d 6b 65 79 2d 61 6c 6c 6f 77 2d 72 65 67 65 78 70 73 29 0a 20 20 20 20 ll.which-key-allow-regexps).....
1c940 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 61 6e 79 2d ................(which-key--any-
1c960 6d 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 77 68 69 match-p......................whi
1c980 63 68 2d 6b 65 79 2d 61 6c 6c 6f 77 2d 72 65 67 65 78 70 73 20 28 6b 65 79 2d 64 65 73 63 72 69 ch-key-allow-regexps.(key-descri
1c9a0 70 74 69 6f 6e 20 70 72 65 66 69 78 2d 6b 65 79 73 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 ption.prefix-keys)))............
1c9c0 20 20 20 20 20 28 6f 72 20 28 6e 75 6c 6c 20 77 68 69 63 68 2d 6b 65 79 2d 69 6e 68 69 62 69 74 .....(or.(null.which-key-inhibit
1c9e0 2d 72 65 67 65 78 70 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e -regexps).....................(n
1ca00 6f 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b ot......................(which-k
1ca20 65 79 2d 2d 61 6e 79 2d 6d 61 74 63 68 2d 70 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ey--any-match-p.................
1ca40 20 20 20 20 20 20 77 68 69 63 68 2d 6b 65 79 2d 69 6e 68 69 62 69 74 2d 72 65 67 65 78 70 73 20 ......which-key-inhibit-regexps.
1ca60 28 6b 65 79 2d 64 65 73 63 72 69 70 74 69 6f 6e 20 70 72 65 66 69 78 2d 6b 65 79 73 29 29 29 29 (key-description.prefix-keys))))
1ca80 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 44 6f 20 6e 6f 74 20 64 69 73 70 6c .................;;.Do.not.displ
1caa0 61 79 20 74 68 65 20 70 6f 70 75 70 20 69 66 20 61 20 63 6f 6d 6d 61 6e 64 20 69 73 20 63 75 72 ay.the.popup.if.a.command.is.cur
1cac0 72 65 6e 74 6c 79 20 62 65 69 6e 67 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 rently.being.................;;.
1cae0 65 78 65 63 75 74 65 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 20 28 72 75 executed.................(or.(ru
1cb00 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 65 73 73 0a 20 n-hook-with-args-until-success..
1cb20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 77 68 69 63 68 2d 6b 65 79 2d 69 ....................'which-key-i
1cb40 6e 68 69 62 69 74 2d 64 69 73 70 6c 61 79 2d 68 6f 6f 6b 29 0a 20 20 20 20 20 20 20 20 20 20 20 nhibit-display-hook)............
1cb60 20 20 20 20 20 20 20 20 20 28 6e 75 6c 6c 20 74 68 69 73 2d 63 6f 6d 6d 61 6e 64 29 29 0a 20 20 .........(null.this-command))...
1cb80 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 6d 61 78 2d 64 69 6d 20 28 77 68 ..............(let.((max-dim.(wh
1cba0 69 63 68 2d 6b 65 79 2d 2d 70 6f 70 75 70 2d 6d 61 78 2d 64 69 6d 65 6e 73 69 6f 6e 73 29 29 29 ich-key--popup-max-dimensions)))
1cbc0 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 3e 20 28 6d 69 6e 20 28 63 61 72 2d ...................(>.(min.(car-
1cbe0 73 61 66 65 20 6d 61 78 2d 64 69 6d 29 20 28 63 64 72 2d 73 61 66 65 20 6d 61 78 2d 64 69 6d 29 safe.max-dim).(cdr-safe.max-dim)
1cc00 29 20 30 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 61 6e 64 20 28 6e 6f ).0)))............(when.(and.(no
1cc20 74 20 28 65 71 75 61 6c 20 70 72 65 66 69 78 2d 6b 65 79 73 20 28 77 68 69 63 68 2d 6b 65 79 2d t.(equal.prefix-keys.(which-key-
1cc40 2d 63 75 72 72 65 6e 74 2d 70 72 65 66 69 78 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 -current-prefix)))..............
1cc60 20 20 20 20 20 20 20 20 20 28 6f 72 20 28 6e 75 6c 6c 20 77 68 69 63 68 2d 6b 65 79 2d 64 65 6c .........(or.(null.which-key-del
1cc80 61 79 2d 66 75 6e 63 74 69 6f 6e 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ay-functions)...................
1cca0 20 20 20 20 20 20 20 20 28 6e 75 6c 6c 20 28 73 65 74 71 20 64 65 6c 61 79 2d 74 69 6d 65 0a 20 ........(null.(setq.delay-time..
1ccc0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1cce0 20 20 20 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 .....(run-hook-with-args-until-s
1cd00 75 63 63 65 73 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 uccess..........................
1cd20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 77 68 69 63 68 2d 6b 65 79 2d 64 65 6c 61 79 2d 66 ..............'which-key-delay-f
1cd40 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 20 20 20 20 20 20 unctions........................
1cd60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6b 65 79 2d 64 65 73 63 72 69 70 74 69 6f 6e ................(key-description
1cd80 20 70 72 65 66 69 78 2d 6b 65 79 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .prefix-keys)...................
1cda0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 6e 67 74 68 20 70 72 65 .....................(length.pre
1cdc0 66 69 78 2d 6b 65 79 73 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 fix-keys))))....................
1cde0 20 20 20 20 20 20 20 28 73 69 74 2d 66 6f 72 20 64 65 6c 61 79 2d 74 69 6d 65 29 29 29 0a 20 20 .......(sit-for.delay-time)))...
1ce00 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 77 68 69 63 68 2d 6b 65 79 2d 2d 61 75 74 6f ...........(setq.which-key--auto
1ce20 6d 61 74 69 63 2d 64 69 73 70 6c 61 79 20 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 matic-display.t)..............(w
1ce40 68 69 63 68 2d 6b 65 79 2d 2d 63 72 65 61 74 65 2d 62 75 66 66 65 72 2d 61 6e 64 2d 73 68 6f 77 hich-key--create-buffer-and-show
1ce60 20 70 72 65 66 69 78 2d 6b 65 79 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e .prefix-keys)..............(when
1ce80 20 28 61 6e 64 20 77 68 69 63 68 2d 6b 65 79 2d 69 64 6c 65 2d 73 65 63 6f 6e 64 61 72 79 2d 64 .(and.which-key-idle-secondary-d
1cea0 65 6c 61 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 28 6e 6f elay.........................(no
1cec0 74 20 77 68 69 63 68 2d 6b 65 79 2d 2d 73 65 63 6f 6e 64 61 72 79 2d 74 69 6d 65 72 2d 61 63 74 t.which-key--secondary-timer-act
1cee0 69 76 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d ive))................(which-key-
1cf00 2d 73 74 61 72 74 2d 74 69 6d 65 72 20 77 68 69 63 68 2d 6b 65 79 2d 69 64 6c 65 2d 73 65 63 6f -start-timer.which-key-idle-seco
1cf20 6e 64 61 72 79 2d 64 65 6c 61 79 20 74 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 28 61 6e ndary-delay.t))))...........((an
1cf40 64 20 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 2d 74 72 61 6e 73 69 65 6e 74 2d 6d 61 70 73 0a d.which-key-show-transient-maps.
1cf60 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 41 73 73 75 6d 69 6e 67 20 74 68 61 74 ................;;.Assuming.that
1cf80 20 69 66 20 74 68 69 73 20 69 73 20 6e 6f 74 20 74 72 75 65 20 77 65 27 72 65 20 69 6e 0a 20 20 .if.this.is.not.true.we're.in...
1cfa0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 60 77 68 69 63 68 2d 6b 65 79 2d 73 68 6f 77 ..............;;.`which-key-show
1cfc0 2d 74 6f 70 2d 6c 65 76 65 6c 27 2c 20 77 68 69 63 68 20 77 6f 75 6c 64 20 74 68 65 6e 20 62 65 -top-level',.which.would.then.be
1cfe0 20 6f 76 65 72 77 72 69 74 74 65 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 3e .overwritten..................(>
1d000 20 28 6c 65 6e 67 74 68 20 70 72 65 66 69 78 2d 6b 65 79 73 29 20 30 29 0a 20 20 20 20 20 20 20 .(length.prefix-keys).0)........
1d020 20 20 20 20 20 20 20 20 20 28 6b 65 79 6d 61 70 70 20 6f 76 65 72 72 69 64 69 6e 67 2d 74 65 72 .........(keymapp.overriding-ter
1d040 6d 69 6e 61 6c 2d 6c 6f 63 61 6c 2d 6d 61 70 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 minal-local-map)................
1d060 20 3b 3b 20 62 61 73 69 63 20 74 65 73 74 20 66 6f 72 20 69 74 20 62 65 69 6e 67 20 61 20 68 79 .;;.basic.test.for.it.being.a.hy
1d080 64 72 61 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e 6f 74 20 28 65 71 20 28 6c 6f dra.................(not.(eq.(lo
1d0a0 6f 6b 75 70 2d 6b 65 79 20 6f 76 65 72 72 69 64 69 6e 67 2d 74 65 72 6d 69 6e 61 6c 2d 6c 6f 63 okup-key.overriding-terminal-loc
1d0c0 61 6c 2d 6d 61 70 20 22 5c 43 2d 75 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 al-map."\C-u")..................
1d0e0 20 20 20 20 20 20 20 20 27 68 79 64 72 61 2d 2d 75 6e 69 76 65 72 73 61 6c 2d 61 72 67 75 6d 65 ........'hydra--universal-argume
1d100 6e 74 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 63 72 65 nt)))............(which-key--cre
1d120 61 74 65 2d 62 75 66 66 65 72 2d 61 6e 64 2d 73 68 6f 77 0a 20 20 20 20 20 20 20 20 20 20 20 20 ate-buffer-and-show.............
1d140 6e 69 6c 20 6f 76 65 72 72 69 64 69 6e 67 2d 74 65 72 6d 69 6e 61 6c 2d 6c 6f 63 61 6c 2d 6d 61 nil.overriding-terminal-local-ma
1d160 70 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 28 61 6e 64 20 77 68 69 63 68 2d 6b 65 79 2d 73 68 p))...........((and.which-key-sh
1d180 6f 77 2d 6f 70 65 72 61 74 6f 72 2d 73 74 61 74 65 2d 6d 61 70 73 0a 20 20 20 20 20 20 20 20 20 ow-operator-state-maps..........
1d1a0 20 20 20 20 20 20 20 28 62 6f 75 6e 64 2d 61 6e 64 2d 74 72 75 65 2d 70 20 65 76 69 6c 2d 73 74 .......(bound-and-true-p.evil-st
1d1c0 61 74 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 71 20 65 76 69 6c 2d 73 74 ate).................(eq.evil-st
1d1e0 61 74 65 20 27 6f 70 65 72 61 74 6f 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 ate.'operator).................(
1d200 6e 6f 74 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 70 6f 70 75 70 2d 73 68 6f 77 69 6e 67 2d 70 29 not.(which-key--popup-showing-p)
1d220 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 73 68 6f 77 2d 65 ))............(which-key--show-e
1d240 76 69 6c 2d 6f 70 65 72 61 74 6f 72 2d 6b 65 79 6d 61 70 29 29 0a 20 20 20 20 20 20 20 20 20 20 vil-operator-keymap))...........
1d260 28 77 68 69 63 68 2d 6b 65 79 2d 2d 61 75 74 6f 6d 61 74 69 63 2d 64 69 73 70 6c 61 79 0a 20 20 (which-key--automatic-display...
1d280 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 68 69 64 65 2d 70 6f 70 75 70 29 .........(which-key--hide-popup)
1d2a0 29 29 29 29 0a 0a 3b 3b 3b 20 54 69 6d 65 72 73 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b ))))..;;;.Timers..(defun.which-k
1d2c0 65 79 2d 2d 73 74 61 72 74 2d 74 69 6d 65 72 20 28 26 6f 70 74 69 6f 6e 61 6c 20 64 65 6c 61 79 ey--start-timer.(&optional.delay
1d2e0 20 73 65 63 6f 6e 64 61 72 79 29 0a 20 20 22 41 63 74 69 76 61 74 65 20 69 64 6c 65 20 74 69 6d .secondary)..."Activate.idle.tim
1d300 65 72 20 74 6f 20 74 72 69 67 67 65 72 20 60 77 68 69 63 68 2d 6b 65 79 2d 2d 75 70 64 61 74 65 er.to.trigger.`which-key--update
1d320 27 2e 22 0a 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 73 74 6f 70 2d 74 69 6d 65 72 29 0a 20 20 '."...(which-key--stop-timer)...
1d340 28 73 65 74 71 20 77 68 69 63 68 2d 6b 65 79 2d 2d 73 65 63 6f 6e 64 61 72 79 2d 74 69 6d 65 72 (setq.which-key--secondary-timer
1d360 2d 61 63 74 69 76 65 20 73 65 63 6f 6e 64 61 72 79 29 0a 20 20 28 73 65 74 71 20 77 68 69 63 68 -active.secondary)...(setq.which
1d380 2d 6b 65 79 2d 2d 74 69 6d 65 72 0a 20 20 20 20 20 20 20 20 28 72 75 6e 2d 77 69 74 68 2d 69 64 -key--timer.........(run-with-id
1d3a0 6c 65 2d 74 69 6d 65 72 20 28 6f 72 20 64 65 6c 61 79 20 77 68 69 63 68 2d 6b 65 79 2d 69 64 6c le-timer.(or.delay.which-key-idl
1d3c0 65 2d 64 65 6c 61 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 e-delay)........................
1d3e0 20 20 20 20 20 20 74 20 23 27 77 68 69 63 68 2d 6b 65 79 2d 2d 75 70 64 61 74 65 29 29 29 0a 0a ......t.#'which-key--update)))..
1d400 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d 73 74 6f 70 2d 74 69 6d 65 72 20 28 29 0a (defun.which-key--stop-timer.().
1d420 20 20 22 44 65 61 63 74 69 76 61 74 65 20 69 64 6c 65 20 74 69 6d 65 72 20 66 6f 72 20 60 77 68 .."Deactivate.idle.timer.for.`wh
1d440 69 63 68 2d 6b 65 79 2d 2d 75 70 64 61 74 65 27 2e 22 0a 20 20 28 77 68 65 6e 20 77 68 69 63 68 ich-key--update'."...(when.which
1d460 2d 6b 65 79 2d 2d 74 69 6d 65 72 20 28 63 61 6e 63 65 6c 2d 74 69 6d 65 72 20 77 68 69 63 68 2d -key--timer.(cancel-timer.which-
1d480 6b 65 79 2d 2d 74 69 6d 65 72 29 29 29 0a 0a 28 64 65 66 75 6e 20 77 68 69 63 68 2d 6b 65 79 2d key--timer)))..(defun.which-key-
1d4a0 2d 73 74 61 72 74 2d 70 61 67 69 6e 67 2d 74 69 6d 65 72 20 28 29 0a 20 20 22 41 63 74 69 76 61 -start-paging-timer.()..."Activa
1d4c0 74 65 20 74 69 6d 65 72 20 74 6f 20 72 65 73 74 61 72 74 20 77 68 69 63 68 2d 6b 65 79 20 61 66 te.timer.to.restart.which-key.af
1d4e0 74 65 72 20 70 61 67 69 6e 67 2e 22 0a 20 20 28 77 68 65 6e 20 77 68 69 63 68 2d 6b 65 79 2d 2d ter.paging."...(when.which-key--
1d500 70 61 67 69 6e 67 2d 74 69 6d 65 72 20 28 63 61 6e 63 65 6c 2d 74 69 6d 65 72 20 77 68 69 63 68 paging-timer.(cancel-timer.which
1d520 2d 6b 65 79 2d 2d 70 61 67 69 6e 67 2d 74 69 6d 65 72 29 29 0a 20 20 28 77 68 69 63 68 2d 6b 65 -key--paging-timer))...(which-ke
1d540 79 2d 2d 73 74 6f 70 2d 74 69 6d 65 72 29 0a 20 20 28 73 65 74 71 20 77 68 69 63 68 2d 6b 65 79 y--stop-timer)...(setq.which-key
1d560 2d 2d 70 61 67 69 6e 67 2d 74 69 6d 65 72 0a 20 20 20 20 20 20 20 20 28 72 75 6e 2d 77 69 74 68 --paging-timer.........(run-with
1d580 2d 69 64 6c 65 2d 74 69 6d 65 72 0a 20 20 20 20 20 20 20 20 20 30 2e 32 20 74 20 28 6c 61 6d 62 -idle-timer..........0.2.t.(lamb
1d5a0 64 61 20 28 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 6f 72 da.()..................(when.(or
1d5c0 20 28 6e 6f 74 20 28 6d 65 6d 62 65 72 20 72 65 61 6c 2d 6c 61 73 74 2d 63 6f 6d 6d 61 6e 64 0a .(not.(member.real-last-command.
1d5e0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1d600 20 20 20 20 20 20 20 20 77 68 69 63 68 2d 6b 65 79 2d 2d 70 61 67 69 6e 67 2d 66 75 6e 63 74 69 ........which-key--paging-functi
1d620 6f 6e 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ons))...........................
1d640 20 28 61 6e 64 20 28 3c 20 30 20 28 6c 65 6e 67 74 68 20 28 74 68 69 73 2d 73 69 6e 67 6c 65 2d .(and.(<.0.(length.(this-single-
1d660 63 6f 6d 6d 61 6e 64 2d 6b 65 79 73 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 command-keys))).................
1d680 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e 6f 74 20 28 65 71 75 61 6c 20 28 77 68 69 ................(not.(equal.(whi
1d6a0 63 68 2d 6b 65 79 2d 2d 63 75 72 72 65 6e 74 2d 70 72 65 66 69 78 29 0a 20 20 20 20 20 20 20 20 ch-key--current-prefix).........
1d6c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ................................
1d6e0 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 77 68 69 63 68 2d 6b 65 79 2d 74 68 69 73 2d 63 6f 6d 6d ....(funcall.which-key-this-comm
1d700 61 6e 64 2d 6b 65 79 73 2d 66 75 6e 63 74 69 6f 6e 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 and-keys-function)))))..........
1d720 20 20 20 20 20 20 20 20 20 20 28 63 61 6e 63 65 6c 2d 74 69 6d 65 72 20 77 68 69 63 68 2d 6b 65 ..........(cancel-timer.which-ke
1d740 79 2d 2d 70 61 67 69 6e 67 2d 74 69 6d 65 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 y--paging-timer)................
1d760 20 20 20 20 28 69 66 20 77 68 69 63 68 2d 6b 65 79 2d 69 64 6c 65 2d 73 65 63 6f 6e 64 61 72 79 ....(if.which-key-idle-secondary
1d780 2d 64 65 6c 61 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 3b 3b -delay........................;;
1d7a0 20 77 65 20 68 61 76 65 6e 27 74 20 65 78 65 63 75 74 65 64 20 61 20 63 6f 6d 6d 61 6e 64 20 79 .we.haven't.executed.a.command.y
1d7c0 65 74 20 73 6f 20 74 68 65 20 73 65 63 6f 6e 64 61 72 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 et.so.the.secondary.............
1d7e0 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 74 69 6d 65 72 20 69 73 20 6d 6f 72 65 20 72 65 6c 65 ...........;;.timer.is.more.rele
1d800 76 61 6e 74 20 68 65 72 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 vant.here.......................
1d820 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 73 74 61 72 74 2d 74 69 6d 65 72 20 77 68 69 63 68 2d 6b .(which-key--start-timer.which-k
1d840 65 79 2d 69 64 6c 65 2d 73 65 63 6f 6e 64 61 72 79 2d 64 65 6c 61 79 20 74 29 0a 20 20 20 20 20 ey-idle-secondary-delay.t)......
1d860 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 63 68 2d 6b 65 79 2d 2d 73 74 61 72 ................(which-key--star
1d880 74 2d 74 69 6d 65 72 29 29 29 29 29 29 29 0a 0a 28 70 72 6f 76 69 64 65 20 27 77 68 69 63 68 2d t-timer)))))))..(provide.'which-
1d8a0 6b 65 79 29 0a 3b 3b 3b 20 77 68 69 63 68 2d 6b 65 79 2e 65 6c 20 65 6e 64 73 20 68 65 72 65 0a key).;;;.which-key.el.ends.here.
1d8c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1d8e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1d900 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1d920 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1d940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1d960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1d980 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1d9a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1d9c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1d9e0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1da00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1da20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1da40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1da60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1da80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1daa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dac0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dae0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1db00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1db20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1db40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1db60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1db80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dbc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dbe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dc00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dc20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dc40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dc60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dc80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dca0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dcc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dce0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dd00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dd20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dd40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dd60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dd80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dda0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1ddc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dde0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1de00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1de20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1de40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1de60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1de80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dea0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dec0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dee0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1df00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1df20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1df40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1df60 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1df80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dfa0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dfc0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................
1dfe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................................