| ofs | hex dump | ascii | 
|---|
| 0000 |  6c 65 64 67 65 72 2d 6d 6f 64 65 2d 32 30 32 34    30 34 31 36 2e 34 31 36 2f 00 00 00 00 00 00 00  | ledger-mode-20240416.416/....... | 
| 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 33 31 31 32 00 20 35 00 00 00  | 0000000.00000000000.013112..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 |  6c 65 64 67 65 72 2d 6d 6f 64 65 2d 32 30 32 34    30 34 31 36 2e 34 31 36 2f 6c 65 64 67 65 72 2d  | ledger-mode-20240416.416/ledger- | 
| 0220 |  74 65 78 69 2e 65 6c 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | texi.el......................... | 
| 0240 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 0260 |  00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30    30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30  | ....0000644.0000000.0000000.0000 | 
| 0280 |  30 30 31 35 33 32 30 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 35 36 34 36 00 20 30 00 00 00  | 0015320.00000000000.015646..0... | 
| 02a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 02c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 02e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 0300 |  00 75 73 74 61 72 20 20 00 72 6f 6f 74 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | .ustar...root................... | 
| 0320 |  00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | .........root................... | 
| 0340 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 0360 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 0380 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 03a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 03c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 03e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 0400 |  3b 3b 3b 20 6c 65 64 67 65 72 2d 74 65 78 69 2e    65 6c 20 2d 2d 2d 20 48 65 6c 70 65 72 20 63 6f  | ;;;.ledger-texi.el.---.Helper.co | 
| 0420 |  64 65 20 66 6f 72 20 75 73 65 20 77 69 74 68 20    74 68 65 20 22 6c 65 64 67 65 72 22 20 63 6f 6d  | de.for.use.with.the."ledger".com | 
| 0440 |  6d 61 6e 64 2d 6c 69 6e 65 20 74 6f 6f 6c 20 20    2d 2a 2d 20 6c 65 78 69 63 61 6c 2d 62 69 6e 64  | mand-line.tool..-*-.lexical-bind | 
| 0460 |  69 6e 67 3a 20 74 3b 20 2d 2a 2d 0a 0a 3b 3b 20    43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30  | ing:.t;.-*-..;;.Copyright.(C).20 | 
| 0480 |  30 33 2d 32 30 31 36 20 4a 6f 68 6e 20 57 69 65    67 6c 65 79 20 28 6a 6f 68 6e 77 20 41 54 20 67  | 03-2016.John.Wiegley.(johnw.AT.g | 
| 04a0 |  6e 75 20 44 4f 54 20 6f 72 67 29 0a 0a 3b 3b 20    54 68 69 73 20 66 69 6c 65 20 69 73 20 6e 6f 74  | nu.DOT.org)..;;.This.file.is.not | 
| 04c0 |  20 70 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 69 73 20  | .part.of.GNU.Emacs...;;.This.is. | 
| 04e0 |  66 72 65 65 20 73 6f 66 74 77 61 72 65 3b 20 79    6f 75 20 63 61 6e 20 72 65 64 69 73 74 72 69 62  | free.software;.you.can.redistrib | 
| 0500 |  75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f    64 69 66 79 20 69 74 20 75 6e 64 65 72 0a 3b 3b  | ute.it.and/or.modify.it.under.;; | 
| 0520 |  20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68    65 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75  | .the.terms.of.the.GNU.General.Pu | 
| 0540 |  62 6c 69 63 20 4c 69 63 65 6e 73 65 20 61 73 20    70 75 62 6c 69 73 68 65 64 20 62 79 20 74 68 65  | blic.License.as.published.by.the | 
| 0560 |  20 46 72 65 65 0a 3b 3b 20 53 6f 66 74 77 61 72    65 20 46 6f 75 6e 64 61 74 69 6f 6e 3b 20 65 69  | .Free.;;.Software.Foundation;.ei | 
| 0580 |  74 68 65 72 20 76 65 72 73 69 6f 6e 20 32 2c 20    6f 72 20 28 61 74 20 79 6f 75 72 20 6f 70 74 69  | ther.version.2,.or.(at.your.opti | 
| 05a0 |  6f 6e 29 20 61 6e 79 20 6c 61 74 65 72 0a 3b 3b    20 76 65 72 73 69 6f 6e 2e 0a 3b 3b 0a 3b 3b 20  | on).any.later.;;.version..;;.;;. | 
| 05c0 |  54 68 69 73 20 69 73 20 64 69 73 74 72 69 62 75    74 65 64 20 69 6e 20 74 68 65 20 68 6f 70 65 20  | This.is.distributed.in.the.hope. | 
| 05e0 |  74 68 61 74 20 69 74 20 77 69 6c 6c 20 62 65 20    75 73 65 66 75 6c 2c 20 62 75 74 20 57 49 54 48  | that.it.will.be.useful,.but.WITH | 
| 0600 |  4f 55 54 0a 3b 3b 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  | OUT.;;.ANY.WARRANTY;.without.eve | 
| 0620 |  6e 20 74 68 65 20 69 6d 70 6c 69 65 64 20 77 61    72 72 61 6e 74 79 20 6f 66 20 4d 45 52 43 48 41  | n.the.implied.warranty.of.MERCHA | 
| 0640 |  4e 54 41 42 49 4c 49 54 59 20 6f 72 0a 3b 3b 20    46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41  | NTABILITY.or.;;.FITNESS.FOR.A.PA | 
| 0660 |  52 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45    2e 20 20 53 65 65 20 74 68 65 20 47 4e 55 20 47  | RTICULAR.PURPOSE...See.the.GNU.G | 
| 0680 |  65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69    63 65 6e 73 65 0a 3b 3b 20 66 6f 72 20 6d 6f 72  | eneral.Public.License.;;.for.mor | 
| 06a0 |  65 20 64 65 74 61 69 6c 73 2e 0a 3b 3b 0a 3b 3b    20 59 6f 75 20 73 68 6f 75 6c 64 20 68 61 76 65  | e.details..;;.;;.You.should.have | 
| 06c0 |  20 72 65 63 65 69 76 65 64 20 61 20 63 6f 70 79    20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65  | .received.a.copy.of.the.GNU.Gene | 
| 06e0 |  72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e    73 65 0a 3b 3b 20 61 6c 6f 6e 67 20 77 69 74 68  | ral.Public.License.;;.along.with | 
| 0700 |  20 47 4e 55 20 45 6d 61 63 73 3b 20 73 65 65 20    74 68 65 20 66 69 6c 65 20 43 4f 50 59 49 4e 47  | .GNU.Emacs;.see.the.file.COPYING | 
| 0720 |  2e 20 20 49 66 20 6e 6f 74 2c 20 77 72 69 74 65    20 74 6f 20 74 68 65 0a 3b 3b 20 46 72 65 65 20  | ...If.not,.write.to.the.;;.Free. | 
| 0740 |  53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61 74    69 6f 6e 2c 20 49 6e 63 2e 2c 20 35 31 20 46 72  | Software.Foundation,.Inc.,.51.Fr | 
| 0760 |  61 6e 6b 6c 69 6e 20 53 74 72 65 65 74 2c 20 46    69 66 74 68 20 46 6c 6f 6f 72 2c 20 42 6f 73 74  | anklin.Street,.Fifth.Floor,.Bost | 
| 0780 |  6f 6e 2c 0a 3b 3b 20 4d 41 20 30 32 31 31 30 2d    31 33 30 31 20 55 53 41 2e 0a 0a 3b 3b 3b 20 43  | on,.;;.MA.02110-1301.USA...;;;.C | 
| 07a0 |  6f 6d 6d 65 6e 74 61 72 79 3a 0a 3b 3b 0a 0a 3b    3b 3b 20 43 6f 64 65 3a 0a 28 64 65 66 76 61 72  | ommentary:.;;..;;;.Code:.(defvar | 
| 07c0 |  20 6c 65 64 67 65 72 2d 62 69 6e 61 72 79 2d 70    61 74 68 29 0a 0a 28 64 65 66 67 72 6f 75 70 20  | .ledger-binary-path)..(defgroup. | 
| 07e0 |  6c 65 64 67 65 72 2d 74 65 78 69 20 6e 69 6c 0a    20 20 22 4f 70 74 69 6f 6e 73 20 66 6f 72 20 77  | ledger-texi.nil..."Options.for.w | 
| 0800 |  6f 72 6b 69 6e 67 20 6f 6e 20 4c 65 64 67 65 72    20 74 65 78 69 20 64 6f 63 75 6d 65 6e 74 61 74  | orking.on.Ledger.texi.documentat | 
| 0820 |  69 6f 6e 22 0a 20 20 3a 67 72 6f 75 70 20 27 6c    65 64 67 65 72 29 0a 0a 28 64 65 66 63 75 73 74  | ion"...:group.'ledger)..(defcust | 
| 0840 |  6f 6d 20 6c 65 64 67 65 72 2d 74 65 78 69 2d 73    61 6d 70 6c 65 2d 64 6f 63 2d 70 61 74 68 20 22  | om.ledger-texi-sample-doc-path." | 
| 0860 |  7e 2f 6c 65 64 67 65 72 2f 64 6f 63 2f 73 61 6d    70 6c 65 2e 64 61 74 22 0a 20 20 22 4c 6f 63 61  | ~/ledger/doc/sample.dat"..."Loca | 
| 0880 |  74 69 6f 6e 20 66 6f 72 20 73 61 6d 70 6c 65 20    64 61 74 61 20 74 6f 20 62 65 20 75 73 65 64 20  | tion.for.sample.data.to.be.used. | 
| 08a0 |  69 6e 20 74 65 78 69 20 74 65 73 74 73 2e 22 0a    20 20 3a 74 79 70 65 20 27 66 69 6c 65 0a 20 20  | in.texi.tests."...:type.'file... | 
| 08c0 |  3a 67 72 6f 75 70 20 27 6c 65 64 67 65 72 2d 74    65 78 69 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d  | :group.'ledger-texi)..(defcustom | 
| 08e0 |  20 6c 65 64 67 65 72 2d 74 65 78 69 2d 6e 6f 72    6d 61 6c 69 7a 61 74 69 6f 6e 2d 61 72 67 73 20  | .ledger-texi-normalization-args. | 
| 0900 |  22 2d 2d 61 72 67 73 2d 6f 6e 6c 79 20 2d 2d 63    6f 6c 75 6d 6e 73 20 38 30 22 0a 20 20 22 54 65  | "--args-only.--columns.80"..."Te | 
| 0920 |  78 69 20 6e 6f 72 6d 61 6c 69 7a 61 74 69 6f 6e    20 66 6f 72 20 70 72 6f 64 75 63 69 6e 67 20 6c  | xi.normalization.for.producing.l | 
| 0940 |  65 64 67 65 72 20 6f 75 74 70 75 74 2e 22 0a 20    20 3a 74 79 70 65 20 27 73 74 72 69 6e 67 0a 20  | edger.output."...:type.'string.. | 
| 0960 |  20 3a 67 72 6f 75 70 20 27 6c 65 64 67 65 72 2d    74 65 78 69 29 0a 0a 28 64 65 66 75 6e 20 6c 65  | .:group.'ledger-texi)..(defun.le | 
| 0980 |  64 67 65 72 2d 75 70 64 61 74 65 2d 74 65 73 74    20 28 29 0a 20 20 28 69 6e 74 65 72 61 63 74 69  | dger-update-test.()...(interacti | 
| 09a0 |  76 65 29 0a 20 20 28 67 6f 74 6f 2d 63 68 61 72    20 28 70 6f 69 6e 74 2d 6d 69 6e 29 29 0a 20 20  | ve)...(goto-char.(point-min))... | 
| 09c0 |  28 6c 65 74 20 28 28 63 6f 6d 6d 61 6e 64 20 28    62 75 66 66 65 72 2d 73 75 62 73 74 72 69 6e 67  | (let.((command.(buffer-substring | 
| 09e0 |  20 28 70 6f 69 6e 74 2d 6d 69 6e 29 20 28 6c 69    6e 65 2d 65 6e 64 2d 70 6f 73 69 74 69 6f 6e 29  | .(point-min).(line-end-position) | 
| 0a00 |  29 29 29 0a 20 20 20 20 28 72 65 2d 73 65 61 72    63 68 2d 66 6f 72 77 61 72 64 20 22 5e 3c 3c 3c  | ))).....(re-search-forward."^<<< | 
| 0a20 |  5c 6e 22 29 0a 20 20 20 20 28 6c 65 74 20 28 28    62 65 67 20 28 70 6f 69 6e 74 29 29 20 65 6e 64  | \n").....(let.((beg.(point)).end | 
| 0a40 |  29 0a 20 20 20 20 20 20 28 72 65 2d 73 65 61 72    63 68 2d 66 6f 72 77 61 72 64 20 22 5e 3e 3e 3e  | ).......(re-search-forward."^>>> | 
| 0a60 |  22 29 0a 20 20 20 20 20 20 28 73 65 74 71 20 65    6e 64 20 28 6d 61 74 63 68 2d 62 65 67 69 6e 6e  | ").......(setq.end.(match-beginn | 
| 0a80 |  69 6e 67 20 30 29 29 0a 20 20 20 20 20 20 28 66    6f 72 77 61 72 64 2d 6c 69 6e 65 20 31 29 0a 20  | ing.0)).......(forward-line.1).. | 
| 0aa0 |  20 20 20 20 20 28 6c 65 74 20 28 28 6f 75 74 70    75 74 2d 62 65 67 20 28 70 6f 69 6e 74 29 29 29  | .....(let.((output-beg.(point))) | 
| 0ac0 |  0a 20 20 20 20 20 20 20 20 28 72 65 2d 73 65 61    72 63 68 2d 66 6f 72 77 61 72 64 20 22 5e 3e 3e  | .........(re-search-forward."^>> | 
| 0ae0 |  3e 22 29 0a 20 20 20 20 20 20 20 20 28 67 6f 74    6f 2d 63 68 61 72 20 28 6d 61 74 63 68 2d 62 65  | >").........(goto-char.(match-be | 
| 0b00 |  67 69 6e 6e 69 6e 67 20 30 29 29 0a 20 20 20 20    20 20 20 20 28 64 65 6c 65 74 65 2d 72 65 67 69  | ginning.0)).........(delete-regi | 
| 0b20 |  6f 6e 20 6f 75 74 70 75 74 2d 62 65 67 20 28 70    6f 69 6e 74 29 29 0a 20 20 20 20 20 20 20 20 28  | on.output-beg.(point)).........( | 
| 0b40 |  61 70 70 6c 79 20 23 27 63 61 6c 6c 2d 70 72 6f    63 65 73 73 2d 72 65 67 69 6f 6e 0a 20 20 20 20  | apply.#'call-process-region..... | 
| 0b60 |  20 20 20 20 20 20 20 20 20 20 20 62 65 67 20 65    6e 64 20 28 65 78 70 61 6e 64 2d 66 69 6c 65 2d  | ...........beg.end.(expand-file- | 
| 0b80 |  6e 61 6d 65 20 22 7e 2f 50 72 6f 64 75 63 74 73    2f 6c 65 64 67 65 72 2f 64 65 62 75 67 2f 6c 65  | name."~/Products/ledger/debug/le | 
| 0ba0 |  64 67 65 72 22 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 6e 69 6c 20 74 20 6e 69 6c 0a  | dger")................nil.t.nil. | 
| 0bc0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22    2d 66 22 20 22 2d 22 20 22 2d 2d 61 72 67 73 2d  | ..............."-f"."-"."--args- | 
| 0be0 |  6f 6e 6c 79 22 20 22 2d 2d 63 6f 6c 75 6d 6e 73    3d 38 30 22 20 22 2d 2d 6e 6f 2d 63 6f 6c 6f 72  | only"."--columns=80"."--no-color | 
| 0c00 |  22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 73 70 6c 69 74 2d 73 74 72 69 6e 67 20 63  | "................(split-string.c | 
| 0c20 |  6f 6d 6d 61 6e 64 20 22 20 22 29 29 29 29 29 29    0a 0a 28 64 65 66 75 6e 20 6c 65 64 67 65 72 2d  | ommand."."))))))..(defun.ledger- | 
| 0c40 |  74 65 78 69 2d 77 72 69 74 65 2d 74 65 73 74 20    28 6e 61 6d 65 20 63 6f 6d 6d 61 6e 64 20 69 6e  | texi-write-test.(name.command.in | 
| 0c60 |  70 75 74 20 6f 75 74 70 75 74 20 26 6f 70 74 69    6f 6e 61 6c 20 63 61 74 65 67 6f 72 79 29 0a 20  | put.output.&optional.category).. | 
| 0c80 |  20 28 6c 65 74 20 28 28 62 75 66 20 28 63 75 72    72 65 6e 74 2d 62 75 66 66 65 72 29 29 29 0a 20  | .(let.((buf.(current-buffer))).. | 
| 0ca0 |  20 20 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74    2d 62 75 66 66 65 72 20 28 66 69 6e 64 2d 66 69  | ...(with-current-buffer.(find-fi | 
| 0cc0 |  6c 65 2d 6e 6f 73 65 6c 65 63 74 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | le-noselect..................... | 
| 0ce0 |  20 20 20 20 20 20 28 65 78 70 61 6e 64 2d 66 69    6c 65 2d 6e 61 6d 65 20 28 63 6f 6e 63 61 74 20  | ......(expand-file-name.(concat. | 
| 0d00 |  6e 61 6d 65 20 22 2e 74 65 73 74 22 29 20 63 61    74 65 67 6f 72 79 29 29 0a 20 20 20 20 20 20 28  | name.".test").category)).......( | 
| 0d20 |  65 72 61 73 65 2d 62 75 66 66 65 72 29 0a 20 20    20 20 20 20 28 6c 65 74 20 28 28 63 61 73 65 2d  | erase-buffer).......(let.((case- | 
| 0d40 |  66 6f 6c 64 2d 73 65 61 72 63 68 20 6e 69 6c 29    29 0a 20 20 20 20 20 20 20 20 28 69 66 20 28 73  | fold-search.nil)).........(if.(s | 
| 0d60 |  74 72 69 6e 67 2d 6d 61 74 63 68 20 22 5c 5c 24    4c 45 44 47 45 52 5c 5c 73 2d 2b 22 20 63 6f 6d  | tring-match."\\$LEDGER\\s-+".com | 
| 0d80 |  6d 61 6e 64 29 0a 20 20 20 20 20 20 20 20 20 20    20 20 28 73 65 74 71 20 63 6f 6d 6d 61 6e 64 20  | mand).............(setq.command. | 
| 0da0 |  28 72 65 70 6c 61 63 65 2d 6d 61 74 63 68 20 22    22 20 74 20 74 20 63 6f 6d 6d 61 6e 64 29 29 29  | (replace-match."".t.t.command))) | 
| 0dc0 |  0a 20 20 20 20 20 20 20 20 28 69 66 20 28 73 74    72 69 6e 67 2d 6d 61 74 63 68 20 22 20 2d 66 20  | .........(if.(string-match.".-f. | 
| 0de0 |  5c 5c 24 5c 5c 28 5b 2d 61 2d 7a 5d 2b 5c 5c 29    22 20 63 6f 6d 6d 61 6e 64 29 0a 20 20 20 20 20  | \\$\\([-a-z]+\\)".command)...... | 
| 0e00 |  20 20 20 20 20 20 20 28 73 65 74 71 20 63 6f 6d    6d 61 6e 64 20 28 72 65 70 6c 61 63 65 2d 6d 61  | .......(setq.command.(replace-ma | 
| 0e20 |  74 63 68 20 22 22 20 74 20 74 20 63 6f 6d 6d 61    6e 64 29 29 29 29 0a 20 20 20 20 20 20 28 69 6e  | tch."".t.t.command)))).......(in | 
| 0e40 |  73 65 72 74 20 63 6f 6d 6d 61 6e 64 20 3f 5c 6e    29 0a 20 20 20 20 20 20 28 69 6e 73 65 72 74 20  | sert.command.?\n).......(insert. | 
| 0e60 |  22 3c 3c 3c 22 20 3f 5c 6e 29 0a 20 20 20 20 20    20 28 69 6e 73 65 72 74 20 69 6e 70 75 74 29 0a  | "<<<".?\n).......(insert.input). | 
| 0e80 |  20 20 20 20 20 20 28 69 6e 73 65 72 74 20 22 3e    3e 3e 31 22 20 3f 5c 6e 29 0a 20 20 20 20 20 20  | ......(insert.">>>1".?\n)....... | 
| 0ea0 |  28 69 6e 73 65 72 74 20 6f 75 74 70 75 74 29 0a    20 20 20 20 20 20 28 69 6e 73 65 72 74 20 22 3e  | (insert.output).......(insert."> | 
| 0ec0 |  3e 3e 32 22 20 3f 5c 6e 29 0a 20 20 20 20 20 20    28 69 6e 73 65 72 74 20 22 3d 3d 3d 20 30 22 20  | >>2".?\n).......(insert."===.0". | 
| 0ee0 |  3f 5c 6e 29 0a 20 20 20 20 20 20 28 73 61 76 65    2d 62 75 66 66 65 72 29 0a 20 20 20 20 20 20 28  | ?\n).......(save-buffer).......( | 
| 0f00 |  75 6e 6c 65 73 73 20 28 65 71 20 62 75 66 20 28    63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 29 29  | unless.(eq.buf.(current-buffer)) | 
| 0f20 |  0a 20 20 20 20 20 20 20 20 28 6b 69 6c 6c 2d 62    75 66 66 65 72 20 28 63 75 72 72 65 6e 74 2d 62  | .........(kill-buffer.(current-b | 
| 0f40 |  75 66 66 65 72 29 29 29 29 29 29 0a 0a 28 64 65    66 75 6e 20 6c 65 64 67 65 72 2d 74 65 78 69 2d  | uffer))))))..(defun.ledger-texi- | 
| 0f60 |  75 70 64 61 74 65 2d 74 65 73 74 20 28 29 0a 20    20 28 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20  | update-test.()...(interactive).. | 
| 0f80 |  20 28 6c 65 74 20 28 28 64 65 74 61 69 6c 73 20    28 6c 65 64 67 65 72 2d 74 65 78 69 2d 74 65 73  | .(let.((details.(ledger-texi-tes | 
| 0fa0 |  74 2d 64 65 74 61 69 6c 73 29 29 0a 20 20 20 20    20 20 20 20 28 6e 61 6d 65 20 28 66 69 6c 65 2d  | t-details)).........(name.(file- | 
| 0fc0 |  6e 61 6d 65 2d 73 61 6e 73 2d 65 78 74 65 6e 73    69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20  | name-sans-extension............. | 
| 0fe0 |  20 20 20 28 66 69 6c 65 2d 6e 61 6d 65 2d 6e 6f    6e 64 69 72 65 63 74 6f 72 79 20 28 62 75 66 66  | ...(file-name-nondirectory.(buff | 
| 1000 |  65 72 2d 66 69 6c 65 2d 6e 61 6d 65 29 29 29 29    29 0a 20 20 20 20 28 6c 65 64 67 65 72 2d 74 65  | er-file-name))))).....(ledger-te | 
| 1020 |  78 69 2d 77 72 69 74 65 2d 74 65 73 74 0a 20 20    20 20 20 6e 61 6d 65 20 28 6e 74 68 20 30 20 64  | xi-write-test......name.(nth.0.d | 
| 1040 |  65 74 61 69 6c 73 29 0a 20 20 20 20 20 28 6e 74    68 20 31 20 64 65 74 61 69 6c 73 29 0a 20 20 20  | etails)......(nth.1.details).... | 
| 1060 |  20 20 28 6c 65 64 67 65 72 2d 74 65 78 69 2d 69    6e 76 6f 6b 65 2d 63 6f 6d 6d 61 6e 64 0a 20 20  | ..(ledger-texi-invoke-command... | 
| 1080 |  20 20 20 20 28 6c 65 64 67 65 72 2d 74 65 78 69    2d 65 78 70 61 6e 64 2d 63 6f 6d 6d 61 6e 64 0a  | ....(ledger-texi-expand-command. | 
| 10a0 |  20 20 20 20 20 20 20 28 6e 74 68 20 30 20 64 65    74 61 69 6c 73 29 0a 20 20 20 20 20 20 20 28 6c  | .......(nth.0.details)........(l | 
| 10c0 |  65 64 67 65 72 2d 74 65 78 69 2d 77 72 69 74 65    2d 74 65 73 74 2d 64 61 74 61 20 6e 61 6d 65 20  | edger-texi-write-test-data.name. | 
| 10e0 |  28 6e 74 68 20 31 20 64 65 74 61 69 6c 73 29 29    29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6c 65  | (nth.1.details)))))))..(defun.le | 
| 1100 |  64 67 65 72 2d 74 65 78 69 2d 74 65 73 74 2d 64    65 74 61 69 6c 73 20 28 29 0a 20 20 28 67 6f 74  | dger-texi-test-details.()...(got | 
| 1120 |  6f 2d 63 68 61 72 20 28 70 6f 69 6e 74 2d 6d 69    6e 29 29 0a 20 20 28 6c 65 74 20 28 28 63 6f 6d  | o-char.(point-min))...(let.((com | 
| 1140 |  6d 61 6e 64 20 28 62 75 66 66 65 72 2d 73 75 62    73 74 72 69 6e 67 20 28 70 6f 69 6e 74 29 20 28  | mand.(buffer-substring.(point).( | 
| 1160 |  6c 69 6e 65 2d 65 6e 64 2d 70 6f 73 69 74 69 6f    6e 29 29 29 0a 20 20 20 20 20 20 20 20 69 6e 70  | line-end-position))).........inp | 
| 1180 |  75 74 20 6f 75 74 70 75 74 29 0a 20 20 20 20 28    72 65 2d 73 65 61 72 63 68 2d 66 6f 72 77 61 72  | ut.output).....(re-search-forwar | 
| 11a0 |  64 20 22 5e 3c 3c 3c 22 29 0a 20 20 20 20 28 6c    65 74 20 28 28 69 6e 70 75 74 2d 62 65 67 20 28  | d."^<<<").....(let.((input-beg.( | 
| 11c0 |  31 2b 20 28 6d 61 74 63 68 2d 65 6e 64 20 30 29    29 29 29 0a 20 20 20 20 20 20 28 72 65 2d 73 65  | 1+.(match-end.0)))).......(re-se | 
| 11e0 |  61 72 63 68 2d 66 6f 72 77 61 72 64 20 22 5e 3e    3e 3e 31 22 29 0a 20 20 20 20 20 20 28 6c 65 74  | arch-forward."^>>>1").......(let | 
| 1200 |  20 28 28 6f 75 74 70 75 74 2d 62 65 67 20 28 31    2b 20 28 6d 61 74 63 68 2d 65 6e 64 20 30 29 29  | .((output-beg.(1+.(match-end.0)) | 
| 1220 |  29 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 71    20 69 6e 70 75 74 20 28 62 75 66 66 65 72 2d 73  | )).........(setq.input.(buffer-s | 
| 1240 |  75 62 73 74 72 69 6e 67 20 69 6e 70 75 74 2d 62    65 67 20 28 6d 61 74 63 68 2d 62 65 67 69 6e 6e  | ubstring.input-beg.(match-beginn | 
| 1260 |  69 6e 67 20 30 29 29 29 0a 20 20 20 20 20 20 20    20 28 72 65 2d 73 65 61 72 63 68 2d 66 6f 72 77  | ing.0))).........(re-search-forw | 
| 1280 |  61 72 64 20 22 5e 3e 3e 3e 32 22 29 0a 20 20 20    20 20 20 20 20 28 73 65 74 71 20 6f 75 74 70 75  | ard."^>>>2").........(setq.outpu | 
| 12a0 |  74 20 28 62 75 66 66 65 72 2d 73 75 62 73 74 72    69 6e 67 20 6f 75 74 70 75 74 2d 62 65 67 20 28  | t.(buffer-substring.output-beg.( | 
| 12c0 |  6d 61 74 63 68 2d 62 65 67 69 6e 6e 69 6e 67 20    30 29 29 29 0a 20 20 20 20 20 20 20 20 28 6c 69  | match-beginning.0))).........(li | 
| 12e0 |  73 74 20 63 6f 6d 6d 61 6e 64 20 69 6e 70 75 74    20 6f 75 74 70 75 74 29 29 29 29 29 0a 0a 28 64  | st.command.input.output)))))..(d | 
| 1300 |  65 66 75 6e 20 6c 65 64 67 65 72 2d 74 65 78 69    2d 65 78 70 61 6e 64 2d 63 6f 6d 6d 61 6e 64 20  | efun.ledger-texi-expand-command. | 
| 1320 |  28 63 6f 6d 6d 61 6e 64 20 64 61 74 61 2d 66 69    6c 65 29 0a 20 20 28 69 66 20 28 73 74 72 69 6e  | (command.data-file)...(if.(strin | 
| 1340 |  67 2d 6d 61 74 63 68 20 22 5c 5c 24 4c 45 44 47    45 52 22 20 63 6f 6d 6d 61 6e 64 29 0a 20 20 20  | g-match."\\$LEDGER".command).... | 
| 1360 |  20 20 20 28 72 65 70 6c 61 63 65 2d 6d 61 74 63    68 20 28 66 6f 72 6d 61 74 20 22 25 73 20 2d 66  | ...(replace-match.(format."%s.-f | 
| 1380 |  20 5c 22 25 73 5c 22 20 25 73 22 20 6c 65 64 67    65 72 2d 62 69 6e 61 72 79 2d 70 61 74 68 0a 20  | .\"%s\".%s".ledger-binary-path.. | 
| 13a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 64 61 74 61  | ............................data | 
| 13c0 |  2d 66 69 6c 65 20 6c 65 64 67 65 72 2d 74 65 78    69 2d 6e 6f 72 6d 61 6c 69 7a 61 74 69 6f 6e 2d  | -file.ledger-texi-normalization- | 
| 13e0 |  61 72 67 73 29 20 74 20 74 20 63 6f 6d 6d 61 6e    64 29 0a 20 20 20 20 28 63 6f 6e 63 61 74 20 28  | args).t.t.command).....(concat.( | 
| 1400 |  66 6f 72 6d 61 74 20 22 25 73 20 2d 66 20 5c 22    25 73 5c 22 20 25 73 20 22 20 6c 65 64 67 65 72  | format."%s.-f.\"%s\".%s.".ledger | 
| 1420 |  2d 62 69 6e 61 72 79 2d 70 61 74 68 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | -binary-path.................... | 
| 1440 |  20 64 61 74 61 2d 66 69 6c 65 20 6c 65 64 67 65    72 2d 74 65 78 69 2d 6e 6f 72 6d 61 6c 69 7a 61  | .data-file.ledger-texi-normaliza | 
| 1460 |  74 69 6f 6e 2d 61 72 67 73 29 20 63 6f 6d 6d 61    6e 64 29 29 29 0a 0a 28 64 65 66 75 6e 20 6c 65  | tion-args).command)))..(defun.le | 
| 1480 |  64 67 65 72 2d 74 65 78 69 2d 69 6e 76 6f 6b 65    2d 63 6f 6d 6d 61 6e 64 20 28 63 6f 6d 6d 61 6e  | dger-texi-invoke-command.(comman | 
| 14a0 |  64 29 0a 20 20 28 77 69 74 68 2d 74 65 6d 70 2d    62 75 66 66 65 72 20 28 73 68 65 6c 6c 2d 63 6f  | d)...(with-temp-buffer.(shell-co | 
| 14c0 |  6d 6d 61 6e 64 20 63 6f 6d 6d 61 6e 64 20 74 20    28 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 29  | mmand.command.t.(current-buffer) | 
| 14e0 |  29 0a 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 3d 20 28 70 6f  | ).....................(if.(=.(po | 
| 1500 |  69 6e 74 2d 6d 69 6e 29 20 28 70 6f 69 6e 74 2d    6d 61 78 29 29 0a 20 20 20 20 20 20 20 20 20 20  | int-min).(point-max))........... | 
| 1520 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70    72 6f 67 6e 0a 20 20 20 20 20 20 20 20 20 20 20  | ..............(progn............ | 
| 1540 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    70 75 73 68 2d 6d 61 72 6b 20 6e 69 6c 20 74 29  | ...............(push-mark.nil.t) | 
| 1560 |  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 6d 65 73 73  | ...........................(mess | 
| 1580 |  61 67 65 20 22 43 6f 6d 6d 61 6e 64 20 27 25 73    27 20 79 69 65 6c 64 65 64 20 6e 6f 20 72 65 73  | age."Command.'%s'.yielded.no.res | 
| 15a0 |  75 6c 74 20 61 74 20 25 64 22 20 63 6f 6d 6d 61    6e 64 20 28 70 6f 69 6e 74 29 29 0a 20 20 20 20  | ult.at.%d".command.(point))..... | 
| 15c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 64 69 6e 67 29 29 0a 20 20  | ......................(ding))... | 
| 15e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 28 62 75 66 66 65 72 2d 73 74 72 69  | ....................(buffer-stri | 
| 1600 |  6e 67 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6c    65 64 67 65 72 2d 74 65 78 69 2d 77 72 69 74 65  | ng))))..(defun.ledger-texi-write | 
| 1620 |  2d 74 65 73 74 2d 64 61 74 61 20 28 6e 61 6d 65    20 69 6e 70 75 74 29 0a 20 20 28 6c 65 74 20 28  | -test-data.(name.input)...(let.( | 
| 1640 |  28 70 61 74 68 20 28 65 78 70 61 6e 64 2d 66 69    6c 65 2d 6e 61 6d 65 20 6e 61 6d 65 20 74 65 6d  | (path.(expand-file-name.name.tem | 
| 1660 |  70 6f 72 61 72 79 2d 66 69 6c 65 2d 64 69 72 65    63 74 6f 72 79 29 29 29 0a 20 20 20 20 28 77 69  | porary-file-directory))).....(wi | 
| 1680 |  74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65    72 20 28 66 69 6e 64 2d 66 69 6c 65 2d 6e 6f 73  | th-current-buffer.(find-file-nos | 
| 16a0 |  65 6c 65 63 74 20 70 61 74 68 29 0a 20 20 20 20    20 20 28 65 72 61 73 65 2d 62 75 66 66 65 72 29  | elect.path).......(erase-buffer) | 
| 16c0 |  0a 20 20 20 20 20 20 28 69 6e 73 65 72 74 20 69    6e 70 75 74 29 0a 20 20 20 20 20 20 28 73 61 76  | .......(insert.input).......(sav | 
| 16e0 |  65 2d 62 75 66 66 65 72 29 29 0a 20 20 20 20 70    61 74 68 29 29 0a 0a 28 64 65 66 75 6e 20 6c 65  | e-buffer)).....path))..(defun.le | 
| 1700 |  64 67 65 72 2d 74 65 78 69 2d 75 70 64 61 74 65    2d 65 78 61 6d 70 6c 65 73 20 28 29 0a 20 20 28  | dger-texi-update-examples.()...( | 
| 1720 |  69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20 28    73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e 0a 20  | interactive)...(save-excursion.. | 
| 1740 |  20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 70    6f 69 6e 74 2d 6d 69 6e 29 29 0a 20 20 20 20 28  | ...(goto-char.(point-min)).....( | 
| 1760 |  77 68 69 6c 65 20 28 72 65 2d 73 65 61 72 63 68    2d 66 6f 72 77 61 72 64 20 22 5e 40 63 20 5c 5c  | while.(re-search-forward."^@c.\\ | 
| 1780 |  28 5c 5c 28 3f 3a 73 6d 5c 5c 29 3f 65 78 5c 5c    29 20 5c 5c 28 5c 5c 53 2d 2b 5c 5c 29 3a 20 5c  | (\\(?:sm\\)?ex\\).\\(\\S-+\\):.\ | 
| 17a0 |  5c 28 2e 2a 5c 5c 29 22 20 6e 69 6c 20 74 29 0a    20 20 20 20 20 20 28 6c 65 74 20 28 28 73 65 63  | \(.*\\)".nil.t).......(let.((sec | 
| 17c0 |  74 69 6f 6e 20 28 6d 61 74 63 68 2d 73 74 72 69    6e 67 20 31 29 29 0a 20 20 20 20 20 20 20 20 20  | tion.(match-string.1)).......... | 
| 17e0 |  20 20 20 28 65 78 61 6d 70 6c 65 2d 6e 61 6d 65    20 28 6d 61 74 63 68 2d 73 74 72 69 6e 67 20 32  | ...(example-name.(match-string.2 | 
| 1800 |  29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28    63 6f 6d 6d 61 6e 64 20 28 6d 61 74 63 68 2d 73  | )).............(command.(match-s | 
| 1820 |  74 72 69 6e 67 20 33 29 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 28 64 61 74 61 2d 66 69 6c 65  | tring.3)).............(data-file | 
| 1840 |  20 6c 65 64 67 65 72 2d 74 65 78 69 2d 73 61 6d    70 6c 65 2d 64 6f 63 2d 70 61 74 68 29 29 0a 20  | .ledger-texi-sample-doc-path)).. | 
| 1860 |  20 20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68 61    72 20 28 6d 61 74 63 68 2d 65 6e 64 20 30 29 29  | .......(goto-char.(match-end.0)) | 
| 1880 |  0a 20 20 20 20 20 20 20 20 28 66 6f 72 77 61 72    64 2d 6c 69 6e 65 29 0a 20 20 20 20 20 20 20 20  | .........(forward-line)......... | 
| 18a0 |  28 77 68 65 6e 20 28 6c 6f 6f 6b 69 6e 67 2d 61    74 20 22 40 5c 5c 28 5c 5c 28 3f 3a 73 6d 61 6c  | (when.(looking-at."@\\(\\(?:smal | 
| 18c0 |  6c 5c 5c 29 3f 65 78 61 6d 70 6c 65 5c 5c 29 22    29 0a 20 20 20 20 20 20 20 20 20 20 28 6c 65 74  | l\\)?example\\)")...........(let | 
| 18e0 |  20 28 28 62 65 67 20 28 70 6f 69 6e 74 29 29 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 28 72 65  | .((beg.(point))).............(re | 
| 1900 |  2d 73 65 61 72 63 68 2d 66 6f 72 77 61 72 64 20    22 5e 40 65 6e 64 20 5c 5c 28 5c 5c 28 3f 3a 73  | -search-forward."^@end.\\(\\(?:s | 
| 1920 |  6d 61 6c 6c 5c 5c 29 3f 65 78 61 6d 70 6c 65 5c    5c 29 22 29 0a 20 20 20 20 20 20 20 20 20 20 20  | mall\\)?example\\)")............ | 
| 1940 |  20 28 64 65 6c 65 74 65 2d 72 65 67 69 6f 6e 20    62 65 67 20 28 31 2b 20 28 70 6f 69 6e 74 29 29  | .(delete-region.beg.(1+.(point)) | 
| 1960 |  29 29 29 0a 0a 20 20 20 20 20 20 20 20 28 77 68    65 6e 20 28 6c 65 74 20 28 28 63 61 73 65 2d 66  | )))..........(when.(let.((case-f | 
| 1980 |  6f 6c 64 2d 73 65 61 72 63 68 20 6e 69 6c 29 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | old-search.nil))................ | 
| 19a0 |  20 28 73 74 72 69 6e 67 2d 6d 61 74 63 68 20 22    20 2d 66 20 5c 5c 24 5c 5c 28 5b 2d 61 2d 7a 5d  | .(string-match.".-f.\\$\\([-a-z] | 
| 19c0 |  2b 5c 5c 29 22 20 63 6f 6d 6d 61 6e 64 29 29 0a    20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28  | +\\)".command))...........(let.( | 
| 19e0 |  28 6c 61 62 65 6c 20 28 6d 61 74 63 68 2d 73 74    72 69 6e 67 20 31 20 63 6f 6d 6d 61 6e 64 29 29  | (label.(match-string.1.command)) | 
| 1a00 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 73    65 74 71 20 63 6f 6d 6d 61 6e 64 20 28 72 65 70  | ).............(setq.command.(rep | 
| 1a20 |  6c 61 63 65 2d 6d 61 74 63 68 20 22 22 20 74 20    74 20 63 6f 6d 6d 61 6e 64 29 29 0a 20 20 20 20  | lace-match."".t.t.command))..... | 
| 1a40 |  20 20 20 20 20 20 20 20 28 73 61 76 65 2d 65 78    63 75 72 73 69 6f 6e 0a 20 20 20 20 20 20 20 20  | ........(save-excursion......... | 
| 1a60 |  20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72    20 28 70 6f 69 6e 74 2d 6d 69 6e 29 29 0a 20 20  | ......(goto-char.(point-min))... | 
| 1a80 |  20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 61    72 63 68 2d 66 6f 72 77 61 72 64 20 28 66 6f 72  | ............(search-forward.(for | 
| 1aa0 |  6d 61 74 20 22 40 63 20 64 61 74 61 3a 20 25 73    22 20 6c 61 62 65 6c 29 29 0a 20 20 20 20 20 20  | mat."@c.data:.%s".label))....... | 
| 1ac0 |  20 20 20 20 20 20 20 20 28 72 65 2d 73 65 61 72    63 68 2d 66 6f 72 77 61 72 64 20 22 40 5c 5c 28  | ........(re-search-forward."@\\( | 
| 1ae0 |  5c 5c 28 3f 3a 73 6d 61 6c 6c 5c 5c 29 3f 65 78    61 6d 70 6c 65 5c 5c 29 22 29 0a 20 20 20 20 20  | \\(?:small\\)?example\\)")...... | 
| 1b00 |  20 20 20 20 20 20 20 20 20 28 66 6f 72 77 61 72    64 2d 6c 69 6e 65 29 0a 20 20 20 20 20 20 20 20  | .........(forward-line)......... | 
| 1b20 |  20 20 20 20 20 20 28 6c 65 74 20 28 28 62 65 67    20 28 70 6f 69 6e 74 29 29 29 0a 20 20 20 20 20  | ......(let.((beg.(point)))...... | 
| 1b40 |  20 20 20 20 20 20 20 20 20 20 20 28 72 65 2d 73    65 61 72 63 68 2d 66 6f 72 77 61 72 64 20 22 40  | ...........(re-search-forward."@ | 
| 1b60 |  65 6e 64 20 5c 5c 28 5c 5c 28 3f 3a 73 6d 61 6c    6c 5c 5c 29 3f 65 78 61 6d 70 6c 65 5c 5c 29 22  | end.\\(\\(?:small\\)?example\\)" | 
| 1b80 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 73 65 74 71 20 64 61 74 61 2d 66 69 6c  | ).................(setq.data-fil | 
| 1ba0 |  65 20 28 6c 65 64 67 65 72 2d 74 65 78 69 2d 77    72 69 74 65 2d 74 65 73 74 2d 64 61 74 61 0a 20  | e.(ledger-texi-write-test-data.. | 
| 1bc0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 1be0 |  28 66 6f 72 6d 61 74 20 22 25 73 2e 64 61 74 22    20 6c 61 62 65 6c 29 0a 20 20 20 20 20 20 20 20  | (format."%s.dat".label)......... | 
| 1c00 |  20 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 75 66 66 65 72  | .........................(buffer | 
| 1c20 |  2d 73 75 62 73 74 72 69 6e 67 2d 6e 6f 2d 70 72    6f 70 65 72 74 69 65 73 0a 20 20 20 20 20 20 20  | -substring-no-properties........ | 
| 1c40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 62 65 67 20 28  | ...........................beg.( | 
| 1c60 |  6d 61 74 63 68 2d 62 65 67 69 6e 6e 69 6e 67 20    30 29 29 29 29 29 29 29 29 0a 0a 20 20 20 20 20  | match-beginning.0))))))))....... | 
| 1c80 |  20 20 20 28 6c 65 74 20 28 28 73 65 63 74 69 6f    6e 2d 6e 61 6d 65 20 28 69 66 20 28 73 74 72 69  | ...(let.((section-name.(if.(stri | 
| 1ca0 |  6e 67 3d 20 73 65 63 74 69 6f 6e 20 22 73 6d 65    78 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | ng=.section."smex")............. | 
| 1cc0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 22 73 6d 61 6c 6c 65 78 61 6d 70 6c  | ...................."smallexampl | 
| 1ce0 |  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 20 20 20 20 20  | e".............................. | 
| 1d00 |  20 22 65 78 61 6d 70 6c 65 22 29 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 6f 75 74 70  | ."example"))...............(outp | 
| 1d20 |  75 74 20 28 6c 65 64 67 65 72 2d 74 65 78 69 2d    69 6e 76 6f 6b 65 2d 63 6f 6d 6d 61 6e 64 0a 20  | ut.(ledger-texi-invoke-command.. | 
| 1d40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 6c 65 64 67 65 72 2d 74 65  | ......................(ledger-te | 
| 1d60 |  78 69 2d 65 78 70 61 6e 64 2d 63 6f 6d 6d 61 6e    64 20 63 6f 6d 6d 61 6e 64 20 64 61 74 61 2d 66  | xi-expand-command.command.data-f | 
| 1d80 |  69 6c 65 29 29 29 29 0a 20 20 20 20 20 20 20 20    20 20 28 69 6e 73 65 72 74 20 22 40 22 20 73 65  | ile))))...........(insert."@".se | 
| 1da0 |  63 74 69 6f 6e 2d 6e 61 6d 65 20 3f 5c 6e 20 6f    75 74 70 75 74 0a 20 20 20 20 20 20 20 20 20 20  | ction-name.?\n.output........... | 
| 1dc0 |  20 20 20 20 20 20 20 20 22 40 65 6e 64 20 22 20    73 65 63 74 69 6f 6e 2d 6e 61 6d 65 20 3f 5c 6e  | ........"@end.".section-name.?\n | 
| 1de0 |  29 29 0a 0a 20 20 20 20 20 20 20 20 3b 3b 20 55    70 64 61 74 65 20 74 68 65 20 72 65 67 72 65 73  | ))..........;;.Update.the.regres | 
| 1e00 |  73 69 6f 6e 20 74 65 73 74 20 61 73 73 6f 63 69    61 74 65 64 20 77 69 74 68 20 74 68 69 73 20 65  | sion.test.associated.with.this.e | 
| 1e20 |  78 61 6d 70 6c 65 0a 20 20 20 20 20 20 20 20 28    6c 65 64 67 65 72 2d 74 65 78 69 2d 77 72 69 74  | xample.........(ledger-texi-writ | 
| 1e40 |  65 2d 74 65 73 74 20 65 78 61 6d 70 6c 65 2d 6e    61 6d 65 20 63 6f 6d 6d 61 6e 64 20 6e 69 6c 20  | e-test.example-name.command.nil. | 
| 1e60 |  6e 69 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | nil............................. | 
| 1e80 |  20 20 20 20 22 2e 2e 2f 74 65 73 74 2f 6d 61 6e    75 61 6c 22 29 29 29 29 29 0a 0a 28 70 72 6f 76  | ...."../test/manual")))))..(prov | 
| 1ea0 |  69 64 65 20 27 6c 65 64 67 65 72 2d 74 65 78 69    29 0a 0a 3b 3b 3b 20 6c 65 64 67 65 72 2d 74 65  | ide.'ledger-texi)..;;;.ledger-te | 
| 1ec0 |  78 69 2e 65 6c 20 65 6e 64 73 20 68 65 72 65 0a    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | xi.el.ends.here................. | 
| 1ee0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1f00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1f20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1f40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1f60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1f80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1fa0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1fc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1fe0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 2000 |  6c 65 64 67 65 72 2d 6d 6f 64 65 2d 32 30 32 34    30 34 31 36 2e 34 31 36 2f 6c 65 64 67 65 72 2d  | ledger-mode-20240416.416/ledger- | 
| 2020 |  63 68 65 63 6b 2e 65 6c 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | check.el........................ | 
| 2040 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 2060 |  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 | 
| 2080 |  30 30 31 32 33 32 32 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 35 37 35 31 00 20 30 00 00 00  | 0012322.00000000000.015751..0... | 
| 20a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 20c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 20e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 2100 |  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................... | 
| 2120 |  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................... | 
| 2140 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 2160 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 2180 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 21a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 21c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 21e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 2200 |  3b 3b 3b 20 6c 65 64 67 65 72 2d 63 68 65 63 6b    2e 65 6c 20 2d 2d 2d 20 48 65 6c 70 65 72 20 63  | ;;;.ledger-check.el.---.Helper.c | 
| 2220 |  6f 64 65 20 66 6f 72 20 75 73 65 20 77 69 74 68    20 74 68 65 20 22 6c 65 64 67 65 72 22 20 63 6f  | ode.for.use.with.the."ledger".co | 
| 2240 |  6d 6d 61 6e 64 2d 6c 69 6e 65 20 74 6f 6f 6c 20    20 2d 2a 2d 20 6c 65 78 69 63 61 6c 2d 62 69 6e  | mmand-line.tool..-*-.lexical-bin | 
| 2260 |  64 69 6e 67 3a 20 74 3b 20 2d 2a 2d 0a 0a 3b 3b    20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32  | ding:.t;.-*-..;;.Copyright.(C).2 | 
| 2280 |  30 31 35 20 43 72 61 69 67 20 45 61 72 6c 73 20    28 65 6e 64 65 72 77 38 38 20 41 54 20 67 6d 61  | 015.Craig.Earls.(enderw88.AT.gma | 
| 22a0 |  69 6c 20 44 4f 54 20 63 6f 6d 29 0a 0a 3b 3b 20    54 68 69 73 20 66 69 6c 65 20 69 73 20 6e 6f 74  | il.DOT.com)..;;.This.file.is.not | 
| 22c0 |  20 70 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 69 73 20  | .part.of.GNU.Emacs...;;.This.is. | 
| 22e0 |  66 72 65 65 20 73 6f 66 74 77 61 72 65 3b 20 79    6f 75 20 63 61 6e 20 72 65 64 69 73 74 72 69 62  | free.software;.you.can.redistrib | 
| 2300 |  75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f    64 69 66 79 20 69 74 20 75 6e 64 65 72 0a 3b 3b  | ute.it.and/or.modify.it.under.;; | 
| 2320 |  20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68    65 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75  | .the.terms.of.the.GNU.General.Pu | 
| 2340 |  62 6c 69 63 20 4c 69 63 65 6e 73 65 20 61 73 20    70 75 62 6c 69 73 68 65 64 20 62 79 20 74 68 65  | blic.License.as.published.by.the | 
| 2360 |  20 46 72 65 65 0a 3b 3b 20 53 6f 66 74 77 61 72    65 20 46 6f 75 6e 64 61 74 69 6f 6e 3b 20 65 69  | .Free.;;.Software.Foundation;.ei | 
| 2380 |  74 68 65 72 20 76 65 72 73 69 6f 6e 20 32 2c 20    6f 72 20 28 61 74 20 79 6f 75 72 20 6f 70 74 69  | ther.version.2,.or.(at.your.opti | 
| 23a0 |  6f 6e 29 20 61 6e 79 20 6c 61 74 65 72 0a 3b 3b    20 76 65 72 73 69 6f 6e 2e 0a 3b 3b 0a 3b 3b 20  | on).any.later.;;.version..;;.;;. | 
| 23c0 |  54 68 69 73 20 69 73 20 64 69 73 74 72 69 62 75    74 65 64 20 69 6e 20 74 68 65 20 68 6f 70 65 20  | This.is.distributed.in.the.hope. | 
| 23e0 |  74 68 61 74 20 69 74 20 77 69 6c 6c 20 62 65 20    75 73 65 66 75 6c 2c 20 62 75 74 20 57 49 54 48  | that.it.will.be.useful,.but.WITH | 
| 2400 |  4f 55 54 0a 3b 3b 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  | OUT.;;.ANY.WARRANTY;.without.eve | 
| 2420 |  6e 20 74 68 65 20 69 6d 70 6c 69 65 64 20 77 61    72 72 61 6e 74 79 20 6f 66 20 4d 45 52 43 48 41  | n.the.implied.warranty.of.MERCHA | 
| 2440 |  4e 54 41 42 49 4c 49 54 59 20 6f 72 0a 3b 3b 20    46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41  | NTABILITY.or.;;.FITNESS.FOR.A.PA | 
| 2460 |  52 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45    2e 20 20 53 65 65 20 74 68 65 20 47 4e 55 20 47  | RTICULAR.PURPOSE...See.the.GNU.G | 
| 2480 |  65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69    63 65 6e 73 65 0a 3b 3b 20 66 6f 72 20 6d 6f 72  | eneral.Public.License.;;.for.mor | 
| 24a0 |  65 20 64 65 74 61 69 6c 73 2e 0a 3b 3b 0a 3b 3b    20 59 6f 75 20 73 68 6f 75 6c 64 20 68 61 76 65  | e.details..;;.;;.You.should.have | 
| 24c0 |  20 72 65 63 65 69 76 65 64 20 61 20 63 6f 70 79    20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65  | .received.a.copy.of.the.GNU.Gene | 
| 24e0 |  72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e    73 65 0a 3b 3b 20 61 6c 6f 6e 67 20 77 69 74 68  | ral.Public.License.;;.along.with | 
| 2500 |  20 47 4e 55 20 45 6d 61 63 73 3b 20 73 65 65 20    74 68 65 20 66 69 6c 65 20 43 4f 50 59 49 4e 47  | .GNU.Emacs;.see.the.file.COPYING | 
| 2520 |  2e 20 20 49 66 20 6e 6f 74 2c 20 77 72 69 74 65    20 74 6f 20 74 68 65 0a 3b 3b 20 46 72 65 65 20  | ...If.not,.write.to.the.;;.Free. | 
| 2540 |  53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61 74    69 6f 6e 2c 20 49 6e 63 2e 2c 20 35 31 20 46 72  | Software.Foundation,.Inc.,.51.Fr | 
| 2560 |  61 6e 6b 6c 69 6e 20 53 74 72 65 65 74 2c 20 46    69 66 74 68 20 46 6c 6f 6f 72 2c 20 42 6f 73 74  | anklin.Street,.Fifth.Floor,.Bost | 
| 2580 |  6f 6e 2c 0a 3b 3b 20 4d 41 20 30 32 31 31 30 2d    31 33 30 31 20 55 53 41 2e 0a 0a 3b 3b 3b 20 43  | on,.;;.MA.02110-1301.USA...;;;.C | 
| 25a0 |  6f 6d 6d 65 6e 74 61 72 79 3a 0a 3b 3b 20 20 50    72 6f 76 69 64 65 20 73 65 63 69 61 6c 20 6d 6f  | ommentary:.;;..Provide.secial.mo | 
| 25c0 |  64 65 20 74 6f 20 63 6f 72 72 65 63 74 20 65 72    72 6f 72 73 20 69 6e 20 6c 65 64 67 65 72 20 77  | de.to.correct.errors.in.ledger.w | 
| 25e0 |  68 65 6e 20 72 75 6e 6e 69 6e 67 20 77 69 74 68    20 2d 2d 73 74 72 69 63 74 20 61 6e 64 20 2d 2d  | hen.running.with.--strict.and.-- | 
| 2600 |  65 78 70 6c 69 63 69 74 0a 3b 3b 0a 3b 3b 20 41    64 61 70 74 65 64 20 74 6f 20 6c 65 64 67 65 72  | explicit.;;.;;.Adapted.to.ledger | 
| 2620 |  20 6d 6f 64 65 20 62 79 20 43 72 61 69 67 20 45    61 72 6c 73 20 3c 65 6e 64 65 72 77 38 38 20 61  | .mode.by.Craig.Earls.<enderw88.a | 
| 2640 |  74 20 67 6d 61 69 6c 20 64 6f 74 20 63 6f 6d 3e    0a 0a 3b 3b 3b 20 43 6f 64 65 3a 0a 0a 28 72 65  | t.gmail.dot.com>..;;;.Code:..(re | 
| 2660 |  71 75 69 72 65 20 27 65 61 73 79 6d 65 6e 75 29    0a 28 72 65 71 75 69 72 65 20 27 6c 65 64 67 65  | quire.'easymenu).(require.'ledge | 
| 2680 |  72 2d 6e 61 76 69 67 61 74 65 29 0a 28 72 65 71    75 69 72 65 20 27 6c 65 64 67 65 72 2d 72 65 70  | r-navigate).(require.'ledger-rep | 
| 26a0 |  6f 72 74 29 20 3b 20 66 6f 72 20 6c 65 64 67 65    72 2d 6d 61 73 74 65 72 2d 66 69 6c 65 0a 0a 0a  | ort).;.for.ledger-master-file... | 
| 26c0 |  28 64 65 66 76 61 72 20 6c 65 64 67 65 72 2d 63    68 65 63 6b 2d 62 75 66 66 65 72 2d 6e 61 6d 65  | (defvar.ledger-check-buffer-name | 
| 26e0 |  20 22 2a 4c 65 64 67 65 72 20 43 68 65 63 6b 2a    22 29 0a 28 64 65 66 76 61 72 2d 6c 6f 63 61 6c  | ."*Ledger.Check*").(defvar-local | 
| 2700 |  20 6c 65 64 67 65 72 2d 63 68 65 63 6b 2d 2d 6f    72 69 67 69 6e 61 6c 2d 77 69 6e 64 6f 77 2d 63  | .ledger-check--original-window-c | 
| 2720 |  6f 6e 66 69 67 75 72 61 74 69 6f 6e 20 6e 69 6c    29 0a 0a 0a 0a 0a 28 64 65 66 76 61 72 20 6c 65  | onfiguration.nil).....(defvar.le | 
| 2740 |  64 67 65 72 2d 63 68 65 63 6b 2d 6d 6f 64 65 2d    6d 61 70 0a 20 20 28 6c 65 74 20 28 28 6d 61 70  | dger-check-mode-map...(let.((map | 
| 2760 |  20 28 6d 61 6b 65 2d 73 70 61 72 73 65 2d 6b 65    79 6d 61 70 29 29 29 0a 20 20 20 20 28 64 65 66  | .(make-sparse-keymap))).....(def | 
| 2780 |  69 6e 65 2d 6b 65 79 20 6d 61 70 20 28 6b 62 64    20 22 52 45 54 22 29 20 23 27 6c 65 64 67 65 72  | ine-key.map.(kbd."RET").#'ledger | 
| 27a0 |  2d 72 65 70 6f 72 74 2d 76 69 73 69 74 2d 73 6f    75 72 63 65 29 0a 20 20 20 20 28 64 65 66 69 6e  | -report-visit-source).....(defin | 
| 27c0 |  65 2d 6b 65 79 20 6d 61 70 20 28 6b 62 64 20 22    71 22 29 20 23 27 6c 65 64 67 65 72 2d 63 68 65  | e-key.map.(kbd."q").#'ledger-che | 
| 27e0 |  63 6b 2d 71 75 69 74 29 0a 20 20 20 20 6d 61 70    29 0a 20 20 22 4b 65 79 6d 61 70 20 66 6f 72 20  | ck-quit).....map)..."Keymap.for. | 
| 2800 |  60 6c 65 64 67 65 72 2d 63 68 65 63 6b 2d 6d 6f    64 65 27 2e 22 29 0a 0a 28 65 61 73 79 2d 6d 65  | `ledger-check-mode'.")..(easy-me | 
| 2820 |  6e 75 2d 64 65 66 69 6e 65 20 6c 65 64 67 65 72    2d 63 68 65 63 6b 2d 6d 6f 64 65 2d 6d 65 6e 75  | nu-define.ledger-check-mode-menu | 
| 2840 |  20 6c 65 64 67 65 72 2d 63 68 65 63 6b 2d 6d 6f    64 65 2d 6d 61 70 0a 20 20 22 4c 65 64 67 65 72  | .ledger-check-mode-map..."Ledger | 
| 2860 |  20 63 68 65 63 6b 20 6d 65 6e 75 2e 22 0a 20 20    27 28 22 43 68 65 63 6b 22 0a 20 20 20 20 3b 3b  | .check.menu."...'("Check".....;; | 
| 2880 |  20 5b 22 52 65 2d 72 75 6e 20 43 68 65 63 6b 22    20 6c 65 64 67 65 72 2d 63 68 65 63 6b 2d 72 65  | .["Re-run.Check".ledger-check-re | 
| 28a0 |  64 6f 5d 0a 20 20 20 20 22 2d 2d 2d 22 0a 20 20    20 20 5b 22 56 69 73 69 74 20 53 6f 75 72 63 65  | do]....."---".....["Visit.Source | 
| 28c0 |  22 20 6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d    76 69 73 69 74 2d 73 6f 75 72 63 65 5d 0a 20 20  | ".ledger-report-visit-source]... | 
| 28e0 |  20 20 22 2d 2d 2d 22 0a 20 20 20 20 5b 22 51 75    69 74 22 20 6c 65 64 67 65 72 2d 63 68 65 63 6b  | .."---".....["Quit".ledger-check | 
| 2900 |  2d 71 75 69 74 5d 0a 20 20 20 20 29 29 0a 0a 28    64 65 66 69 6e 65 2d 64 65 72 69 76 65 64 2d 6d  | -quit].....))..(define-derived-m | 
| 2920 |  6f 64 65 20 6c 65 64 67 65 72 2d 63 68 65 63 6b    2d 6d 6f 64 65 20 74 65 78 74 2d 6d 6f 64 65 20  | ode.ledger-check-mode.text-mode. | 
| 2940 |  22 4c 65 64 67 65 72 2d 43 68 65 63 6b 22 0a 20    20 22 41 20 6d 6f 64 65 20 66 6f 72 20 76 69 65  | "Ledger-Check"..."A.mode.for.vie | 
| 2960 |  77 69 6e 67 20 6c 65 64 67 65 72 20 65 72 72 6f    72 73 20 61 6e 64 20 77 61 72 6e 69 6e 67 73 2e  | wing.ledger.errors.and.warnings. | 
| 2980 |  22 29 0a 0a 0a 28 64 65 66 75 6e 20 6c 65 64 67    65 72 2d 64 6f 2d 63 68 65 63 6b 20 28 29 0a 20  | ")...(defun.ledger-do-check.().. | 
| 29a0 |  20 22 52 75 6e 20 61 20 63 68 65 63 6b 20 63 6f    6d 6d 61 6e 64 20 2e 22 0a 20 20 28 67 6f 74 6f  | ."Run.a.check.command.."...(goto | 
| 29c0 |  2d 63 68 61 72 20 28 70 6f 69 6e 74 2d 6d 69 6e    29 29 0a 20 20 28 6c 65 74 20 28 28 64 61 74 61  | -char.(point-min))...(let.((data | 
| 29e0 |  2d 70 6f 73 20 28 70 6f 69 6e 74 29 29 0a 20 20    20 20 20 20 20 20 28 68 61 76 65 2d 77 61 72 6e  | -pos.(point)).........(have-warn | 
| 2a00 |  69 6e 67 73 20 6e 69 6c 29 29 0a 20 20 20 20 28    73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 0a 20 20  | ings.nil)).....(shell-command... | 
| 2a20 |  20 20 20 3b 3b 20 20 6c 65 64 67 65 72 20 62 61    6c 61 6e 63 65 20 63 6f 6d 6d 61 6e 64 20 77 69  | ...;;..ledger.balance.command.wi | 
| 2a40 |  6c 6c 20 6a 75 73 74 20 72 65 74 75 72 6e 20 65    6d 70 74 79 20 69 66 20 79 6f 75 20 67 69 76 65  | ll.just.return.empty.if.you.give | 
| 2a60 |  20 69 74 0a 20 20 20 20 20 3b 3b 20 20 61 6e 20    61 63 63 6f 75 6e 74 20 6e 61 6d 65 20 74 68 61  | .it......;;..an.account.name.tha | 
| 2a80 |  74 20 64 6f 65 73 6e 27 74 20 65 78 69 73 74 2e    20 20 49 20 77 69 6c 6c 20 61 73 73 75 6d 65 20  | t.doesn't.exist...I.will.assume. | 
| 2aa0 |  74 68 61 74 20 6e 6f 0a 20 20 20 20 20 3b 3b 20    20 6f 6e 65 20 77 69 6c 6c 20 65 76 65 72 20 68  | that.no......;;..one.will.ever.h | 
| 2ac0 |  61 76 65 20 61 6e 20 61 63 63 6f 75 6e 74 20 6e    61 6d 65 64 20 22 65 33 34 32 61 73 64 32 31 33  | ave.an.account.named."e342asd213 | 
| 2ae0 |  31 22 2e 20 20 49 66 0a 20 20 20 20 20 3b 3b 20    20 73 6f 6d 65 6f 6e 65 73 20 64 6f 65 73 2c 20  | 1"...If......;;..someones.does,. | 
| 2b00 |  74 68 69 73 20 77 69 6c 6c 20 70 72 6f 62 61 62    6c 79 20 73 74 69 6c 6c 20 77 6f 72 6b 20 66 6f  | this.will.probably.still.work.fo | 
| 2b20 |  72 20 74 68 65 6d 2e 0a 20 20 20 20 20 3b 3b 20    20 49 20 73 68 6f 75 6c 64 20 6f 6e 6c 79 20 68  | r.them.......;;..I.should.only.h | 
| 2b40 |  69 67 68 6c 69 67 68 74 20 65 72 72 6f 72 20 61    6e 64 20 77 61 72 6e 69 6e 67 20 6c 69 6e 65 73  | ighlight.error.and.warning.lines | 
| 2b60 |  2e 0a 20 20 20 20 20 22 6c 65 64 67 65 72 20 62    61 6c 20 65 33 34 32 61 73 64 32 31 33 31 20 2d  | ......."ledger.bal.e342asd2131.- | 
| 2b80 |  2d 73 74 72 69 63 74 20 2d 2d 65 78 70 6c 69 63    69 74 20 22 0a 20 20 20 20 20 74 20 6e 69 6c 29  | -strict.--explicit."......t.nil) | 
| 2ba0 |  0a 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20    64 61 74 61 2d 70 6f 73 29 0a 0a 20 20 20 20 3b  | .....(goto-char.data-pos)......; | 
| 2bc0 |  3b 20 66 6f 72 6d 61 74 20 63 68 65 63 6b 20 72    65 70 6f 72 74 20 74 6f 20 6d 61 6b 65 20 69 74  | ;.format.check.report.to.make.it | 
| 2be0 |  20 6e 61 76 69 67 61 74 65 20 74 68 65 20 66 69    6c 65 0a 0a 20 20 20 20 28 77 68 69 6c 65 20 28  | .navigate.the.file......(while.( | 
| 2c00 |  72 65 2d 73 65 61 72 63 68 2d 66 6f 72 77 61 72    64 20 22 5e 2e 2a 3a 20 5c 22 5c 5c 28 2e 2a 5c  | re-search-forward."^.*:.\"\\(.*\ | 
| 2c20 |  5c 29 5c 22 2c 20 6c 69 6e 65 20 5c 5c 28 5b 30    2d 39 5d 2b 5c 5c 29 22 20 6e 69 6c 20 74 29 0a  | \)\",.line.\\([0-9]+\\)".nil.t). | 
| 2c40 |  20 20 20 20 20 20 28 6c 65 74 20 28 28 66 69 6c    65 20 28 6d 61 74 63 68 2d 73 74 72 69 6e 67 20  | ......(let.((file.(match-string. | 
| 2c60 |  31 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    28 6c 69 6e 65 20 28 73 74 72 69 6e 67 2d 74 6f  | 1)).............(line.(string-to | 
| 2c80 |  2d 6e 75 6d 62 65 72 20 28 6d 61 74 63 68 2d 73    74 72 69 6e 67 20 32 29 29 29 29 0a 20 20 20 20  | -number.(match-string.2))))..... | 
| 2ca0 |  20 20 20 20 28 77 68 65 6e 20 66 69 6c 65 0a 20    20 20 20 20 20 20 20 20 20 28 73 65 74 2d 74 65  | ....(when.file...........(set-te | 
| 2cc0 |  78 74 2d 70 72 6f 70 65 72 74 69 65 73 20 28 6c    69 6e 65 2d 62 65 67 69 6e 6e 69 6e 67 2d 70 6f  | xt-properties.(line-beginning-po | 
| 2ce0 |  73 69 74 69 6f 6e 29 20 28 6c 69 6e 65 2d 65 6e    64 2d 70 6f 73 69 74 69 6f 6e 29 0a 20 20 20 20  | sition).(line-end-position)..... | 
| 2d00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 6c 69 73 74  | ...........................(list | 
| 2d20 |  20 27 6c 65 64 67 65 72 2d 73 6f 75 72 63 65 20    28 63 6f 6e 73 20 66 69 6c 65 20 28 73 61 76 65  | .'ledger-source.(cons.file.(save | 
| 2d40 |  2d 77 69 6e 64 6f 77 2d 65 78 63 75 72 73 69 6f    6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | -window-excursion............... | 
| 2d60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 2d80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 73 61 76 65 2d 65 78 63 75 72 73 69  | ...................(save-excursi | 
| 2da0 |  6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | on.............................. | 
| 2dc0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 2de0 |  20 20 20 20 20 20 28 66 69 6e 64 2d 66 69 6c 65    20 66 69 6c 65 29 0a 20 20 20 20 20 20 20 20 20  | ......(find-file.file).......... | 
| 2e00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 2e20 |  20 20 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 69 64 65 6e  | ..........................(widen | 
| 2e40 |  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  | )............................... | 
| 2e60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 2e80 |  20 20 20 20 20 28 6c 65 64 67 65 72 2d 6e 61 76    69 67 61 74 65 2d 74 6f 2d 6c 69 6e 65 20 6c 69  | .....(ledger-navigate-to-line.li | 
| 2ea0 |  6e 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ne)............................. | 
| 2ec0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 2ee0 |  20 20 20 20 20 20 20 28 70 6f 69 6e 74 2d 6d 61    72 6b 65 72 29 29 29 29 29 29 0a 20 20 20 20 20  | .......(point-marker))))))...... | 
| 2f00 |  20 20 20 20 20 28 61 64 64 2d 74 65 78 74 2d 70    72 6f 70 65 72 74 69 65 73 20 28 6c 69 6e 65 2d  | .....(add-text-properties.(line- | 
| 2f20 |  62 65 67 69 6e 6e 69 6e 67 2d 70 6f 73 69 74 69    6f 6e 29 20 28 6c 69 6e 65 2d 65 6e 64 2d 70 6f  | beginning-position).(line-end-po | 
| 2f40 |  73 69 74 69 6f 6e 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | sition)......................... | 
| 2f60 |  20 20 20 20 20 20 20 28 6c 69 73 74 20 27 66 6f    6e 74 2d 6c 6f 63 6b 2d 66 61 63 65 20 27 6c 65  | .......(list.'font-lock-face.'le | 
| 2f80 |  64 67 65 72 2d 66 6f 6e 74 2d 72 65 70 6f 72 74    2d 63 6c 69 63 6b 61 62 6c 65 2d 66 61 63 65 29  | dger-font-report-clickable-face) | 
| 2fa0 |  29 0a 20 20 20 20 20 20 20 20 20 20 28 73 65 74    71 20 68 61 76 65 2d 77 61 72 6e 69 6e 67 73 20  | )...........(setq.have-warnings. | 
| 2fc0 |  27 74 72 75 65 29 0a 20 20 20 20 20 20 20 20 20    20 28 65 6e 64 2d 6f 66 2d 6c 69 6e 65 29 29 29  | 'true)...........(end-of-line))) | 
| 2fe0 |  29 0a 20 20 20 20 28 69 66 20 28 6e 6f 74 20 68    61 76 65 2d 77 61 72 6e 69 6e 67 73 29 0a 20 20  | ).....(if.(not.have-warnings)... | 
| 3000 |  20 20 20 20 20 20 28 69 6e 73 65 72 74 20 22 4e    6f 20 65 72 72 6f 72 73 20 6f 72 20 77 61 72 6e  | ......(insert."No.errors.or.warn | 
| 3020 |  69 6e 67 73 20 72 65 70 6f 72 74 65 64 2e 22 29    29 29 29 0a 0a 28 64 65 66 75 6e 20 6c 65 64 67  | ings.reported."))))..(defun.ledg | 
| 3040 |  65 72 2d 63 68 65 63 6b 2d 67 6f 74 6f 20 28 29    0a 20 20 22 47 6f 74 6f 20 74 68 65 20 6c 65 64  | er-check-goto.()..."Goto.the.led | 
| 3060 |  67 65 72 20 63 68 65 63 6b 20 62 75 66 66 65 72    2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76  | ger.check.buffer."...(interactiv | 
| 3080 |  65 29 0a 20 20 28 6c 65 74 20 28 28 72 62 75 66    20 28 67 65 74 2d 62 75 66 66 65 72 20 6c 65 64  | e)...(let.((rbuf.(get-buffer.led | 
| 30a0 |  67 65 72 2d 63 68 65 63 6b 2d 62 75 66 66 65 72    2d 6e 61 6d 65 29 29 29 0a 20 20 20 20 28 69 66  | ger-check-buffer-name))).....(if | 
| 30c0 |  20 28 6e 6f 74 20 72 62 75 66 29 0a 20 20 20 20    20 20 20 20 28 65 72 72 6f 72 20 22 54 68 65 72  | .(not.rbuf).........(error."Ther | 
| 30e0 |  65 20 69 73 20 6e 6f 20 6c 65 64 67 65 72 20 63    68 65 63 6b 20 62 75 66 66 65 72 22 29 29 0a 20  | e.is.no.ledger.check.buffer")).. | 
| 3100 |  20 20 20 28 70 6f 70 2d 74 6f 2d 62 75 66 66 65    72 20 72 62 75 66 29 0a 20 20 20 20 28 73 68 72  | ...(pop-to-buffer.rbuf).....(shr | 
| 3120 |  69 6e 6b 2d 77 69 6e 64 6f 77 2d 69 66 2d 6c 61    72 67 65 72 2d 74 68 61 6e 2d 62 75 66 66 65 72  | ink-window-if-larger-than-buffer | 
| 3140 |  29 29 29 0a 0a 28 64 65 66 75 6e 20 6c 65 64 67    65 72 2d 63 68 65 63 6b 2d 71 75 69 74 20 28 29  | )))..(defun.ledger-check-quit.() | 
| 3160 |  0a 20 20 22 51 75 69 74 20 74 68 65 20 6c 65 64    67 65 72 20 63 68 65 63 6b 20 62 75 66 66 65 72  | ..."Quit.the.ledger.check.buffer | 
| 3180 |  2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76    65 29 0a 20 20 28 6c 65 64 67 65 72 2d 63 68 65  | ."...(interactive)...(ledger-che | 
| 31a0 |  63 6b 2d 67 6f 74 6f 29 0a 20 20 28 73 65 74 2d    77 69 6e 64 6f 77 2d 63 6f 6e 66 69 67 75 72 61  | ck-goto)...(set-window-configura | 
| 31c0 |  74 69 6f 6e 20 6c 65 64 67 65 72 2d 63 68 65 63    6b 2d 2d 6f 72 69 67 69 6e 61 6c 2d 77 69 6e 64  | tion.ledger-check--original-wind | 
| 31e0 |  6f 77 2d 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e    29 0a 20 20 28 6b 69 6c 6c 2d 62 75 66 66 65 72  | ow-configuration)...(kill-buffer | 
| 3200 |  20 28 67 65 74 2d 62 75 66 66 65 72 20 6c 65 64    67 65 72 2d 63 68 65 63 6b 2d 62 75 66 66 65 72  | .(get-buffer.ledger-check-buffer | 
| 3220 |  2d 6e 61 6d 65 29 29 29 0a 0a 28 64 65 66 75 6e    20 6c 65 64 67 65 72 2d 63 68 65 63 6b 2d 62 75  | -name)))..(defun.ledger-check-bu | 
| 3240 |  66 66 65 72 20 28 26 6f 70 74 69 6f 6e 61 6c 20    69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20 22  | ffer.(&optional.interactive)..." | 
| 3260 |  43 68 65 63 6b 20 74 68 65 20 63 75 72 72 65 6e    74 20 62 75 66 66 65 72 20 66 6f 72 20 65 72 72  | Check.the.current.buffer.for.err | 
| 3280 |  6f 72 73 2e 0a 0a 52 75 6e 73 20 6c 65 64 67 65    72 20 77 69 74 68 20 2d 2d 65 78 70 6c 69 63 69  | ors...Runs.ledger.with.--explici | 
| 32a0 |  74 20 61 6e 64 20 2d 2d 73 74 72 69 63 74 20 72    65 70 6f 72 74 20 65 72 72 6f 72 73 20 61 6e 64  | t.and.--strict.report.errors.and | 
| 32c0 |  20 61 73 73 69 73 74 0a 77 69 74 68 20 66 69 78    69 6e 67 20 74 68 65 6d 2e 0a 0a 54 68 65 20 6f  | .assist.with.fixing.them...The.o | 
| 32e0 |  75 74 70 75 74 20 62 75 66 66 65 72 20 77 69 6c    6c 20 62 65 20 69 6e 20 60 6c 65 64 67 65 72 2d  | utput.buffer.will.be.in.`ledger- | 
| 3300 |  63 68 65 63 6b 2d 6d 6f 64 65 27 2c 20 77 68 69    63 68 20 64 65 66 69 6e 65 73 0a 63 6f 6d 6d 61  | check-mode',.which.defines.comma | 
| 3320 |  6e 64 73 20 66 6f 72 20 6e 61 76 69 67 61 74 69    6e 67 20 74 68 65 20 62 75 66 66 65 72 20 74 6f  | nds.for.navigating.the.buffer.to | 
| 3340 |  20 74 68 65 20 65 72 72 6f 72 73 20 66 6f 75 6e    64 2c 20 65 74 63 2e 0a 0a 57 68 65 6e 20 49 4e  | .the.errors.found,.etc...When.IN | 
| 3360 |  54 45 52 41 43 54 49 56 45 20 69 73 20 6e 6f 6e    2d 6e 69 6c 20 28 69 2e 65 2e 2c 20 77 68 65 6e  | TERACTIVE.is.non-nil.(i.e.,.when | 
| 3380 |  20 63 61 6c 6c 65 64 20 69 6e 74 65 72 61 63 74    69 76 65 6c 79 29 2c 0a 70 72 6f 6d 70 74 20 74  | .called.interactively),.prompt.t | 
| 33a0 |  6f 20 73 61 76 65 20 69 66 20 74 68 65 20 63 75    72 72 65 6e 74 20 62 75 66 66 65 72 20 69 73 20  | o.save.if.the.current.buffer.is. | 
| 33c0 |  6d 6f 64 69 66 69 65 64 2e 22 0a 20 20 28 69 6e    74 65 72 61 63 74 69 76 65 20 22 70 22 29 0a 20  | modified."...(interactive."p").. | 
| 33e0 |  20 28 77 68 65 6e 20 28 61 6e 64 20 69 6e 74 65    72 61 63 74 69 76 65 0a 20 20 20 20 20 20 20 20  | .(when.(and.interactive......... | 
| 3400 |  20 20 20 20 20 28 62 75 66 66 65 72 2d 6d 6f 64    69 66 69 65 64 2d 70 29 0a 20 20 20 20 20 20 20  | .....(buffer-modified-p)........ | 
| 3420 |  20 20 20 20 20 20 28 79 2d 6f 72 2d 6e 2d 70 20    22 42 75 66 66 65 72 20 6d 6f 64 69 66 69 65 64  | ......(y-or-n-p."Buffer.modified | 
| 3440 |  2c 20 73 61 76 65 20 69 74 3f 20 22 29 29 0a 20    20 20 20 28 73 61 76 65 2d 62 75 66 66 65 72 29  | ,.save.it?.")).....(save-buffer) | 
| 3460 |  29 0a 20 20 28 6c 65 74 20 28 28 5f 62 75 66 20    28 66 69 6e 64 2d 66 69 6c 65 2d 6e 6f 73 65 6c  | )...(let.((_buf.(find-file-nosel | 
| 3480 |  65 63 74 20 28 6c 65 64 67 65 72 2d 6d 61 73 74    65 72 2d 66 69 6c 65 29 29 29 0a 20 20 20 20 20  | ect.(ledger-master-file)))...... | 
| 34a0 |  20 20 20 28 63 62 75 66 20 28 67 65 74 2d 62 75    66 66 65 72 20 6c 65 64 67 65 72 2d 63 68 65 63  | ...(cbuf.(get-buffer.ledger-chec | 
| 34c0 |  6b 2d 62 75 66 66 65 72 2d 6e 61 6d 65 29 29 0a    20 20 20 20 20 20 20 20 28 77 63 66 67 20 28 63  | k-buffer-name)).........(wcfg.(c | 
| 34e0 |  75 72 72 65 6e 74 2d 77 69 6e 64 6f 77 2d 63 6f    6e 66 69 67 75 72 61 74 69 6f 6e 29 29 29 0a 20  | urrent-window-configuration))).. | 
| 3500 |  20 20 20 28 69 66 20 63 62 75 66 0a 20 20 20 20    20 20 20 20 28 6b 69 6c 6c 2d 62 75 66 66 65 72  | ...(if.cbuf.........(kill-buffer | 
| 3520 |  20 63 62 75 66 29 29 0a 20 20 20 20 28 77 69 74    68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72  | .cbuf)).....(with-current-buffer | 
| 3540 |  0a 20 20 20 20 20 20 20 20 28 70 6f 70 2d 74 6f    2d 62 75 66 66 65 72 20 28 67 65 74 2d 62 75 66  | .........(pop-to-buffer.(get-buf | 
| 3560 |  66 65 72 2d 63 72 65 61 74 65 20 6c 65 64 67 65    72 2d 63 68 65 63 6b 2d 62 75 66 66 65 72 2d 6e  | fer-create.ledger-check-buffer-n | 
| 3580 |  61 6d 65 29 29 0a 20 20 20 20 20 20 28 6c 65 64    67 65 72 2d 63 68 65 63 6b 2d 6d 6f 64 65 29 0a  | ame)).......(ledger-check-mode). | 
| 35a0 |  20 20 20 20 20 20 28 73 65 74 71 20 6c 65 64 67    65 72 2d 63 68 65 63 6b 2d 2d 6f 72 69 67 69 6e  | ......(setq.ledger-check--origin | 
| 35c0 |  61 6c 2d 77 69 6e 64 6f 77 2d 63 6f 6e 66 69 67    75 72 61 74 69 6f 6e 20 77 63 66 67 29 0a 20 20  | al-window-configuration.wcfg)... | 
| 35e0 |  20 20 20 20 28 6c 65 64 67 65 72 2d 64 6f 2d 63    68 65 63 6b 29 0a 20 20 20 20 20 20 28 73 68 72  | ....(ledger-do-check).......(shr | 
| 3600 |  69 6e 6b 2d 77 69 6e 64 6f 77 2d 69 66 2d 6c 61    72 67 65 72 2d 74 68 61 6e 2d 62 75 66 66 65 72  | ink-window-if-larger-than-buffer | 
| 3620 |  29 0a 20 20 20 20 20 20 28 73 65 74 2d 62 75 66    66 65 72 2d 6d 6f 64 69 66 69 65 64 2d 70 20 6e  | ).......(set-buffer-modified-p.n | 
| 3640 |  69 6c 29 0a 20 20 20 20 20 20 28 73 65 74 71 20    62 75 66 66 65 72 2d 72 65 61 64 2d 6f 6e 6c 79  | il).......(setq.buffer-read-only | 
| 3660 |  20 74 29 0a 20 20 20 20 20 20 28 6d 65 73 73 61    67 65 20 22 71 20 74 6f 20 71 75 69 74 3b 20 72  | .t).......(message."q.to.quit;.r | 
| 3680 |  20 74 6f 20 72 65 64 6f 3b 20 6b 20 74 6f 20 6b    69 6c 6c 22 29 29 29 29 0a 0a 0a 28 70 72 6f 76  | .to.redo;.k.to.kill"))))...(prov | 
| 36a0 |  69 64 65 20 27 6c 65 64 67 65 72 2d 63 68 65 63    6b 29 0a 0a 3b 3b 3b 20 6c 65 64 67 65 72 2d 63  | ide.'ledger-check)..;;;.ledger-c | 
| 36c0 |  68 65 63 6b 2e 65 6c 20 65 6e 64 73 20 68 65 72    65 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | heck.el.ends.here............... | 
| 36e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 3700 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 3720 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 3740 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 3760 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 3780 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 37a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 37c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 37e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 3800 |  6c 65 64 67 65 72 2d 6d 6f 64 65 2d 32 30 32 34    30 34 31 36 2e 34 31 36 2f 6c 65 64 67 65 72 2d  | ledger-mode-20240416.416/ledger- | 
| 3820 |  73 63 68 65 64 75 6c 65 2e 65 6c 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | schedule.el..................... | 
| 3840 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 3860 |  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 | 
| 3880 |  30 30 33 35 30 30 31 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 36 34 36 37 00 20 30 00 00 00  | 0035001.00000000000.016467..0... | 
| 38a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 38c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 38e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 3900 |  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................... | 
| 3920 |  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................... | 
| 3940 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 3960 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 3980 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 39a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 39c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 39e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 3a00 |  3b 3b 3b 20 6c 65 64 67 65 72 2d 73 63 68 65 64    75 6c 65 2e 65 6c 20 2d 2d 2d 20 48 65 6c 70 65  | ;;;.ledger-schedule.el.---.Helpe | 
| 3a20 |  72 20 63 6f 64 65 20 66 6f 72 20 75 73 65 20 77    69 74 68 20 74 68 65 20 22 6c 65 64 67 65 72 22  | r.code.for.use.with.the."ledger" | 
| 3a40 |  20 63 6f 6d 6d 61 6e 64 2d 6c 69 6e 65 20 74 6f    6f 6c 20 20 2d 2a 2d 20 6c 65 78 69 63 61 6c 2d  | .command-line.tool..-*-.lexical- | 
| 3a60 |  62 69 6e 64 69 6e 67 3a 20 74 3b 20 2d 2a 2d 0a    0a 3b 3b 20 43 6f 70 79 72 69 67 68 74 20 28 43  | binding:.t;.-*-..;;.Copyright.(C | 
| 3a80 |  29 20 32 30 31 33 20 43 72 61 69 67 20 45 61 72    6c 73 20 28 65 6e 64 65 72 77 38 38 20 61 74 20  | ).2013.Craig.Earls.(enderw88.at. | 
| 3aa0 |  67 6d 61 69 6c 20 64 6f 74 20 63 6f 6d 29 0a 0a    3b 3b 20 54 68 69 73 20 66 69 6c 65 20 69 73 20  | gmail.dot.com)..;;.This.file.is. | 
| 3ac0 |  6e 6f 74 20 70 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  | not.part.of.GNU.Emacs...;;.This. | 
| 3ae0 |  69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65    3b 20 79 6f 75 20 63 61 6e 20 72 65 64 69 73 74  | is.free.software;.you.can.redist | 
| 3b00 |  72 69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72    20 6d 6f 64 69 66 79 20 69 74 0a 3b 3b 20 75 6e  | ribute.it.and/or.modify.it.;;.un | 
| 3b20 |  64 65 72 20 74 68 65 20 74 65 72 6d 73 20 6f 66    20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c  | der.the.terms.of.the.GNU.General | 
| 3b40 |  20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20    61 73 20 70 75 62 6c 69 73 68 65 64 20 62 79 0a  | .Public.License.as.published.by. | 
| 3b60 |  3b 3b 20 74 68 65 20 46 72 65 65 20 53 6f 66 74    77 61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 3b  | ;;.the.Free.Software.Foundation; | 
| 3b80 |  20 65 69 74 68 65 72 20 76 65 72 73 69 6f 6e 20    32 2c 20 6f 72 20 28 61 74 20 79 6f 75 72 20 6f  | .either.version.2,.or.(at.your.o | 
| 3ba0 |  70 74 69 6f 6e 29 0a 3b 3b 20 61 6e 79 20 6c 61    74 65 72 20 76 65 72 73 69 6f 6e 2e 0a 3b 3b 0a  | ption).;;.any.later.version..;;. | 
| 3bc0 |  3b 3b 20 54 68 69 73 20 69 73 20 64 69 73 74 72    69 62 75 74 65 64 20 69 6e 20 74 68 65 20 68 6f  | ;;.This.is.distributed.in.the.ho | 
| 3be0 |  70 65 20 74 68 61 74 20 69 74 20 77 69 6c 6c 20    62 65 20 75 73 65 66 75 6c 2c 20 62 75 74 20 57  | pe.that.it.will.be.useful,.but.W | 
| 3c00 |  49 54 48 4f 55 54 0a 3b 3b 20 41 4e 59 20 57 41    52 52 41 4e 54 59 3b 20 77 69 74 68 6f 75 74 20  | ITHOUT.;;.ANY.WARRANTY;.without. | 
| 3c20 |  65 76 65 6e 20 74 68 65 20 69 6d 70 6c 69 65 64    20 77 61 72 72 61 6e 74 79 20 6f 66 20 4d 45 52  | even.the.implied.warranty.of.MER | 
| 3c40 |  43 48 41 4e 54 41 42 49 4c 49 54 59 0a 3b 3b 20    6f 72 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41  | CHANTABILITY.;;.or.FITNESS.FOR.A | 
| 3c60 |  20 50 41 52 54 49 43 55 4c 41 52 20 50 55 52 50    4f 53 45 2e 20 20 53 65 65 20 74 68 65 20 47 4e  | .PARTICULAR.PURPOSE...See.the.GN | 
| 3c80 |  55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63    0a 3b 3b 20 4c 69 63 65 6e 73 65 20 66 6f 72 20  | U.General.Public.;;.License.for. | 
| 3ca0 |  6d 6f 72 65 20 64 65 74 61 69 6c 73 2e 0a 3b 3b    0a 3b 3b 20 59 6f 75 20 73 68 6f 75 6c 64 20 68  | more.details..;;.;;.You.should.h | 
| 3cc0 |  61 76 65 20 72 65 63 65 69 76 65 64 20 61 20 63    6f 70 79 20 6f 66 20 74 68 65 20 47 4e 55 20 47  | ave.received.a.copy.of.the.GNU.G | 
| 3ce0 |  65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69    63 65 6e 73 65 0a 3b 3b 20 61 6c 6f 6e 67 20 77  | eneral.Public.License.;;.along.w | 
| 3d00 |  69 74 68 20 47 4e 55 20 45 6d 61 63 73 3b 20 73    65 65 20 74 68 65 20 66 69 6c 65 20 43 4f 50 59  | ith.GNU.Emacs;.see.the.file.COPY | 
| 3d20 |  49 4e 47 2e 20 20 49 66 20 6e 6f 74 2c 20 77 72    69 74 65 20 74 6f 20 74 68 65 0a 3b 3b 20 46 72  | ING...If.not,.write.to.the.;;.Fr | 
| 3d40 |  65 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e    64 61 74 69 6f 6e 2c 20 49 6e 63 2e 2c 20 35 31  | ee.Software.Foundation,.Inc.,.51 | 
| 3d60 |  20 46 72 61 6e 6b 6c 69 6e 20 53 74 72 65 65 74    2c 20 46 69 66 74 68 20 46 6c 6f 6f 72 2c 20 42  | .Franklin.Street,.Fifth.Floor,.B | 
| 3d80 |  6f 73 74 6f 6e 2c 0a 3b 3b 20 4d 41 20 30 32 31    31 30 2d 31 33 30 31 20 55 53 41 2e 0a 0a 3b 3b  | oston,.;;.MA.02110-1301.USA...;; | 
| 3da0 |  3b 20 43 6f 6d 6d 65 6e 74 61 72 79 3a 0a 3b 3b    0a 3b 3b 20 54 68 69 73 20 6d 6f 64 75 6c 65 20  | ;.Commentary:.;;.;;.This.module. | 
| 3dc0 |  70 72 6f 76 69 64 65 73 20 66 6f 72 20 61 75 74    6f 6d 61 74 69 63 61 6c 6c 79 20 61 64 64 69 6e  | provides.for.automatically.addin | 
| 3de0 |  67 20 74 72 61 6e 73 61 63 74 69 6f 6e 73 20 74    6f 20 61 0a 3b 3b 20 6c 65 64 67 65 72 20 62 75  | g.transactions.to.a.;;.ledger.bu | 
| 3e00 |  66 66 65 72 20 6f 6e 20 61 20 70 65 72 69 6f 64    69 63 20 62 61 73 69 73 2e 20 20 52 65 63 75 72  | ffer.on.a.periodic.basis...Recur | 
| 3e20 |  72 65 6e 63 65 20 65 78 70 72 65 73 73 69 6f 6e    73 20 61 72 65 0a 3b 3b 20 69 6e 73 70 69 72 65  | rence.expressions.are.;;.inspire | 
| 3e40 |  64 20 62 79 20 4d 61 72 74 69 6e 20 46 6f 77 6c    65 72 27 73 20 22 52 65 63 75 72 72 69 6e 67 20  | d.by.Martin.Fowler's."Recurring. | 
| 3e60 |  45 76 65 6e 74 73 20 66 6f 72 20 43 61 6c 65 6e    64 61 72 73 22 2c 0a 3b 3b 20 6d 61 72 74 69 6e  | Events.for.Calendars",.;;.martin | 
| 3e80 |  66 6f 77 6c 65 72 2e 63 6f 6d 2f 61 70 73 75 70    70 2f 72 65 63 75 72 72 69 6e 67 2e 70 64 66 0a  | fowler.com/apsupp/recurring.pdf. | 
| 3ea0 |  0a 3b 3b 20 75 73 65 20 28 66 73 65 74 20 27 56    41 52 4e 41 4d 45 20 28 6d 61 63 72 6f 20 61 72  | .;;.use.(fset.'VARNAME.(macro.ar | 
| 3ec0 |  67 73 29 29 20 74 6f 20 70 75 74 20 74 68 65 20    6d 61 63 72 6f 20 64 65 66 69 6e 69 74 69 6f 6e  | gs)).to.put.the.macro.definition | 
| 3ee0 |  20 69 6e 20 74 68 65 0a 3b 3b 20 66 75 6e 63 74    69 6f 6e 20 73 6c 6f 74 20 6f 66 20 74 68 65 20  | .in.the.;;.function.slot.of.the. | 
| 3f00 |  73 79 6d 62 6f 6c 20 56 41 52 4e 41 4d 45 2e 20    20 54 68 65 6e 20 75 73 65 20 56 41 52 4e 41 4d  | symbol.VARNAME...Then.use.VARNAM | 
| 3f20 |  45 20 61 73 20 74 68 65 0a 3b 3b 20 66 75 6e 63    74 69 6f 6e 20 77 69 74 68 6f 75 74 20 68 61 76  | E.as.the.;;.function.without.hav | 
| 3f40 |  65 20 74 6f 20 75 73 65 20 66 75 6e 63 61 6c 6c    2e 0a 0a 0a 28 72 65 71 75 69 72 65 20 27 6c 65  | e.to.use.funcall....(require.'le | 
| 3f60 |  64 67 65 72 2d 69 6e 69 74 29 0a 28 72 65 71 75    69 72 65 20 27 63 6c 2d 6c 69 62 29 0a 0a 28 64  | dger-init).(require.'cl-lib)..(d | 
| 3f80 |  65 63 6c 61 72 65 2d 66 75 6e 63 74 69 6f 6e 20    6c 65 64 67 65 72 2d 6d 6f 64 65 20 22 6c 65 64  | eclare-function.ledger-mode."led | 
| 3fa0 |  67 65 72 2d 6d 6f 64 65 22 29 0a 3b 3b 3b 20 43    6f 64 65 3a 0a 0a 28 64 65 66 67 72 6f 75 70 20  | ger-mode").;;;.Code:..(defgroup. | 
| 3fc0 |  6c 65 64 67 65 72 2d 73 63 68 65 64 75 6c 65 20    6e 69 6c 0a 20 20 22 53 75 70 70 6f 72 74 20 66  | ledger-schedule.nil..."Support.f | 
| 3fe0 |  6f 72 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79    20 72 65 63 6f 6d 6d 65 6e 64 61 74 69 6f 6e 20  | or.automatically.recommendation. | 
| 4000 |  74 72 61 6e 73 61 63 74 69 6f 6e 73 2e 22 0a 20    20 3a 67 72 6f 75 70 20 27 6c 65 64 67 65 72 29  | transactions."...:group.'ledger) | 
| 4020 |  0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6c 65 64    67 65 72 2d 73 63 68 65 64 75 6c 65 2d 62 75 66  | ..(defcustom.ledger-schedule-buf | 
| 4040 |  66 65 72 2d 6e 61 6d 65 20 22 2a 4c 65 64 67 65    72 20 53 63 68 65 64 75 6c 65 2a 22 0a 20 20 22  | fer-name."*Ledger.Schedule*"..." | 
| 4060 |  4e 61 6d 65 20 66 6f 72 20 74 68 65 20 73 63 68    65 64 75 6c 65 20 62 75 66 66 65 72 2e 22 0a 20  | Name.for.the.schedule.buffer.".. | 
| 4080 |  20 3a 74 79 70 65 20 27 73 74 72 69 6e 67 0a 20    20 3a 67 72 6f 75 70 20 27 6c 65 64 67 65 72 2d  | .:type.'string...:group.'ledger- | 
| 40a0 |  73 63 68 65 64 75 6c 65 29 0a 0a 28 64 65 66 63    75 73 74 6f 6d 20 6c 65 64 67 65 72 2d 73 63 68  | schedule)..(defcustom.ledger-sch | 
| 40c0 |  65 64 75 6c 65 2d 6c 6f 6f 6b 2d 62 61 63 6b 77    61 72 64 20 37 0a 20 20 22 4e 75 6d 62 65 72 20  | edule-look-backward.7..."Number. | 
| 40e0 |  6f 66 20 64 61 79 73 20 74 6f 20 6c 6f 6f 6b 20    62 61 63 6b 20 69 6e 20 74 69 6d 65 20 66 6f 72  | of.days.to.look.back.in.time.for | 
| 4100 |  20 74 72 61 6e 73 61 63 74 69 6f 6e 73 2e 22 0a    20 20 3a 74 79 70 65 20 27 69 6e 74 65 67 65 72  | .transactions."...:type.'integer | 
| 4120 |  0a 20 20 3a 67 72 6f 75 70 20 27 6c 65 64 67 65    72 2d 73 63 68 65 64 75 6c 65 29 0a 0a 28 64 65  | ...:group.'ledger-schedule)..(de | 
| 4140 |  66 63 75 73 74 6f 6d 20 6c 65 64 67 65 72 2d 73    63 68 65 64 75 6c 65 2d 6c 6f 6f 6b 2d 66 6f 72  | fcustom.ledger-schedule-look-for | 
| 4160 |  77 61 72 64 20 31 34 0a 20 20 22 4e 75 6d 62 65    72 20 6f 66 20 64 61 79 73 20 61 75 74 6f 20 6c  | ward.14..."Number.of.days.auto.l | 
| 4180 |  6f 6f 6b 20 66 6f 72 77 61 72 64 20 74 6f 20 72    65 63 6f 6d 6d 65 6e 64 20 74 72 61 6e 73 61 63  | ook.forward.to.recommend.transac | 
| 41a0 |  74 69 6f 6e 73 2e 22 0a 20 20 3a 74 79 70 65 20    27 69 6e 74 65 67 65 72 0a 20 20 3a 67 72 6f 75  | tions."...:type.'integer...:grou | 
| 41c0 |  70 20 27 6c 65 64 67 65 72 2d 73 63 68 65 64 75    6c 65 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20  | p.'ledger-schedule)..(defcustom. | 
| 41e0 |  6c 65 64 67 65 72 2d 73 63 68 65 64 75 6c 65 2d    66 69 6c 65 20 22 7e 2f 6c 65 64 67 65 72 2d 73  | ledger-schedule-file."~/ledger-s | 
| 4200 |  63 68 65 64 75 6c 65 2e 6c 65 64 67 65 72 22 0a    20 20 22 46 69 6c 65 20 74 6f 20 66 69 6e 64 20  | chedule.ledger"..."File.to.find. | 
| 4220 |  73 63 68 65 64 75 6c 65 64 20 74 72 61 6e 73 61    63 74 69 6f 6e 73 2e 22 0a 20 20 3a 74 79 70 65  | scheduled.transactions."...:type | 
| 4240 |  20 27 66 69 6c 65 0a 20 20 3a 67 72 6f 75 70 20    27 6c 65 64 67 65 72 2d 73 63 68 65 64 75 6c 65  | .'file...:group.'ledger-schedule | 
| 4260 |  29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6c 65    64 67 65 72 2d 73 63 68 65 64 75 6c 65 2d 77 65  | )..(defcustom.ledger-schedule-we | 
| 4280 |  65 6b 2d 64 61 79 73 20 27 28 28 22 4d 6f 22 20    31 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | ek-days.'(("Mo".1).............. | 
| 42a0 |  20 20 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 22 54 75 22 20  | ..........................("Tu". | 
| 42c0 |  32 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  | 2).............................. | 
| 42e0 |  20 20 20 20 20 20 20 20 20 20 28 22 57 65 22 20    33 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | ..........("We".3).............. | 
| 4300 |  20 20 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 22 54 68 22 20  | ..........................("Th". | 
| 4320 |  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 20 20 20 20 20 20 20  | 4).............................. | 
| 4340 |  20 20 20 20 20 20 20 20 20 20 28 22 46 72 22 20    35 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | ..........("Fr".5).............. | 
| 4360 |  20 20 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 22 53 61 22 20  | ..........................("Sa". | 
| 4380 |  36 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  | 6).............................. | 
| 43a0 |  20 20 20 20 20 20 20 20 20 20 28 22 53 75 22 20    30 29 29 0a 20 20 22 4c 69 73 74 20 6f 66 20 77  | ..........("Su".0))..."List.of.w | 
| 43c0 |  65 65 6b 64 61 79 20 61 62 62 72 65 76 69 61 74    69 6f 6e 73 2e 0a 54 68 65 72 65 20 6d 75 73 74  | eekday.abbreviations..There.must | 
| 43e0 |  20 62 65 20 65 78 61 63 74 6c 79 20 73 65 76 65    6e 20 65 6e 74 72 69 65 73 20 65 61 63 68 20 77  | .be.exactly.seven.entries.each.w | 
| 4400 |  69 74 68 20 61 20 74 77 6f 20 63 68 61 72 61 63    74 65 72 0a 61 62 62 72 65 76 69 61 74 69 6f 6e  | ith.a.two.character.abbreviation | 
| 4420 |  20 66 6f 72 20 61 20 64 61 79 20 61 6e 64 20 74    68 65 20 6e 75 6d 62 65 72 20 6f 66 20 74 68 61  | .for.a.day.and.the.number.of.tha | 
| 4440 |  74 20 64 61 79 20 69 6e 20 74 68 65 20 77 65 65    6b 2e 22 0a 20 20 3a 74 79 70 65 20 27 28 61 6c  | t.day.in.the.week."...:type.'(al | 
| 4460 |  69 73 74 20 3a 6b 65 79 2d 74 79 70 65 20 73 74    72 69 6e 67 20 3a 76 61 6c 75 65 2d 74 79 70 65  | ist.:key-type.string.:value-type | 
| 4480 |  20 28 67 72 6f 75 70 20 69 6e 74 65 67 65 72 29    29 0a 20 20 3a 67 72 6f 75 70 20 27 6c 65 64 67  | .(group.integer))...:group.'ledg | 
| 44a0 |  65 72 2d 73 63 68 65 64 75 6c 65 29 0a 0a 28 64    65 66 73 75 62 73 74 20 6c 65 64 67 65 72 2d 62  | er-schedule)..(defsubst.ledger-b | 
| 44c0 |  65 74 77 65 65 6e 20 28 76 61 6c 20 6c 6f 77 20    68 69 67 68 29 0a 20 20 22 52 65 74 75 72 6e 20  | etween.(val.low.high)..."Return. | 
| 44e0 |  54 52 55 45 20 69 66 20 56 41 4c 20 3e 3d 20 4c    4f 57 20 61 6e 64 20 3c 3d 20 48 49 47 48 2e 22  | TRUE.if.VAL.>=.LOW.and.<=.HIGH." | 
| 4500 |  0a 20 20 28 64 65 63 6c 61 72 65 20 28 6f 62 73    6f 6c 65 74 65 20 3c 3d 20 22 4c 65 64 67 65 72  | ...(declare.(obsolete.<=."Ledger | 
| 4520 |  2d 6d 6f 64 65 20 76 34 2e 30 2e 31 22 29 29 0a    20 20 28 3c 3d 20 6c 6f 77 20 76 61 6c 20 68 69  | -mode.v4.0.1"))...(<=.low.val.hi | 
| 4540 |  67 68 29 29 0a 0a 28 64 65 66 75 6e 20 6c 65 64    67 65 72 2d 73 63 68 65 64 75 6c 65 2d 64 61 79  | gh))..(defun.ledger-schedule-day | 
| 4560 |  73 2d 69 6e 2d 6d 6f 6e 74 68 20 28 6d 6f 6e 74    68 20 79 65 61 72 29 0a 20 20 22 52 65 74 75 72  | s-in-month.(month.year)..."Retur | 
| 4580 |  6e 20 6e 75 6d 62 65 72 20 6f 66 20 64 61 79 73    20 69 6e 20 74 68 65 20 4d 4f 4e 54 48 2c 20 4d  | n.number.of.days.in.the.MONTH,.M | 
| 45a0 |  4f 4e 54 48 20 69 73 20 66 72 6f 6d 20 31 20 74    6f 20 31 32 2e 0a 49 66 20 59 45 41 52 20 69 73  | ONTH.is.from.1.to.12..If.YEAR.is | 
| 45c0 |  20 6e 69 6c 2c 20 61 73 73 75 6d 65 20 69 74 20    69 73 20 6e 6f 74 20 61 20 6c 65 61 70 20 79 65  | .nil,.assume.it.is.not.a.leap.ye | 
| 45e0 |  61 72 22 0a 20 20 28 69 66 20 28 3c 3d 20 31 20    6d 6f 6e 74 68 20 31 32 29 0a 20 20 20 20 20 20  | ar"...(if.(<=.1.month.12)....... | 
| 4600 |  28 69 66 20 28 61 6e 64 20 79 65 61 72 20 28 64    61 74 65 2d 6c 65 61 70 2d 79 65 61 72 2d 70 20  | (if.(and.year.(date-leap-year-p. | 
| 4620 |  79 65 61 72 29 20 28 3d 20 32 20 6d 6f 6e 74 68    29 29 0a 20 20 20 20 20 20 20 20 20 20 32 39 0a  | year).(=.2.month))...........29. | 
| 4640 |  20 20 20 20 20 20 20 20 28 6e 74 68 20 28 31 2d    20 6d 6f 6e 74 68 29 20 27 28 33 31 20 32 38 20  | ........(nth.(1-.month).'(31.28. | 
| 4660 |  33 31 20 33 30 20 33 31 20 33 30 20 33 31 20 33    31 20 33 30 20 33 31 20 33 30 20 33 31 29 29 29  | 31.30.31.30.31.31.30.31.30.31))) | 
| 4680 |  0a 20 20 20 20 28 65 72 72 6f 72 20 22 4d 6f 6e    74 68 20 6f 75 74 20 6f 66 20 72 61 6e 67 65 2c  | .....(error."Month.out.of.range, | 
| 46a0 |  20 4d 4f 4e 54 48 3d 25 53 22 20 6d 6f 6e 74 68    29 29 29 0a 0a 28 64 65 66 75 6e 20 6c 65 64 67  | .MONTH=%S".month)))..(defun.ledg | 
| 46c0 |  65 72 2d 73 63 68 65 64 75 6c 65 2d 65 6e 63 6f    64 65 2d 64 61 79 2d 6f 66 2d 77 65 65 6b 20 28  | er-schedule-encode-day-of-week.( | 
| 46e0 |  64 61 79 2d 73 74 72 69 6e 67 29 0a 20 20 22 52    65 74 75 72 6e 20 74 68 65 20 6e 75 6d 65 72 69  | day-string)..."Return.the.numeri | 
| 4700 |  63 61 6c 20 64 61 79 20 6f 66 20 77 65 65 6b 20    63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 74 6f  | cal.day.of.week.corresponding.to | 
| 4720 |  20 44 41 59 2d 53 54 52 49 4e 47 2e 22 0a 20 20    28 63 61 64 72 20 28 61 73 73 6f 63 20 64 61 79  | .DAY-STRING."...(cadr.(assoc.day | 
| 4740 |  2d 73 74 72 69 6e 67 20 6c 65 64 67 65 72 2d 73    63 68 65 64 75 6c 65 2d 77 65 65 6b 2d 64 61 79  | -string.ledger-schedule-week-day | 
| 4760 |  73 29 29 29 0a 0a 3b 3b 20 4d 61 63 72 6f 73 20    74 6f 20 68 61 6e 64 6c 65 20 64 61 74 65 20 65  | s)))..;;.Macros.to.handle.date.e | 
| 4780 |  78 70 72 65 73 73 69 6f 6e 73 0a 0a 28 64 65 66    75 6e 20 6c 65 64 67 65 72 2d 73 63 68 65 64 75  | xpressions..(defun.ledger-schedu | 
| 47a0 |  6c 65 2d 63 6f 6e 73 74 72 61 69 6e 2d 64 61 79    2d 69 6e 2d 6d 6f 6e 74 68 20 28 63 6f 75 6e 74  | le-constrain-day-in-month.(count | 
| 47c0 |  20 64 61 79 2d 6f 66 2d 77 65 65 6b 29 0a 20 20    22 52 65 74 75 72 6e 20 61 20 66 6f 72 6d 20 74  | .day-of-week)..."Return.a.form.t | 
| 47e0 |  68 61 74 20 72 65 74 75 72 6e 73 20 54 52 55 45    20 66 6f 72 20 74 68 65 20 20 74 68 65 20 43 4f  | hat.returns.TRUE.for.the..the.CO | 
| 4800 |  55 4e 54 20 44 41 59 2d 4f 46 2d 57 45 45 4b 2e    0a 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 72 65  | UNT.DAY-OF-WEEK..For.example,.re | 
| 4820 |  74 75 72 6e 20 74 72 75 65 20 69 66 20 64 61 74    65 20 69 73 20 74 68 65 20 33 72 64 20 54 68 75  | turn.true.if.date.is.the.3rd.Thu | 
| 4840 |  72 73 64 61 79 20 6f 66 20 74 68 65 0a 6d 6f 6e    74 68 2e 20 20 4e 65 67 61 74 69 76 65 20 43 4f  | rsday.of.the.month...Negative.CO | 
| 4860 |  55 4e 54 20 73 74 61 72 74 73 20 66 72 6f 6d 20    74 68 65 20 65 6e 64 20 6f 66 20 74 68 65 20 6d  | UNT.starts.from.the.end.of.the.m | 
| 4880 |  6f 6e 74 68 2e 20 28 45 51 0a 43 4f 55 4e 54 20    30 29 20 6d 65 61 6e 73 20 45 56 45 52 59 20 64  | onth..(EQ.COUNT.0).means.EVERY.d | 
| 48a0 |  61 79 2d 6f 66 2d 77 65 65 6b 20 28 65 67 2e 20    65 76 65 72 79 20 53 61 74 75 72 64 61 79 29 22  | ay-of-week.(eg..every.Saturday)" | 
| 48c0 |  0a 20 20 28 69 66 20 28 61 6e 64 20 28 3c 3d 20    2d 36 20 63 6f 75 6e 74 20 36 29 20 28 3c 3d 20  | ...(if.(and.(<=.-6.count.6).(<=. | 
| 48e0 |  30 20 64 61 79 2d 6f 66 2d 77 65 65 6b 20 36 29    29 0a 20 20 20 20 20 20 28 63 6f 6e 64 20 28 28  | 0.day-of-week.6)).......(cond.(( | 
| 4900 |  7a 65 72 6f 70 20 63 6f 75 6e 74 29 20 3b 3b 20    52 65 74 75 72 6e 20 74 72 75 65 20 69 66 20 64  | zerop.count).;;.Return.true.if.d | 
| 4920 |  61 79 2d 6f 66 2d 77 65 65 6b 20 6d 61 74 63 68    65 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | ay-of-week.matches.............. | 
| 4940 |  60 28 65 71 20 28 6e 74 68 20 36 20 28 64 65 63    6f 64 65 2d 74 69 6d 65 20 64 61 74 65 29 29 20  | `(eq.(nth.6.(decode-time.date)). | 
| 4960 |  2c 64 61 79 2d 6f 66 2d 77 65 65 6b 29 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 28 28 3e 20 63  | ,day-of-week)).............((>.c | 
| 4980 |  6f 75 6e 74 20 30 29 20 3b 3b 20 50 6f 73 69 74    69 76 65 20 63 6f 75 6e 74 0a 20 20 20 20 20 20  | ount.0).;;.Positive.count....... | 
| 49a0 |  20 20 20 20 20 20 20 28 6c 65 74 20 28 28 64 65    63 6f 64 65 64 20 28 63 6c 2d 67 65 6e 73 79 6d  | .......(let.((decoded.(cl-gensym | 
| 49c0 |  29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 60 28 6c 65 74 20 28 28 2c 64 65 63 6f  | )))................`(let.((,deco | 
| 49e0 |  64 65 64 20 28 64 65 63 6f 64 65 2d 74 69 6d 65    20 64 61 74 65 29 29 29 0a 20 20 20 20 20 20 20  | ded.(decode-time.date)))........ | 
| 4a00 |  20 20 20 20 20 20 20 20 20 20 20 28 61 6e 64 20    28 65 71 20 28 6e 74 68 20 36 20 2c 64 65 63 6f  | ...........(and.(eq.(nth.6.,deco | 
| 4a20 |  64 65 64 29 20 2c 64 61 79 2d 6f 66 2d 77 65 65    6b 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | ded).,day-of-week).............. | 
| 4a40 |  20 20 20 20 20 20 20 20 20 20 28 3c 3d 20 2c 28    2a 20 28 31 2d 20 63 6f 75 6e 74 29 20 37 29 0a  | ..........(<=.,(*.(1-.count).7). | 
| 4a60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 6e 74 68 20  | ...........................(nth. | 
| 4a80 |  33 20 2c 64 65 63 6f 64 65 64 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | 3.,decoded)..................... | 
| 4aa0 |  20 20 20 20 20 20 20 2c 28 2a 20 63 6f 75 6e 74    20 37 29 29 29 29 29 29 0a 20 20 20 20 20 20 20  | .......,(*.count.7))))))........ | 
| 4ac0 |  20 20 20 20 20 28 28 3c 20 63 6f 75 6e 74 20 30    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28  | .....((<.count.0)..............( | 
| 4ae0 |  6c 65 74 20 28 28 64 61 79 73 2d 69 6e 2d 6d 6f    6e 74 68 20 28 63 6c 2d 67 65 6e 73 79 6d 29 29  | let.((days-in-month.(cl-gensym)) | 
| 4b00 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 28 64 65 63 6f 64 65 64 20 28 63 6c  | ....................(decoded.(cl | 
| 4b20 |  2d 67 65 6e 73 79 6d 29 29 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 60 28 6c 65 74 2a  | -gensym)))................`(let* | 
| 4b40 |  20 28 28 2c 64 65 63 6f 64 65 64 20 28 64 65 63    6f 64 65 2d 74 69 6d 65 20 64 61 74 65 29 29 0a  | .((,decoded.(decode-time.date)). | 
| 4b60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 28 2c 64 61 79 73 2d 69 6e  | .......................(,days-in | 
| 4b80 |  2d 6d 6f 6e 74 68 20 28 6c 65 64 67 65 72 2d 73    63 68 65 64 75 6c 65 2d 64 61 79 73 2d 69 6e 2d  | -month.(ledger-schedule-days-in- | 
| 4ba0 |  6d 6f 6e 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  | month........................... | 
| 4bc0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e    74 68 20 34 20 2c 64 65 63 6f 64 65 64 29 0a 20  | ..............(nth.4.,decoded).. | 
| 4be0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 4c00 |  20 20 20 20 20 20 20 28 6e 74 68 20 35 20 2c 64    65 63 6f 64 65 64 29 29 29 29 0a 20 20 20 20 20  | .......(nth.5.,decoded))))...... | 
| 4c20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 6e    64 20 28 65 71 20 28 6e 74 68 20 36 20 2c 64 65  | .............(and.(eq.(nth.6.,de | 
| 4c40 |  63 6f 64 65 64 29 20 2c 64 61 79 2d 6f 66 2d 77    65 65 6b 29 0a 20 20 20 20 20 20 20 20 20 20 20  | coded).,day-of-week)............ | 
| 4c60 |  20 20 20 20 20 20 20 20 20 20 20 20 28 3c 3d 20    28 2b 20 2c 64 61 79 73 2d 69 6e 2d 6d 6f 6e 74  | ............(<=.(+.,days-in-mont | 
| 4c80 |  68 20 2c 28 2a 20 63 6f 75 6e 74 20 37 29 29 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | h.,(*.count.7))................. | 
| 4ca0 |  20 20 20 20 20 20 20 20 20 20 20 28 6e 74 68 20    33 20 2c 64 65 63 6f 64 65 64 29 0a 20 20 20 20  | ...........(nth.3.,decoded)..... | 
| 4cc0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 28 2b 20 2c 64 61 79 73 2d  | .......................(+.,days- | 
| 4ce0 |  69 6e 2d 6d 6f 6e 74 68 20 2c 28 2a 20 28 31 2b    20 63 6f 75 6e 74 29 20 37 29 29 29 29 29 29 29  | in-month.,(*.(1+.count).7))))))) | 
| 4d00 |  0a 20 20 20 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 28 65 72  | .............(t..............(er | 
| 4d20 |  72 6f 72 20 22 43 4f 55 4e 54 20 6f 75 74 20 6f    66 20 72 61 6e 67 65 2c 20 43 4f 55 4e 54 3d 25  | ror."COUNT.out.of.range,.COUNT=% | 
| 4d40 |  53 22 20 63 6f 75 6e 74 29 29 29 0a 20 20 20 20    28 65 72 72 6f 72 20 22 49 6e 76 61 6c 69 64 20  | S".count))).....(error."Invalid. | 
| 4d60 |  61 72 67 75 6d 65 6e 74 20 74 6f 20 6c 65 64 67    65 72 2d 73 63 68 65 64 75 6c 65 2d 64 61 79 2d  | argument.to.ledger-schedule-day- | 
| 4d80 |  69 6e 2d 6d 6f 6e 74 68 2d 6d 61 63 72 6f 20 25    53 20 25 53 22 0a 20 20 20 20 20 20 20 20 20 20  | in-month-macro.%S.%S"........... | 
| 4da0 |  20 63 6f 75 6e 74 0a 20 20 20 20 20 20 20 20 20    20 20 64 61 79 2d 6f 66 2d 77 65 65 6b 29 29 29  | .count............day-of-week))) | 
| 4dc0 |  0a 0a 28 64 65 66 75 6e 20 6c 65 64 67 65 72 2d    73 63 68 65 64 75 6c 65 2d 63 6f 6e 73 74 72 61  | ..(defun.ledger-schedule-constra | 
| 4de0 |  69 6e 2d 65 76 65 72 79 2d 63 6f 75 6e 74 2d 64    61 79 20 28 64 61 79 2d 6f 66 2d 77 65 65 6b 20  | in-every-count-day.(day-of-week. | 
| 4e00 |  73 6b 69 70 20 73 74 61 72 74 2d 64 61 74 65 29    0a 20 20 22 52 65 74 75 72 6e 20 61 20 66 6f 72  | skip.start-date)..."Return.a.for | 
| 4e20 |  6d 20 74 68 61 74 20 69 73 20 74 72 75 65 20 66    6f 72 20 65 76 65 72 79 20 44 41 59 2d 4f 46 2d  | m.that.is.true.for.every.DAY-OF- | 
| 4e40 |  57 45 45 4b 2e 0a 53 6b 69 70 73 20 53 4b 49 50    2c 20 61 6e 64 20 73 74 61 72 74 73 20 6f 6e 20  | WEEK..Skips.SKIP,.and.starts.on. | 
| 4e60 |  53 54 41 52 54 2d 44 41 54 45 2e 0a 46 6f 72 20    65 78 61 6d 70 6c 65 20 65 76 65 72 79 20 73 65  | START-DATE..For.example.every.se | 
| 4e80 |  63 6f 6e 64 20 46 72 69 64 61 79 2c 20 72 65 67    61 72 64 6c 65 73 73 20 6f 66 20 6d 6f 6e 74 68  | cond.Friday,.regardless.of.month | 
| 4ea0 |  2e 22 0a 20 20 28 6c 65 74 20 28 28 73 74 61 72    74 2d 64 61 79 20 28 6e 74 68 20 36 20 28 64 65  | ."...(let.((start-day.(nth.6.(de | 
| 4ec0 |  63 6f 64 65 2d 74 69 6d 65 20 73 74 61 72 74 2d    64 61 74 65 29 29 29 29 0a 20 20 20 20 28 69 66  | code-time.start-date)))).....(if | 
| 4ee0 |  20 28 65 71 20 73 74 61 72 74 2d 64 61 79 20 64    61 79 2d 6f 66 2d 77 65 65 6b 29 20 20 3b 3b 20  | .(eq.start-day.day-of-week)..;;. | 
| 4f00 |  67 6f 6f 64 2c 20 63 61 6e 20 70 72 6f 63 65 65    64 0a 20 20 20 20 20 20 20 20 60 28 7a 65 72 6f  | good,.can.proceed.........`(zero | 
| 4f20 |  70 20 28 6d 6f 64 20 28 2d 20 28 74 69 6d 65 2d    74 6f 2d 64 61 79 73 20 64 61 74 65 29 20 2c 28  | p.(mod.(-.(time-to-days.date).,( | 
| 4f40 |  74 69 6d 65 2d 74 6f 2d 64 61 79 73 20 73 74 61    72 74 2d 64 61 74 65 29 29 20 2c 28 2a 20 73 6b  | time-to-days.start-date)).,(*.sk | 
| 4f60 |  69 70 20 37 29 29 29 0a 20 20 20 20 20 20 28 65    72 72 6f 72 20 22 53 54 41 52 54 2d 44 41 54 45  | ip.7))).......(error."START-DATE | 
| 4f80 |  20 64 61 79 20 6f 66 20 77 65 65 6b 20 64 6f 65    73 6e 27 74 20 6d 61 74 63 68 20 44 41 59 2d 4f  | .day.of.week.doesn't.match.DAY-O | 
| 4fa0 |  46 2d 57 45 45 4b 22 29 29 29 29 0a 0a 28 64 65    66 75 6e 20 6c 65 64 67 65 72 2d 73 63 68 65 64  | F-WEEK"))))..(defun.ledger-sched | 
| 4fc0 |  75 6c 65 2d 63 6f 6e 73 74 72 61 69 6e 2d 64 61    74 65 2d 72 61 6e 67 65 20 28 6d 6f 6e 74 68 31  | ule-constrain-date-range.(month1 | 
| 4fe0 |  20 64 61 79 31 20 6d 6f 6e 74 68 32 20 64 61 79    32 29 0a 20 20 22 52 65 74 75 72 6e 20 61 20 66  | .day1.month2.day2)..."Return.a.f | 
| 5000 |  6f 72 6d 20 6f 66 20 44 41 54 45 20 74 68 61 74    20 69 73 20 74 72 75 65 20 69 66 20 44 41 54 45  | orm.of.DATE.that.is.true.if.DATE | 
| 5020 |  20 66 61 6c 6c 73 20 62 65 74 77 65 65 6e 20 74    77 6f 20 64 61 74 65 73 2e 0a 54 68 65 20 64 61  | .falls.between.two.dates..The.da | 
| 5040 |  74 65 73 20 61 72 65 20 67 69 76 65 6e 20 62 79    20 74 68 65 20 70 61 69 72 73 20 4d 4f 4e 54 48  | tes.are.given.by.the.pairs.MONTH | 
| 5060 |  31 20 44 41 59 31 20 61 6e 64 20 4d 4f 4e 54 48    32 20 44 41 59 32 2e 22 0a 20 20 28 6c 65 74 20  | 1.DAY1.and.MONTH2.DAY2."...(let. | 
| 5080 |  28 28 64 65 63 6f 64 65 64 20 28 63 6c 2d 67 65    6e 73 79 6d 29 29 0a 20 20 20 20 20 20 20 20 28  | ((decoded.(cl-gensym)).........( | 
| 50a0 |  74 61 72 67 65 74 2d 6d 6f 6e 74 68 20 28 63 6c    2d 67 65 6e 73 79 6d 29 29 0a 20 20 20 20 20 20  | target-month.(cl-gensym))....... | 
| 50c0 |  20 20 28 74 61 72 67 65 74 2d 64 61 79 20 28 63    6c 2d 67 65 6e 73 79 6d 29 29 29 0a 20 20 20 20  | ..(target-day.(cl-gensym)))..... | 
| 50e0 |  60 28 6c 65 74 2a 20 28 28 2c 64 65 63 6f 64 65    64 20 28 64 65 63 6f 64 65 2d 74 69 6d 65 20 64  | `(let*.((,decoded.(decode-time.d | 
| 5100 |  61 74 65 29 29 0a 20 20 20 20 20 20 20 20 20 20    20 20 28 2c 74 61 72 67 65 74 2d 6d 6f 6e 74 68  | ate)).............(,target-month | 
| 5120 |  20 28 6e 74 68 20 34 20 64 65 63 6f 64 65 64 29    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 2c  | .(nth.4.decoded)).............(, | 
| 5140 |  74 61 72 67 65 74 2d 64 61 79 20 28 6e 74 68 20    33 20 64 65 63 6f 64 65 64 29 29 29 0a 20 20 20  | target-day.(nth.3.decoded))).... | 
| 5160 |  20 20 20 20 28 61 6e 64 20 28 61 6e 64 20 28 3e    20 2c 74 61 72 67 65 74 2d 6d 6f 6e 74 68 20 2c  | ....(and.(and.(>.,target-month., | 
| 5180 |  6d 6f 6e 74 68 31 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 28 3c 20 2c 74 61 72  | month1)..................(<.,tar | 
| 51a0 |  67 65 74 2d 6d 6f 6e 74 68 20 2c 6d 6f 6e 74 68    32 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | get-month.,month2))............. | 
| 51c0 |  28 61 6e 64 20 28 3e 20 2c 74 61 72 67 65 74 2d    64 61 79 20 2c 64 61 79 31 29 0a 20 20 20 20 20  | (and.(>.,target-day.,day1)...... | 
| 51e0 |  20 20 20 20 20 20 20 20 20 20 20 20 28 3c 20 2c    74 61 72 67 65 74 2d 64 61 79 20 2c 64 61 79 32  | ............(<.,target-day.,day2 | 
| 5200 |  29 29 29 29 29 29 0a 0a 0a 0a 28 64 65 66 75 6e    20 6c 65 64 67 65 72 2d 73 63 68 65 64 75 6c 65  | ))))))....(defun.ledger-schedule | 
| 5220 |  2d 73 63 61 6e 2d 74 72 61 6e 73 61 63 74 69 6f    6e 73 20 28 73 63 68 65 64 75 6c 65 2d 66 69 6c  | -scan-transactions.(schedule-fil | 
| 5240 |  65 29 0a 20 20 22 53 63 61 6e 20 53 43 48 45 44    55 4c 45 2d 46 49 4c 45 20 61 6e 64 20 72 65 74  | e)..."Scan.SCHEDULE-FILE.and.ret | 
| 5260 |  75 72 6e 20 61 20 6c 69 73 74 20 6f 66 20 74 72    61 6e 73 61 63 74 69 6f 6e 73 20 77 69 74 68 20  | urn.a.list.of.transactions.with. | 
| 5280 |  64 61 74 65 20 70 72 65 64 69 63 61 74 65 73 2e    0a 54 68 65 20 63 61 72 20 6f 66 20 65 61 63 68  | date.predicates..The.car.of.each | 
| 52a0 |  20 69 74 65 6d 20 69 73 20 61 20 66 75 6e 63 74    69 6f 6e 20 6f 66 20 64 61 74 65 20 74 68 61 74  | .item.is.a.function.of.date.that | 
| 52c0 |  20 72 65 74 75 72 6e 73 20 74 72 75 65 20 69 66    0a 74 68 65 20 74 72 61 6e 73 61 63 74 69 6f 6e  | .returns.true.if.the.transaction | 
| 52e0 |  20 73 68 6f 75 6c 64 20 62 65 20 6c 6f 67 67 65    64 20 66 6f 72 20 74 68 61 74 20 64 61 79 2e 22  | .should.be.logged.for.that.day." | 
| 5300 |  0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 20    22 66 46 69 6c 65 20 6e 61 6d 65 3a 20 22 29 0a  | ...(interactive."fFile.name:."). | 
| 5320 |  20 20 28 6c 65 74 20 28 28 78 61 63 74 2d 6c 69    73 74 20 28 6c 69 73 74 29 29 29 0a 20 20 20 20  | ..(let.((xact-list.(list)))..... | 
| 5340 |  28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75    66 66 65 72 0a 20 20 20 20 20 20 20 20 28 66 69  | (with-current-buffer.........(fi | 
| 5360 |  6e 64 2d 66 69 6c 65 2d 6e 6f 73 65 6c 65 63 74    20 73 63 68 65 64 75 6c 65 2d 66 69 6c 65 29 0a  | nd-file-noselect.schedule-file). | 
| 5380 |  20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72    20 28 70 6f 69 6e 74 2d 6d 69 6e 29 29 0a 20 20  | ......(goto-char.(point-min))... | 
| 53a0 |  20 20 20 20 28 77 68 69 6c 65 20 28 72 65 2d 73    65 61 72 63 68 2d 66 6f 72 77 61 72 64 20 22 5e  | ....(while.(re-search-forward."^ | 
| 53c0 |  5c 5c 5b 5c 5c 28 2e 2a 5c 5c 29 5c 5c 5d 20 22    20 6e 69 6c 20 74 29 0a 20 20 20 20 20 20 20 20  | \\[\\(.*\\)\\].".nil.t)......... | 
| 53e0 |  28 6c 65 74 20 28 28 64 61 74 65 2d 64 65 73 63    72 69 70 74 6f 72 20 22 22 29 0a 20 20 20 20 20  | (let.((date-descriptor."")...... | 
| 5400 |  20 20 20 20 20 20 20 20 20 28 74 72 61 6e 73 61    63 74 69 6f 6e 20 6e 69 6c 29 0a 20 20 20 20 20  | .........(transaction.nil)...... | 
| 5420 |  20 20 20 20 20 20 20 20 20 28 78 61 63 74 2d 73    74 61 72 74 20 28 6d 61 74 63 68 2d 65 6e 64 20  | .........(xact-start.(match-end. | 
| 5440 |  30 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28    73 65 74 71 20 64 61 74 65 2d 64 65 73 63 72 69  | 0)))...........(setq.date-descri | 
| 5460 |  70 74 6f 72 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 6c 65 64 67 65 72 2d 73 63 68  | ptor.................(ledger-sch | 
| 5480 |  65 64 75 6c 65 2d 72 65 61 64 2d 64 65 73 63 72    69 70 74 6f 72 2d 74 72 65 65 0a 20 20 20 20 20  | edule-read-descriptor-tree...... | 
| 54a0 |  20 20 20 20 20 20 20 20 20 20 20 20 28 62 75 66    66 65 72 2d 73 75 62 73 74 72 69 6e 67 2d 6e 6f  | ............(buffer-substring-no | 
| 54c0 |  2d 70 72 6f 70 65 72 74 69 65 73 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d  | -properties...................(m | 
| 54e0 |  61 74 63 68 2d 62 65 67 69 6e 6e 69 6e 67 20 30    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | atch-beginning.0)............... | 
| 5500 |  20 20 20 20 28 6d 61 74 63 68 2d 65 6e 64 20 30    29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28  | ....(match-end.0))))...........( | 
| 5520 |  66 6f 72 77 61 72 64 2d 70 61 72 61 67 72 61 70    68 29 0a 20 20 20 20 20 20 20 20 20 20 28 73 65  | forward-paragraph)...........(se | 
| 5540 |  74 71 20 74 72 61 6e 73 61 63 74 69 6f 6e 20 28    6c 69 73 74 20 64 61 74 65 2d 64 65 73 63 72 69  | tq.transaction.(list.date-descri | 
| 5560 |  70 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 20 20 20 20  | ptor............................ | 
| 5580 |  20 20 20 20 20 20 20 28 62 75 66 66 65 72 2d 73    75 62 73 74 72 69 6e 67 2d 6e 6f 2d 70 72 6f 70  | .......(buffer-substring-no-prop | 
| 55a0 |  65 72 74 69 65 73 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | erties.......................... | 
| 55c0 |  20 20 20 20 20 20 20 20 20 20 78 61 63 74 2d 73    74 61 72 74 0a 20 20 20 20 20 20 20 20 20 20 20  | ..........xact-start............ | 
| 55e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 28 70 6f 69 6e 74 29 29  | ........................(point)) | 
| 5600 |  29 29 0a 20 20 20 20 20 20 20 20 20 20 28 73 65    74 71 20 78 61 63 74 2d 6c 69 73 74 20 28 63 6f  | ))...........(setq.xact-list.(co | 
| 5620 |  6e 73 20 74 72 61 6e 73 61 63 74 69 6f 6e 20 78    61 63 74 2d 6c 69 73 74 29 29 29 29 0a 20 20 20  | ns.transaction.xact-list)))).... | 
| 5640 |  20 20 20 78 61 63 74 2d 6c 69 73 74 29 29 29 0a    0a 28 64 65 66 75 6e 20 6c 65 64 67 65 72 2d 73  | ...xact-list)))..(defun.ledger-s | 
| 5660 |  63 68 65 64 75 6c 65 2d 72 65 61 64 2d 64 65 73    63 72 69 70 74 6f 72 2d 74 72 65 65 20 28 64 65  | chedule-read-descriptor-tree.(de | 
| 5680 |  73 63 72 69 70 74 6f 72 2d 73 74 72 69 6e 67 29    0a 20 20 22 52 65 61 64 20 44 45 53 43 52 49 50  | scriptor-string)..."Read.DESCRIP | 
| 56a0 |  54 4f 52 2d 53 54 52 49 4e 47 20 61 6e 64 20 72    65 74 75 72 6e 20 61 20 66 6f 72 6d 20 74 68 61  | TOR-STRING.and.return.a.form.tha | 
| 56c0 |  74 20 65 76 61 6c 75 61 74 65 73 20 64 61 74 65    73 2e 22 0a 20 20 28 6c 65 64 67 65 72 2d 73 63  | t.evaluates.dates."...(ledger-sc | 
| 56e0 |  68 65 64 75 6c 65 2d 74 72 61 6e 73 66 6f 72 6d    2d 61 75 74 6f 2d 74 72 65 65 0a 20 20 20 28 73  | hedule-transform-auto-tree....(s | 
| 5700 |  70 6c 69 74 2d 73 74 72 69 6e 67 0a 20 20 20 20    28 73 75 62 73 74 72 69 6e 67 20 64 65 73 63 72  | plit-string.....(substring.descr | 
| 5720 |  69 70 74 6f 72 2d 73 74 72 69 6e 67 20 31 20 28    73 74 72 69 6e 67 2d 6d 61 74 63 68 20 22 5d 22  | iptor-string.1.(string-match."]" | 
| 5740 |  20 64 65 73 63 72 69 70 74 6f 72 2d 73 74 72 69    6e 67 29 29 20 22 20 22 29 29 29 0a 0a 28 64 65  | .descriptor-string)).".")))..(de | 
| 5760 |  66 75 6e 20 6c 65 64 67 65 72 2d 73 63 68 65 64    75 6c 65 2d 74 72 61 6e 73 66 6f 72 6d 2d 61 75  | fun.ledger-schedule-transform-au | 
| 5780 |  74 6f 2d 74 72 65 65 20 28 64 65 73 63 72 69 70    74 6f 72 2d 73 74 72 69 6e 67 2d 6c 69 73 74 29  | to-tree.(descriptor-string-list) | 
| 57a0 |  0a 20 20 22 54 61 6b 65 20 44 45 53 43 52 49 50    54 4f 52 2d 53 54 52 49 4e 47 2d 4c 49 53 54 2c  | ..."Take.DESCRIPTOR-STRING-LIST, | 
| 57c0 |  20 61 6e 64 20 72 65 74 75 72 6e 20 61 20 73 74    72 69 6e 67 20 77 69 74 68 20 61 20 6c 61 6d 62  | .and.return.a.string.with.a.lamb | 
| 57e0 |  64 61 20 66 75 6e 63 74 69 6f 6e 20 6f 66 20 64    61 74 65 2e 22 0a 20 20 3b 3b 20 75 73 65 20 66  | da.function.of.date."...;;.use.f | 
| 5800 |  75 6e 63 61 6c 6c 20 74 6f 20 75 73 65 20 74 68    65 20 6c 61 6d 62 64 61 20 66 75 6e 63 74 69 6f  | uncall.to.use.the.lambda.functio | 
| 5820 |  6e 20 73 70 69 74 20 6f 75 74 20 68 65 72 65 0a    20 20 28 69 66 20 28 63 6f 6e 73 70 20 64 65 73  | n.spit.out.here...(if.(consp.des | 
| 5840 |  63 72 69 70 74 6f 72 2d 73 74 72 69 6e 67 2d 6c    69 73 74 29 0a 20 20 20 20 20 20 28 6c 65 74 20  | criptor-string-list).......(let. | 
| 5860 |  28 72 65 73 75 6c 74 29 0a 20 20 20 20 20 20 20    20 28 77 68 69 6c 65 20 28 63 6f 6e 73 70 20 64  | (result).........(while.(consp.d | 
| 5880 |  65 73 63 72 69 70 74 6f 72 2d 73 74 72 69 6e 67    2d 6c 69 73 74 29 0a 20 20 20 20 20 20 20 20 20  | escriptor-string-list).......... | 
| 58a0 |  20 28 6c 65 74 20 28 28 6e 65 77 63 61 72 20 28    63 61 72 20 64 65 73 63 72 69 70 74 6f 72 2d 73  | .(let.((newcar.(car.descriptor-s | 
| 58c0 |  74 72 69 6e 67 2d 6c 69 73 74 29 29 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 63  | tring-list))).............(if.(c | 
| 58e0 |  6f 6e 73 70 20 6e 65 77 63 61 72 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65  | onsp.newcar).................(se | 
| 5900 |  74 71 20 6e 65 77 63 61 72 20 28 6c 65 64 67 65    72 2d 73 63 68 65 64 75 6c 65 2d 74 72 61 6e 73  | tq.newcar.(ledger-schedule-trans | 
| 5920 |  66 6f 72 6d 2d 61 75 74 6f 2d 74 72 65 65 20 28    63 61 72 20 64 65 73 63 72 69 70 74 6f 72 2d 73  | form-auto-tree.(car.descriptor-s | 
| 5940 |  74 72 69 6e 67 2d 6c 69 73 74 29 29 29 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 6e 65  | tring-list)))).............;;.ne | 
| 5960 |  77 63 61 72 20 6d 61 79 20 62 65 20 61 20 63 6f    6e 73 20 6e 6f 77 2c 20 61 66 74 65 72 20 6c 65  | wcar.may.be.a.cons.now,.after.le | 
| 5980 |  64 67 65 72 2d 73 63 68 65 64 75 6c 65 2d 74 72    61 6e 73 66 72 6f 6d 2d 61 75 74 6f 2d 74 72 65  | dger-schedule-transfrom-auto-tre | 
| 59a0 |  65 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 69    66 20 28 63 6f 6e 73 70 20 6e 65 77 63 61 72 29  | e.............(if.(consp.newcar) | 
| 59c0 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 70 75 73 68 20 6e 65 77 63 61 72 20 72 65  | .................(push.newcar.re | 
| 59e0 |  73 75 6c 74 29 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 3b 3b 20 74 68 69 73 20 69 73 20 77  | sult)...............;;.this.is.w | 
| 5a00 |  68 65 72 65 20 77 65 20 61 63 74 75 61 6c 6c 79    20 74 75 72 6e 20 74 68 65 20 73 74 72 69 6e 67  | here.we.actually.turn.the.string | 
| 5a20 |  20 64 65 73 63 72 69 70 74 6f 72 20 69 6e 74 6f    20 75 73 65 66 75 6c 20 6c 69 73 70 0a 20 20 20  | .descriptor.into.useful.lisp.... | 
| 5a40 |  20 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68    20 28 6c 65 64 67 65 72 2d 73 63 68 65 64 75 6c  | ...........(push.(ledger-schedul | 
| 5a60 |  65 2d 63 6f 6d 70 69 6c 65 2d 63 6f 6e 73 74 72    61 69 6e 74 73 20 6e 65 77 63 61 72 29 20 72 65  | e-compile-constraints.newcar).re | 
| 5a80 |  73 75 6c 74 29 29 20 29 0a 20 20 20 20 20 20 20    20 20 20 28 73 65 74 71 20 64 65 73 63 72 69 70  | sult)).)...........(setq.descrip | 
| 5aa0 |  74 6f 72 2d 73 74 72 69 6e 67 2d 6c 69 73 74 20    28 63 64 72 20 64 65 73 63 72 69 70 74 6f 72 2d  | tor-string-list.(cdr.descriptor- | 
| 5ac0 |  73 74 72 69 6e 67 2d 6c 69 73 74 29 29 29 0a 0a    20 20 20 20 20 20 20 20 3b 3b 20 74 69 65 20 75  | string-list)))..........;;.tie.u | 
| 5ae0 |  70 20 61 6c 6c 20 74 68 65 20 63 6c 61 75 73 65    73 20 69 6e 20 61 20 62 69 67 20 6f 72 20 6c 61  | p.all.the.clauses.in.a.big.or.la | 
| 5b00 |  6d 62 64 61 2c 20 61 6e 64 20 72 65 74 75 72 6e    0a 20 20 20 20 20 20 20 20 3b 3b 20 74 68 65 20  | mbda,.and.return.........;;.the. | 
| 5b20 |  6c 61 6d 62 64 61 20 66 75 6e 63 74 69 6f 6e 20    61 73 20 6c 69 73 74 20 74 6f 20 62 65 20 65 78  | lambda.function.as.list.to.be.ex | 
| 5b40 |  65 63 75 74 65 64 20 62 79 20 66 75 6e 63 61 6c    6c 0a 20 20 20 20 20 20 20 20 60 28 6c 61 6d 62  | ecuted.by.funcall.........`(lamb | 
| 5b60 |  64 61 20 28 64 61 74 65 29 0a 20 20 20 20 20 20    20 20 20 20 20 2c 28 6e 63 6f 6e 63 20 28 6c 69  | da.(date)............,(nconc.(li | 
| 5b80 |  73 74 20 27 6f 72 29 20 28 6e 72 65 76 65 72 73    65 20 72 65 73 75 6c 74 29 20 64 65 73 63 72 69  | st.'or).(nreverse.result).descri | 
| 5ba0 |  70 74 6f 72 2d 73 74 72 69 6e 67 2d 6c 69 73 74    29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6c 65  | ptor-string-list)))))..(defun.le | 
| 5bc0 |  64 67 65 72 2d 73 63 68 65 64 75 6c 65 2d 63 6f    6d 70 69 6c 65 2d 63 6f 6e 73 74 72 61 69 6e 74  | dger-schedule-compile-constraint | 
| 5be0 |  73 20 28 64 65 73 63 72 69 70 74 6f 72 2d 73 74    72 69 6e 67 29 0a 20 20 22 52 65 74 75 72 6e 20  | s.(descriptor-string)..."Return. | 
| 5c00 |  61 20 6c 69 73 74 20 77 69 74 68 20 74 68 65 20    79 65 61 72 2c 20 6d 6f 6e 74 68 20 61 6e 64 20  | a.list.with.the.year,.month.and. | 
| 5c20 |  64 61 79 20 66 69 65 6c 64 73 20 73 70 6c 69 74    2e 22 0a 20 20 28 6c 65 74 20 28 28 66 69 65 6c  | day.fields.split."...(let.((fiel | 
| 5c40 |  64 73 20 28 73 70 6c 69 74 2d 73 74 72 69 6e 67    20 64 65 73 63 72 69 70 74 6f 72 2d 73 74 72 69  | ds.(split-string.descriptor-stri | 
| 5c60 |  6e 67 20 22 5b 2f 5c 5c 2d 5d 22 20 74 29 29 29    0a 20 20 20 20 28 6c 69 73 74 20 27 61 6e 64 0a  | ng."[/\\-]".t))).....(list.'and. | 
| 5c80 |  20 20 20 20 20 20 20 20 20 20 28 6c 65 64 67 65    72 2d 73 63 68 65 64 75 6c 65 2d 63 6f 6e 73 74  | ..........(ledger-schedule-const | 
| 5ca0 |  72 61 69 6e 2d 64 61 79 20 28 6e 74 68 20 30 20    66 69 65 6c 64 73 29 20 28 6e 74 68 20 31 20 66  | rain-day.(nth.0.fields).(nth.1.f | 
| 5cc0 |  69 65 6c 64 73 29 20 28 6e 74 68 20 32 20 66 69    65 6c 64 73 29 29 0a 20 20 20 20 20 20 20 20 20  | ields).(nth.2.fields)).......... | 
| 5ce0 |  20 28 6c 65 64 67 65 72 2d 73 63 68 65 64 75 6c    65 2d 63 6f 6e 73 74 72 61 69 6e 2d 79 65 61 72  | .(ledger-schedule-constrain-year | 
| 5d00 |  20 28 6e 74 68 20 30 20 66 69 65 6c 64 73 29 20    28 6e 74 68 20 31 20 66 69 65 6c 64 73 29 20 28  | .(nth.0.fields).(nth.1.fields).( | 
| 5d20 |  6e 74 68 20 32 20 66 69 65 6c 64 73 29 29 0a 20    20 20 20 20 20 20 20 20 20 28 6c 65 64 67 65 72  | nth.2.fields))...........(ledger | 
| 5d40 |  2d 73 63 68 65 64 75 6c 65 2d 63 6f 6e 73 74 72    61 69 6e 2d 6d 6f 6e 74 68 20 28 6e 74 68 20 30  | -schedule-constrain-month.(nth.0 | 
| 5d60 |  20 66 69 65 6c 64 73 29 20 28 6e 74 68 20 31 20    66 69 65 6c 64 73 29 20 28 6e 74 68 20 32 20 66  | .fields).(nth.1.fields).(nth.2.f | 
| 5d80 |  69 65 6c 64 73 29 29 29 29 29 0a 0a 28 64 65 66    75 6e 20 6c 65 64 67 65 72 2d 73 63 68 65 64 75  | ields)))))..(defun.ledger-schedu | 
| 5da0 |  6c 65 2d 63 6f 6e 73 74 72 61 69 6e 2d 79 65 61    72 20 28 79 65 61 72 2d 64 65 73 63 20 6d 6f 6e  | le-constrain-year.(year-desc.mon | 
| 5dc0 |  74 68 2d 64 65 73 63 20 64 61 79 2d 64 65 73 63    29 0a 20 20 22 52 65 74 75 72 6e 20 61 20 66 6f  | th-desc.day-desc)..."Return.a.fo | 
| 5de0 |  72 6d 20 74 68 61 74 20 63 6f 6e 73 74 72 61 69    6e 73 20 74 68 65 20 79 65 61 72 2e 0a 0a 59 45  | rm.that.constrains.the.year...YE | 
| 5e00 |  41 52 2d 44 45 53 43 2c 20 4d 4f 4e 54 48 2d 44    45 53 43 2c 20 61 6e 64 20 44 41 59 2d 44 45 53  | AR-DESC,.MONTH-DESC,.and.DAY-DES | 
| 5e20 |  43 20 61 72 65 20 74 68 65 20 73 74 72 69 6e 67    20 70 6f 72 74 69 6f 6e 73 20 6f 66 20 74 68 65  | C.are.the.string.portions.of.the | 
| 5e40 |  0a 64 61 74 65 20 64 65 73 63 72 69 70 74 6f 72    2e 22 0a 20 20 28 63 6f 6e 64 0a 20 20 20 28 28  | .date.descriptor."...(cond....(( | 
| 5e60 |  73 74 72 69 6e 67 2d 6d 61 74 63 68 20 22 5b 41    2d 5a 61 2d 7a 5d 22 20 64 61 79 2d 64 65 73 63  | string-match."[A-Za-z]".day-desc | 
| 5e80 |  29 20 74 29 20 3b 20 74 68 65 72 65 20 69 73 20    61 6e 20 61 64 76 61 6e 63 65 64 20 64 61 79 20  | ).t).;.there.is.an.advanced.day. | 
| 5ea0 |  64 65 73 63 72 69 70 74 6f 72 20 77 68 69 63 68    20 6f 76 65 72 72 69 64 65 73 20 74 68 65 20 79  | descriptor.which.overrides.the.y | 
| 5ec0 |  65 61 72 0a 20 20 20 28 28 73 74 72 69 6e 67 3d    20 79 65 61 72 2d 64 65 73 63 20 22 2a 22 29 20  | ear....((string=.year-desc."*"). | 
| 5ee0 |  74 29 0a 20 20 20 28 28 2f 3d 20 30 20 28 73 74    72 69 6e 67 2d 74 6f 2d 6e 75 6d 62 65 72 20 79  | t)....((/=.0.(string-to-number.y | 
| 5f00 |  65 61 72 2d 64 65 73 63 29 29 0a 20 20 20 20 60    28 6d 65 6d 71 20 28 6e 74 68 20 35 20 28 64 65  | ear-desc)).....`(memq.(nth.5.(de | 
| 5f20 |  63 6f 64 65 2d 74 69 6d 65 20 64 61 74 65 29 29    20 27 2c 28 6d 61 70 63 61 72 20 27 73 74 72 69  | code-time.date)).',(mapcar.'stri | 
| 5f40 |  6e 67 2d 74 6f 2d 6e 75 6d 62 65 72 20 28 73 70    6c 69 74 2d 73 74 72 69 6e 67 20 79 65 61 72 2d  | ng-to-number.(split-string.year- | 
| 5f60 |  64 65 73 63 20 22 2c 22 29 29 29 29 0a 20 20 20    28 74 0a 20 20 20 20 28 65 72 72 6f 72 20 22 49  | desc.","))))....(t.....(error."I | 
| 5f80 |  6d 70 72 6f 70 65 72 6c 79 20 73 70 65 63 69 66    69 65 64 20 79 65 61 72 20 63 6f 6e 73 74 72 61  | mproperly.specified.year.constra | 
| 5fa0 |  69 6e 74 3a 20 25 73 20 25 73 20 25 73 22 20 79    65 61 72 2d 64 65 73 63 20 6d 6f 6e 74 68 2d 64  | int:.%s.%s.%s".year-desc.month-d | 
| 5fc0 |  65 73 63 20 64 61 79 2d 64 65 73 63 29 29 29 29    0a 0a 28 64 65 66 75 6e 20 6c 65 64 67 65 72 2d  | esc.day-desc))))..(defun.ledger- | 
| 5fe0 |  73 63 68 65 64 75 6c 65 2d 63 6f 6e 73 74 72 61    69 6e 2d 6d 6f 6e 74 68 20 28 79 65 61 72 2d 64  | schedule-constrain-month.(year-d | 
| 6000 |  65 73 63 20 6d 6f 6e 74 68 2d 64 65 73 63 20 64    61 79 2d 64 65 73 63 29 0a 20 20 22 52 65 74 75  | esc.month-desc.day-desc)..."Retu | 
| 6020 |  72 6e 20 61 20 66 6f 72 6d 20 74 68 61 74 20 63    6f 6e 73 74 72 61 69 6e 73 20 74 68 65 20 6d 6f  | rn.a.form.that.constrains.the.mo | 
| 6040 |  6e 74 68 2e 0a 0a 59 45 41 52 2d 44 45 53 43 2c    20 4d 4f 4e 54 48 2d 44 45 53 43 2c 20 61 6e 64  | nth...YEAR-DESC,.MONTH-DESC,.and | 
| 6060 |  20 44 41 59 2d 44 45 53 43 20 61 72 65 20 74 68    65 20 73 74 72 69 6e 67 20 70 6f 72 74 69 6f 6e  | .DAY-DESC.are.the.string.portion | 
| 6080 |  73 20 6f 66 20 74 68 65 0a 64 61 74 65 20 64 65    73 63 72 69 70 74 6f 72 2e 22 0a 20 20 28 63 6f  | s.of.the.date.descriptor."...(co | 
| 60a0 |  6e 64 0a 20 20 20 28 28 73 74 72 69 6e 67 2d 6d    61 74 63 68 20 22 5b 41 2d 5a 61 2d 7a 5d 22 20  | nd....((string-match."[A-Za-z]". | 
| 60c0 |  64 61 79 2d 64 65 73 63 29 20 74 29 20 3b 20 74    68 65 72 65 20 69 73 20 61 6e 20 61 64 76 61 6e  | day-desc).t).;.there.is.an.advan | 
| 60e0 |  63 65 64 20 64 61 79 20 64 65 73 63 72 69 70 74    6f 72 20 77 68 69 63 68 20 6f 76 65 72 72 69 64  | ced.day.descriptor.which.overrid | 
| 6100 |  65 73 20 74 68 65 20 6d 6f 6e 74 68 0a 20 20 20    28 28 73 74 72 69 6e 67 3d 20 6d 6f 6e 74 68 2d  | es.the.month....((string=.month- | 
| 6120 |  64 65 73 63 20 22 2a 22 29 0a 20 20 20 20 74 29    20 20 3b 3b 20 61 6c 77 61 79 73 20 6d 61 74 63  | desc."*").....t)..;;.always.matc | 
| 6140 |  68 0a 20 20 20 28 28 73 74 72 69 6e 67 3d 20 6d    6f 6e 74 68 2d 64 65 73 63 20 22 45 22 29 20 20  | h....((string=.month-desc."E").. | 
| 6160 |  3b 3b 20 45 76 65 6e 0a 20 20 20 20 60 28 63 6c    2d 65 76 65 6e 70 20 28 6e 74 68 20 34 20 28 64  | ;;.Even.....`(cl-evenp.(nth.4.(d | 
| 6180 |  65 63 6f 64 65 2d 74 69 6d 65 20 64 61 74 65 29    29 29 29 0a 20 20 20 28 28 73 74 72 69 6e 67 3d  | ecode-time.date))))....((string= | 
| 61a0 |  20 6d 6f 6e 74 68 2d 64 65 73 63 20 22 4f 22 29    20 20 3b 3b 20 4f 64 64 0a 20 20 20 20 60 28 63  | .month-desc."O")..;;.Odd.....`(c | 
| 61c0 |  6c 2d 6f 64 64 70 20 28 6e 74 68 20 34 20 28 64    65 63 6f 64 65 2d 74 69 6d 65 20 64 61 74 65 29  | l-oddp.(nth.4.(decode-time.date) | 
| 61e0 |  29 29 29 0a 20 20 20 28 28 2f 3d 20 30 20 28 73    74 72 69 6e 67 2d 74 6f 2d 6e 75 6d 62 65 72 20  | )))....((/=.0.(string-to-number. | 
| 6200 |  6d 6f 6e 74 68 2d 64 65 73 63 29 29 20 3b 3b 20    53 74 61 72 74 73 20 77 69 74 68 20 6e 75 6d 62  | month-desc)).;;.Starts.with.numb | 
| 6220 |  65 72 0a 20 20 20 20 60 28 6d 65 6d 71 20 28 6e    74 68 20 34 20 28 64 65 63 6f 64 65 2d 74 69 6d  | er.....`(memq.(nth.4.(decode-tim | 
| 6240 |  65 20 64 61 74 65 29 29 20 27 2c 28 6d 61 70 63    61 72 20 27 73 74 72 69 6e 67 2d 74 6f 2d 6e 75  | e.date)).',(mapcar.'string-to-nu | 
| 6260 |  6d 62 65 72 20 28 73 70 6c 69 74 2d 73 74 72 69    6e 67 20 6d 6f 6e 74 68 2d 64 65 73 63 20 22 2c  | mber.(split-string.month-desc.", | 
| 6280 |  22 29 29 29 29 0a 20 20 20 28 74 0a 20 20 20 20    28 65 72 72 6f 72 20 22 49 6d 70 72 6f 70 65 72  | "))))....(t.....(error."Improper | 
| 62a0 |  6c 79 20 73 70 65 63 69 66 69 65 64 20 6d 6f 6e    74 68 20 63 6f 6e 73 74 72 61 69 6e 74 3a 20 25  | ly.specified.month.constraint:.% | 
| 62c0 |  73 20 25 73 20 25 73 22 20 79 65 61 72 2d 64 65    73 63 20 6d 6f 6e 74 68 2d 64 65 73 63 20 64 61  | s.%s.%s".year-desc.month-desc.da | 
| 62e0 |  79 2d 64 65 73 63 29 29 29 29 0a 0a 28 64 65 66    75 6e 20 6c 65 64 67 65 72 2d 73 63 68 65 64 75  | y-desc))))..(defun.ledger-schedu | 
| 6300 |  6c 65 2d 63 6f 6e 73 74 72 61 69 6e 2d 64 61 79    20 28 79 65 61 72 2d 64 65 73 63 20 6d 6f 6e 74  | le-constrain-day.(year-desc.mont | 
| 6320 |  68 2d 64 65 73 63 20 64 61 79 2d 64 65 73 63 29    0a 20 20 22 52 65 74 75 72 6e 20 61 20 66 6f 72  | h-desc.day-desc)..."Return.a.for | 
| 6340 |  6d 20 74 68 61 74 20 63 6f 6e 73 74 72 61 69 6e    73 20 74 68 65 20 64 61 79 2e 0a 0a 59 45 41 52  | m.that.constrains.the.day...YEAR | 
| 6360 |  2d 44 45 53 43 2c 20 4d 4f 4e 54 48 2d 44 45 53    43 2c 20 61 6e 64 20 44 41 59 2d 44 45 53 43 20  | -DESC,.MONTH-DESC,.and.DAY-DESC. | 
| 6380 |  61 72 65 20 74 68 65 20 73 74 72 69 6e 67 20 70    6f 72 74 69 6f 6e 73 20 6f 66 20 74 68 65 0a 64  | are.the.string.portions.of.the.d | 
| 63a0 |  61 74 65 20 64 65 73 63 72 69 70 74 6f 72 2e 22    0a 20 20 28 63 6f 6e 64 20 28 28 73 74 72 69 6e  | ate.descriptor."...(cond.((strin | 
| 63c0 |  67 3d 20 64 61 79 2d 64 65 73 63 20 22 2a 22 29    0a 20 20 20 20 20 20 20 20 20 74 29 0a 20 20 20  | g=.day-desc."*")..........t).... | 
| 63e0 |  20 20 20 20 20 28 28 73 74 72 69 6e 67 3d 20 64    61 79 2d 64 65 73 63 20 22 4c 22 29 0a 20 20 20  | .....((string=.day-desc."L").... | 
| 6400 |  20 20 20 20 20 20 60 28 3d 20 28 6e 74 68 20 33    20 28 64 65 63 6f 64 65 2d 74 69 6d 65 20 64 61  | ......`(=.(nth.3.(decode-time.da | 
| 6420 |  74 65 29 29 20 28 6c 65 64 67 65 72 2d 73 63 68    65 64 75 6c 65 2d 64 61 79 73 2d 69 6e 2d 6d 6f  | te)).(ledger-schedule-days-in-mo | 
| 6440 |  6e 74 68 20 28 6e 74 68 20 34 20 28 64 65 63 6f    64 65 2d 74 69 6d 65 20 64 61 74 65 29 29 20 28  | nth.(nth.4.(decode-time.date)).( | 
| 6460 |  6e 74 68 20 35 20 28 64 65 63 6f 64 65 2d 74 69    6d 65 20 64 61 74 65 29 29 29 29 29 0a 20 20 20  | nth.5.(decode-time.date))))).... | 
| 6480 |  20 20 20 20 20 28 28 73 74 72 69 6e 67 2d 6d 61    74 63 68 20 22 5b 41 2d 5a 61 2d 7a 5d 22 20 64  | .....((string-match."[A-Za-z]".d | 
| 64a0 |  61 79 2d 64 65 73 63 29 20 20 3b 3b 20 54 68 65    72 65 20 69 73 20 73 6f 6d 65 74 68 69 6e 67 20  | ay-desc)..;;.There.is.something. | 
| 64c0 |  6f 74 68 65 72 20 74 68 61 6e 20 64 69 67 69 74    73 20 61 6e 64 20 63 6f 6d 6d 61 73 0a 20 20 20  | other.than.digits.and.commas.... | 
| 64e0 |  20 20 20 20 20 20 28 6c 65 64 67 65 72 2d 73 63    68 65 64 75 6c 65 2d 70 61 72 73 65 2d 63 6f 6d  | ......(ledger-schedule-parse-com | 
| 6500 |  70 6c 65 78 2d 64 61 74 65 20 79 65 61 72 2d 64    65 73 63 20 6d 6f 6e 74 68 2d 64 65 73 63 20 64  | plex-date.year-desc.month-desc.d | 
| 6520 |  61 79 2d 64 65 73 63 29 29 0a 20 20 20 20 20 20    20 20 28 28 2f 3d 20 30 20 28 73 74 72 69 6e 67  | ay-desc)).........((/=.0.(string | 
| 6540 |  2d 74 6f 2d 6e 75 6d 62 65 72 20 64 61 79 2d 64    65 73 63 29 29 0a 20 20 20 20 20 20 20 20 20 60  | -to-number.day-desc))..........` | 
| 6560 |  28 6d 65 6d 71 20 28 6e 74 68 20 33 20 28 64 65    63 6f 64 65 2d 74 69 6d 65 20 64 61 74 65 29 29  | (memq.(nth.3.(decode-time.date)) | 
| 6580 |  20 27 2c 28 6d 61 70 63 61 72 20 27 73 74 72 69    6e 67 2d 74 6f 2d 6e 75 6d 62 65 72 20 28 73 70  | .',(mapcar.'string-to-number.(sp | 
| 65a0 |  6c 69 74 2d 73 74 72 69 6e 67 20 64 61 79 2d 64    65 73 63 20 22 2c 22 29 29 29 29 0a 20 20 20 20  | lit-string.day-desc.","))))..... | 
| 65c0 |  20 20 20 20 28 74 0a 20 20 20 20 20 20 20 20 20    28 65 72 72 6f 72 20 22 49 6d 70 72 6f 70 65 72  | ....(t..........(error."Improper | 
| 65e0 |  6c 79 20 73 70 65 63 69 66 69 65 64 20 64 61 79    20 63 6f 6e 73 74 72 61 69 6e 74 3a 20 25 73 20  | ly.specified.day.constraint:.%s. | 
| 6600 |  25 73 20 25 73 22 20 79 65 61 72 2d 64 65 73 63    20 6d 6f 6e 74 68 2d 64 65 73 63 20 64 61 79 2d  | %s.%s".year-desc.month-desc.day- | 
| 6620 |  64 65 73 63 29 29 29 29 0a 0a 0a 0a 28 64 65 66    75 6e 20 6c 65 64 67 65 72 2d 73 63 68 65 64 75  | desc))))....(defun.ledger-schedu | 
| 6640 |  6c 65 2d 70 61 72 73 65 2d 63 6f 6d 70 6c 65 78    2d 64 61 74 65 20 28 79 65 61 72 2d 64 65 73 63  | le-parse-complex-date.(year-desc | 
| 6660 |  20 6d 6f 6e 74 68 2d 64 65 73 63 20 64 61 79 2d    64 65 73 63 29 0a 20 20 22 50 61 72 73 65 20 64  | .month-desc.day-desc)..."Parse.d | 
| 6680 |  61 79 20 64 65 73 63 72 69 70 74 6f 72 73 20 74    68 61 74 20 68 61 76 65 20 72 65 70 65 61 74 73  | ay.descriptors.that.have.repeats | 
| 66a0 |  2e 22 0a 20 20 28 6c 65 74 20 28 28 79 65 61 72    73 20 28 6d 61 70 63 61 72 20 27 73 74 72 69 6e  | ."...(let.((years.(mapcar.'strin | 
| 66c0 |  67 2d 74 6f 2d 6e 75 6d 62 65 72 20 28 73 70 6c    69 74 2d 73 74 72 69 6e 67 20 79 65 61 72 2d 64  | g-to-number.(split-string.year-d | 
| 66e0 |  65 73 63 20 22 2c 22 29 29 29 0a 20 20 20 20 20    20 20 20 28 6d 6f 6e 74 68 73 20 28 6d 61 70 63  | esc.","))).........(months.(mapc | 
| 6700 |  61 72 20 27 73 74 72 69 6e 67 2d 74 6f 2d 6e 75    6d 62 65 72 20 28 73 70 6c 69 74 2d 73 74 72 69  | ar.'string-to-number.(split-stri | 
| 6720 |  6e 67 20 6d 6f 6e 74 68 2d 64 65 73 63 20 22 2c    22 29 29 29 0a 20 20 20 20 20 20 20 20 28 64 61  | ng.month-desc.","))).........(da | 
| 6740 |  79 2d 70 61 72 74 73 20 28 73 70 6c 69 74 2d 73    74 72 69 6e 67 20 64 61 79 2d 64 65 73 63 20 22  | y-parts.(split-string.day-desc." | 
| 6760 |  5c 5c 2b 22 29 29 0a 20 20 20 20 20 20 20 20 28    65 76 65 72 79 2d 6e 74 68 20 28 73 74 72 69 6e  | \\+")).........(every-nth.(strin | 
| 6780 |  67 2d 6d 61 74 63 68 20 22 5c 5c 2b 22 20 64 61    79 2d 64 65 73 63 29 29 29 0a 20 20 20 20 28 69  | g-match."\\+".day-desc))).....(i | 
| 67a0 |  66 20 65 76 65 72 79 2d 6e 74 68 0a 20 20 20 20    20 20 20 20 28 6c 65 74 20 28 28 62 61 73 65 2d  | f.every-nth.........(let.((base- | 
| 67c0 |  64 61 79 20 28 73 74 72 69 6e 67 2d 74 6f 2d 6e    75 6d 62 65 72 20 28 63 61 72 20 64 61 79 2d 70  | day.(string-to-number.(car.day-p | 
| 67e0 |  61 72 74 73 29 29 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 69 6e 63 72 65 6d 65 6e 74  | arts)))...............(increment | 
| 6800 |  20 28 73 74 72 69 6e 67 2d 74 6f 2d 6e 75 6d 62    65 72 20 28 73 75 62 73 74 72 69 6e 67 20 28 63  | .(string-to-number.(substring.(c | 
| 6820 |  61 64 72 20 64 61 79 2d 70 61 72 74 73 29 20 30    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | adr.day-parts).0................ | 
| 6840 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 6860 |  20 20 20 20 20 20 20 28 73 74 72 69 6e 67 2d 6d    61 74 63 68 20 22 5b 41 2d 5a 61 2d 7a 5d 22 20  | .......(string-match."[A-Za-z]". | 
| 6880 |  28 63 61 64 72 20 64 61 79 2d 70 61 72 74 73 29    29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20  | (cadr.day-parts)))))............ | 
| 68a0 |  20 20 20 28 64 61 79 2d 6f 66 2d 77 65 65 6b 20    28 6c 65 64 67 65 72 2d 73 63 68 65 64 75 6c 65  | ...(day-of-week.(ledger-schedule | 
| 68c0 |  2d 65 6e 63 6f 64 65 2d 64 61 79 2d 6f 66 2d 77    65 65 6b 0a 20 20 20 20 20 20 20 20 20 20 20 20  | -encode-day-of-week............. | 
| 68e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 73 75 62 73 74 72 69 6e 67 20 28 63 61 64 72  | ................(substring.(cadr | 
| 6900 |  20 64 61 79 2d 70 61 72 74 73 29 20 28 73 74 72    69 6e 67 2d 6d 61 74 63 68 20 22 5b 41 2d 5a 61  | .day-parts).(string-match."[A-Za | 
| 6920 |  2d 7a 5d 22 20 28 63 61 64 72 20 64 61 79 2d 70    61 72 74 73 29 29 29 29 29 29 0a 20 20 20 20 20  | -z]".(cadr.day-parts))))))...... | 
| 6940 |  20 20 20 20 20 28 6c 65 64 67 65 72 2d 73 63 68    65 64 75 6c 65 2d 63 6f 6e 73 74 72 61 69 6e 2d  | .....(ledger-schedule-constrain- | 
| 6960 |  65 76 65 72 79 2d 63 6f 75 6e 74 2d 64 61 79 20    64 61 79 2d 6f 66 2d 77 65 65 6b 20 69 6e 63 72  | every-count-day.day-of-week.incr | 
| 6980 |  65 6d 65 6e 74 20 28 65 6e 63 6f 64 65 2d 74 69    6d 65 20 30 20 30 20 30 20 62 61 73 65 2d 64 61  | ement.(encode-time.0.0.0.base-da | 
| 69a0 |  79 20 28 63 61 72 20 6d 6f 6e 74 68 73 29 20 28    63 61 72 20 79 65 61 72 73 29 29 29 29 0a 20 20  | y.(car.months).(car.years))))... | 
| 69c0 |  20 20 20 20 28 6c 65 74 20 28 28 63 6f 75 6e 74    20 28 73 74 72 69 6e 67 2d 74 6f 2d 6e 75 6d 62  | ....(let.((count.(string-to-numb | 
| 69e0 |  65 72 20 28 73 75 62 73 74 72 69 6e 67 20 28 63    61 72 20 64 61 79 2d 70 61 72 74 73 29 20 30 20  | er.(substring.(car.day-parts).0. | 
| 6a00 |  31 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20    20 28 64 61 79 2d 6f 66 2d 77 65 65 6b 20 28 6c  | 1))).............(day-of-week.(l | 
| 6a20 |  65 64 67 65 72 2d 73 63 68 65 64 75 6c 65 2d 65    6e 63 6f 64 65 2d 64 61 79 2d 6f 66 2d 77 65 65  | edger-schedule-encode-day-of-wee | 
| 6a40 |  6b 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 75 62  | k...........................(sub | 
| 6a60 |  73 74 72 69 6e 67 20 28 63 61 72 20 64 61 79 2d    70 61 72 74 73 29 20 28 73 74 72 69 6e 67 2d 6d  | string.(car.day-parts).(string-m | 
| 6a80 |  61 74 63 68 20 22 5b 41 2d 5a 61 2d 7a 5d 22 20    28 63 61 72 20 64 61 79 2d 70 61 72 74 73 29 29  | atch."[A-Za-z]".(car.day-parts)) | 
| 6aa0 |  29 29 29 29 0a 20 20 20 20 20 20 20 20 28 6c 65    64 67 65 72 2d 73 63 68 65 64 75 6c 65 2d 63 6f  | )))).........(ledger-schedule-co | 
| 6ac0 |  6e 73 74 72 61 69 6e 2d 64 61 79 2d 69 6e 2d 6d    6f 6e 74 68 20 63 6f 75 6e 74 20 64 61 79 2d 6f  | nstrain-day-in-month.count.day-o | 
| 6ae0 |  66 2d 77 65 65 6b 29 29 29 29 29 0a 0a 28 64 65    66 75 6e 20 6c 65 64 67 65 72 2d 73 63 68 65 64  | f-week)))))..(defun.ledger-sched | 
| 6b00 |  75 6c 65 2d 6c 69 73 74 2d 75 70 63 6f 6d 69 6e    67 2d 78 61 63 74 73 20 28 63 61 6e 64 69 64 61  | ule-list-upcoming-xacts.(candida | 
| 6b20 |  74 65 2d 69 74 65 6d 73 20 65 61 72 6c 79 20 68    6f 72 69 7a 6f 6e 29 0a 20 20 22 53 65 61 72 63  | te-items.early.horizon)..."Searc | 
| 6b40 |  68 20 43 41 4e 44 49 44 41 54 45 2d 49 54 45 4d    53 20 66 6f 72 20 78 61 63 74 73 20 74 68 61 74  | h.CANDIDATE-ITEMS.for.xacts.that | 
| 6b60 |  20 6f 63 63 75 72 20 77 69 74 68 69 6e 20 74 68    65 20 67 69 76 65 6e 20 70 65 72 69 6f 64 2e 0a  | .occur.within.the.given.period.. | 
| 6b80 |  54 68 65 20 70 65 72 69 6f 64 20 72 75 6e 73 20    66 72 6f 6d 20 28 74 6f 64 61 79 20 2d 20 45 41  | The.period.runs.from.(today.-.EA | 
| 6ba0 |  52 4c 59 29 20 74 6f 20 28 74 6f 64 61 79 20 2b    20 48 4f 52 49 5a 4f 4e 29 2e 22 0a 20 20 28 6c  | RLY).to.(today.+.HORIZON)."...(l | 
| 6bc0 |  65 74 20 28 28 73 74 61 72 74 2d 64 61 74 65 20    28 74 69 6d 65 2d 73 75 62 74 72 61 63 74 20 28  | et.((start-date.(time-subtract.( | 
| 6be0 |  63 75 72 72 65 6e 74 2d 74 69 6d 65 29 20 28 64    61 79 73 2d 74 6f 2d 74 69 6d 65 20 65 61 72 6c  | current-time).(days-to-time.earl | 
| 6c00 |  79 29 29 29 0a 20 20 20 20 20 20 20 20 74 65 73    74 2d 64 61 74 65 20 69 74 65 6d 73 29 0a 20 20  | y))).........test-date.items)... | 
| 6c20 |  20 20 28 63 6c 2d 6c 6f 6f 70 20 66 6f 72 20 64    61 79 20 66 72 6f 6d 20 30 20 74 6f 20 28 2b 20  | ..(cl-loop.for.day.from.0.to.(+. | 
| 6c40 |  65 61 72 6c 79 20 68 6f 72 69 7a 6f 6e 29 20 62    79 20 31 20 64 6f 0a 20 20 20 20 20 20 20 20 20  | early.horizon).by.1.do.......... | 
| 6c60 |  20 20 20 20 28 73 65 74 71 20 74 65 73 74 2d 64    61 74 65 20 28 74 69 6d 65 2d 61 64 64 20 73 74  | ....(setq.test-date.(time-add.st | 
| 6c80 |  61 72 74 2d 64 61 74 65 20 28 64 61 79 73 2d 74    6f 2d 74 69 6d 65 20 64 61 79 29 29 29 0a 20 20  | art-date.(days-to-time.day)))... | 
| 6ca0 |  20 20 20 20 20 20 20 20 20 20 20 28 64 6f 6c 69    73 74 20 28 63 61 6e 64 69 64 61 74 65 20 63 61  | ...........(dolist.(candidate.ca | 
| 6cc0 |  6e 64 69 64 61 74 65 2d 69 74 65 6d 73 20 69 74    65 6d 73 29 0a 20 20 20 20 20 20 20 20 20 20 20  | ndidate-items.items)............ | 
| 6ce0 |  20 20 20 20 28 69 66 20 28 66 75 6e 63 61 6c 6c    20 28 63 61 72 20 63 61 6e 64 69 64 61 74 65 29  | ....(if.(funcall.(car.candidate) | 
| 6d00 |  20 74 65 73 74 2d 64 61 74 65 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28  | .test-date)....................( | 
| 6d20 |  73 65 74 71 20 69 74 65 6d 73 20 28 61 70 70 65    6e 64 20 69 74 65 6d 73 20 28 6c 69 73 74 20 28  | setq.items.(append.items.(list.( | 
| 6d40 |  6c 69 73 74 20 74 65 73 74 2d 64 61 74 65 20 28    63 61 64 72 20 63 61 6e 64 69 64 61 74 65 29 29  | list.test-date.(cadr.candidate)) | 
| 6d60 |  29 29 29 29 29 29 0a 20 20 20 20 69 74 65 6d 73    29 29 0a 0a 28 64 65 66 75 6e 20 6c 65 64 67 65  | )))))).....items))..(defun.ledge | 
| 6d80 |  72 2d 73 63 68 65 64 75 6c 65 2d 63 72 65 61 74    65 2d 61 75 74 6f 2d 62 75 66 66 65 72 20 28 63  | r-schedule-create-auto-buffer.(c | 
| 6da0 |  61 6e 64 69 64 61 74 65 2d 69 74 65 6d 73 20 65    61 72 6c 79 20 68 6f 72 69 7a 6f 6e 29 0a 20 20  | andidate-items.early.horizon)... | 
| 6dc0 |  22 46 6f 72 6d 61 74 20 43 41 4e 44 49 44 41 54    45 2d 49 54 45 4d 53 20 66 6f 72 20 64 69 73 70  | "Format.CANDIDATE-ITEMS.for.disp | 
| 6de0 |  6c 61 79 2e 22 0a 20 20 28 6c 65 74 20 28 28 63    61 6e 64 69 64 61 74 65 73 20 28 6c 65 64 67 65  | lay."...(let.((candidates.(ledge | 
| 6e00 |  72 2d 73 63 68 65 64 75 6c 65 2d 6c 69 73 74 2d    75 70 63 6f 6d 69 6e 67 2d 78 61 63 74 73 20 63  | r-schedule-list-upcoming-xacts.c | 
| 6e20 |  61 6e 64 69 64 61 74 65 2d 69 74 65 6d 73 20 65    61 72 6c 79 20 68 6f 72 69 7a 6f 6e 29 29 0a 20  | andidate-items.early.horizon)).. | 
| 6e40 |  20 20 20 20 20 20 20 28 73 63 68 65 64 75 6c 65    2d 62 75 66 20 28 67 65 74 2d 62 75 66 66 65 72  | .......(schedule-buf.(get-buffer | 
| 6e60 |  2d 63 72 65 61 74 65 20 6c 65 64 67 65 72 2d 73    63 68 65 64 75 6c 65 2d 62 75 66 66 65 72 2d 6e  | -create.ledger-schedule-buffer-n | 
| 6e80 |  61 6d 65 29 29 29 0a 20 20 20 20 28 77 69 74 68    2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20  | ame))).....(with-current-buffer. | 
| 6ea0 |  73 63 68 65 64 75 6c 65 2d 62 75 66 0a 20 20 20    20 20 20 28 65 72 61 73 65 2d 62 75 66 66 65 72  | schedule-buf.......(erase-buffer | 
| 6ec0 |  29 0a 20 20 20 20 20 20 28 64 6f 6c 69 73 74 20    28 63 61 6e 64 69 64 61 74 65 20 63 61 6e 64 69  | ).......(dolist.(candidate.candi | 
| 6ee0 |  64 61 74 65 73 29 0a 20 20 20 20 20 20 20 20 28    69 6e 73 65 72 74 20 28 6c 65 64 67 65 72 2d 66  | dates).........(insert.(ledger-f | 
| 6f00 |  6f 72 6d 61 74 2d 64 61 74 65 20 28 63 61 72 20    63 61 6e 64 69 64 61 74 65 29 20 29 20 22 20 22  | ormat-date.(car.candidate).)."." | 
| 6f20 |  20 28 63 61 64 72 20 63 61 6e 64 69 64 61 74 65    29 20 22 5c 6e 22 29 29 0a 20 20 20 20 20 20 28  | .(cadr.candidate)."\n")).......( | 
| 6f40 |  6c 65 64 67 65 72 2d 6d 6f 64 65 29 29 0a 20 20    20 20 28 6c 65 6e 67 74 68 20 63 61 6e 64 69 64  | ledger-mode)).....(length.candid | 
| 6f60 |  61 74 65 73 29 29 29 0a 0a 28 64 65 66 75 6e 20    6c 65 64 67 65 72 2d 73 63 68 65 64 75 6c 65 2d  | ates)))..(defun.ledger-schedule- | 
| 6f80 |  75 70 63 6f 6d 69 6e 67 20 28 66 69 6c 65 20 6c    6f 6f 6b 2d 62 61 63 6b 77 61 72 64 20 6c 6f 6f  | upcoming.(file.look-backward.loo | 
| 6fa0 |  6b 2d 66 6f 72 77 61 72 64 29 0a 20 20 22 47 65    6e 65 72 61 74 65 20 75 70 63 6f 6d 69 6e 67 20  | k-forward)..."Generate.upcoming. | 
| 6fc0 |  74 72 61 6e 73 61 63 74 69 6f 6e 73 2e 0a 0a 46    49 4c 45 20 69 73 20 74 68 65 20 66 69 6c 65 20  | transactions...FILE.is.the.file. | 
| 6fe0 |  63 6f 6e 74 61 69 6e 69 6e 67 20 74 68 65 20 73    63 68 65 64 75 6c 65 64 20 74 72 61 6e 73 61 63  | containing.the.scheduled.transac | 
| 7000 |  74 69 6f 6e 2c 0a 64 65 66 61 75 6c 74 20 74 6f    20 60 6c 65 64 67 65 72 2d 73 63 68 65 64 75 6c  | tion,.default.to.`ledger-schedul | 
| 7020 |  65 2d 66 69 6c 65 27 2e 0a 4c 4f 4f 4b 2d 42 41    43 4b 57 41 52 44 20 69 73 20 74 68 65 20 6e 75  | e-file'..LOOK-BACKWARD.is.the.nu | 
| 7040 |  6d 62 65 72 20 6f 66 20 64 61 79 73 20 69 6e 20    74 68 65 20 70 61 73 74 20 74 6f 20 6c 6f 6f 6b  | mber.of.days.in.the.past.to.look | 
| 7060 |  20 61 74 0a 64 65 66 61 75 6c 74 20 74 6f 20 60    6c 65 64 67 65 72 2d 73 63 68 65 64 75 6c 65 2d  | .at.default.to.`ledger-schedule- | 
| 7080 |  6c 6f 6f 6b 2d 62 61 63 6b 77 61 72 64 27 0a 4c    4f 4f 4b 2d 46 4f 52 57 41 52 44 20 69 73 20 74  | look-backward'.LOOK-FORWARD.is.t | 
| 70a0 |  68 65 20 6e 75 6d 62 65 72 20 6f 66 20 64 61 79    73 20 69 6e 20 74 68 65 20 66 75 74 75 72 65 20  | he.number.of.days.in.the.future. | 
| 70c0 |  74 6f 20 6c 6f 6f 6b 20 61 74 0a 64 65 66 61 75    6c 74 20 74 6f 20 60 6c 65 64 67 65 72 2d 73 63  | to.look.at.default.to.`ledger-sc | 
| 70e0 |  68 65 64 75 6c 65 2d 6c 6f 6f 6b 2d 66 6f 72 77    61 72 64 27 0a 0a 55 73 65 20 61 20 70 72 65 66  | hedule-look-forward'..Use.a.pref | 
| 7100 |  69 78 20 61 72 67 20 74 6f 20 63 68 61 6e 67 65    20 74 68 65 20 64 65 66 61 75 6c 74 20 76 61 6c  | ix.arg.to.change.the.default.val | 
| 7120 |  75 65 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69    76 65 20 28 69 66 20 63 75 72 72 65 6e 74 2d 70  | ue"...(interactive.(if.current-p | 
| 7140 |  72 65 66 69 78 2d 61 72 67 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69  | refix-arg....................(li | 
| 7160 |  73 74 20 28 72 65 61 64 2d 66 69 6c 65 2d 6e 61    6d 65 20 22 53 63 68 65 64 75 6c 65 20 46 69 6c  | st.(read-file-name."Schedule.Fil | 
| 7180 |  65 3a 20 22 20 28 29 20 6c 65 64 67 65 72 2d 73    63 68 65 64 75 6c 65 2d 66 69 6c 65 20 74 29 0a  | e:.".().ledger-schedule-file.t). | 
| 71a0 |  20 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 61 64 2d 6e  | .........................(read-n | 
| 71c0 |  75 6d 62 65 72 20 22 4c 6f 6f 6b 20 62 61 63 6b    77 61 72 64 3a 20 22 20 6c 65 64 67 65 72 2d 73  | umber."Look.backward:.".ledger-s | 
| 71e0 |  63 68 65 64 75 6c 65 2d 6c 6f 6f 6b 2d 62 61 63    6b 77 61 72 64 29 0a 20 20 20 20 20 20 20 20 20  | chedule-look-backward).......... | 
| 7200 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 72 65 61 64 2d 6e 75 6d 62 65 72 20 22 4c 6f  | ................(read-number."Lo | 
| 7220 |  6f 6b 20 66 6f 72 77 61 72 64 3a 20 22 20 6c 65    64 67 65 72 2d 73 63 68 65 64 75 6c 65 2d 6c 6f  | ok.forward:.".ledger-schedule-lo | 
| 7240 |  6f 6b 2d 66 6f 72 77 61 72 64 29 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c  | ok-forward))..................(l | 
| 7260 |  69 73 74 20 6c 65 64 67 65 72 2d 73 63 68 65 64    75 6c 65 2d 66 69 6c 65 20 6c 65 64 67 65 72 2d  | ist.ledger-schedule-file.ledger- | 
| 7280 |  73 63 68 65 64 75 6c 65 2d 6c 6f 6f 6b 2d 62 61    63 6b 77 61 72 64 20 6c 65 64 67 65 72 2d 73 63  | schedule-look-backward.ledger-sc | 
| 72a0 |  68 65 64 75 6c 65 2d 6c 6f 6f 6b 2d 66 6f 72 77    61 72 64 29 29 29 0a 20 20 28 75 6e 6c 65 73 73  | hedule-look-forward)))...(unless | 
| 72c0 |  20 28 61 6e 64 20 66 69 6c 65 20 28 66 69 6c 65    2d 65 78 69 73 74 73 2d 70 20 66 69 6c 65 29 29  | .(and.file.(file-exists-p.file)) | 
| 72e0 |  0a 20 20 20 20 28 65 72 72 6f 72 20 22 43 6f 75    6c 64 20 6e 6f 74 20 66 69 6e 64 20 6c 65 64 67  | .....(error."Could.not.find.ledg | 
| 7300 |  65 72 20 73 63 68 65 64 75 6c 65 20 66 69 6c 65    20 61 74 20 25 73 22 20 66 69 6c 65 29 29 0a 20  | er.schedule.file.at.%s".file)).. | 
| 7320 |  20 28 6c 65 64 67 65 72 2d 73 63 68 65 64 75 6c    65 2d 63 72 65 61 74 65 2d 61 75 74 6f 2d 62 75  | .(ledger-schedule-create-auto-bu | 
| 7340 |  66 66 65 72 0a 20 20 20 28 6c 65 64 67 65 72 2d    73 63 68 65 64 75 6c 65 2d 73 63 61 6e 2d 74 72  | ffer....(ledger-schedule-scan-tr | 
| 7360 |  61 6e 73 61 63 74 69 6f 6e 73 20 66 69 6c 65 29    0a 20 20 20 6c 6f 6f 6b 2d 62 61 63 6b 77 61 72  | ansactions.file)....look-backwar | 
| 7380 |  64 0a 20 20 20 6c 6f 6f 6b 2d 66 6f 72 77 61 72    64 29 0a 20 20 28 70 6f 70 2d 74 6f 2d 62 75 66  | d....look-forward)...(pop-to-buf | 
| 73a0 |  66 65 72 20 6c 65 64 67 65 72 2d 73 63 68 65 64    75 6c 65 2d 62 75 66 66 65 72 2d 6e 61 6d 65 29  | fer.ledger-schedule-buffer-name) | 
| 73c0 |  29 0a 0a 0a 28 70 72 6f 76 69 64 65 20 27 6c 65    64 67 65 72 2d 73 63 68 65 64 75 6c 65 29 0a 0a  | )...(provide.'ledger-schedule).. | 
| 73e0 |  3b 3b 3b 20 6c 65 64 67 65 72 2d 73 63 68 65 64    75 6c 65 2e 65 6c 20 65 6e 64 73 20 68 65 72 65  | ;;;.ledger-schedule.el.ends.here | 
| 7400 |  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  | ................................ | 
| 7420 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 7440 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 7460 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 7480 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 74a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 74c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 74e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 7500 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 7520 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 7540 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 7560 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 7580 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 75a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 75c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 75e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 7600 |  6c 65 64 67 65 72 2d 6d 6f 64 65 2d 32 30 32 34    30 34 31 36 2e 34 31 36 2f 6c 65 64 67 65 72 2d  | ledger-mode-20240416.416/ledger- | 
| 7620 |  65 78 65 63 2e 65 6c 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | exec.el......................... | 
| 7640 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 7660 |  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 | 
| 7680 |  30 30 31 31 37 34 33 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 35 36 32 36 00 20 30 00 00 00  | 0011743.00000000000.015626..0... | 
| 76a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 76c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 76e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 7700 |  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................... | 
| 7720 |  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................... | 
| 7740 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 7760 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 7780 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 77a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 77c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 77e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 7800 |  3b 3b 3b 20 6c 65 64 67 65 72 2d 65 78 65 63 2e    65 6c 20 2d 2d 2d 20 48 65 6c 70 65 72 20 63 6f  | ;;;.ledger-exec.el.---.Helper.co | 
| 7820 |  64 65 20 66 6f 72 20 75 73 65 20 77 69 74 68 20    74 68 65 20 22 6c 65 64 67 65 72 22 20 63 6f 6d  | de.for.use.with.the."ledger".com | 
| 7840 |  6d 61 6e 64 2d 6c 69 6e 65 20 74 6f 6f 6c 20 20    2d 2a 2d 20 6c 65 78 69 63 61 6c 2d 62 69 6e 64  | mand-line.tool..-*-.lexical-bind | 
| 7860 |  69 6e 67 3a 20 74 3b 20 2d 2a 2d 0a 0a 3b 3b 20    43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30  | ing:.t;.-*-..;;.Copyright.(C).20 | 
| 7880 |  30 33 2d 32 30 31 36 20 4a 6f 68 6e 20 57 69 65    67 6c 65 79 20 28 6a 6f 68 6e 77 20 41 54 20 67  | 03-2016.John.Wiegley.(johnw.AT.g | 
| 78a0 |  6e 75 20 44 4f 54 20 6f 72 67 29 0a 0a 3b 3b 20    54 68 69 73 20 66 69 6c 65 20 69 73 20 6e 6f 74  | nu.DOT.org)..;;.This.file.is.not | 
| 78c0 |  20 70 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 69 73 20  | .part.of.GNU.Emacs...;;.This.is. | 
| 78e0 |  66 72 65 65 20 73 6f 66 74 77 61 72 65 3b 20 79    6f 75 20 63 61 6e 20 72 65 64 69 73 74 72 69 62  | free.software;.you.can.redistrib | 
| 7900 |  75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f    64 69 66 79 20 69 74 20 75 6e 64 65 72 0a 3b 3b  | ute.it.and/or.modify.it.under.;; | 
| 7920 |  20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68    65 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75  | .the.terms.of.the.GNU.General.Pu | 
| 7940 |  62 6c 69 63 20 4c 69 63 65 6e 73 65 20 61 73 20    70 75 62 6c 69 73 68 65 64 20 62 79 20 74 68 65  | blic.License.as.published.by.the | 
| 7960 |  20 46 72 65 65 0a 3b 3b 20 53 6f 66 74 77 61 72    65 20 46 6f 75 6e 64 61 74 69 6f 6e 3b 20 65 69  | .Free.;;.Software.Foundation;.ei | 
| 7980 |  74 68 65 72 20 76 65 72 73 69 6f 6e 20 32 2c 20    6f 72 20 28 61 74 20 79 6f 75 72 20 6f 70 74 69  | ther.version.2,.or.(at.your.opti | 
| 79a0 |  6f 6e 29 20 61 6e 79 20 6c 61 74 65 72 0a 3b 3b    20 76 65 72 73 69 6f 6e 2e 0a 3b 3b 0a 3b 3b 20  | on).any.later.;;.version..;;.;;. | 
| 79c0 |  54 68 69 73 20 69 73 20 64 69 73 74 72 69 62 75    74 65 64 20 69 6e 20 74 68 65 20 68 6f 70 65 20  | This.is.distributed.in.the.hope. | 
| 79e0 |  74 68 61 74 20 69 74 20 77 69 6c 6c 20 62 65 20    75 73 65 66 75 6c 2c 20 62 75 74 20 57 49 54 48  | that.it.will.be.useful,.but.WITH | 
| 7a00 |  4f 55 54 0a 3b 3b 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  | OUT.;;.ANY.WARRANTY;.without.eve | 
| 7a20 |  6e 20 74 68 65 20 69 6d 70 6c 69 65 64 20 77 61    72 72 61 6e 74 79 20 6f 66 20 4d 45 52 43 48 41  | n.the.implied.warranty.of.MERCHA | 
| 7a40 |  4e 54 41 42 49 4c 49 54 59 20 6f 72 0a 3b 3b 20    46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41  | NTABILITY.or.;;.FITNESS.FOR.A.PA | 
| 7a60 |  52 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45    2e 20 20 53 65 65 20 74 68 65 20 47 4e 55 20 47  | RTICULAR.PURPOSE...See.the.GNU.G | 
| 7a80 |  65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69    63 65 6e 73 65 0a 3b 3b 20 66 6f 72 20 6d 6f 72  | eneral.Public.License.;;.for.mor | 
| 7aa0 |  65 20 64 65 74 61 69 6c 73 2e 0a 3b 3b 0a 3b 3b    20 59 6f 75 20 73 68 6f 75 6c 64 20 68 61 76 65  | e.details..;;.;;.You.should.have | 
| 7ac0 |  20 72 65 63 65 69 76 65 64 20 61 20 63 6f 70 79    20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65  | .received.a.copy.of.the.GNU.Gene | 
| 7ae0 |  72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e    73 65 0a 3b 3b 20 61 6c 6f 6e 67 20 77 69 74 68  | ral.Public.License.;;.along.with | 
| 7b00 |  20 47 4e 55 20 45 6d 61 63 73 3b 20 73 65 65 20    74 68 65 20 66 69 6c 65 20 43 4f 50 59 49 4e 47  | .GNU.Emacs;.see.the.file.COPYING | 
| 7b20 |  2e 20 20 49 66 20 6e 6f 74 2c 20 77 72 69 74 65    20 74 6f 20 74 68 65 0a 3b 3b 20 46 72 65 65 20  | ...If.not,.write.to.the.;;.Free. | 
| 7b40 |  53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61 74    69 6f 6e 2c 20 49 6e 63 2e 2c 20 35 31 20 46 72  | Software.Foundation,.Inc.,.51.Fr | 
| 7b60 |  61 6e 6b 6c 69 6e 20 53 74 72 65 65 74 2c 20 46    69 66 74 68 20 46 6c 6f 6f 72 2c 20 42 6f 73 74  | anklin.Street,.Fifth.Floor,.Bost | 
| 7b80 |  6f 6e 2c 0a 3b 3b 20 4d 41 20 30 32 31 31 30 2d    31 33 30 31 20 55 53 41 2e 0a 0a 0a 3b 3b 3b 20  | on,.;;.MA.02110-1301.USA....;;;. | 
| 7ba0 |  43 6f 6d 6d 65 6e 74 61 72 79 3a 0a 3b 3b 20 43    6f 64 65 20 66 6f 72 20 65 78 65 63 75 74 69 6e  | Commentary:.;;.Code.for.executin | 
| 7bc0 |  67 20 6c 65 64 67 65 72 20 73 79 6e 63 68 72 6f    6e 6f 75 73 6c 79 2e 0a 0a 3b 3b 3b 20 43 6f 64  | g.ledger.synchronously...;;;.Cod | 
| 7be0 |  65 3a 0a 0a 28 72 65 71 75 69 72 65 20 27 6c 65    64 67 65 72 2d 69 6e 69 74 29 20 20 20 20 20 20  | e:..(require.'ledger-init)...... | 
| 7c00 |  20 20 20 20 20 20 20 20 20 20 20 20 3b 66 6f 72    20 60 6c 65 64 67 65 72 2d 64 65 66 61 75 6c 74  | ............;for.`ledger-default | 
| 7c20 |  2d 64 61 74 65 2d 66 6f 72 6d 61 74 27 0a 0a 28    64 65 63 6c 61 72 65 2d 66 75 6e 63 74 69 6f 6e  | -date-format'..(declare-function | 
| 7c40 |  20 6c 65 64 67 65 72 2d 6d 61 73 74 65 72 2d 66    69 6c 65 20 22 6c 65 64 67 65 72 2d 72 65 70 6f  | .ledger-master-file."ledger-repo | 
| 7c60 |  72 74 22 20 28 29 29 0a 0a 28 64 65 66 63 6f 6e    73 74 20 6c 65 64 67 65 72 2d 76 65 72 73 69 6f  | rt".())..(defconst.ledger-versio | 
| 7c80 |  6e 2d 6e 65 65 64 65 64 20 22 33 2e 30 2e 30 22    0a 20 20 22 54 68 65 20 76 65 72 73 69 6f 6e 20  | n-needed."3.0.0"..."The.version. | 
| 7ca0 |  6f 66 20 6c 65 64 67 65 72 20 65 78 65 63 75 74    61 62 6c 65 20 6e 65 65 64 65 64 20 66 6f 72 20  | of.ledger.executable.needed.for. | 
| 7cc0 |  69 6e 74 65 72 61 63 74 69 76 65 20 66 65 61 74    75 72 65 73 2e 22 29 0a 0a 28 64 65 66 76 61 72  | interactive.features.")..(defvar | 
| 7ce0 |  20 6c 65 64 67 65 72 2d 77 6f 72 6b 73 20 6e 69    6c 0a 20 20 22 4e 6f 6e 2d 6e 69 6c 20 69 66 20  | .ledger-works.nil..."Non-nil.if. | 
| 7d00 |  74 68 65 20 6c 65 64 67 65 72 20 62 69 6e 61 72    79 20 63 61 6e 20 73 75 70 70 6f 72 74 20 60 6c  | the.ledger.binary.can.support.`l | 
| 7d20 |  65 64 67 65 72 2d 6d 6f 64 65 27 20 69 6e 74 65    72 61 63 74 69 76 65 20 66 65 61 74 75 72 65 73  | edger-mode'.interactive.features | 
| 7d40 |  2e 22 29 0a 0a 28 64 65 66 67 72 6f 75 70 20 6c    65 64 67 65 72 2d 65 78 65 63 20 6e 69 6c 0a 20  | .")..(defgroup.ledger-exec.nil.. | 
| 7d60 |  20 22 49 6e 74 65 72 66 61 63 65 20 74 6f 20 74    68 65 20 4c 65 64 67 65 72 20 63 6f 6d 6d 61 6e  | ."Interface.to.the.Ledger.comman | 
| 7d80 |  64 2d 6c 69 6e 65 20 61 63 63 6f 75 6e 74 69 6e    67 20 70 72 6f 67 72 61 6d 2e 22 0a 20 20 3a 67  | d-line.accounting.program."...:g | 
| 7da0 |  72 6f 75 70 20 27 6c 65 64 67 65 72 29 0a 0a 28    64 65 66 63 75 73 74 6f 6d 20 6c 65 64 67 65 72  | roup.'ledger)..(defcustom.ledger | 
| 7dc0 |  2d 6d 6f 64 65 2d 73 68 6f 75 6c 64 2d 63 68 65    63 6b 2d 76 65 72 73 69 6f 6e 20 74 0a 20 20 22  | -mode-should-check-version.t..." | 
| 7de0 |  53 68 6f 75 6c 64 20 4c 65 64 67 65 72 2d 6d 6f    64 65 20 76 65 72 69 66 79 20 74 68 61 74 20 74  | Should.Ledger-mode.verify.that.t | 
| 7e00 |  68 65 20 65 78 65 63 75 74 61 62 6c 65 20 69 73    20 77 6f 72 6b 69 6e 67 3f 22 0a 20 20 3a 74 79  | he.executable.is.working?"...:ty | 
| 7e20 |  70 65 20 27 62 6f 6f 6c 65 61 6e 0a 20 20 3a 67    72 6f 75 70 20 27 6c 65 64 67 65 72 2d 65 78 65  | pe.'boolean...:group.'ledger-exe | 
| 7e40 |  63 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6c    65 64 67 65 72 2d 62 69 6e 61 72 79 2d 70 61 74  | c)..(defcustom.ledger-binary-pat | 
| 7e60 |  68 20 22 6c 65 64 67 65 72 22 0a 20 20 22 50 61    74 68 20 74 6f 20 74 68 65 20 6c 65 64 67 65 72  | h."ledger"..."Path.to.the.ledger | 
| 7e80 |  20 65 78 65 63 75 74 61 62 6c 65 2e 22 0a 20 20    3a 74 79 70 65 20 27 66 69 6c 65 0a 20 20 3a 72  | .executable."...:type.'file...:r | 
| 7ea0 |  69 73 6b 79 20 74 0a 20 20 3a 67 72 6f 75 70 20    27 6c 65 64 67 65 72 2d 65 78 65 63 29 0a 0a 28  | isky.t...:group.'ledger-exec)..( | 
| 7ec0 |  64 65 66 75 6e 20 6c 65 64 67 65 72 2d 65 78 65    63 2d 68 61 6e 64 6c 65 2d 65 72 72 6f 72 20 28  | defun.ledger-exec-handle-error.( | 
| 7ee0 |  6c 65 64 67 65 72 2d 65 72 72 66 69 6c 65 29 0a    20 20 22 44 65 61 6c 20 77 69 74 68 20 6c 65 64  | ledger-errfile)..."Deal.with.led | 
| 7f00 |  67 65 72 20 65 72 72 6f 72 73 20 63 6f 6e 74 61    69 6e 65 64 20 69 6e 20 4c 45 44 47 45 52 2d 45  | ger.errors.contained.in.LEDGER-E | 
| 7f20 |  52 52 46 49 4c 45 2e 22 0a 20 20 28 77 69 74 68    2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20  | RRFILE."...(with-current-buffer. | 
| 7f40 |  28 67 65 74 2d 62 75 66 66 65 72 2d 63 72 65 61    74 65 20 22 2a 4c 65 64 67 65 72 20 45 72 72 6f  | (get-buffer-create."*Ledger.Erro | 
| 7f60 |  72 2a 22 29 0a 20 20 20 20 28 6c 65 74 20 28 28    62 75 66 66 65 72 2d 72 65 61 64 2d 6f 6e 6c 79  | r*").....(let.((buffer-read-only | 
| 7f80 |  20 6e 69 6c 29 29 0a 20 20 20 20 20 20 28 64 65    6c 65 74 65 2d 72 65 67 69 6f 6e 20 28 70 6f 69  | .nil)).......(delete-region.(poi | 
| 7fa0 |  6e 74 2d 6d 69 6e 29 20 28 70 6f 69 6e 74 2d 6d    61 78 29 29 0a 20 20 20 20 20 20 28 69 6e 73 65  | nt-min).(point-max)).......(inse | 
| 7fc0 |  72 74 2d 66 69 6c 65 2d 63 6f 6e 74 65 6e 74 73    20 6c 65 64 67 65 72 2d 65 72 72 66 69 6c 65 29  | rt-file-contents.ledger-errfile) | 
| 7fe0 |  29 0a 20 20 20 20 28 76 69 65 77 2d 6d 6f 64 65    29 0a 20 20 20 20 28 73 65 74 71 20 62 75 66 66  | ).....(view-mode).....(setq.buff | 
| 8000 |  65 72 2d 72 65 61 64 2d 6f 6e 6c 79 20 74 29 0a    20 20 20 20 28 63 75 72 72 65 6e 74 2d 62 75 66  | er-read-only.t).....(current-buf | 
| 8020 |  66 65 72 29 29 29 0a 0a 28 64 65 66 75 6e 20 6c    65 64 67 65 72 2d 65 78 65 63 2d 73 75 63 63 65  | fer)))..(defun.ledger-exec-succe | 
| 8040 |  73 73 2d 70 20 28 65 78 69 74 2d 63 6f 64 65 20    6c 65 64 67 65 72 2d 6f 75 74 70 75 74 2d 62 75  | ss-p.(exit-code.ledger-output-bu | 
| 8060 |  66 66 65 72 29 0a 20 20 22 52 65 74 75 72 6e 20    6e 6f 6e 2d 6e 69 6c 20 69 66 20 45 58 49 54 2d  | ffer)..."Return.non-nil.if.EXIT- | 
| 8080 |  43 4f 44 45 20 61 6e 64 20 4c 45 44 47 45 52 2d    4f 55 54 50 55 54 2d 42 55 46 46 45 52 20 69 6e  | CODE.and.LEDGER-OUTPUT-BUFFER.in | 
| 80a0 |  64 69 63 61 74 65 20 73 75 63 63 65 73 73 2e 22    0a 20 20 28 61 6e 64 20 28 7a 65 72 6f 70 20 65  | dicate.success."...(and.(zerop.e | 
| 80c0 |  78 69 74 2d 63 6f 64 65 29 0a 20 20 20 20 20 20    20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62  | xit-code)........(with-current-b | 
| 80e0 |  75 66 66 65 72 20 6c 65 64 67 65 72 2d 6f 75 74    70 75 74 2d 62 75 66 66 65 72 0a 20 20 20 20 20  | uffer.ledger-output-buffer...... | 
| 8100 |  20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28    70 6f 69 6e 74 2d 6d 69 6e 29 29 0a 20 20 20 20  | ....(goto-char.(point-min))..... | 
| 8120 |  20 20 20 20 20 28 6e 6f 74 20 28 61 6e 64 20 28    3e 20 28 62 75 66 66 65 72 2d 73 69 7a 65 29 20  | .....(not.(and.(>.(buffer-size). | 
| 8140 |  31 29 20 28 6c 6f 6f 6b 69 6e 67 2d 61 74 20 28    72 65 67 65 78 70 2d 71 75 6f 74 65 20 22 57 68  | 1).(looking-at.(regexp-quote."Wh | 
| 8160 |  69 6c 65 22 29 29 29 29 29 29 29 0a 0a 28 64 65    66 75 6e 20 6c 65 64 67 65 72 2d 65 78 65 63 2d  | ile")))))))..(defun.ledger-exec- | 
| 8180 |  6c 65 64 67 65 72 20 28 69 6e 70 75 74 2d 62 75    66 66 65 72 20 26 6f 70 74 69 6f 6e 61 6c 20 6f  | ledger.(input-buffer.&optional.o | 
| 81a0 |  75 74 70 75 74 2d 62 75 66 66 65 72 20 26 72 65    73 74 20 61 72 67 73 29 0a 20 20 22 52 75 6e 20  | utput-buffer.&rest.args)..."Run. | 
| 81c0 |  4c 65 64 67 65 72 20 75 73 69 6e 67 20 49 4e 50    55 54 2d 42 55 46 46 45 52 2e 0a 4f 70 74 69 6f  | Ledger.using.INPUT-BUFFER..Optio | 
| 81e0 |  6e 61 6c 6c 79 20 63 61 70 74 75 72 65 20 6f 75    74 70 75 74 20 69 6e 20 4f 55 54 50 55 54 2d 42  | nally.capture.output.in.OUTPUT-B | 
| 8200 |  55 46 46 45 52 2c 20 61 6e 64 20 70 61 73 73 20    41 52 47 53 20 6f 6e 20 74 68 65 0a 63 6f 6d 6d  | UFFER,.and.pass.ARGS.on.the.comm | 
| 8220 |  61 6e 64 20 6c 69 6e 65 2e 20 20 52 65 74 75 72    6e 73 20 4f 55 54 50 55 54 2d 42 55 46 46 45 52  | and.line...Returns.OUTPUT-BUFFER | 
| 8240 |  20 69 66 20 6c 65 64 67 65 72 20 73 75 63 63 65    65 64 65 64 2c 0a 6f 74 68 65 72 77 69 73 65 20  | .if.ledger.succeeded,.otherwise. | 
| 8260 |  74 68 65 20 65 72 72 6f 72 20 6f 75 74 70 75 74    20 69 73 20 64 69 73 70 6c 61 79 65 64 20 61 6e  | the.error.output.is.displayed.an | 
| 8280 |  64 20 61 6e 20 65 72 72 6f 72 20 69 73 20 72 61    69 73 65 64 2e 22 0a 20 20 28 75 6e 6c 65 73 73  | d.an.error.is.raised."...(unless | 
| 82a0 |  20 28 61 6e 64 20 6c 65 64 67 65 72 2d 62 69 6e    61 72 79 2d 70 61 74 68 0a 20 20 20 20 20 20 20  | .(and.ledger-binary-path........ | 
| 82c0 |  20 20 20 20 20 20 20 20 28 6f 72 20 28 61 6e 64    20 28 66 69 6c 65 2d 65 78 69 73 74 73 2d 70 20  | ........(or.(and.(file-exists-p. | 
| 82e0 |  6c 65 64 67 65 72 2d 62 69 6e 61 72 79 2d 70 61    74 68 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | ledger-binary-path)............. | 
| 8300 |  20 20 20 20 20 20 20 20 20 20 20 20 28 66 69 6c    65 2d 65 78 65 63 75 74 61 62 6c 65 2d 70 20 6c  | ............(file-executable-p.l | 
| 8320 |  65 64 67 65 72 2d 62 69 6e 61 72 79 2d 70 61 74    68 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | edger-binary-path))............. | 
| 8340 |  20 20 20 20 20 20 20 28 65 78 65 63 75 74 61 62    6c 65 2d 66 69 6e 64 20 6c 65 64 67 65 72 2d 62  | .......(executable-find.ledger-b | 
| 8360 |  69 6e 61 72 79 2d 70 61 74 68 29 29 29 0a 20 20    20 20 28 65 72 72 6f 72 20 22 60 6c 65 64 67 65  | inary-path))).....(error."`ledge | 
| 8380 |  72 2d 62 69 6e 61 72 79 2d 70 61 74 68 27 20 28    76 61 6c 75 65 3a 20 25 73 29 20 69 73 20 6e 6f  | r-binary-path'.(value:.%s).is.no | 
| 83a0 |  74 20 65 78 65 63 75 74 61 62 6c 65 22 20 6c 65    64 67 65 72 2d 62 69 6e 61 72 79 2d 70 61 74 68  | t.executable".ledger-binary-path | 
| 83c0 |  29 29 0a 20 20 28 6c 65 74 20 28 28 62 75 66 20    28 6f 72 20 69 6e 70 75 74 2d 62 75 66 66 65 72  | ))...(let.((buf.(or.input-buffer | 
| 83e0 |  20 28 66 69 6e 64 2d 66 69 6c 65 2d 6e 6f 73 65    6c 65 63 74 20 28 6c 65 64 67 65 72 2d 6d 61 73  | .(find-file-noselect.(ledger-mas | 
| 8400 |  74 65 72 2d 66 69 6c 65 29 29 29 29 0a 20 20 20    20 20 20 20 20 28 6f 75 74 62 75 66 20 28 6f 72  | ter-file)))).........(outbuf.(or | 
| 8420 |  20 6f 75 74 70 75 74 2d 62 75 66 66 65 72 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .output-buffer.................. | 
| 8440 |  20 20 20 28 67 65 6e 65 72 61 74 65 2d 6e 65 77    2d 62 75 66 66 65 72 20 22 20 2a 6c 65 64 67 65  | ...(generate-new-buffer.".*ledge | 
| 8460 |  72 2d 74 6d 70 2a 22 29 29 29 0a 20 20 20 20 20    20 20 20 28 65 72 72 66 69 6c 65 20 28 6d 61 6b  | r-tmp*"))).........(errfile.(mak | 
| 8480 |  65 2d 74 65 6d 70 2d 66 69 6c 65 20 22 6c 65 64    67 65 72 2d 65 72 72 6f 72 73 22 29 29 29 0a 20  | e-temp-file."ledger-errors"))).. | 
| 84a0 |  20 20 20 28 75 6e 77 69 6e 64 2d 70 72 6f 74 65    63 74 0a 20 20 20 20 20 20 20 20 28 77 69 74 68  | ...(unwind-protect.........(with | 
| 84c0 |  2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20    62 75 66 0a 20 20 20 20 20 20 20 20 20 20 28 6c  | -current-buffer.buf...........(l | 
| 84e0 |  65 74 20 28 28 65 78 69 74 2d 63 6f 64 65 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | et.((exit-code.................. | 
| 8500 |  28 6c 65 74 20 28 28 63 6f 64 69 6e 67 2d 73 79    73 74 65 6d 2d 66 6f 72 2d 77 72 69 74 65 20 27  | (let.((coding-system-for-write.' | 
| 8520 |  75 74 66 2d 38 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  | utf-8)........................(c | 
| 8540 |  6f 64 69 6e 67 2d 73 79 73 74 65 6d 2d 66 6f 72    2d 72 65 61 64 20 27 75 74 66 2d 38 29 29 0a 20  | oding-system-for-read.'utf-8)).. | 
| 8560 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 61 70 70 6c 79 20 23 27 63 61 6c 6c 2d  | ..................(apply.#'call- | 
| 8580 |  70 72 6f 63 65 73 73 2d 72 65 67 69 6f 6e 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | process-region.................. | 
| 85a0 |  20 20 20 20 20 20 20 20 20 28 61 70 70 65 6e 64    20 28 6c 69 73 74 20 28 70 6f 69 6e 74 2d 6d 69  | .........(append.(list.(point-mi | 
| 85c0 |  6e 29 20 28 70 6f 69 6e 74 2d 6d 61 78 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | n).(point-max).................. | 
| 85e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 6c 65 64 67 65 72 2d 62 69  | .......................ledger-bi | 
| 8600 |  6e 61 72 79 2d 70 61 74 68 20 6e 69 6c 20 28 6c    69 73 74 20 6f 75 74 62 75 66 20 65 72 72 66 69  | nary-path.nil.(list.outbuf.errfi | 
| 8620 |  6c 65 29 20 6e 69 6c 20 22 2d 66 22 20 22 2d 22    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | le).nil."-f"."-")............... | 
| 8640 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 28 6c 69 73 74 20 22 2d 2d 64 61 74  | ....................(list."--dat | 
| 8660 |  65 2d 66 6f 72 6d 61 74 22 20 6c 65 64 67 65 72    2d 64 65 66 61 75 6c 74 2d 64 61 74 65 2d 66 6f  | e-format".ledger-default-date-fo | 
| 8680 |  72 6d 61 74 29 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | rmat)........................... | 
| 86a0 |  20 20 20 20 20 20 20 20 61 72 67 73 29 29 29 29    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 69  | ........args))))).............(i | 
| 86c0 |  66 20 28 6c 65 64 67 65 72 2d 65 78 65 63 2d 73    75 63 63 65 73 73 2d 70 20 65 78 69 74 2d 63 6f  | f.(ledger-exec-success-p.exit-co | 
| 86e0 |  64 65 20 6f 75 74 62 75 66 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 6f 75 74 62 75  | de.outbuf).................outbu | 
| 8700 |  66 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 64 69 73 70 6c 61 79 2d 62 75 66 66 65 72 20  | f...............(display-buffer. | 
| 8720 |  28 6c 65 64 67 65 72 2d 65 78 65 63 2d 68 61 6e    64 6c 65 2d 65 72 72 6f 72 20 65 72 72 66 69 6c  | (ledger-exec-handle-error.errfil | 
| 8740 |  65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 65 72 72 6f 72 20 22 4c 65 64 67 65 72  | e))...............(error."Ledger | 
| 8760 |  20 65 78 65 63 75 74 69 6f 6e 20 66 61 69 6c 65    64 22 29 29 29 29 0a 20 20 20 20 20 20 28 64 65  | .execution.failed")))).......(de | 
| 8780 |  6c 65 74 65 2d 66 69 6c 65 20 65 72 72 66 69 6c    65 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6c 65  | lete-file.errfile))))..(defun.le | 
| 87a0 |  64 67 65 72 2d 76 65 72 73 69 6f 6e 2d 67 72 65    61 74 65 72 2d 70 20 28 6e 65 65 64 65 64 29 0a  | dger-version-greater-p.(needed). | 
| 87c0 |  20 20 22 56 65 72 69 66 79 20 74 68 65 20 6c 65    64 67 65 72 20 62 69 6e 61 72 79 20 76 65 72 73  | .."Verify.the.ledger.binary.vers | 
| 87e0 |  69 6f 6e 20 69 73 20 61 74 20 6c 65 61 73 74 20    4e 45 45 44 45 44 2e 22 0a 20 20 28 6c 65 74 20  | ion.is.at.least.NEEDED."...(let. | 
| 8800 |  28 28 76 65 72 73 69 6f 6e 2d 73 74 72 69 6e 67    73 20 27 28 29 29 29 0a 20 20 20 20 28 77 69 74  | ((version-strings.'())).....(wit | 
| 8820 |  68 2d 74 65 6d 70 2d 62 75 66 66 65 72 0a 20 20    20 20 20 20 28 77 68 65 6e 20 28 6c 65 64 67 65  | h-temp-buffer.......(when.(ledge | 
| 8840 |  72 2d 65 78 65 63 2d 6c 65 64 67 65 72 20 28 63    75 72 72 65 6e 74 2d 62 75 66 66 65 72 29 20 28  | r-exec-ledger.(current-buffer).( | 
| 8860 |  63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 29 20    22 2d 2d 76 65 72 73 69 6f 6e 22 29 0a 20 20 20  | current-buffer)."--version").... | 
| 8880 |  20 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20    28 70 6f 69 6e 74 2d 6d 69 6e 29 29 0a 20 20 20  | .....(goto-char.(point-min)).... | 
| 88a0 |  20 20 20 20 20 28 64 65 6c 65 74 65 2d 68 6f 72    69 7a 6f 6e 74 61 6c 2d 73 70 61 63 65 29 0a 20  | .....(delete-horizontal-space).. | 
| 88c0 |  20 20 20 20 20 20 20 28 73 65 74 71 20 76 65 72    73 69 6f 6e 2d 73 74 72 69 6e 67 73 20 28 73 70  | .......(setq.version-strings.(sp | 
| 88e0 |  6c 69 74 2d 73 74 72 69 6e 67 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | lit-string...................... | 
| 8900 |  20 20 20 20 20 20 20 20 20 20 28 62 75 66 66 65    72 2d 73 75 62 73 74 72 69 6e 67 2d 6e 6f 2d 70  | ..........(buffer-substring-no-p | 
| 8920 |  72 6f 70 65 72 74 69 65 73 20 28 70 6f 69 6e 74    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | roperties.(point)............... | 
| 8940 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 8960 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 70 6f 69 6e 74 2d 6d 61 78 29 29 29 29 0a  | .................(point-max)))). | 
| 8980 |  20 20 20 20 20 20 20 20 28 69 66 20 28 61 6e 64    20 28 73 74 72 69 6e 67 2d 6d 61 74 63 68 20 28  | ........(if.(and.(string-match.( | 
| 89a0 |  72 65 67 65 78 70 2d 71 75 6f 74 65 20 22 4c 65    64 67 65 72 22 29 20 28 63 61 72 20 76 65 72 73  | regexp-quote."Ledger").(car.vers | 
| 89c0 |  69 6f 6e 2d 73 74 72 69 6e 67 73 29 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28  | ion-strings))..................( | 
| 89e0 |  6f 72 20 28 73 74 72 69 6e 67 3d 20 6e 65 65 64    65 64 20 28 63 61 64 72 20 76 65 72 73 69 6f 6e  | or.(string=.needed.(cadr.version | 
| 8a00 |  2d 73 74 72 69 6e 67 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  | -strings))...................... | 
| 8a20 |  28 73 74 72 69 6e 67 3c 20 6e 65 65 64 65 64 20    28 63 61 64 72 20 76 65 72 73 69 6f 6e 2d 73 74  | (string<.needed.(cadr.version-st | 
| 8a40 |  72 69 6e 67 73 29 29 29 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 74 20 3b 3b 20 73 75 63 63 65  | rings)))).............t.;;.succe | 
| 8a60 |  73 73 0a 20 20 20 20 20 20 20 20 20 20 6e 69 6c    29 29 29 29 29 20 3b 3b 66 61 69 6c 75 72 65 0a  | ss...........nil))))).;;failure. | 
| 8a80 |  0a 28 64 65 66 75 6e 20 6c 65 64 67 65 72 2d 63    68 65 63 6b 2d 76 65 72 73 69 6f 6e 20 28 29 0a  | .(defun.ledger-check-version.(). | 
| 8aa0 |  20 20 22 56 65 72 69 66 79 20 74 68 61 74 20 6c    65 64 67 65 72 20 77 6f 72 6b 73 20 61 6e 64 20  | .."Verify.that.ledger.works.and. | 
| 8ac0 |  69 73 20 6d 6f 64 65 72 6e 20 65 6e 6f 75 67 68    2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76  | is.modern.enough."...(interactiv | 
| 8ae0 |  65 29 0a 20 20 28 69 66 20 6c 65 64 67 65 72 2d    6d 6f 64 65 2d 73 68 6f 75 6c 64 2d 63 68 65 63  | e)...(if.ledger-mode-should-chec | 
| 8b00 |  6b 2d 76 65 72 73 69 6f 6e 0a 20 20 20 20 20 20    28 69 66 20 28 73 65 74 71 20 6c 65 64 67 65 72  | k-version.......(if.(setq.ledger | 
| 8b20 |  2d 77 6f 72 6b 73 20 28 6c 65 64 67 65 72 2d 76    65 72 73 69 6f 6e 2d 67 72 65 61 74 65 72 2d 70  | -works.(ledger-version-greater-p | 
| 8b40 |  20 6c 65 64 67 65 72 2d 76 65 72 73 69 6f 6e 2d    6e 65 65 64 65 64 29 29 0a 20 20 20 20 20 20 20  | .ledger-version-needed))........ | 
| 8b60 |  20 20 20 28 6d 65 73 73 61 67 65 20 22 47 6f 6f    64 20 4c 65 64 67 65 72 20 56 65 72 73 69 6f 6e  | ...(message."Good.Ledger.Version | 
| 8b80 |  22 29 0a 20 20 20 20 20 20 20 20 28 6d 65 73 73    61 67 65 20 22 42 61 64 20 4c 65 64 67 65 72 20  | ").........(message."Bad.Ledger. | 
| 8ba0 |  56 65 72 73 69 6f 6e 22 29 29 29 29 0a 0a 28 70    72 6f 76 69 64 65 20 27 6c 65 64 67 65 72 2d 65  | Version"))))..(provide.'ledger-e | 
| 8bc0 |  78 65 63 29 0a 0a 3b 3b 3b 20 6c 65 64 67 65 72    2d 65 78 65 63 2e 65 6c 20 65 6e 64 73 20 68 65  | xec)..;;;.ledger-exec.el.ends.he | 
| 8be0 |  72 65 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  | re.............................. | 
| 8c00 |  6c 65 64 67 65 72 2d 6d 6f 64 65 2d 32 30 32 34    30 34 31 36 2e 34 31 36 2f 6c 65 64 67 65 72 2d  | ledger-mode-20240416.416/ledger- | 
| 8c20 |  70 6f 73 74 2e 65 6c 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | post.el......................... | 
| 8c40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 8c60 |  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 | 
| 8c80 |  30 30 31 37 32 36 31 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 35 36 37 30 00 20 30 00 00 00  | 0017261.00000000000.015670..0... | 
| 8ca0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 8cc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 8ce0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 8d00 |  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................... | 
| 8d20 |  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................... | 
| 8d40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 8d60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 8d80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 8da0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 8dc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 8de0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 8e00 |  3b 3b 3b 20 6c 65 64 67 65 72 2d 70 6f 73 74 2e    65 6c 20 2d 2d 2d 20 48 65 6c 70 65 72 20 63 6f  | ;;;.ledger-post.el.---.Helper.co | 
| 8e20 |  64 65 20 66 6f 72 20 75 73 65 20 77 69 74 68 20    74 68 65 20 22 6c 65 64 67 65 72 22 20 63 6f 6d  | de.for.use.with.the."ledger".com | 
| 8e40 |  6d 61 6e 64 2d 6c 69 6e 65 20 74 6f 6f 6c 20 20    2d 2a 2d 20 6c 65 78 69 63 61 6c 2d 62 69 6e 64  | mand-line.tool..-*-.lexical-bind | 
| 8e60 |  69 6e 67 3a 20 74 3b 20 2d 2a 2d 0a 0a 3b 3b 20    43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30  | ing:.t;.-*-..;;.Copyright.(C).20 | 
| 8e80 |  30 33 2d 32 30 31 36 20 4a 6f 68 6e 20 57 69 65    67 6c 65 79 20 28 6a 6f 68 6e 77 20 41 54 20 67  | 03-2016.John.Wiegley.(johnw.AT.g | 
| 8ea0 |  6e 75 20 44 4f 54 20 6f 72 67 29 0a 0a 3b 3b 20    54 68 69 73 20 66 69 6c 65 20 69 73 20 6e 6f 74  | nu.DOT.org)..;;.This.file.is.not | 
| 8ec0 |  20 70 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 69 73 20  | .part.of.GNU.Emacs...;;.This.is. | 
| 8ee0 |  66 72 65 65 20 73 6f 66 74 77 61 72 65 3b 20 79    6f 75 20 63 61 6e 20 72 65 64 69 73 74 72 69 62  | free.software;.you.can.redistrib | 
| 8f00 |  75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f    64 69 66 79 20 69 74 20 75 6e 64 65 72 0a 3b 3b  | ute.it.and/or.modify.it.under.;; | 
| 8f20 |  20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68    65 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75  | .the.terms.of.the.GNU.General.Pu | 
| 8f40 |  62 6c 69 63 20 4c 69 63 65 6e 73 65 20 61 73 20    70 75 62 6c 69 73 68 65 64 20 62 79 20 74 68 65  | blic.License.as.published.by.the | 
| 8f60 |  20 46 72 65 65 0a 3b 3b 20 53 6f 66 74 77 61 72    65 20 46 6f 75 6e 64 61 74 69 6f 6e 3b 20 65 69  | .Free.;;.Software.Foundation;.ei | 
| 8f80 |  74 68 65 72 20 76 65 72 73 69 6f 6e 20 32 2c 20    6f 72 20 28 61 74 20 79 6f 75 72 20 6f 70 74 69  | ther.version.2,.or.(at.your.opti | 
| 8fa0 |  6f 6e 29 20 61 6e 79 20 6c 61 74 65 72 0a 3b 3b    20 76 65 72 73 69 6f 6e 2e 0a 3b 3b 0a 3b 3b 20  | on).any.later.;;.version..;;.;;. | 
| 8fc0 |  54 68 69 73 20 69 73 20 64 69 73 74 72 69 62 75    74 65 64 20 69 6e 20 74 68 65 20 68 6f 70 65 20  | This.is.distributed.in.the.hope. | 
| 8fe0 |  74 68 61 74 20 69 74 20 77 69 6c 6c 20 62 65 20    75 73 65 66 75 6c 2c 20 62 75 74 20 57 49 54 48  | that.it.will.be.useful,.but.WITH | 
| 9000 |  4f 55 54 0a 3b 3b 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  | OUT.;;.ANY.WARRANTY;.without.eve | 
| 9020 |  6e 20 74 68 65 20 69 6d 70 6c 69 65 64 20 77 61    72 72 61 6e 74 79 20 6f 66 20 4d 45 52 43 48 41  | n.the.implied.warranty.of.MERCHA | 
| 9040 |  4e 54 41 42 49 4c 49 54 59 20 6f 72 0a 3b 3b 20    46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41  | NTABILITY.or.;;.FITNESS.FOR.A.PA | 
| 9060 |  52 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45    2e 20 20 53 65 65 20 74 68 65 20 47 4e 55 20 47  | RTICULAR.PURPOSE...See.the.GNU.G | 
| 9080 |  65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69    63 65 6e 73 65 0a 3b 3b 20 66 6f 72 20 6d 6f 72  | eneral.Public.License.;;.for.mor | 
| 90a0 |  65 20 64 65 74 61 69 6c 73 2e 0a 3b 3b 0a 3b 3b    20 59 6f 75 20 73 68 6f 75 6c 64 20 68 61 76 65  | e.details..;;.;;.You.should.have | 
| 90c0 |  20 72 65 63 65 69 76 65 64 20 61 20 63 6f 70 79    20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65  | .received.a.copy.of.the.GNU.Gene | 
| 90e0 |  72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e    73 65 0a 3b 3b 20 61 6c 6f 6e 67 20 77 69 74 68  | ral.Public.License.;;.along.with | 
| 9100 |  20 47 4e 55 20 45 6d 61 63 73 3b 20 73 65 65 20    74 68 65 20 66 69 6c 65 20 43 4f 50 59 49 4e 47  | .GNU.Emacs;.see.the.file.COPYING | 
| 9120 |  2e 20 20 49 66 20 6e 6f 74 2c 20 77 72 69 74 65    20 74 6f 20 74 68 65 0a 3b 3b 20 46 72 65 65 20  | ...If.not,.write.to.the.;;.Free. | 
| 9140 |  53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61 74    69 6f 6e 2c 20 49 6e 63 2e 2c 20 35 31 20 46 72  | Software.Foundation,.Inc.,.51.Fr | 
| 9160 |  61 6e 6b 6c 69 6e 20 53 74 72 65 65 74 2c 20 46    69 66 74 68 20 46 6c 6f 6f 72 2c 20 42 6f 73 74  | anklin.Street,.Fifth.Floor,.Bost | 
| 9180 |  6f 6e 2c 0a 3b 3b 20 4d 41 20 30 32 31 31 30 2d    31 33 30 31 20 55 53 41 2e 0a 0a 0a 3b 3b 3b 20  | on,.;;.MA.02110-1301.USA....;;;. | 
| 91a0 |  43 6f 6d 6d 65 6e 74 61 72 79 3a 0a 3b 3b 20 55    74 69 6c 69 74 79 20 66 75 6e 63 74 69 6f 6e 73  | Commentary:.;;.Utility.functions | 
| 91c0 |  20 66 6f 72 20 64 65 61 6c 69 6e 67 20 77 69 74    68 20 70 6f 73 74 69 6e 67 73 2e 0a 0a 28 72 65  | .for.dealing.with.postings...(re | 
| 91e0 |  71 75 69 72 65 20 27 6c 65 64 67 65 72 2d 72 65    67 65 78 29 0a 28 72 65 71 75 69 72 65 20 27 6c  | quire.'ledger-regex).(require.'l | 
| 9200 |  65 64 67 65 72 2d 6e 61 76 69 67 61 74 65 29 0a    0a 28 64 65 63 6c 61 72 65 2d 66 75 6e 63 74 69  | edger-navigate)..(declare-functi | 
| 9220 |  6f 6e 20 63 61 6c 63 2d 72 65 6e 75 6d 62 65 72    2d 73 74 61 63 6b 20 22 63 61 6c 63 22 20 28 29  | on.calc-renumber-stack."calc".() | 
| 9240 |  29 0a 28 64 65 63 6c 61 72 65 2d 66 75 6e 63 74    69 6f 6e 20 6c 65 64 67 65 72 2d 73 74 72 69 6e  | ).(declare-function.ledger-strin | 
| 9260 |  67 2d 74 6f 2d 6e 75 6d 62 65 72 20 22 6c 65 64    67 65 72 2d 63 6f 6d 6d 6f 64 69 74 69 65 73 22  | g-to-number."ledger-commodities" | 
| 9280 |  20 28 73 74 72 20 26 6f 70 74 69 6f 6e 61 6c 20    64 65 63 69 6d 61 6c 2d 63 6f 6d 6d 61 29 29 0a  | .(str.&optional.decimal-comma)). | 
| 92a0 |  0a 3b 3b 3b 20 43 6f 64 65 3a 0a 0a 28 64 65 66    67 72 6f 75 70 20 6c 65 64 67 65 72 2d 70 6f 73  | .;;;.Code:..(defgroup.ledger-pos | 
| 92c0 |  74 20 6e 69 6c 0a 20 20 22 4f 70 74 69 6f 6e 73    20 66 6f 72 20 63 6f 6e 74 72 6f 6c 6c 69 6e 67  | t.nil..."Options.for.controlling | 
| 92e0 |  20 68 6f 77 20 4c 65 64 67 65 72 2d 6d 6f 64 65    20 64 65 61 6c 73 20 77 69 74 68 20 70 6f 73 74  | .how.Ledger-mode.deals.with.post | 
| 9300 |  69 6e 67 73 20 61 6e 64 20 63 6f 6d 70 6c 65 74    69 6f 6e 22 0a 20 20 3a 67 72 6f 75 70 20 27 6c  | ings.and.completion"...:group.'l | 
| 9320 |  65 64 67 65 72 29 0a 0a 28 64 65 66 63 75 73 74    6f 6d 20 6c 65 64 67 65 72 2d 70 6f 73 74 2d 61  | edger)..(defcustom.ledger-post-a | 
| 9340 |  63 63 6f 75 6e 74 2d 61 6c 69 67 6e 6d 65 6e 74    2d 63 6f 6c 75 6d 6e 20 34 0a 20 20 22 54 68 65  | ccount-alignment-column.4..."The | 
| 9360 |  20 63 6f 6c 75 6d 6e 20 4c 65 64 67 65 72 2d 6d    6f 64 65 20 61 74 74 65 6d 70 74 73 20 74 6f 20  | .column.Ledger-mode.attempts.to. | 
| 9380 |  61 6c 69 67 6e 20 61 63 63 6f 75 6e 74 73 20 74    6f 2e 22 0a 20 20 3a 74 79 70 65 20 27 69 6e 74  | align.accounts.to."...:type.'int | 
| 93a0 |  65 67 65 72 0a 20 20 3a 67 72 6f 75 70 20 27 6c    65 64 67 65 72 2d 70 6f 73 74 0a 20 20 3a 73 61  | eger...:group.'ledger-post...:sa | 
| 93c0 |  66 65 20 27 69 6e 74 65 67 65 72 70 29 0a 0a 28    64 65 66 63 75 73 74 6f 6d 20 6c 65 64 67 65 72  | fe.'integerp)..(defcustom.ledger | 
| 93e0 |  2d 70 6f 73 74 2d 61 6d 6f 75 6e 74 2d 61 6c 69    67 6e 6d 65 6e 74 2d 63 6f 6c 75 6d 6e 20 35 32  | -post-amount-alignment-column.52 | 
| 9400 |  0a 20 20 22 54 68 65 20 63 6f 6c 75 6d 6e 20 4c    65 64 67 65 72 2d 6d 6f 64 65 20 61 74 74 65 6d  | ..."The.column.Ledger-mode.attem | 
| 9420 |  70 74 73 20 74 6f 20 61 6c 69 67 6e 20 61 6d 6f    75 6e 74 73 20 74 6f 2e 22 0a 20 20 3a 74 79 70  | pts.to.align.amounts.to."...:typ | 
| 9440 |  65 20 27 69 6e 74 65 67 65 72 0a 20 20 3a 67 72    6f 75 70 20 27 6c 65 64 67 65 72 2d 70 6f 73 74  | e.'integer...:group.'ledger-post | 
| 9460 |  0a 20 20 3a 73 61 66 65 20 27 69 6e 74 65 67 65    72 70 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20  | ...:safe.'integerp)..(defcustom. | 
| 9480 |  6c 65 64 67 65 72 2d 70 6f 73 74 2d 61 6d 6f 75    6e 74 2d 61 6c 69 67 6e 6d 65 6e 74 2d 61 74 20  | ledger-post-amount-alignment-at. | 
| 94a0 |  3a 65 6e 64 0a 20 20 22 50 6f 73 69 74 69 6f 6e    20 61 74 20 77 68 69 63 68 20 74 68 65 20 61 6d  | :end..."Position.at.which.the.am | 
| 94c0 |  6f 75 6e 74 20 69 73 20 61 6c 69 67 6e 65 64 2e    0a 0a 43 61 6e 20 62 65 20 3a 65 6e 64 20 74 6f  | ount.is.aligned...Can.be.:end.to | 
| 94e0 |  20 61 6c 69 67 6e 20 6f 6e 20 74 68 65 20 6c 61    73 74 20 6e 75 6d 62 65 72 20 6f 66 20 74 68 65  | .align.on.the.last.number.of.the | 
| 9500 |  20 61 6d 6f 75 6e 74 20 28 63 61 6e 20 62 65 0a    66 6f 6c 6c 6f 77 65 64 20 62 79 20 75 6e 61 6c  | .amount.(can.be.followed.by.unal | 
| 9520 |  69 67 6e 65 64 20 63 6f 6d 6d 6f 64 69 74 79 29    20 6f 72 20 3a 64 65 63 69 6d 61 6c 20 74 6f 20  | igned.commodity).or.:decimal.to. | 
| 9540 |  61 6c 69 67 6e 20 61 74 20 74 68 65 0a 64 65 63    69 6d 61 6c 20 73 65 70 61 72 61 74 6f 72 2e 22  | align.at.the.decimal.separator." | 
| 9560 |  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 74 61 67 20 22 61 6c  | ...:type.'(radio.(const.:tag."al | 
| 9580 |  69 67 6e 20 61 74 20 74 68 65 20 65 6e 64 20 6f    66 20 61 6d 6f 75 6e 74 22 20 3a 65 6e 64 29 0a  | ign.at.the.end.of.amount".:end). | 
| 95a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 63 6f 6e 73 74 20 3a 74 61 67 20 22 61 6c 69  | ................(const.:tag."ali | 
| 95c0 |  67 6e 20 61 74 20 74 68 65 20 64 65 63 69 6d 61    6c 20 73 65 70 61 72 61 74 6f 72 22 20 3a 64 65  | gn.at.the.decimal.separator".:de | 
| 95e0 |  63 69 6d 61 6c 29 29 0a 20 20 3a 67 72 6f 75 70    20 27 6c 65 64 67 65 72 2d 70 6f 73 74 0a 20 20  | cimal))...:group.'ledger-post... | 
| 9600 |  3a 73 61 66 65 20 28 6c 61 6d 62 64 61 20 28 78    29 20 28 6d 65 6d 71 20 78 20 27 28 3a 65 6e 64  | :safe.(lambda.(x).(memq.x.'(:end | 
| 9620 |  20 3a 64 65 63 69 6d 61 6c 29 29 29 29 0a 0a 28    64 65 66 63 75 73 74 6f 6d 20 6c 65 64 67 65 72  | .:decimal))))..(defcustom.ledger | 
| 9640 |  2d 70 6f 73 74 2d 61 75 74 6f 2d 61 6c 69 67 6e    20 74 0a 20 20 22 57 68 65 6e 20 6e 6f 6e 2d 6e  | -post-auto-align.t..."When.non-n | 
| 9660 |  69 6c 2c 20 72 65 61 6c 69 67 6e 20 70 6f 73 74    20 61 6d 6f 75 6e 74 73 20 77 68 65 6e 20 69 6e  | il,.realign.post.amounts.when.in | 
| 9680 |  64 65 6e 74 69 6e 67 20 6f 72 20 63 6f 6d 70 6c    65 74 69 6e 67 2e 22 0a 20 20 3a 74 79 70 65 20  | denting.or.completing."...:type. | 
| 96a0 |  27 62 6f 6f 6c 65 61 6e 0a 20 20 3a 67 72 6f 75    70 20 27 6c 65 64 67 65 72 2d 70 6f 73 74 0a 20  | 'boolean...:group.'ledger-post.. | 
| 96c0 |  20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f    6e 20 27 28 6c 65 64 67 65 72 2d 6d 6f 64 65 20  | .:package-version.'(ledger-mode. | 
| 96e0 |  2e 20 22 34 2e 30 2e 30 22 29 0a 20 20 3a 73 61    66 65 20 27 62 6f 6f 6c 65 61 6e 70 29 0a 0a 28  | .."4.0.0")...:safe.'booleanp)..( | 
| 9700 |  64 65 66 75 6e 20 6c 65 64 67 65 72 2d 6e 65 78    74 2d 61 6d 6f 75 6e 74 20 28 26 6f 70 74 69 6f  | defun.ledger-next-amount.(&optio | 
| 9720 |  6e 61 6c 20 65 6e 64 29 0a 20 20 22 4d 6f 76 65    20 70 6f 69 6e 74 20 74 6f 20 74 68 65 20 6e 65  | nal.end)..."Move.point.to.the.ne | 
| 9740 |  78 74 20 61 6d 6f 75 6e 74 2c 20 61 73 20 6c 6f    6e 67 20 61 73 20 69 74 20 69 73 20 6e 6f 74 20  | xt.amount,.as.long.as.it.is.not. | 
| 9760 |  70 61 73 74 20 45 4e 44 2e 0a 52 65 74 75 72 6e    20 74 68 65 20 77 69 64 74 68 20 6f 66 20 74 68  | past.END..Return.the.width.of.th | 
| 9780 |  65 20 61 6d 6f 75 6e 74 20 66 69 65 6c 64 20 61    73 20 61 6e 20 69 6e 74 65 67 65 72 20 61 6e 64  | e.amount.field.as.an.integer.and | 
| 97a0 |  20 6c 65 61 76 65 0a 70 6f 69 6e 74 20 61 74 20    62 65 67 69 6e 6e 69 6e 67 20 6f 66 20 74 68 65  | .leave.point.at.beginning.of.the | 
| 97c0 |  20 63 6f 6d 6d 6f 64 69 74 79 2e 22 0a 20 20 3b    3b 28 62 65 67 69 6e 6e 69 6e 67 2d 6f 66 2d 6c  | .commodity."...;;(beginning-of-l | 
| 97e0 |  69 6e 65 29 0a 20 20 28 6c 65 74 20 28 28 63 61    73 65 2d 66 6f 6c 64 2d 73 65 61 72 63 68 20 6e  | ine)...(let.((case-fold-search.n | 
| 9800 |  69 6c 29 29 0a 20 20 20 20 28 77 68 65 6e 20 28    72 65 2d 73 65 61 72 63 68 2d 66 6f 72 77 61 72  | il)).....(when.(re-search-forwar | 
| 9820 |  64 20 6c 65 64 67 65 72 2d 61 6d 6f 75 6e 74 2d    72 65 67 65 78 20 65 6e 64 20 74 29 0a 20 20 20  | d.ledger-amount-regex.end.t).... | 
| 9840 |  20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 6d    61 74 63 68 2d 62 65 67 69 6e 6e 69 6e 67 20 30  | ...(goto-char.(match-beginning.0 | 
| 9860 |  29 29 0a 20 20 20 20 20 20 28 73 6b 69 70 2d 73    79 6e 74 61 78 2d 66 6f 72 77 61 72 64 20 22 20  | )).......(skip-syntax-forward.". | 
| 9880 |  22 29 0a 20 20 20 20 20 20 28 63 6f 6e 64 0a 20    20 20 20 20 20 20 28 28 65 71 20 6c 65 64 67 65  | ").......(cond........((eq.ledge | 
| 98a0 |  72 2d 70 6f 73 74 2d 61 6d 6f 75 6e 74 2d 61 6c    69 67 6e 6d 65 6e 74 2d 61 74 20 3a 65 6e 64 29  | r-post-amount-alignment-at.:end) | 
| 98c0 |  0a 20 20 20 20 20 20 20 20 28 2d 20 28 6f 72 20    28 6d 61 74 63 68 2d 65 6e 64 20 34 29 20 28 6d  | .........(-.(or.(match-end.4).(m | 
| 98e0 |  61 74 63 68 2d 65 6e 64 20 33 29 29 20 28 70 6f    69 6e 74 29 29 29 0a 20 20 20 20 20 20 20 28 28  | atch-end.3)).(point)))........(( | 
| 9900 |  65 71 20 6c 65 64 67 65 72 2d 70 6f 73 74 2d 61    6d 6f 75 6e 74 2d 61 6c 69 67 6e 6d 65 6e 74 2d  | eq.ledger-post-amount-alignment- | 
| 9920 |  61 74 20 3a 64 65 63 69 6d 61 6c 29 0a 20 20 20    20 20 20 20 20 28 2d 20 28 6d 61 74 63 68 2d 65  | at.:decimal).........(-.(match-e | 
| 9940 |  6e 64 20 33 29 20 28 70 6f 69 6e 74 29 29 29 29    29 29 29 0a 0a 28 64 65 66 75 6e 20 6c 65 64 67  | nd.3).(point)))))))..(defun.ledg | 
| 9960 |  65 72 2d 6e 65 78 74 2d 61 63 63 6f 75 6e 74 20    28 26 6f 70 74 69 6f 6e 61 6c 20 65 6e 64 29 0a  | er-next-account.(&optional.end). | 
| 9980 |  20 20 22 4d 6f 76 65 20 74 6f 20 74 68 65 20 62    65 67 69 6e 6e 69 6e 67 20 6f 66 20 74 68 65 20  | .."Move.to.the.beginning.of.the. | 
| 99a0 |  70 6f 73 74 69 6e 67 2c 20 6f 72 20 73 74 61 74    75 73 20 6d 61 72 6b 65 72 2e 0a 52 65 74 75 72  | posting,.or.status.marker..Retur | 
| 99c0 |  6e 20 74 68 65 20 63 6f 6c 75 6d 6e 20 6f 66 20    74 68 65 20 62 65 67 69 6e 6e 69 6e 67 20 6f 66  | n.the.column.of.the.beginning.of | 
| 99e0 |  20 74 68 65 20 61 63 63 6f 75 6e 74 20 61 6e 64    20 6c 65 61 76 65 20 70 6f 69 6e 74 0a 61 74 20  | .the.account.and.leave.point.at. | 
| 9a00 |  62 65 67 69 6e 6e 69 6e 67 20 6f 66 20 61 63 63    6f 75 6e 74 2e 0a 4c 6f 6f 6b 73 20 6f 6e 6c 79  | beginning.of.account..Looks.only | 
| 9a20 |  20 61 73 20 66 61 72 20 61 73 20 45 4e 44 2c 20    69 66 20 73 75 70 70 6c 69 65 64 2c 20 6f 74 68  | .as.far.as.END,.if.supplied,.oth | 
| 9a40 |  65 72 77 69 73 65 20 60 70 6f 69 6e 74 2d 6d 61    78 27 2e 22 0a 20 20 28 6c 65 74 20 28 28 65 6e  | erwise.`point-max'."...(let.((en | 
| 9a60 |  64 20 28 6f 72 20 65 6e 64 20 28 70 6f 69 6e 74    2d 6d 61 78 29 29 29 29 0a 20 20 20 20 28 69 66  | d.(or.end.(point-max)))).....(if | 
| 9a80 |  20 28 3e 20 65 6e 64 20 28 70 6f 69 6e 74 29 29    0a 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28  | .(>.end.(point)).........(when.( | 
| 9aa0 |  72 65 2d 73 65 61 72 63 68 2d 66 6f 72 77 61 72    64 20 6c 65 64 67 65 72 2d 61 63 63 6f 75 6e 74  | re-search-forward.ledger-account | 
| 9ac0 |  2d 61 6e 79 2d 73 74 61 74 75 73 2d 72 65 67 65    78 20 28 31 2b 20 65 6e 64 29 20 74 29 0a 20 20  | -any-status-regex.(1+.end).t)... | 
| 9ae0 |  20 20 20 20 20 20 20 20 3b 3b 20 74 68 65 20 31    2b 20 69 73 20 74 6f 20 6d 61 6b 65 20 73 75 72  | ........;;.the.1+.is.to.make.sur | 
| 9b00 |  65 20 77 65 20 63 61 6e 20 63 61 74 63 68 20 74    68 65 20 6e 65 77 6c 69 6e 65 0a 20 20 20 20 20  | e.we.can.catch.the.newline...... | 
| 9b20 |  20 20 20 20 20 28 69 66 20 28 6d 61 74 63 68 2d    62 65 67 69 6e 6e 69 6e 67 20 31 29 0a 20 20 20  | .....(if.(match-beginning.1).... | 
| 9b40 |  20 20 20 20 20 20 20 20 20 20 20 28 67 6f 74 6f    2d 63 68 61 72 20 28 6d 61 74 63 68 2d 62 65 67  | ...........(goto-char.(match-beg | 
| 9b60 |  69 6e 6e 69 6e 67 20 31 29 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68 61  | inning.1)).............(goto-cha | 
| 9b80 |  72 20 28 6d 61 74 63 68 2d 62 65 67 69 6e 6e 69    6e 67 20 32 29 29 29 0a 20 20 20 20 20 20 20 20  | r.(match-beginning.2)))......... | 
| 9ba0 |  20 20 28 63 75 72 72 65 6e 74 2d 63 6f 6c 75 6d    6e 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6c  | ..(current-column)))))..(defun.l | 
| 9bc0 |  65 64 67 65 72 2d 70 6f 73 74 2d 61 6c 69 67 6e    2d 78 61 63 74 20 28 70 6f 73 29 0a 20 20 22 41  | edger-post-align-xact.(pos)..."A | 
| 9be0 |  6c 69 67 6e 20 61 6c 6c 20 74 68 65 20 70 6f 73    74 69 6e 67 20 69 6e 20 74 68 65 20 78 61 63 74  | lign.all.the.posting.in.the.xact | 
| 9c00 |  20 61 74 20 50 4f 53 2e 22 0a 20 20 28 69 6e 74    65 72 61 63 74 69 76 65 20 22 64 22 29 0a 20 20  | .at.POS."...(interactive."d")... | 
| 9c20 |  28 6c 65 74 20 28 28 62 6f 75 6e 64 73 20 28 6c    65 64 67 65 72 2d 6e 61 76 69 67 61 74 65 2d 66  | (let.((bounds.(ledger-navigate-f | 
| 9c40 |  69 6e 64 2d 78 61 63 74 2d 65 78 74 65 6e 74 73    20 70 6f 73 29 29 29 0a 20 20 20 20 28 6c 65 64  | ind-xact-extents.pos))).....(led | 
| 9c60 |  67 65 72 2d 70 6f 73 74 2d 61 6c 69 67 6e 2d 70    6f 73 74 69 6e 67 73 20 28 63 61 72 20 62 6f 75  | ger-post-align-postings.(car.bou | 
| 9c80 |  6e 64 73 29 20 28 63 61 64 72 20 62 6f 75 6e 64    73 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6c 65  | nds).(cadr.bounds))))..(defun.le | 
| 9ca0 |  64 67 65 72 2d 70 6f 73 74 2d 61 6c 69 67 6e 2d    70 6f 73 74 69 6e 67 73 20 28 62 65 67 20 65 6e  | dger-post-align-postings.(beg.en | 
| 9cc0 |  64 29 0a 20 20 22 41 6c 69 67 6e 20 61 6c 6c 20    61 63 63 6f 75 6e 74 73 20 61 6e 64 20 61 6d 6f  | d)..."Align.all.accounts.and.amo | 
| 9ce0 |  75 6e 74 73 20 62 65 74 77 65 65 6e 20 42 45 47    20 61 6e 64 20 45 4e 44 2e 0a 54 68 65 20 63 75  | unts.between.BEG.and.END..The.cu | 
| 9d00 |  72 72 65 6e 74 20 72 65 67 69 6f 6e 20 69 73 20    75 73 65 64 2c 20 6f 72 2c 20 69 66 20 6e 6f 20  | rrent.region.is.used,.or,.if.no. | 
| 9d20 |  72 65 67 69 6f 6e 2c 20 74 68 65 20 63 75 72 72    65 6e 74 20 6c 69 6e 65 2e 22 0a 20 20 28 69 6e  | region,.the.current.line."...(in | 
| 9d40 |  74 65 72 61 63 74 69 76 65 20 22 72 22 29 0a 20    20 28 73 61 76 65 2d 6d 61 74 63 68 2d 64 61 74  | teractive."r")...(save-match-dat | 
| 9d60 |  61 0a 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 28 6c 65 74  | a.....(save-excursion.......(let | 
| 9d80 |  20 28 28 69 6e 68 69 62 69 74 2d 6d 6f 64 69 66    69 63 61 74 69 6f 6e 2d 68 6f 6f 6b 73 20 74 29  | .((inhibit-modification-hooks.t) | 
| 9da0 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20    45 78 74 65 6e 64 20 72 65 67 69 6f 6e 20 74 6f  | .............;;.Extend.region.to | 
| 9dc0 |  20 77 68 6f 6c 65 20 6c 69 6e 65 73 0a 20 20 20    20 20 20 20 20 20 20 20 20 28 62 65 67 20 28 73  | .whole.lines.............(beg.(s | 
| 9de0 |  61 76 65 2d 65 78 63 75 72 73 69 6f 6e 20 28 67    6f 74 6f 2d 63 68 61 72 20 62 65 67 29 20 28 6c  | ave-excursion.(goto-char.beg).(l | 
| 9e00 |  69 6e 65 2d 62 65 67 69 6e 6e 69 6e 67 2d 70 6f    73 69 74 69 6f 6e 29 29 29 0a 20 20 20 20 20 20  | ine-beginning-position)))....... | 
| 9e20 |  20 20 20 20 20 20 28 65 6e 64 20 28 73 61 76 65    2d 65 78 63 75 72 73 69 6f 6e 20 28 67 6f 74 6f  | ......(end.(save-excursion.(goto | 
| 9e40 |  2d 63 68 61 72 20 65 6e 64 29 20 28 6d 6f 76 65    2d 65 6e 64 2d 6f 66 2d 6c 69 6e 65 20 31 29 20  | -char.end).(move-end-of-line.1). | 
| 9e60 |  28 70 6f 69 6e 74 2d 6d 61 72 6b 65 72 29 29 29    29 0a 20 20 20 20 20 20 20 20 28 75 6e 74 61 62  | (point-marker)))).........(untab | 
| 9e80 |  69 66 79 20 62 65 67 20 65 6e 64 29 0a 20 20 20    20 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20  | ify.beg.end).........(goto-char. | 
| 9ea0 |  62 65 67 29 0a 20 20 20 20 20 20 20 20 28 77 68    69 6c 65 20 28 3c 20 28 70 6f 69 6e 74 29 20 65  | beg).........(while.(<.(point).e | 
| 9ec0 |  6e 64 29 0a 20 20 20 20 20 20 20 20 20 20 28 77    68 65 6e 20 28 6c 6f 6f 6b 69 6e 67 2d 61 74 2d  | nd)...........(when.(looking-at- | 
| 9ee0 |  70 20 22 20 22 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 3b 3b 20 66 69 78 20 73 70 61 63 65 73  | p.".").............;;.fix.spaces | 
| 9f00 |  20 61 74 20 62 65 67 69 6e 6e 69 6e 67 20 6f 66    20 6c 69 6e 65 3a 0a 20 20 20 20 20 20 20 20 20  | .at.beginning.of.line:.......... | 
| 9f20 |  20 20 20 28 6a 75 73 74 2d 6f 6e 65 2d 73 70 61    63 65 20 6c 65 64 67 65 72 2d 70 6f 73 74 2d 61  | ...(just-one-space.ledger-post-a | 
| 9f40 |  63 63 6f 75 6e 74 2d 61 6c 69 67 6e 6d 65 6e 74    2d 63 6f 6c 75 6d 6e 29 0a 20 20 20 20 20 20 20  | ccount-alignment-column)........ | 
| 9f60 |  20 20 20 20 20 3b 3b 20 66 69 78 20 73 70 61 63    65 73 20 62 65 66 6f 72 65 20 61 6d 6f 75 6e 74  | .....;;.fix.spaces.before.amount | 
| 9f80 |  20 69 66 20 61 6e 79 3a 0a 20 20 20 20 20 20 20    20 20 20 20 20 28 77 68 65 6e 20 28 72 65 2d 73  | .if.any:.............(when.(re-s | 
| 9fa0 |  65 61 72 63 68 2d 66 6f 72 77 61 72 64 20 22 5c    74 5c 5c 7c 20 20 5c 5c 7c 20 5c 74 22 20 28 6c  | earch-forward."\t\\|..\\|.\t".(l | 
| 9fc0 |  69 6e 65 2d 65 6e 64 2d 70 6f 73 69 74 69 6f 6e    29 20 74 29 0a 20 20 20 20 20 20 20 20 20 20 20  | ine-end-position).t)............ | 
| 9fe0 |  20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 6d    61 74 63 68 2d 62 65 67 69 6e 6e 69 6e 67 20 30  | ...(goto-char.(match-beginning.0 | 
| a000 |  29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 6c 65 74 20 28 28 61 63 63 74 2d 65 6e 64  | ))...............(let.((acct-end | 
| a020 |  2d 63 6f 6c 75 6d 6e 20 28 63 75 72 72 65 6e 74    2d 63 6f 6c 75 6d 6e 29 29 0a 20 20 20 20 20 20  | -column.(current-column))....... | 
| a040 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61    6d 74 2d 77 69 64 74 68 20 28 6c 65 64 67 65 72  | ..............(amt-width.(ledger | 
| a060 |  2d 6e 65 78 74 2d 61 6d 6f 75 6e 74 20 28 6c 69    6e 65 2d 65 6e 64 2d 70 6f 73 69 74 69 6f 6e 29  | -next-amount.(line-end-position) | 
| a080 |  29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 61 6d 74 2d 61 64 6a 75 73  | )).....................amt-adjus | 
| a0a0 |  74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 77 68 65 6e 20 61 6d 74 2d 77 69 64  | t).................(when.amt-wid | 
| a0c0 |  74 68 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 69 66 20 28 2f 3d 20 30 20 28  | th...................(if.(/=.0.( | 
| a0e0 |  73 65 74 71 20 61 6d 74 2d 61 64 6a 75 73 74 20    28 2d 20 28 69 66 20 28 3e 20 28 2d 20 6c 65 64  | setq.amt-adjust.(-.(if.(>.(-.led | 
| a100 |  67 65 72 2d 70 6f 73 74 2d 61 6d 6f 75 6e 74 2d    61 6c 69 67 6e 6d 65 6e 74 2d 63 6f 6c 75 6d 6e  | ger-post-amount-alignment-column | 
| a120 |  20 61 6d 74 2d 77 69 64 74 68 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .amt-width)..................... | 
| a140 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| a160 |  20 20 20 28 2b 20 32 20 61 63 63 74 2d 65 6e 64    2d 63 6f 6c 75 6d 6e 29 29 0a 20 20 20 20 20 20  | ...(+.2.acct-end-column))....... | 
| a180 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| a1a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 6c 65    64 67 65 72 2d 70 6f 73 74 2d 61 6d 6f 75 6e 74  | ..............ledger-post-amount | 
| a1c0 |  2d 61 6c 69 67 6e 6d 65 6e 74 2d 63 6f 6c 75 6d    6e 20 3b 3b 77 65 20 68 61 76 65 20 72 6f 6f 6d  | -alignment-column.;;we.have.room | 
| a1e0 |  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  | ................................ | 
| a200 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 2b 20 61 63 63 74 2d 65 6e 64 2d 63  | ...................(+.acct-end-c | 
| a220 |  6f 6c 75 6d 6e 20 32 20 61 6d 74 2d 77 69 64 74    68 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | olumn.2.amt-width))............. | 
| a240 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| a260 |  20 20 20 20 61 6d 74 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  | ....amt-width................... | 
| a280 |  20 20 20 20 20 20 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 | 
| a2a0 |  75 72 72 65 6e 74 2d 63 6f 6c 75 6d 6e 29 29 29    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | urrent-column))))............... | 
| a2c0 |  20 20 20 20 20 20 20 20 28 69 66 20 28 3e 20 61    6d 74 2d 61 64 6a 75 73 74 20 30 29 0a 20 20 20  | ........(if.(>.amt-adjust.0).... | 
| a2e0 |  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 6e 73 65 72 74 20 28  | .......................(insert.( | 
| a300 |  6d 61 6b 65 2d 73 74 72 69 6e 67 20 61 6d 74 2d    61 64 6a 75 73 74 20 3f 20 29 29 0a 20 20 20 20  | make-string.amt-adjust.?.))..... | 
| a320 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 28 64 65 6c 65 74 65 2d 63 68 61 72  | ....................(delete-char | 
| a340 |  20 61 6d 74 2d 61 64 6a 75 73 74 29 29 29 29 29    29 29 0a 20 20 20 20 20 20 20 20 20 20 28 66 6f  | .amt-adjust)))))))...........(fo | 
| a360 |  72 77 61 72 64 2d 6c 69 6e 65 20 31 29 29 29 29    29 29 0a 0a 28 64 65 66 75 6e 20 6c 65 64 67 65  | rward-line.1))))))..(defun.ledge | 
| a380 |  72 2d 69 6e 64 65 6e 74 2d 6c 69 6e 65 20 28 29    0a 20 20 22 49 6e 64 65 6e 74 20 74 68 65 20 63  | r-indent-line.()..."Indent.the.c | 
| a3a0 |  75 72 72 65 6e 74 20 6c 69 6e 65 2e 22 0a 20 20    3b 3b 20 45 6e 73 75 72 65 20 69 6e 64 65 6e 74  | urrent.line."...;;.Ensure.indent | 
| a3c0 |  20 69 66 20 74 68 65 20 70 72 65 76 69 6f 75 73    20 6c 69 6e 65 20 77 61 73 20 69 6e 64 65 6e 74  | .if.the.previous.line.was.indent | 
| a3e0 |  65 64 0a 20 20 28 6c 65 74 20 28 28 69 6e 64 65    6e 74 2d 6c 65 76 65 6c 20 28 73 61 76 65 2d 65  | ed...(let.((indent-level.(save-e | 
| a400 |  78 63 75 72 73 69 6f 6e 20 28 69 66 20 28 61 6e    64 20 28 7a 65 72 6f 70 20 28 66 6f 72 77 61 72  | xcursion.(if.(and.(zerop.(forwar | 
| a420 |  64 2d 6c 69 6e 65 20 2d 31 29 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | d-line.-1))..................... | 
| a440 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 6d 65 6d 71  | ...........................(memq | 
| a460 |  20 28 6c 65 64 67 65 72 2d 74 68 69 6e 67 2d 61    74 2d 70 6f 69 6e 74 29 20 27 28 74 72 61 6e 73  | .(ledger-thing-at-point).'(trans | 
| a480 |  61 63 74 69 6f 6e 20 70 6f 73 74 69 6e 67 29 29    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | action.posting)))............... | 
| a4a0 |  20 20 20 20 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 65 64 67  | ............................ledg | 
| a4c0 |  65 72 2d 70 6f 73 74 2d 61 63 63 6f 75 6e 74 2d    61 6c 69 67 6e 6d 65 6e 74 2d 63 6f 6c 75 6d 6e  | er-post-account-alignment-column | 
| a4e0 |  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  | ................................ | 
| a500 |  20 20 20 20 20 20 20 20 20 30 29 29 29 29 0a 20    20 20 20 28 75 6e 6c 65 73 73 20 28 3d 20 28 63  | .........0)))).....(unless.(=.(c | 
| a520 |  75 72 72 65 6e 74 2d 69 6e 64 65 6e 74 61 74 69    6f 6e 29 20 69 6e 64 65 6e 74 2d 6c 65 76 65 6c  | urrent-indentation).indent-level | 
| a540 |  29 0a 20 20 20 20 20 20 28 62 61 63 6b 2d 74 6f    2d 69 6e 64 65 6e 74 61 74 69 6f 6e 29 0a 20 20  | ).......(back-to-indentation)... | 
| a560 |  20 20 20 20 28 64 65 6c 65 74 65 2d 68 6f 72 69    7a 6f 6e 74 61 6c 2d 73 70 61 63 65 20 74 29 0a  | ....(delete-horizontal-space.t). | 
| a580 |  20 20 20 20 20 20 28 69 6e 64 65 6e 74 2d 74 6f    20 69 6e 64 65 6e 74 2d 6c 65 76 65 6c 29 29 29  | ......(indent-to.indent-level))) | 
| a5a0 |  0a 20 20 28 77 68 65 6e 20 6c 65 64 67 65 72 2d    70 6f 73 74 2d 61 75 74 6f 2d 61 6c 69 67 6e 0a  | ...(when.ledger-post-auto-align. | 
| a5c0 |  20 20 20 20 28 6c 65 64 67 65 72 2d 70 6f 73 74    2d 61 6c 69 67 6e 2d 70 6f 73 74 69 6e 67 73 20  | ....(ledger-post-align-postings. | 
| a5e0 |  28 6c 69 6e 65 2d 62 65 67 69 6e 6e 69 6e 67 2d    70 6f 73 69 74 69 6f 6e 29 20 28 6c 69 6e 65 2d  | (line-beginning-position).(line- | 
| a600 |  65 6e 64 2d 70 6f 73 69 74 69 6f 6e 29 29 29 29    0a 0a 28 64 65 66 75 6e 20 6c 65 64 67 65 72 2d  | end-position))))..(defun.ledger- | 
| a620 |  70 6f 73 74 2d 61 6c 69 67 6e 2d 64 77 69 6d 20    28 29 0a 20 20 22 41 6c 69 67 6e 20 61 6c 6c 20  | post-align-dwim.()..."Align.all. | 
| a640 |  74 68 65 20 70 6f 73 74 69 6e 67 20 6f 66 20 74    68 65 20 63 75 72 72 65 6e 74 20 78 61 63 74 20  | the.posting.of.the.current.xact. | 
| a660 |  6f 72 20 74 68 65 20 63 75 72 72 65 6e 74 20 72    65 67 69 6f 6e 2e 0a 0a 49 66 20 74 68 65 20 70  | or.the.current.region...If.the.p | 
| a680 |  6f 69 6e 74 20 69 73 20 69 6e 20 61 20 63 6f 6d    6d 65 6e 74 2c 20 66 69 6c 6c 20 74 68 65 20 63  | oint.is.in.a.comment,.fill.the.c | 
| a6a0 |  6f 6d 6d 65 6e 74 20 70 61 72 61 67 72 61 70 68    20 61 73 0a 72 65 67 75 6c 61 72 20 74 65 78 74  | omment.paragraph.as.regular.text | 
| a6c0 |  2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76    65 29 0a 20 20 28 63 6f 6e 64 0a 20 20 20 28 28  | ."...(interactive)...(cond....(( | 
| a6e0 |  6e 74 68 20 34 20 28 73 79 6e 74 61 78 2d 70 70    73 73 29 29 0a 20 20 20 20 28 63 61 6c 6c 2d 69  | nth.4.(syntax-ppss)).....(call-i | 
| a700 |  6e 74 65 72 61 63 74 69 76 65 6c 79 20 27 6c 65    64 67 65 72 2d 70 6f 73 74 2d 61 6c 69 67 6e 2d  | nteractively.'ledger-post-align- | 
| a720 |  70 6f 73 74 69 6e 67 73 29 0a 20 20 20 20 28 66    69 6c 6c 2d 70 61 72 61 67 72 61 70 68 29 29 0a  | postings).....(fill-paragraph)). | 
| a740 |  20 20 20 28 28 75 73 65 2d 72 65 67 69 6f 6e 2d    70 29 20 28 63 61 6c 6c 2d 69 6e 74 65 72 61 63  | ...((use-region-p).(call-interac | 
| a760 |  74 69 76 65 6c 79 20 27 6c 65 64 67 65 72 2d 70    6f 73 74 2d 61 6c 69 67 6e 2d 70 6f 73 74 69 6e  | tively.'ledger-post-align-postin | 
| a780 |  67 73 29 29 0a 20 20 20 28 74 20 28 63 61 6c 6c    2d 69 6e 74 65 72 61 63 74 69 76 65 6c 79 20 27  | gs))....(t.(call-interactively.' | 
| a7a0 |  6c 65 64 67 65 72 2d 70 6f 73 74 2d 61 6c 69 67    6e 2d 78 61 63 74 29 29 29 29 0a 0a 28 64 65 66  | ledger-post-align-xact))))..(def | 
| a7c0 |  75 6e 20 6c 65 64 67 65 72 2d 70 6f 73 74 2d 65    64 69 74 2d 61 6d 6f 75 6e 74 20 28 29 0a 20 20  | un.ledger-post-edit-amount.()... | 
| a7e0 |  22 43 61 6c 6c 20 60 63 61 6c 63 27 20 61 6e 64    20 70 75 73 68 20 74 68 65 20 61 6d 6f 75 6e 74  | "Call.`calc'.and.push.the.amount | 
| a800 |  20 69 6e 20 74 68 65 20 70 6f 73 74 69 6e 67 20    74 6f 20 74 68 65 20 74 6f 70 20 6f 66 20 73 74  | .in.the.posting.to.the.top.of.st | 
| a820 |  61 63 6b 2c 20 69 66 20 61 6e 79 2e 0a 0a 49 6e    20 74 68 65 20 63 61 6c 63 20 62 75 66 66 65 72  | ack,.if.any...In.the.calc.buffer | 
| a840 |  2c 20 70 72 65 73 73 20 79 20 74 6f 20 75 73 65    20 74 68 65 20 74 6f 70 20 76 61 6c 75 65 20 69  | ,.press.y.to.use.the.top.value.i | 
| a860 |  6e 20 74 68 65 20 73 74 61 63 6b 20 61 73 0a 74    68 65 20 61 6d 6f 75 6e 74 20 61 6e 64 20 72 65  | n.the.stack.as.the.amount.and.re | 
| a880 |  74 75 72 6e 20 74 6f 20 6c 65 64 67 65 72 2e 22    0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 29  | turn.to.ledger."...(interactive) | 
| a8a0 |  0a 20 20 28 62 65 67 69 6e 6e 69 6e 67 2d 6f 66    2d 6c 69 6e 65 29 0a 20 20 28 77 68 65 6e 20 28  | ...(beginning-of-line)...(when.( | 
| a8c0 |  72 65 2d 73 65 61 72 63 68 2d 66 6f 72 77 61 72    64 20 6c 65 64 67 65 72 2d 70 6f 73 74 2d 6c 69  | re-search-forward.ledger-post-li | 
| a8e0 |  6e 65 2d 72 65 67 65 78 70 20 28 6c 69 6e 65 2d    65 6e 64 2d 70 6f 73 69 74 69 6f 6e 29 20 74 29  | ne-regexp.(line-end-position).t) | 
| a900 |  0a 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20    28 6d 61 74 63 68 2d 65 6e 64 20 6c 65 64 67 65  | .....(goto-char.(match-end.ledge | 
| a920 |  72 2d 72 65 67 65 78 2d 70 6f 73 74 2d 6c 69 6e    65 2d 67 72 6f 75 70 2d 61 63 63 6f 75 6e 74 29  | r-regex-post-line-group-account) | 
| a940 |  29 20 3b 3b 20 67 6f 20 74 6f 20 74 68 65 20 65    6e 64 20 6f 66 20 74 68 65 20 61 63 63 6f 75 6e  | ).;;.go.to.the.end.of.the.accoun | 
| a960 |  74 0a 20 20 20 20 3b 3b 20 64 65 74 65 72 6d 69    6e 65 20 69 66 20 74 68 65 72 65 20 69 73 20 61  | t.....;;.determine.if.there.is.a | 
| a980 |  6e 20 61 6d 6f 75 6e 74 20 74 6f 20 65 64 69 74    0a 20 20 20 20 28 69 66 20 28 72 65 2d 73 65 61  | n.amount.to.edit.....(if.(re-sea | 
| a9a0 |  72 63 68 2d 66 6f 72 77 61 72 64 20 6c 65 64 67    65 72 2d 61 6d 6f 75 6e 74 2d 72 65 67 65 78 70  | rch-forward.ledger-amount-regexp | 
| a9c0 |  20 28 6c 69 6e 65 2d 65 6e 64 2d 70 6f 73 69 74    69 6f 6e 29 20 74 29 0a 20 20 20 20 20 20 20 20  | .(line-end-position).t)......... | 
| a9e0 |  28 6c 65 74 20 28 28 76 61 6c 2d 73 74 72 69 6e    67 20 28 6d 61 74 63 68 2d 73 74 72 69 6e 67 20  | (let.((val-string.(match-string. | 
| aa00 |  30 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28    67 6f 74 6f 2d 63 68 61 72 20 28 6d 61 74 63 68  | 0)))...........(goto-char.(match | 
| aa20 |  2d 62 65 67 69 6e 6e 69 6e 67 20 30 29 29 0a 20    20 20 20 20 20 20 20 20 20 28 64 65 6c 65 74 65  | -beginning.0))...........(delete | 
| aa40 |  2d 72 65 67 69 6f 6e 20 28 6d 61 74 63 68 2d 62    65 67 69 6e 6e 69 6e 67 20 30 29 20 28 6d 61 74  | -region.(match-beginning.0).(mat | 
| aa60 |  63 68 2d 65 6e 64 20 30 29 29 0a 20 20 20 20 20    20 20 20 20 20 28 70 75 73 68 2d 6d 61 72 6b 20  | ch-end.0))...........(push-mark. | 
| aa80 |  28 70 6f 69 6e 74 29 20 27 6e 6f 6d 73 67 29 0a    20 20 20 20 20 20 20 20 20 20 28 63 61 6c 63 29  | (point).'nomsg)...........(calc) | 
| aaa0 |  0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 65 64    69 74 20 74 68 65 20 61 6d 6f 75 6e 74 2c 20 66  | ...........;;.edit.the.amount,.f | 
| aac0 |  69 72 73 74 20 72 65 6d 6f 76 69 6e 67 20 74 68    6f 75 73 61 6e 64 73 20 73 65 70 61 72 61 74 6f  | irst.removing.thousands.separato | 
| aae0 |  72 73 20 61 6e 64 20 63 6f 6e 76 65 72 74 69 6e    67 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 64  | rs.and.converting...........;;.d | 
| ab00 |  65 63 69 6d 61 6c 20 63 6f 6d 6d 61 73 20 74 6f    20 63 61 6c 63 27 73 20 69 6e 70 75 74 20 66 6f  | ecimal.commas.to.calc's.input.fo | 
| ab20 |  72 6d 61 74 0a 20 20 20 20 20 20 20 20 20 20 28    63 61 6c 63 2d 65 76 61 6c 20 28 6e 75 6d 62 65  | rmat...........(calc-eval.(numbe | 
| ab40 |  72 2d 74 6f 2d 73 74 72 69 6e 67 20 28 6c 65 64    67 65 72 2d 73 74 72 69 6e 67 2d 74 6f 2d 6e 75  | r-to-string.(ledger-string-to-nu | 
| ab60 |  6d 62 65 72 20 76 61 6c 2d 73 74 72 69 6e 67 29    29 20 27 70 75 73 68 29 0a 20 20 20 20 20 20 20  | mber.val-string)).'push)........ | 
| ab80 |  20 20 20 28 63 61 6c 63 2d 72 65 6e 75 6d 62 65    72 2d 73 74 61 63 6b 29 29 0a 20 20 20 20 20 20  | ...(calc-renumber-stack))....... | 
| aba0 |  3b 3b 20 6d 61 6b 65 20 73 75 72 65 20 74 68 65    72 65 20 61 72 65 20 74 77 6f 20 73 70 61 63 65  | ;;.make.sure.there.are.two.space | 
| abc0 |  73 20 61 66 74 65 72 20 74 68 65 20 61 63 63 6f    75 6e 74 20 6e 61 6d 65 20 61 6e 64 20 67 6f 20  | s.after.the.account.name.and.go. | 
| abe0 |  74 6f 20 63 61 6c 63 0a 20 20 20 20 20 20 28 69    66 20 28 73 65 61 72 63 68 2d 62 61 63 6b 77 61  | to.calc.......(if.(search-backwa | 
| ac00 |  72 64 20 22 20 20 22 20 28 2d 20 28 70 6f 69 6e    74 29 20 33 29 20 74 29 0a 20 20 20 20 20 20 20  | rd."..".(-.(point).3).t)........ | 
| ac20 |  20 20 20 28 65 6e 64 2d 6f 66 2d 6c 69 6e 65 29    0a 20 20 20 20 20 20 20 20 28 69 6e 73 65 72 74  | ...(end-of-line).........(insert | 
| ac40 |  20 22 20 20 22 29 29 0a 20 20 20 20 20 20 28 70    75 73 68 2d 6d 61 72 6b 20 28 70 6f 69 6e 74 29  | ."..")).......(push-mark.(point) | 
| ac60 |  20 27 6e 6f 6d 73 67 29 0a 20 20 20 20 20 20 28    63 61 6c 63 29 29 29 29 0a 0a 28 70 72 6f 76 69  | .'nomsg).......(calc))))..(provi | 
| ac80 |  64 65 20 27 6c 65 64 67 65 72 2d 70 6f 73 74 29    0a 0a 0a 0a 3b 3b 3b 20 6c 65 64 67 65 72 2d 70  | de.'ledger-post)....;;;.ledger-p | 
| aca0 |  6f 73 74 2e 65 6c 20 65 6e 64 73 20 68 65 72 65    0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ost.el.ends.here................ | 
| acc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| ace0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| ad00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| ad20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| ad40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| ad60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| ad80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| ada0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| adc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| ade0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| ae00 |  6c 65 64 67 65 72 2d 6d 6f 64 65 2d 32 30 32 34    30 34 31 36 2e 34 31 36 2f 6c 65 64 67 65 72 2d  | ledger-mode-20240416.416/ledger- | 
| ae20 |  66 6c 79 6d 61 6b 65 2e 65 6c 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | flymake.el...................... | 
| ae40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| ae60 |  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 | 
| ae80 |  30 30 31 35 32 30 32 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 36 33 32 34 00 20 30 00 00 00  | 0015202.00000000000.016324..0... | 
| aea0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| aec0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| aee0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| af00 |  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................... | 
| af20 |  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................... | 
| af40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| af60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| af80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| afa0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| afc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| afe0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| b000 |  3b 3b 3b 20 6c 65 64 67 65 72 2d 66 6c 79 6d 61    6b 65 2e 65 6c 20 2d 2d 2d 20 41 20 6c 65 64 67  | ;;;.ledger-flymake.el.---.A.ledg | 
| b020 |  65 72 20 46 6c 79 6d 61 6b 65 20 62 61 63 6b 65    6e 64 20 20 2d 2a 2d 20 6c 65 78 69 63 61 6c 2d  | er.Flymake.backend..-*-.lexical- | 
| b040 |  62 69 6e 64 69 6e 67 3a 20 74 3b 20 2d 2a 2d 0a    0a 3b 3b 20 43 6f 70 79 72 69 67 68 74 20 28 43  | binding:.t;.-*-..;;.Copyright.(C | 
| b060 |  29 20 32 30 31 38 20 4a 2e 20 41 6c 65 78 61 6e    64 65 72 20 42 72 61 6e 68 61 6d 20 28 61 6c 65  | ).2018.J..Alexander.Branham.(ale | 
| b080 |  78 20 44 4f 54 20 62 72 61 6e 68 61 6d 20 41 54    20 67 6d 61 69 6c 20 44 4f 54 20 63 6f 6d 29 0a  | x.DOT.branham.AT.gmail.DOT.com). | 
| b0a0 |  0a 3b 3b 20 54 68 69 73 20 66 69 6c 65 20 69 73    20 6e 6f 74 20 70 61 72 74 20 6f 66 20 47 4e 55  | .;;.This.file.is.not.part.of.GNU | 
| b0c0 |  20 45 6d 61 63 73 2e 0a 0a 3b 3b 20 54 68 69 73    20 69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72  | .Emacs...;;.This.is.free.softwar | 
| b0e0 |  65 3b 20 79 6f 75 20 63 61 6e 20 72 65 64 69 73    74 72 69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f  | e;.you.can.redistribute.it.and/o | 
| b100 |  72 20 6d 6f 64 69 66 79 20 69 74 20 75 6e 64 65    72 0a 3b 3b 20 74 68 65 20 74 65 72 6d 73 20 6f  | r.modify.it.under.;;.the.terms.o | 
| b120 |  66 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61    6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65  | f.the.GNU.General.Public.License | 
| b140 |  20 61 73 20 70 75 62 6c 69 73 68 65 64 20 62 79    20 74 68 65 20 46 72 65 65 0a 3b 3b 20 53 6f 66  | .as.published.by.the.Free.;;.Sof | 
| b160 |  74 77 61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e    3b 20 65 69 74 68 65 72 20 76 65 72 73 69 6f 6e  | tware.Foundation;.either.version | 
| b180 |  20 33 2c 20 6f 72 20 28 61 74 20 79 6f 75 72 20    6f 70 74 69 6f 6e 29 20 61 6e 79 20 6c 61 74 65  | .3,.or.(at.your.option).any.late | 
| b1a0 |  72 0a 3b 3b 20 76 65 72 73 69 6f 6e 2e 0a 3b 3b    0a 3b 3b 20 54 68 69 73 20 69 73 20 64 69 73 74  | r.;;.version..;;.;;.This.is.dist | 
| b1c0 |  72 69 62 75 74 65 64 20 69 6e 20 74 68 65 20 68    6f 70 65 20 74 68 61 74 20 69 74 20 77 69 6c 6c  | ributed.in.the.hope.that.it.will | 
| b1e0 |  20 62 65 20 75 73 65 66 75 6c 2c 20 62 75 74 20    57 49 54 48 4f 55 54 0a 3b 3b 20 41 4e 59 20 57  | .be.useful,.but.WITHOUT.;;.ANY.W | 
| b200 |  41 52 52 41 4e 54 59 3b 20 77 69 74 68 6f 75 74    20 65 76 65 6e 20 74 68 65 20 69 6d 70 6c 69 65  | ARRANTY;.without.even.the.implie | 
| b220 |  64 20 77 61 72 72 61 6e 74 79 20 6f 66 20 4d 45    52 43 48 41 4e 54 41 42 49 4c 49 54 59 20 6f 72  | d.warranty.of.MERCHANTABILITY.or | 
| b240 |  0a 3b 3b 20 46 49 54 4e 45 53 53 20 46 4f 52 20    41 20 50 41 52 54 49 43 55 4c 41 52 20 50 55 52  | .;;.FITNESS.FOR.A.PARTICULAR.PUR | 
| b260 |  50 4f 53 45 2e 20 20 53 65 65 20 74 68 65 20 47    4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69  | POSE...See.the.GNU.General.Publi | 
| b280 |  63 20 4c 69 63 65 6e 73 65 0a 3b 3b 20 66 6f 72    20 6d 6f 72 65 20 64 65 74 61 69 6c 73 2e 0a 3b  | c.License.;;.for.more.details..; | 
| b2a0 |  3b 0a 3b 3b 20 59 6f 75 20 73 68 6f 75 6c 64 20    68 61 76 65 20 72 65 63 65 69 76 65 64 20 61 20  | ;.;;.You.should.have.received.a. | 
| b2c0 |  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 6c 69 63 20 4c  | copy.of.the.GNU.General.Public.L | 
| b2e0 |  69 63 65 6e 73 65 0a 3b 3b 20 61 6c 6f 6e 67 20    77 69 74 68 20 47 4e 55 20 45 6d 61 63 73 3b 20  | icense.;;.along.with.GNU.Emacs;. | 
| b300 |  73 65 65 20 74 68 65 20 66 69 6c 65 20 43 4f 50    59 49 4e 47 2e 20 20 49 66 20 6e 6f 74 2c 20 77  | see.the.file.COPYING...If.not,.w | 
| b320 |  72 69 74 65 20 74 6f 20 74 68 65 0a 3b 3b 20 46    72 65 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75  | rite.to.the.;;.Free.Software.Fou | 
| b340 |  6e 64 61 74 69 6f 6e 2c 20 49 6e 63 2e 2c 20 35    31 20 46 72 61 6e 6b 6c 69 6e 20 53 74 72 65 65  | ndation,.Inc.,.51.Franklin.Stree | 
| b360 |  74 2c 20 46 69 66 74 68 20 46 6c 6f 6f 72 2c 20    42 6f 73 74 6f 6e 2c 0a 3b 3b 20 4d 41 20 30 32  | t,.Fifth.Floor,.Boston,.;;.MA.02 | 
| b380 |  31 31 30 2d 31 33 30 31 20 55 53 41 2e 0a 0a 3b    3b 3b 20 43 6f 6d 6d 65 6e 74 61 72 79 3a 0a 3b  | 110-1301.USA...;;;.Commentary:.; | 
| b3a0 |  3b 20 46 6c 79 6d 61 6b 65 20 69 73 20 74 68 65    20 62 75 69 6c 74 2d 69 6e 20 45 6d 61 63 73 20  | ;.Flymake.is.the.built-in.Emacs. | 
| b3c0 |  70 61 63 6b 61 67 65 20 74 6f 20 73 75 70 70 6f    72 74 20 6f 6e 2d 74 68 65 2d 66 6c 79 20 73 79  | package.to.support.on-the-fly.sy | 
| b3e0 |  6e 74 61 78 20 63 68 65 63 6b 69 6e 67 2e 0a 3b    3b 20 54 68 69 73 20 66 69 6c 65 20 61 64 64 73  | ntax.checking..;;.This.file.adds | 
| b400 |  20 73 75 70 70 6f 72 74 20 66 6f 72 20 66 6c 79    6d 61 6b 65 20 74 6f 20 60 6c 65 64 67 65 72 2d  | .support.for.flymake.to.`ledger- | 
| b420 |  6d 6f 64 65 27 2e 20 20 45 6e 61 62 6c 65 20 69    74 20 62 79 20 63 61 6c 6c 69 6e 67 0a 3b 3b 20  | mode'...Enable.it.by.calling.;;. | 
| b440 |  60 6c 65 64 67 65 72 2d 66 6c 79 6d 61 6b 65 2d    65 6e 61 62 6c 65 27 20 66 72 6f 6d 20 61 20 66  | `ledger-flymake-enable'.from.a.f | 
| b460 |  69 6c 65 2d 76 69 73 69 74 69 6e 67 20 6c 65 64    67 65 72 20 62 75 66 66 65 72 2e 20 20 54 6f 20  | ile-visiting.ledger.buffer...To. | 
| b480 |  65 6e 61 62 6c 65 20 69 74 0a 3b 3b 20 61 75 74    6f 6d 61 74 69 63 61 6c 6c 79 2c 20 70 75 74 20  | enable.it.;;.automatically,.put. | 
| b4a0 |  74 68 69 73 20 69 6e 20 79 6f 75 72 20 2e 65 6d    61 63 73 3a 0a 3b 3b 0a 3b 3b 20 20 20 20 20 28  | this.in.your..emacs:.;;.;;.....( | 
| b4c0 |  61 64 64 2d 68 6f 6f 6b 20 27 6c 65 64 67 65 72    2d 6d 6f 64 65 2d 68 6f 6f 6b 20 23 27 6c 65 64  | add-hook.'ledger-mode-hook.#'led | 
| b4e0 |  67 65 72 2d 66 6c 79 6d 61 6b 65 2d 65 6e 61 62    6c 65 29 0a 0a 3b 3b 3b 20 43 6f 64 65 3a 0a 28  | ger-flymake-enable)..;;;.Code:.( | 
| b500 |  72 65 71 75 69 72 65 20 27 63 6c 2d 6c 69 62 29    0a 28 72 65 71 75 69 72 65 20 27 66 6c 79 6d 61  | require.'cl-lib).(require.'flyma | 
| b520 |  6b 65 29 0a 28 72 65 71 75 69 72 65 20 27 6c 65    64 67 65 72 2d 65 78 65 63 29 20 20 20 20 20 20  | ke).(require.'ledger-exec)...... | 
| b540 |  20 20 20 20 20 20 20 20 20 20 20 20 3b 20 66 6f    72 20 60 6c 65 64 67 65 72 2d 62 69 6e 61 72 79  | ............;.for.`ledger-binary | 
| b560 |  2d 70 61 74 68 27 0a 28 72 65 71 75 69 72 65 20    27 6c 65 64 67 65 72 2d 72 65 70 6f 72 74 29 20  | -path'.(require.'ledger-report). | 
| b580 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b    20 66 6f 72 20 60 6c 65 64 67 65 72 2d 6d 61 73  | ...............;.for.`ledger-mas | 
| b5a0 |  74 65 72 2d 66 69 6c 65 27 0a 0a 3b 3b 20 54 6f    20 73 69 6c 65 6e 63 65 20 62 79 74 65 20 63 6f  | ter-file'..;;.To.silence.byte.co | 
| b5c0 |  6d 70 69 6c 65 72 20 77 61 72 6e 69 6e 67 73 20    69 6e 20 45 6d 61 63 73 20 32 35 20 61 6e 64 20  | mpiler.warnings.in.Emacs.25.and. | 
| b5e0 |  6f 6c 64 65 72 3a 0a 28 64 65 63 6c 61 72 65 2d    66 75 6e 63 74 69 6f 6e 20 66 6c 79 6d 61 6b 65  | older:.(declare-function.flymake | 
| b600 |  2d 64 69 61 67 2d 72 65 67 69 6f 6e 20 22 66 6c    79 6d 61 6b 65 22 20 28 62 75 66 66 65 72 20 6c  | -diag-region."flymake".(buffer.l | 
| b620 |  69 6e 65 20 26 6f 70 74 69 6f 6e 61 6c 20 63 6f    6c 29 29 0a 28 64 65 63 6c 61 72 65 2d 66 75 6e  | ine.&optional.col)).(declare-fun | 
| b640 |  63 74 69 6f 6e 20 66 6c 79 6d 61 6b 65 2d 6d 61    6b 65 2d 64 69 61 67 6e 6f 73 74 69 63 20 22 66  | ction.flymake-make-diagnostic."f | 
| b660 |  6c 79 6d 61 6b 65 22 20 28 62 75 66 66 65 72 20    62 65 67 20 65 6e 64 20 74 79 70 65 20 74 65 78  | lymake".(buffer.beg.end.type.tex | 
| b680 |  74 20 26 6f 70 74 69 6f 6e 61 6c 20 64 61 74 61    20 6f 76 65 72 6c 61 79 2d 70 72 6f 70 65 72 74  | t.&optional.data.overlay-propert | 
| b6a0 |  69 65 73 29 29 0a 0a 28 64 65 66 76 61 72 2d 6c    6f 63 61 6c 20 6c 65 64 67 65 72 2d 2d 66 6c 79  | ies))..(defvar-local.ledger--fly | 
| b6c0 |  6d 61 6b 65 2d 70 72 6f 63 20 6e 69 6c 29 0a 0a    28 64 65 66 63 75 73 74 6f 6d 20 6c 65 64 67 65  | make-proc.nil)..(defcustom.ledge | 
| b6e0 |  72 2d 66 6c 79 6d 61 6b 65 2d 62 65 2d 70 65 64    61 6e 74 69 63 20 6e 69 6c 0a 20 20 22 49 66 20  | r-flymake-be-pedantic.nil..."If. | 
| b700 |  6e 6f 6e 2d 6e 69 6c 2c 20 70 61 73 73 20 74 68    65 20 2d 2d 70 65 64 61 6e 74 69 63 20 66 6c 61  | non-nil,.pass.the.--pedantic.fla | 
| b720 |  67 20 66 6f 72 20 6c 65 64 67 65 72 20 74 6f 20    74 68 65 20 66 6c 79 6d 61 6b 65 20 62 61 63 6b  | g.for.ledger.to.the.flymake.back | 
| b740 |  65 6e 64 2e 0a 49 66 20 2d 2d 70 65 64 61 6e 74    69 63 20 69 73 20 69 6e 20 79 6f 75 72 20 6c 65  | end..If.--pedantic.is.in.your.le | 
| b760 |  64 67 65 72 72 63 20 66 69 6c 65 2c 20 74 68 65    6e 20 2d 2d 70 65 64 61 6e 74 69 63 20 67 65 74  | dgerrc.file,.then.--pedantic.get | 
| b780 |  73 0a 70 61 73 73 65 64 20 72 65 67 61 72 64 6c    65 73 73 20 6f 66 20 74 68 65 20 76 61 6c 75 65  | s.passed.regardless.of.the.value | 
| b7a0 |  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 | 
| b7c0 |  65 72 73 69 6f 6e 20 27 28 6c 65 64 67 65 72 2d    6d 6f 64 65 20 2e 20 22 34 2e 30 2e 30 22 29 0a  | ersion.'(ledger-mode..."4.0.0"). | 
| b7e0 |  20 20 3a 67 72 6f 75 70 20 27 6c 65 64 67 65 72    29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6c 65  | ..:group.'ledger)..(defcustom.le | 
| b800 |  64 67 65 72 2d 66 6c 79 6d 61 6b 65 2d 62 65 2d    65 78 70 6c 69 63 69 74 20 6e 69 6c 0a 20 20 22  | dger-flymake-be-explicit.nil..." | 
| b820 |  49 66 20 6e 6f 6e 2d 6e 69 6c 2c 20 70 61 73 73    20 74 68 65 20 2d 2d 65 78 70 6c 69 63 69 74 20  | If.non-nil,.pass.the.--explicit. | 
| b840 |  66 6c 61 67 20 66 6f 72 20 6c 65 64 67 65 72 20    74 6f 20 74 68 65 20 66 6c 79 6d 61 6b 65 20 62  | flag.for.ledger.to.the.flymake.b | 
| b860 |  61 63 6b 65 6e 64 2e 0a 49 66 20 2d 2d 65 78 70    6c 69 63 69 74 20 69 73 20 69 6e 20 79 6f 75 72  | ackend..If.--explicit.is.in.your | 
| b880 |  20 6c 65 64 67 65 72 72 63 20 66 69 6c 65 2c 20    74 68 65 6e 20 2d 2d 65 78 70 6c 69 63 69 74 20  | .ledgerrc.file,.then.--explicit. | 
| b8a0 |  67 65 74 73 0a 70 61 73 73 65 64 20 72 65 67 61    72 64 6c 65 73 73 20 6f 66 20 74 68 65 20 76 61  | gets.passed.regardless.of.the.va | 
| b8c0 |  6c 75 65 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  | lue."...:type.'boolean...:packag | 
| b8e0 |  65 2d 76 65 72 73 69 6f 6e 20 27 28 6c 65 64 67    65 72 2d 6d 6f 64 65 20 2e 20 22 34 2e 30 2e 30  | e-version.'(ledger-mode..."4.0.0 | 
| b900 |  22 29 0a 20 20 3a 67 72 6f 75 70 20 27 6c 65 64    67 65 72 29 0a 0a 3b 3b 20 42 61 73 65 64 20 6f  | ")...:group.'ledger)..;;.Based.o | 
| b920 |  6e 20 74 68 65 20 65 78 61 6d 70 6c 65 20 66 72    6f 6d 20 46 6c 79 6d 61 6b 65 27 73 20 69 6e 66  | n.the.example.from.Flymake's.inf | 
| b940 |  6f 3a 0a 28 64 65 66 75 6e 20 6c 65 64 67 65 72    2d 66 6c 79 6d 61 6b 65 20 28 72 65 70 6f 72 74  | o:.(defun.ledger-flymake.(report | 
| b960 |  2d 66 6e 20 26 72 65 73 74 20 5f 61 72 67 73 29    0a 20 20 22 41 20 46 6c 79 6d 61 6b 65 20 62 61  | -fn.&rest._args)..."A.Flymake.ba | 
| b980 |  63 6b 65 6e 64 20 66 6f 72 20 60 6c 65 64 67 65    72 2d 6d 6f 64 65 27 2e 0a 0a 46 6c 79 6d 61 6b  | ckend.for.`ledger-mode'...Flymak | 
| b9a0 |  65 20 63 61 6c 6c 73 20 74 68 69 73 20 77 69 74    68 20 52 45 50 4f 52 54 2d 46 4e 20 61 73 20 6e  | e.calls.this.with.REPORT-FN.as.n | 
| b9c0 |  65 65 64 65 64 2e 22 0a 20 20 28 75 6e 6c 65 73    73 20 28 65 78 65 63 75 74 61 62 6c 65 2d 66 69  | eeded."...(unless.(executable-fi | 
| b9e0 |  6e 64 20 6c 65 64 67 65 72 2d 62 69 6e 61 72 79    2d 70 61 74 68 29 0a 20 20 20 20 28 65 72 72 6f  | nd.ledger-binary-path).....(erro | 
| ba00 |  72 20 22 43 61 6e 6e 6f 74 20 66 69 6e 64 20 6c    65 64 67 65 72 22 29 29 0a 20 20 3b 3b 20 49 66  | r."Cannot.find.ledger"))...;;.If | 
| ba20 |  20 61 20 6c 69 76 65 20 70 72 6f 63 65 73 73 20    6c 61 75 6e 63 68 65 64 20 69 6e 20 61 6e 20 65  | .a.live.process.launched.in.an.e | 
| ba40 |  61 72 6c 69 65 72 20 63 68 65 63 6b 20 77 61 73    20 66 6f 75 6e 64 2c 20 74 68 61 74 0a 20 20 3b  | arlier.check.was.found,.that...; | 
| ba60 |  3b 20 70 72 6f 63 65 73 73 20 69 73 20 6b 69 6c    6c 65 64 2e 20 20 57 68 65 6e 20 74 68 61 74 20  | ;.process.is.killed...When.that. | 
| ba80 |  70 72 6f 63 65 73 73 27 73 20 73 65 6e 74 69 6e    65 6c 20 65 76 65 6e 74 75 61 6c 6c 79 20 72 75  | process's.sentinel.eventually.ru | 
| baa0 |  6e 73 2c 0a 20 20 3b 3b 20 69 74 20 77 69 6c 6c    20 6e 6f 74 69 63 65 20 69 74 73 20 6f 62 73 6f  | ns,...;;.it.will.notice.its.obso | 
| bac0 |  6c 65 74 69 6f 6e 2c 20 73 69 6e 63 65 20 69 74    20 68 61 76 65 20 73 69 6e 63 65 20 72 65 73 65  | letion,.since.it.have.since.rese | 
| bae0 |  74 0a 20 20 3b 3b 20 60 6c 65 64 67 65 72 2d 66    6c 79 6d 61 6b 65 2d 70 72 6f 63 27 20 74 6f 20  | t...;;.`ledger-flymake-proc'.to. | 
| bb00 |  61 20 64 69 66 66 65 72 65 6e 74 20 76 61 6c 75    65 0a 20 20 28 77 68 65 6e 20 28 70 72 6f 63 65  | a.different.value...(when.(proce | 
| bb20 |  73 73 2d 6c 69 76 65 2d 70 20 6c 65 64 67 65 72    2d 2d 66 6c 79 6d 61 6b 65 2d 70 72 6f 63 29 0a  | ss-live-p.ledger--flymake-proc). | 
| bb40 |  20 20 20 20 28 6b 69 6c 6c 2d 70 72 6f 63 65 73    73 20 6c 65 64 67 65 72 2d 2d 66 6c 79 6d 61 6b  | ....(kill-process.ledger--flymak | 
| bb60 |  65 2d 70 72 6f 63 29 29 0a 20 20 3b 3b 20 53 61    76 65 20 74 68 65 20 63 75 72 72 65 6e 74 20 62  | e-proc))...;;.Save.the.current.b | 
| bb80 |  75 66 66 65 72 2c 20 74 68 65 20 6e 61 72 72 6f    77 69 6e 67 20 72 65 73 74 72 69 63 74 69 6f 6e  | uffer,.the.narrowing.restriction | 
| bba0 |  2c 20 72 65 6d 6f 76 65 20 61 6e 79 0a 20 20 3b    3b 20 6e 61 72 72 6f 77 69 6e 67 20 72 65 73 74  | ,.remove.any...;;.narrowing.rest | 
| bbc0 |  72 69 63 74 69 6f 6e 2e 0a 20 20 28 6c 65 74 2a    20 28 28 73 6f 75 72 63 65 20 28 63 75 72 72 65  | riction....(let*.((source.(curre | 
| bbe0 |  6e 74 2d 62 75 66 66 65 72 29 29 0a 20 20 20 20    20 20 20 20 20 28 66 69 6c 65 20 28 6f 72 20 28  | nt-buffer))..........(file.(or.( | 
| bc00 |  6c 65 64 67 65 72 2d 6d 61 73 74 65 72 2d 66 69    6c 65 29 20 28 62 75 66 66 65 72 2d 66 69 6c 65  | ledger-master-file).(buffer-file | 
| bc20 |  2d 6e 61 6d 65 29 29 29 29 0a 20 20 20 20 28 73    61 76 65 2d 72 65 73 74 72 69 63 74 69 6f 6e 0a  | -name)))).....(save-restriction. | 
| bc40 |  20 20 20 20 20 20 28 77 69 64 65 6e 29 0a 20 20    20 20 20 20 3b 3b 20 52 65 73 65 74 20 74 68 65  | ......(widen).......;;.Reset.the | 
| bc60 |  20 60 6c 65 64 67 65 72 2d 2d 66 6c 79 6d 61 6b    65 2d 70 72 6f 63 27 20 70 72 6f 63 65 73 73 20  | .`ledger--flymake-proc'.process. | 
| bc80 |  74 6f 20 61 20 6e 65 77 20 70 72 6f 63 65 73 73    0a 20 20 20 20 20 20 3b 3b 20 63 61 6c 6c 69 6e  | to.a.new.process.......;;.callin | 
| bca0 |  67 20 74 68 65 20 6c 65 64 67 65 72 20 74 6f 6f    6c 2e 0a 20 20 20 20 20 20 28 73 65 74 71 0a 20  | g.the.ledger.tool........(setq.. | 
| bcc0 |  20 20 20 20 20 20 6c 65 64 67 65 72 2d 2d 66 6c    79 6d 61 6b 65 2d 70 72 6f 63 0a 20 20 20 20 20  | ......ledger--flymake-proc...... | 
| bce0 |  20 20 28 6d 61 6b 65 2d 70 72 6f 63 65 73 73 0a    20 20 20 20 20 20 20 20 3a 6e 61 6d 65 20 22 6c  | ..(make-process.........:name."l | 
| bd00 |  65 64 67 65 72 2d 66 6c 79 6d 61 6b 65 22 20 3a    6e 6f 71 75 65 72 79 20 74 20 3a 63 6f 6e 6e 65  | edger-flymake".:noquery.t.:conne | 
| bd20 |  63 74 69 6f 6e 2d 74 79 70 65 20 27 70 69 70 65    0a 20 20 20 20 20 20 20 20 3a 62 75 66 66 65 72  | ction-type.'pipe.........:buffer | 
| bd40 |  20 28 67 65 6e 65 72 61 74 65 2d 6e 65 77 2d 62    75 66 66 65 72 20 22 20 2a 6c 65 64 67 65 72 2d  | .(generate-new-buffer.".*ledger- | 
| bd60 |  66 6c 79 6d 61 6b 65 2a 22 29 0a 20 20 20 20 20    20 20 20 3a 63 6f 6d 6d 61 6e 64 20 28 63 6c 2d  | flymake*").........:command.(cl- | 
| bd80 |  72 65 6d 6f 76 65 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 6e 69 6c 0a 20 20 20  | remove...................nil.... | 
| bda0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 60    28 2c 6c 65 64 67 65 72 2d 62 69 6e 61 72 79 2d  | ...............`(,ledger-binary- | 
| bdc0 |  70 61 74 68 20 22 2d 66 22 20 2c 66 69 6c 65 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | path."-f".,file................. | 
| bde0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 2c 28 77 68 65 6e 20 6c  | ........................,(when.l | 
| be00 |  65 64 67 65 72 2d 66 6c 79 6d 61 6b 65 2d 62 65    2d 70 65 64 61 6e 74 69 63 20 22 2d 2d 70 65 64  | edger-flymake-be-pedantic."--ped | 
| be20 |  61 6e 74 69 63 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  | antic")......................... | 
| be40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    2c 28 77 68 65 6e 20 6c 65 64 67 65 72 2d 66 6c  | ................,(when.ledger-fl | 
| be60 |  79 6d 61 6b 65 2d 62 65 2d 65 78 70 6c 69 63 69    74 20 22 2d 2d 65 78 70 6c 69 63 69 74 22 29 0a  | ymake-be-explicit."--explicit"). | 
| be80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| bea0 |  20 20 20 20 20 20 20 20 22 62 61 6c 61 6e 63 65    22 29 29 0a 20 20 20 20 20 20 20 20 3a 73 65 6e  | ........"balance")).........:sen | 
| bec0 |  74 69 6e 65 6c 0a 20 20 20 20 20 20 20 20 28 6c    61 6d 62 64 61 20 28 70 72 6f 63 20 5f 65 76 65  | tinel.........(lambda.(proc._eve | 
| bee0 |  6e 74 29 0a 20 20 20 20 20 20 20 20 20 20 3b 3b    20 43 68 65 63 6b 20 74 68 61 74 20 74 68 65 20  | nt)...........;;.Check.that.the. | 
| bf00 |  70 72 6f 63 65 73 73 20 68 61 73 20 69 6e 64 65    65 64 20 65 78 69 74 65 64 2c 20 61 73 20 69 74  | process.has.indeed.exited,.as.it | 
| bf20 |  20 6d 69 67 68 74 0a 20 20 20 20 20 20 20 20 20    20 3b 3b 20 62 65 20 73 69 6d 70 6c 79 20 73 75  | .might...........;;.be.simply.su | 
| bf40 |  73 70 65 6e 64 65 64 2e 0a 20 20 20 20 20 20 20    20 20 20 28 77 68 65 6e 20 28 65 71 20 27 65 78  | spended............(when.(eq.'ex | 
| bf60 |  69 74 20 28 70 72 6f 63 65 73 73 2d 73 74 61 74    75 73 20 70 72 6f 63 29 29 0a 20 20 20 20 20 20  | it.(process-status.proc))....... | 
| bf80 |  20 20 20 20 20 20 28 75 6e 77 69 6e 64 2d 70 72    6f 74 65 63 74 0a 20 20 20 20 20 20 20 20 20 20  | ......(unwind-protect........... | 
| bfa0 |  20 20 20 20 20 20 3b 3b 20 4f 6e 6c 79 20 70 72    6f 63 65 65 64 20 69 66 20 60 70 72 6f 63 27 20  | ......;;.Only.proceed.if.`proc'. | 
| bfc0 |  69 73 20 74 68 65 20 73 61 6d 65 20 61 73 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b  | is.the.same.as.................; | 
| bfe0 |  3b 20 60 6c 65 64 67 65 72 2d 2d 66 6c 79 6d 61    6b 65 2d 70 72 6f 63 27 2c 20 77 68 69 63 68 20  | ;.`ledger--flymake-proc',.which. | 
| c000 |  69 6e 64 69 63 61 74 65 73 20 74 68 61 74 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b  | indicates.that.................; | 
| c020 |  3b 20 60 70 72 6f 63 27 20 69 73 20 6e 6f 74 20    61 6e 20 6f 62 73 6f 6c 65 74 65 20 70 72 6f 63  | ;.`proc'.is.not.an.obsolete.proc | 
| c040 |  65 73 73 2e 0a 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  | ess..................(if.(with-c | 
| c060 |  75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 73 6f    75 72 63 65 20 28 65 71 20 70 72 6f 63 20 6c 65  | urrent-buffer.source.(eq.proc.le | 
| c080 |  64 67 65 72 2d 2d 66 6c 79 6d 61 6b 65 2d 70 72    6f 63 29 29 0a 20 20 20 20 20 20 20 20 20 20 20  | dger--flymake-proc))............ | 
| c0a0 |  20 20 20 20 20 20 20 20 20 28 77 69 74 68 2d 63    75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 28 70  | .........(with-current-buffer.(p | 
| c0c0 |  72 6f 63 65 73 73 2d 62 75 66 66 65 72 20 70 72    6f 63 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | rocess-buffer.proc)............. | 
| c0e0 |  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 2d 6d 69 6e 29  | ..........(goto-char.(point-min) | 
| c100 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 3b 3b 20 50 61 72 73 65  | ).......................;;.Parse | 
| c120 |  20 74 68 65 20 6f 75 74 70 75 74 20 62 75 66 66    65 72 20 66 6f 72 20 64 69 61 67 6e 6f 73 74 69  | .the.output.buffer.for.diagnosti | 
| c140 |  63 27 73 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 3b 3b 20 6d 65 73  | c's.......................;;.mes | 
| c160 |  73 61 67 65 73 20 61 6e 64 20 6c 6f 63 61 74 69    6f 6e 73 2c 20 63 6f 6c 6c 65 63 74 20 74 68 65  | sages.and.locations,.collect.the | 
| c180 |  6d 20 69 6e 20 61 20 6c 69 73 74 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | m.in.a.list..................... | 
| c1a0 |  20 20 3b 3b 20 6f 66 20 6f 62 6a 65 63 74 73 2c    20 61 6e 64 20 63 61 6c 6c 20 60 72 65 70 6f 72  | ..;;.of.objects,.and.call.`repor | 
| c1c0 |  74 2d 66 6e 27 2e 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6c  | t-fn'........................(cl | 
| c1e0 |  2d 6c 6f 6f 70 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 77 68 69  | -loop........................whi | 
| c200 |  6c 65 20 28 73 65 61 72 63 68 2d 66 6f 72 77 61    72 64 2d 72 65 67 65 78 70 0a 20 20 20 20 20 20  | le.(search-forward-regexp....... | 
| c220 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 3b 3b 20 54 68 69 73 20  | ........................;;.This. | 
| c240 |  72 65 67 65 78 20 6e 65 65 64 73 20 74 6f 20 6d    61 74 63 68 20 74 68 65 20 77 68 6f 6c 65 20 65  | regex.needs.to.match.the.whole.e | 
| c260 |  72 72 6f 72 2e 20 20 57 65 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | rror...We....................... | 
| c280 |  20 20 20 20 20 20 20 20 3b 3b 20 61 6c 73 6f 20    6e 65 65 64 20 61 20 63 61 70 74 75 72 65 20 67  | ........;;.also.need.a.capture.g | 
| c2a0 |  72 6f 75 70 20 66 6f 72 20 74 68 65 20 65 72 72    6f 72 20 6d 65 73 73 61 67 65 0a 20 20 20 20 20  | roup.for.the.error.message...... | 
| c2c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 3b 3b 20 28 74 68 61  | .........................;;.(tha | 
| c2e0 |  74 27 73 20 67 72 6f 75 70 20 31 20 68 65 72 65    29 20 61 6e 64 20 74 68 65 20 6c 69 6e 65 20 6e  | t's.group.1.here).and.the.line.n | 
| c300 |  75 6d 62 65 72 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | umber........................... | 
| c320 |  20 20 20 20 3b 3b 20 28 67 72 6f 75 70 20 32 29    2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ....;;.(group.2)................ | 
| c340 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 72 78 20 6c 69 6e 65 2d 73 74 61 72 74 20 22  | ................(rx.line-start." | 
| c360 |  57 68 69 6c 65 20 70 61 72 73 69 6e 67 20 66 69    6c 65 20 5c 22 22 20 28 6f 6e 65 2d 6f 72 2d 6d  | While.parsing.file.\"".(one-or-m | 
| c380 |  6f 72 65 20 28 6e 6f 74 20 77 68 69 74 65 73 70    61 63 65 29 29 20 22 20 6c 69 6e 65 20 22 20 28  | ore.(not.whitespace)).".line.".( | 
| c3a0 |  67 72 6f 75 70 2d 6e 20 32 20 28 6f 6e 65 2d 6f    72 2d 6d 6f 72 65 20 6e 75 6d 29 29 20 22 3a 5c  | group-n.2.(one-or-more.num)).":\ | 
| c3c0 |  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 20 20 20 20 20 20 20  | n".............................. | 
| c3e0 |  20 20 20 20 20 28 7a 65 72 6f 2d 6f 72 2d 6d 6f    72 65 20 6c 69 6e 65 2d 73 74 61 72 74 20 22 57  | .....(zero-or-more.line-start."W | 
| c400 |  68 69 6c 65 20 22 20 28 6f 6e 65 2d 6f 72 2d 6d    6f 72 65 20 6e 6f 74 2d 6e 65 77 6c 69 6e 65 29  | hile.".(one-or-more.not-newline) | 
| c420 |  20 22 5c 6e 22 20 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  | ."\n".)......................... | 
| c440 |  20 20 20 20 20 20 20 20 20 20 28 6d 69 6e 69 6d    61 6c 2d 6d 61 74 63 68 20 28 7a 65 72 6f 2d 6f  | ..........(minimal-match.(zero-o | 
| c460 |  72 2d 6d 6f 72 65 20 6c 69 6e 65 2d 73 74 61 72    74 20 28 7a 65 72 6f 2d 6f 72 2d 6d 6f 72 65 20  | r-more.line-start.(zero-or-more. | 
| c480 |  6e 6f 74 2d 6e 65 77 6c 69 6e 65 29 20 22 5c 6e    22 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | not-newline)."\n"))............. | 
| c4a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 67 72 6f 75 70 2d 6e 20 31  | ......................(group-n.1 | 
| c4c0 |  20 22 45 72 72 6f 72 3a 20 22 20 28 6f 6e 65 2d    6f 72 2d 6d 6f 72 65 20 6e 6f 74 2d 6e 65 77 6c  | ."Error:.".(one-or-more.not-newl | 
| c4e0 |  69 6e 65 29 20 22 5c 6e 22 29 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ine)."\n"))..................... | 
| c500 |  20 20 20 20 20 20 20 20 20 20 6e 69 6c 20 74 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ..........nil.t)................ | 
| c520 |  20 20 20 20 20 20 20 20 66 6f 72 20 6d 73 67 20    3d 20 28 6d 61 74 63 68 2d 73 74 72 69 6e 67 20  | ........for.msg.=.(match-string. | 
| c540 |  31 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 62  | 1)........................for.(b | 
| c560 |  65 67 20 2e 20 65 6e 64 29 20 3d 20 28 66 6c 79    6d 61 6b 65 2d 64 69 61 67 2d 72 65 67 69 6f 6e  | eg...end).=.(flymake-diag-region | 
| c580 |  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  | ................................ | 
| c5a0 |  20 20 20 20 20 20 20 20 20 20 20 73 6f 75 72 63    65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ...........source............... | 
| c5c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 28 73 74 72  | ............................(str | 
| c5e0 |  69 6e 67 2d 74 6f 2d 6e 75 6d 62 65 72 20 28 6d    61 74 63 68 2d 73 74 72 69 6e 67 20 32 29 29 29  | ing-to-number.(match-string.2))) | 
| c600 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 66 6f 72 20 74 79 70 65  | ........................for.type | 
| c620 |  20 3d 20 3a 65 72 72 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  | .=.:error....................... | 
| c640 |  20 63 6f 6c 6c 65 63 74 20 28 66 6c 79 6d 61 6b    65 2d 6d 61 6b 65 2d 64 69 61 67 6e 6f 73 74 69  | .collect.(flymake-make-diagnosti | 
| c660 |  63 20 73 6f 75 72 63 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  | c.source........................ | 
| c680 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| c6a0 |  20 62 65 67 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .beg............................ | 
| c6c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 65 6e 64  | .............................end | 
| c6e0 |  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  | ................................ | 
| c700 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 74 79 70 65 0a 20 20  | .........................type... | 
| c720 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| c740 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 6d 73 67 29 0a 20 20 20 20 20  | ......................msg)...... | 
| c760 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 69 6e 74 6f 20 64 69 61 67 73 0a 20 20 20  | ..................into.diags.... | 
| c780 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 66 69 6e 61 6c 6c 79 20 28 66 75 6e  | ....................finally.(fun | 
| c7a0 |  63 61 6c 6c 20 72 65 70 6f 72 74 2d 66 6e 20 64    69 61 67 73 29 29 29 0a 20 20 20 20 20 20 20 20  | call.report-fn.diags)))......... | 
| c7c0 |  20 20 20 20 20 20 20 20 20 20 28 66 6c 79 6d 61    6b 65 2d 6c 6f 67 20 3a 77 61 72 6e 69 6e 67 20  | ..........(flymake-log.:warning. | 
| c7e0 |  22 43 61 6e 63 65 6c 69 6e 67 20 6f 62 73 6f 6c    65 74 65 20 63 68 65 63 6b 20 25 73 22 0a 20 20  | "Canceling.obsolete.check.%s"... | 
| c800 |  20 20 20 20 20 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 6f  | .............................pro | 
| c820 |  63 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 3b 3b 20 43 6c 65 61 6e 75 70 20 74 68 65  | c))...............;;.Cleanup.the | 
| c840 |  20 74 65 6d 70 6f 72 61 72 79 20 62 75 66 66 65    72 20 75 73 65 64 20 74 6f 20 68 6f 6c 64 20 74  | .temporary.buffer.used.to.hold.t | 
| c860 |  68 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 3b 3b 20 63 68 65 63 6b 27 73 20 6f 75 74 70  | he...............;;.check's.outp | 
| c880 |  75 74 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 6b 69 6c 6c 2d 62 75 66 66 65 72 20 28  | ut................(kill-buffer.( | 
| c8a0 |  70 72 6f 63 65 73 73 2d 62 75 66 66 65 72 20 70    72 6f 63 29 29 29 29 29 29 29 29 29 29 0a 0a 3b  | process-buffer.proc))))))))))..; | 
| c8c0 |  3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64    65 66 75 6e 20 6c 65 64 67 65 72 2d 66 6c 79 6d  | ;;###autoload.(defun.ledger-flym | 
| c8e0 |  61 6b 65 2d 65 6e 61 62 6c 65 20 28 29 0a 20 20    22 45 6e 61 62 6c 65 20 60 66 6c 79 6d 61 6b 65  | ake-enable.()..."Enable.`flymake | 
| c900 |  2d 6d 6f 64 65 27 20 69 6e 20 60 6c 65 64 67 65    72 2d 6d 6f 64 65 27 20 62 75 66 66 65 72 73 2e  | -mode'.in.`ledger-mode'.buffers. | 
| c920 |  22 0a 20 20 28 75 6e 6c 65 73 73 20 28 3e 20 65    6d 61 63 73 2d 6d 61 6a 6f 72 2d 76 65 72 73 69  | "...(unless.(>.emacs-major-versi | 
| c940 |  6f 6e 20 32 35 29 0a 20 20 20 20 28 65 72 72 6f    72 20 22 4c 65 64 67 65 72 2d 66 6c 79 6d 61 6b  | on.25).....(error."Ledger-flymak | 
| c960 |  65 20 72 65 71 75 69 72 65 73 20 45 6d 61 63 73    20 76 65 72 73 69 6f 6e 20 32 36 20 6f 72 20 68  | e.requires.Emacs.version.26.or.h | 
| c980 |  69 67 68 65 72 22 29 29 0a 20 20 3b 3b 20 41 64    64 20 60 6c 65 64 67 65 72 2d 66 6c 79 6d 61 6b  | igher"))...;;.Add.`ledger-flymak | 
| c9a0 |  65 27 20 74 6f 20 60 66 6c 79 6d 61 6b 65 2d 64    69 61 67 6e 6f 73 74 69 63 2d 66 75 6e 63 74 69  | e'.to.`flymake-diagnostic-functi | 
| c9c0 |  6f 6e 73 27 20 73 6f 20 74 68 61 74 20 66 6c 79    6d 61 6b 65 20 63 61 6e 0a 20 20 3b 3b 20 77 6f  | ons'.so.that.flymake.can...;;.wo | 
| c9e0 |  72 6b 20 69 6e 20 6c 65 64 67 65 72 2d 6d 6f 64    65 3a 0a 20 20 28 61 64 64 2d 68 6f 6f 6b 20 27  | rk.in.ledger-mode:...(add-hook.' | 
| ca00 |  66 6c 79 6d 61 6b 65 2d 64 69 61 67 6e 6f 73 74    69 63 2d 66 75 6e 63 74 69 6f 6e 73 20 27 6c 65  | flymake-diagnostic-functions.'le | 
| ca20 |  64 67 65 72 2d 66 6c 79 6d 61 6b 65 20 6e 69 6c    20 74 29 0a 20 20 28 66 6c 79 6d 61 6b 65 2d 6d  | dger-flymake.nil.t)...(flymake-m | 
| ca40 |  6f 64 65 29 29 0a 0a 28 70 72 6f 76 69 64 65 20    27 6c 65 64 67 65 72 2d 66 6c 79 6d 61 6b 65 29  | ode))..(provide.'ledger-flymake) | 
| ca60 |  0a 0a 3b 3b 3b 20 6c 65 64 67 65 72 2d 66 6c 79    6d 61 6b 65 2e 65 6c 20 65 6e 64 73 20 68 65 72  | ..;;;.ledger-flymake.el.ends.her | 
| ca80 |  65 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  | e............................... | 
| caa0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| cac0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| cae0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| cb00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| cb20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| cb40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| cb60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| cb80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| cba0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| cbc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| cbe0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| cc00 |  6c 65 64 67 65 72 2d 6d 6f 64 65 2d 32 30 32 34    30 34 31 36 2e 34 31 36 2f 6c 65 64 67 65 72 2d  | ledger-mode-20240416.416/ledger- | 
| cc20 |  6e 61 76 69 67 61 74 65 2e 65 6c 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | navigate.el..................... | 
| cc40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| cc60 |  00 00 00 00 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 | 
| cc80 |  30 30 31 35 37 34 33 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 36 35 30 34 00 20 30 00 00 00  | 0015743.00000000000.016504..0... | 
| cca0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| ccc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| cce0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| cd00 |  00 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................... | 
| cd20 |  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................... | 
| cd40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| cd60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| cd80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| cda0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| cdc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| cde0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| ce00 |  3b 3b 3b 20 6c 65 64 67 65 72 2d 6e 61 76 69 67    61 74 65 2e 65 6c 20 2d 2d 2d 20 50 72 6f 76 69  | ;;;.ledger-navigate.el.---.Provi | 
| ce20 |  64 65 20 6e 61 76 69 67 61 74 69 6f 6e 20 73 65    72 76 69 63 65 73 20 74 68 72 6f 75 67 68 20 74  | de.navigation.services.through.t | 
| ce40 |  68 65 20 6c 65 64 67 65 72 20 62 75 66 66 65 72    2e 20 20 2d 2a 2d 20 6c 65 78 69 63 61 6c 2d 62  | he.ledger.buffer...-*-.lexical-b | 
| ce60 |  69 6e 64 69 6e 67 3a 20 74 3b 20 2d 2a 2d 0a 0a    3b 3b 20 43 6f 70 79 72 69 67 68 74 20 28 43 29  | inding:.t;.-*-..;;.Copyright.(C) | 
| ce80 |  20 32 30 31 34 2d 32 30 31 35 20 43 72 61 69 67    20 45 61 72 6c 73 20 28 65 6e 64 65 72 77 38 38  | .2014-2015.Craig.Earls.(enderw88 | 
| cea0 |  20 41 54 20 67 6d 61 69 6c 20 44 4f 54 20 63 6f    6d 29 0a 0a 3b 3b 20 54 68 69 73 20 66 69 6c 65  | .AT.gmail.DOT.com)..;;.This.file | 
| cec0 |  20 69 73 20 6e 6f 74 20 70 61 72 74 20 6f 66 20    47 4e 55 20 45 6d 61 63 73 2e 0a 0a 3b 3b 20 54  | .is.not.part.of.GNU.Emacs...;;.T | 
| cee0 |  68 69 73 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  | his.is.free.software;.you.can.re | 
| cf00 |  64 69 73 74 72 69 62 75 74 65 20 69 74 20 61 6e    64 2f 6f 72 20 6d 6f 64 69 66 79 20 69 74 20 75  | distribute.it.and/or.modify.it.u | 
| cf20 |  6e 64 65 72 0a 3b 3b 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  | nder.;;.the.terms.of.the.GNU.Gen | 
| cf40 |  65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65    6e 73 65 20 61 73 20 70 75 62 6c 69 73 68 65 64  | eral.Public.License.as.published | 
| cf60 |  20 62 79 20 74 68 65 20 46 72 65 65 0a 3b 3b 20    53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61 74  | .by.the.Free.;;.Software.Foundat | 
| cf80 |  69 6f 6e 3b 20 65 69 74 68 65 72 20 76 65 72 73    69 6f 6e 20 32 2c 20 6f 72 20 28 61 74 20 79 6f  | ion;.either.version.2,.or.(at.yo | 
| cfa0 |  75 72 20 6f 70 74 69 6f 6e 29 20 61 6e 79 20 6c    61 74 65 72 0a 3b 3b 20 76 65 72 73 69 6f 6e 2e  | ur.option).any.later.;;.version. | 
| cfc0 |  0a 3b 3b 0a 3b 3b 20 54 68 69 73 20 69 73 20 64    69 73 74 72 69 62 75 74 65 64 20 69 6e 20 74 68  | .;;.;;.This.is.distributed.in.th | 
| cfe0 |  65 20 68 6f 70 65 20 74 68 61 74 20 69 74 20 77    69 6c 6c 20 62 65 20 75 73 65 66 75 6c 2c 20 62  | e.hope.that.it.will.be.useful,.b | 
| d000 |  75 74 20 57 49 54 48 4f 55 54 0a 3b 3b 20 41 4e    59 20 57 41 52 52 41 4e 54 59 3b 20 77 69 74 68  | ut.WITHOUT.;;.ANY.WARRANTY;.with | 
| d020 |  6f 75 74 20 65 76 65 6e 20 74 68 65 20 69 6d 70    6c 69 65 64 20 77 61 72 72 61 6e 74 79 20 6f 66  | out.even.the.implied.warranty.of | 
| d040 |  20 4d 45 52 43 48 41 4e 54 41 42 49 4c 49 54 59    20 6f 72 0a 3b 3b 20 46 49 54 4e 45 53 53 20 46  | .MERCHANTABILITY.or.;;.FITNESS.F | 
| d060 |  4f 52 20 41 20 50 41 52 54 49 43 55 4c 41 52 20    50 55 52 50 4f 53 45 2e 20 20 53 65 65 20 74 68  | OR.A.PARTICULAR.PURPOSE...See.th | 
| d080 |  65 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75    62 6c 69 63 20 4c 69 63 65 6e 73 65 0a 3b 3b 20  | e.GNU.General.Public.License.;;. | 
| d0a0 |  66 6f 72 20 6d 6f 72 65 20 64 65 74 61 69 6c 73    2e 0a 3b 3b 0a 3b 3b 20 59 6f 75 20 73 68 6f 75  | for.more.details..;;.;;.You.shou | 
| d0c0 |  6c 64 20 68 61 76 65 20 72 65 63 65 69 76 65 64    20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 47  | ld.have.received.a.copy.of.the.G | 
| d0e0 |  4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69    63 20 4c 69 63 65 6e 73 65 0a 3b 3b 20 61 6c 6f  | NU.General.Public.License.;;.alo | 
| d100 |  6e 67 20 77 69 74 68 20 47 4e 55 20 45 6d 61 63    73 3b 20 73 65 65 20 74 68 65 20 66 69 6c 65 20  | ng.with.GNU.Emacs;.see.the.file. | 
| d120 |  43 4f 50 59 49 4e 47 2e 20 20 49 66 20 6e 6f 74    2c 20 77 72 69 74 65 20 74 6f 20 74 68 65 0a 3b  | COPYING...If.not,.write.to.the.; | 
| d140 |  3b 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20    46 6f 75 6e 64 61 74 69 6f 6e 2c 20 49 6e 63 2e  | ;.Free.Software.Foundation,.Inc. | 
| d160 |  2c 20 35 31 20 46 72 61 6e 6b 6c 69 6e 20 53 74    72 65 65 74 2c 20 46 69 66 74 68 20 46 6c 6f 6f  | ,.51.Franklin.Street,.Fifth.Floo | 
| d180 |  72 2c 20 42 6f 73 74 6f 6e 2c 0a 3b 3b 20 4d 41    20 30 32 31 31 30 2d 31 33 30 31 20 55 53 41 2e  | r,.Boston,.;;.MA.02110-1301.USA. | 
| d1a0 |  0a 0a 0a 3b 3b 3b 20 43 6f 6d 6d 65 6e 74 61 72    79 3a 0a 3b 3b 0a 0a 3b 3b 3b 20 43 6f 64 65 3a  | ...;;;.Commentary:.;;..;;;.Code: | 
| d1c0 |  0a 0a 28 72 65 71 75 69 72 65 20 27 6c 65 64 67    65 72 2d 72 65 67 65 78 29 0a 28 72 65 71 75 69  | ..(require.'ledger-regex).(requi | 
| d1e0 |  72 65 20 27 6c 65 64 67 65 72 2d 63 6f 6e 74 65    78 74 29 0a 0a 28 64 65 66 75 6e 20 6c 65 64 67  | re.'ledger-context)..(defun.ledg | 
| d200 |  65 72 2d 6e 61 76 69 67 61 74 65 2d 6e 65 78 74    2d 78 61 63 74 20 28 29 0a 20 20 22 4d 6f 76 65  | er-navigate-next-xact.()..."Move | 
| d220 |  20 70 6f 69 6e 74 20 74 6f 20 62 65 67 69 6e 6e    69 6e 67 20 6f 66 20 6e 65 78 74 20 78 61 63 74  | .point.to.beginning.of.next.xact | 
| d240 |  2e 22 0a 20 20 3b 3b 20 6d 61 6b 65 20 73 75 72    65 20 77 65 20 61 63 74 75 61 6c 6c 79 20 6d 6f  | ."...;;.make.sure.we.actually.mo | 
| d260 |  76 65 20 74 6f 20 74 68 65 20 6e 65 78 74 20 78    61 63 74 2c 20 65 76 65 6e 20 69 66 20 77 65 20  | ve.to.the.next.xact,.even.if.we. | 
| d280 |  61 72 65 20 74 68 65 0a 20 20 3b 3b 20 62 65 67    69 6e 6e 69 6e 67 20 6f 66 20 6f 6e 65 20 6e 6f  | are.the...;;.beginning.of.one.no | 
| d2a0 |  77 2e 0a 20 20 28 69 66 20 28 6c 6f 6f 6b 69 6e    67 2d 61 74 20 6c 65 64 67 65 72 2d 70 61 79 65  | w....(if.(looking-at.ledger-paye | 
| d2c0 |  65 2d 61 6e 79 2d 73 74 61 74 75 73 2d 72 65 67    65 78 29 0a 20 20 20 20 20 20 28 66 6f 72 77 61  | e-any-status-regex).......(forwa | 
| d2e0 |  72 64 2d 6c 69 6e 65 29 29 0a 20 20 28 69 66 20    28 72 65 2d 73 65 61 72 63 68 2d 66 6f 72 77 61  | rd-line))...(if.(re-search-forwa | 
| d300 |  72 64 20 20 6c 65 64 67 65 72 2d 70 61 79 65 65    2d 61 6e 79 2d 73 74 61 74 75 73 2d 72 65 67 65  | rd..ledger-payee-any-status-rege | 
| d320 |  78 20 6e 69 6c 20 74 29 0a 20 20 20 20 20 20 28    67 6f 74 6f 2d 63 68 61 72 20 28 6d 61 74 63 68  | x.nil.t).......(goto-char.(match | 
| d340 |  2d 62 65 67 69 6e 6e 69 6e 67 20 30 29 29 0a 20    20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 70  | -beginning.0)).....(goto-char.(p | 
| d360 |  6f 69 6e 74 2d 6d 61 78 29 29 29 29 0a 0a 28 64    65 66 75 6e 20 6c 65 64 67 65 72 2d 6e 61 76 69  | oint-max))))..(defun.ledger-navi | 
| d380 |  67 61 74 65 2d 73 74 61 72 74 2d 78 61 63 74 2d    6f 72 2d 64 69 72 65 63 74 69 76 65 2d 70 20 28  | gate-start-xact-or-directive-p.( | 
| d3a0 |  29 0a 20 20 22 52 65 74 75 72 6e 20 74 20 69 66    20 61 74 20 74 68 65 20 62 65 67 69 6e 6e 69 6e  | )..."Return.t.if.at.the.beginnin | 
| d3c0 |  67 20 6c 69 6e 65 20 6f 66 20 61 6e 20 78 61 63    74 20 6f 72 20 64 69 72 65 63 74 69 76 65 2e 0a  | g.line.of.an.xact.or.directive.. | 
| d3e0 |  0a 41 73 73 75 6d 65 73 20 70 6f 69 6e 74 20 69    73 20 61 74 20 74 68 65 20 62 65 67 69 6e 6e 69  | .Assumes.point.is.at.the.beginni | 
| d400 |  6e 67 20 6f 66 20 61 20 6c 69 6e 65 2e 22 0a 20    20 28 6e 6f 74 20 28 6c 6f 6f 6b 69 6e 67 2d 61  | ng.of.a.line."...(not.(looking-a | 
| d420 |  74 20 22 5b 20 5c 74 5d 5c 5c 7c 5c 5c 28 5e 24    5c 5c 29 22 29 29 29 0a 0a 28 64 65 66 75 6e 20  | t."[.\t]\\|\\(^$\\)")))..(defun. | 
| d440 |  6c 65 64 67 65 72 2d 6e 61 76 69 67 61 74 65 2d    6e 65 78 74 2d 78 61 63 74 2d 6f 72 2d 64 69 72  | ledger-navigate-next-xact-or-dir | 
| d460 |  65 63 74 69 76 65 20 28 29 0a 20 20 22 4d 6f 76    65 20 74 6f 20 74 68 65 20 62 65 67 69 6e 6e 69  | ective.()..."Move.to.the.beginni | 
| d480 |  6e 67 20 6f 66 20 74 68 65 20 6e 65 78 74 20 78    61 63 74 20 6f 72 20 64 69 72 65 63 74 69 76 65  | ng.of.the.next.xact.or.directive | 
| d4a0 |  2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76    65 29 0a 20 20 28 62 65 67 69 6e 6e 69 6e 67 2d  | ."...(interactive)...(beginning- | 
| d4c0 |  6f 66 2d 6c 69 6e 65 29 0a 20 20 28 69 66 20 28    6c 65 64 67 65 72 2d 6e 61 76 69 67 61 74 65 2d  | of-line)...(if.(ledger-navigate- | 
| d4e0 |  73 74 61 72 74 2d 78 61 63 74 2d 6f 72 2d 64 69    72 65 63 74 69 76 65 2d 70 29 20 3b 20 69 66 20  | start-xact-or-directive-p).;.if. | 
| d500 |  77 65 20 61 72 65 20 74 68 65 20 73 74 61 72 74    20 6f 66 20 61 6e 20 78 61 63 74 2c 20 6d 6f 76  | we.are.the.start.of.an.xact,.mov | 
| d520 |  65 20 66 6f 72 77 61 72 64 20 74 6f 20 74 68 65    20 6e 65 78 74 20 78 61 63 74 0a 20 20 20 20 20  | e.forward.to.the.next.xact...... | 
| d540 |  20 28 70 72 6f 67 6e 0a 20 20 20 20 20 20 20 20    28 66 6f 72 77 61 72 64 2d 6c 69 6e 65 29 0a 20  | .(progn.........(forward-line).. | 
| d560 |  20 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 28    6c 65 64 67 65 72 2d 6e 61 76 69 67 61 74 65 2d  | .......(unless.(ledger-navigate- | 
| d580 |  73 74 61 72 74 2d 78 61 63 74 2d 6f 72 2d 64 69    72 65 63 74 69 76 65 2d 70 29 20 3b 20 77 65 20  | start-xact-or-directive-p).;.we. | 
| d5a0 |  68 61 76 65 20 6d 6f 76 65 64 20 66 6f 72 77 61    72 64 20 61 6e 64 20 61 72 65 20 6e 6f 74 20 61  | have.moved.forward.and.are.not.a | 
| d5c0 |  74 20 61 6e 6f 74 68 65 72 20 78 61 63 74 2c 20    72 65 63 75 72 73 65 20 66 6f 72 77 61 72 64 0a  | t.another.xact,.recurse.forward. | 
| d5e0 |  20 20 20 20 20 20 20 20 20 20 28 6c 65 64 67 65    72 2d 6e 61 76 69 67 61 74 65 2d 6e 65 78 74 2d  | ..........(ledger-navigate-next- | 
| d600 |  78 61 63 74 2d 6f 72 2d 64 69 72 65 63 74 69 76    65 29 29 29 0a 20 20 20 20 28 77 68 69 6c 65 20  | xact-or-directive))).....(while. | 
| d620 |  28 6e 6f 74 20 28 6f 72 20 28 65 6f 62 70 29 20    20 3b 20 77 65 20 64 69 64 6e 27 74 20 73 74 61  | (not.(or.(eobp)..;.we.didn't.sta | 
| d640 |  72 74 20 6f 66 66 20 61 74 20 74 68 65 20 62 65    67 69 6e 6e 69 6e 67 20 6f 66 20 61 6e 20 78 61  | rt.off.at.the.beginning.of.an.xa | 
| d660 |  63 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 28 6c 65 64 67 65 72 2d 6e  | ct.....................(ledger-n | 
| d680 |  61 76 69 67 61 74 65 2d 73 74 61 72 74 2d 78 61    63 74 2d 6f 72 2d 64 69 72 65 63 74 69 76 65 2d  | avigate-start-xact-or-directive- | 
| d6a0 |  70 29 29 29 0a 20 20 20 20 20 20 28 66 6f 72 77    61 72 64 2d 6c 69 6e 65 29 29 29 29 0a 0a 28 64  | p))).......(forward-line))))..(d | 
| d6c0 |  65 66 75 6e 20 6c 65 64 67 65 72 2d 6e 61 76 69    67 61 74 65 2d 70 72 65 76 2d 78 61 63 74 2d 6f  | efun.ledger-navigate-prev-xact-o | 
| d6e0 |  72 2d 64 69 72 65 63 74 69 76 65 20 28 29 0a 20    20 22 4d 6f 76 65 20 70 6f 69 6e 74 20 74 6f 20  | r-directive.()..."Move.point.to. | 
| d700 |  62 65 67 69 6e 6e 69 6e 67 20 6f 66 20 70 72 65    76 69 6f 75 73 20 78 61 63 74 2e 22 0a 20 20 28  | beginning.of.previous.xact."...( | 
| d720 |  69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20 28    6c 65 74 20 28 28 63 6f 6e 74 65 78 74 20 28 63  | interactive)...(let.((context.(c | 
| d740 |  61 72 20 28 6c 65 64 67 65 72 2d 63 6f 6e 74 65    78 74 2d 61 74 2d 70 6f 69 6e 74 29 29 29 29 0a  | ar.(ledger-context-at-point)))). | 
| d760 |  20 20 20 20 28 77 68 65 6e 20 28 65 71 75 61 6c    20 63 6f 6e 74 65 78 74 20 27 61 63 63 74 2d 74  | ....(when.(equal.context.'acct-t | 
| d780 |  72 61 6e 73 61 63 74 69 6f 6e 29 0a 20 20 20 20    20 20 28 6c 65 64 67 65 72 2d 6e 61 76 69 67 61  | ransaction).......(ledger-naviga | 
| d7a0 |  74 65 2d 62 65 67 69 6e 6e 69 6e 67 2d 6f 66 2d    78 61 63 74 29 29 0a 20 20 20 20 28 62 65 67 69  | te-beginning-of-xact)).....(begi | 
| d7c0 |  6e 6e 69 6e 67 2d 6f 66 2d 6c 69 6e 65 29 0a 20    20 20 20 28 72 65 2d 73 65 61 72 63 68 2d 62 61  | nning-of-line).....(re-search-ba | 
| d7e0 |  63 6b 77 61 72 64 20 22 5e 5b 5b 3a 67 72 61 70    68 3a 5d 5d 22 20 6e 69 6c 20 74 29 29 29 0a 0a  | ckward."^[[:graph:]]".nil.t))).. | 
| d800 |  28 64 65 66 75 6e 20 6c 65 64 67 65 72 2d 6e 61    76 69 67 61 74 65 2d 62 65 67 69 6e 6e 69 6e 67  | (defun.ledger-navigate-beginning | 
| d820 |  2d 6f 66 2d 78 61 63 74 20 28 29 0a 20 20 22 4d    6f 76 65 20 70 6f 69 6e 74 20 74 6f 20 74 68 65  | -of-xact.()..."Move.point.to.the | 
| d840 |  20 62 65 67 69 6e 6e 69 6e 67 20 6f 66 20 74 68    65 20 63 75 72 72 65 6e 74 20 78 61 63 74 2e 22  | .beginning.of.the.current.xact." | 
| d860 |  0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 29    0a 20 20 3b 3b 20 6e 65 65 64 20 74 6f 20 73 74  | ...(interactive)...;;.need.to.st | 
| d880 |  61 72 74 20 61 74 20 74 68 65 20 62 65 67 69 6e    6e 69 6e 67 20 6f 66 20 61 20 6c 69 6e 65 20 69  | art.at.the.beginning.of.a.line.i | 
| d8a0 |  6e 20 63 61 73 65 20 77 65 20 61 72 65 20 69 6e    20 74 68 65 20 66 69 72 73 74 20 6c 69 6e 65 20  | n.case.we.are.in.the.first.line. | 
| d8c0 |  6f 66 20 61 6e 20 78 61 63 74 20 61 6c 72 65 61    64 79 2e 0a 20 20 28 62 65 67 69 6e 6e 69 6e 67  | of.an.xact.already....(beginning | 
| d8e0 |  2d 6f 66 2d 6c 69 6e 65 29 0a 20 20 28 6c 65 74    20 28 28 73 72 65 67 20 28 63 6f 6e 63 61 74 20  | -of-line)...(let.((sreg.(concat. | 
| d900 |  22 5e 5b 3d 7e 5b 3a 64 69 67 69 74 3a 5d 5d 22    29 29 29 0a 20 20 20 20 28 75 6e 6c 65 73 73 20  | "^[=~[:digit:]]"))).....(unless. | 
| d920 |  28 6c 6f 6f 6b 69 6e 67 2d 61 74 20 73 72 65 67    29 0a 20 20 20 20 20 20 28 72 65 2d 73 65 61 72  | (looking-at.sreg).......(re-sear | 
| d940 |  63 68 2d 62 61 63 6b 77 61 72 64 20 73 72 65 67    20 6e 69 6c 20 74 29 0a 20 20 20 20 20 20 28 62  | ch-backward.sreg.nil.t).......(b | 
| d960 |  65 67 69 6e 6e 69 6e 67 2d 6f 66 2d 6c 69 6e 65    29 29 29 0a 20 20 28 70 6f 69 6e 74 29 29 0a 0a  | eginning-of-line)))...(point)).. | 
| d980 |  28 64 65 66 75 6e 20 6c 65 64 67 65 72 2d 6e 61    76 69 67 61 74 65 2d 65 6e 64 2d 6f 66 2d 78 61  | (defun.ledger-navigate-end-of-xa | 
| d9a0 |  63 74 20 28 29 0a 20 20 22 4d 6f 76 65 20 70 6f    69 6e 74 20 74 6f 20 65 6e 64 20 6f 66 20 78 61  | ct.()..."Move.point.to.end.of.xa | 
| d9c0 |  63 74 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74    69 76 65 29 0a 20 20 28 6c 65 64 67 65 72 2d 6e  | ct."...(interactive)...(ledger-n | 
| d9e0 |  61 76 69 67 61 74 65 2d 6e 65 78 74 2d 78 61 63    74 2d 6f 72 2d 64 69 72 65 63 74 69 76 65 29 0a  | avigate-next-xact-or-directive). | 
| da00 |  20 20 28 72 65 2d 73 65 61 72 63 68 2d 62 61 63    6b 77 61 72 64 20 22 2e 24 22 29 0a 20 20 28 65  | ..(re-search-backward.".$")...(e | 
| da20 |  6e 64 2d 6f 66 2d 6c 69 6e 65 29 0a 20 20 28 70    6f 69 6e 74 29 29 0a 0a 28 64 65 66 75 6e 20 6c  | nd-of-line)...(point))..(defun.l | 
| da40 |  65 64 67 65 72 2d 6e 61 76 69 67 61 74 65 2d 74    6f 2d 6c 69 6e 65 20 28 6c 69 6e 65 2d 6e 75 6d  | edger-navigate-to-line.(line-num | 
| da60 |  62 65 72 29 0a 20 20 22 52 61 70 69 64 6c 79 20    6d 6f 76 65 20 70 6f 69 6e 74 20 74 6f 20 6c 69  | ber)..."Rapidly.move.point.to.li | 
| da80 |  6e 65 20 4c 49 4e 45 2d 4e 55 4d 42 45 52 2e 22    0a 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 70  | ne.LINE-NUMBER."...(goto-char.(p | 
| daa0 |  6f 69 6e 74 2d 6d 69 6e 29 29 0a 20 20 28 66 6f    72 77 61 72 64 2d 6c 69 6e 65 20 28 31 2d 20 6c  | oint-min))...(forward-line.(1-.l | 
| dac0 |  69 6e 65 2d 6e 75 6d 62 65 72 29 29 29 0a 0a 28    64 65 66 75 6e 20 6c 65 64 67 65 72 2d 6e 61 76  | ine-number)))..(defun.ledger-nav | 
| dae0 |  69 67 61 74 65 2d 66 69 6e 64 2d 78 61 63 74 2d    65 78 74 65 6e 74 73 20 28 70 6f 73 29 0a 20 20  | igate-find-xact-extents.(pos)... | 
| db00 |  22 52 65 74 75 72 6e 20 6c 69 73 74 20 63 6f 6e    74 61 69 6e 69 6e 67 20 70 6f 69 6e 74 20 66 6f  | "Return.list.containing.point.fo | 
| db20 |  72 20 62 65 67 69 6e 6e 69 6e 67 20 61 6e 64 20    65 6e 64 20 6f 66 20 78 61 63 74 20 63 6f 6e 74  | r.beginning.and.end.of.xact.cont | 
| db40 |  61 69 6e 69 6e 67 20 50 4f 53 2e 0a 52 65 71 75    69 72 65 73 20 65 6d 70 74 79 20 6c 69 6e 65 20  | aining.POS..Requires.empty.line. | 
| db60 |  73 65 70 61 72 61 74 69 6e 67 20 78 61 63 74 73    2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76  | separating.xacts."...(interactiv | 
| db80 |  65 20 22 64 22 29 0a 20 20 28 73 61 76 65 2d 65    78 63 75 72 73 69 6f 6e 0a 20 20 20 20 28 67 6f  | e."d")...(save-excursion.....(go | 
| dba0 |  74 6f 2d 63 68 61 72 20 70 6f 73 29 0a 20 20 20    20 28 6c 69 73 74 20 28 6c 65 64 67 65 72 2d 6e  | to-char.pos).....(list.(ledger-n | 
| dbc0 |  61 76 69 67 61 74 65 2d 62 65 67 69 6e 6e 69 6e    67 2d 6f 66 2d 78 61 63 74 29 0a 20 20 20 20 20  | avigate-beginning-of-xact)...... | 
| dbe0 |  20 20 20 20 20 28 6c 65 64 67 65 72 2d 6e 61 76    69 67 61 74 65 2d 65 6e 64 2d 6f 66 2d 78 61 63  | .....(ledger-navigate-end-of-xac | 
| dc00 |  74 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6c 65    64 67 65 72 2d 6e 61 76 69 67 61 74 65 2d 73 6b  | t))))..(defun.ledger-navigate-sk | 
| dc20 |  69 70 2d 6c 69 6e 65 73 2d 62 61 63 6b 77 61 72    64 73 20 28 72 65 29 0a 20 20 22 4d 6f 76 65 20  | ip-lines-backwards.(re)..."Move. | 
| dc40 |  62 61 63 6b 77 61 72 64 73 20 69 66 20 6e 65 63    65 73 73 61 72 79 20 75 6e 74 69 6c 20 74 68 65  | backwards.if.necessary.until.the | 
| dc60 |  20 6c 69 6e 65 20 62 65 67 69 6e 6e 69 6e 67 20    64 6f 65 73 20 6e 6f 74 20 6d 61 74 63 68 20 52  | .line.beginning.does.not.match.R | 
| dc80 |  45 2e 22 0a 20 20 28 62 65 67 69 6e 6e 69 6e 67    2d 6f 66 2d 6c 69 6e 65 29 0a 20 20 28 77 68 69  | E."...(beginning-of-line)...(whi | 
| dca0 |  6c 65 20 28 61 6e 64 20 28 6c 6f 6f 6b 69 6e 67    2d 61 74 2d 70 20 72 65 29 0a 20 20 20 20 20 20  | le.(and.(looking-at-p.re)....... | 
| dcc0 |  20 20 20 20 20 20 20 20 28 7a 65 72 6f 70 20 28    66 6f 72 77 61 72 64 2d 6c 69 6e 65 20 2d 31 29  | ........(zerop.(forward-line.-1) | 
| dce0 |  29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6c 65 64    67 65 72 2d 6e 61 76 69 67 61 74 65 2d 73 6b 69  | ))))..(defun.ledger-navigate-ski | 
| dd00 |  70 2d 6c 69 6e 65 73 2d 66 6f 72 77 61 72 64 73    20 28 72 65 29 0a 20 20 22 4d 6f 76 65 20 66 6f  | p-lines-forwards.(re)..."Move.fo | 
| dd20 |  72 77 61 72 64 73 20 69 66 20 6e 65 63 65 73 73    61 72 79 20 75 6e 74 69 6c 20 74 68 65 20 6c 69  | rwards.if.necessary.until.the.li | 
| dd40 |  6e 65 20 62 65 67 69 6e 6e 69 6e 67 20 64 6f 65    73 20 6e 6f 74 20 6d 61 74 63 68 20 52 45 2e 22  | ne.beginning.does.not.match.RE." | 
| dd60 |  0a 20 20 28 62 65 67 69 6e 6e 69 6e 67 2d 6f 66    2d 6c 69 6e 65 29 0a 20 20 28 77 68 69 6c 65 20  | ...(beginning-of-line)...(while. | 
| dd80 |  28 61 6e 64 20 28 6c 6f 6f 6b 69 6e 67 2d 61 74    2d 70 20 72 65 29 0a 20 20 20 20 20 20 20 20 20  | (and.(looking-at-p.re).......... | 
| dda0 |  20 20 20 20 20 28 7a 65 72 6f 70 20 28 66 6f 72    77 61 72 64 2d 6c 69 6e 65 20 31 29 29 29 29 29  | .....(zerop.(forward-line.1))))) | 
| ddc0 |  0a 0a 28 64 65 66 75 6e 20 6c 65 64 67 65 72 2d    6e 61 76 69 67 61 74 65 2d 66 69 6e 64 2d 64 69  | ..(defun.ledger-navigate-find-di | 
| dde0 |  72 65 63 74 69 76 65 2d 65 78 74 65 6e 74 73 20    28 70 6f 73 29 0a 20 20 22 52 65 74 75 72 6e 20  | rective-extents.(pos)..."Return. | 
| de00 |  74 68 65 20 65 78 74 65 6e 74 73 20 6f 66 20 74    68 65 20 64 69 72 65 63 74 69 76 65 20 61 74 20  | the.extents.of.the.directive.at. | 
| de20 |  50 4f 53 2e 22 0a 20 20 28 67 6f 74 6f 2d 63 68    61 72 20 70 6f 73 29 0a 20 20 28 6c 65 74 20 28  | POS."...(goto-char.pos)...(let.( | 
| de40 |  28 62 65 67 69 6e 20 28 70 72 6f 67 6e 20 28 6c    65 64 67 65 72 2d 6e 61 76 69 67 61 74 65 2d 73  | (begin.(progn.(ledger-navigate-s | 
| de60 |  6b 69 70 2d 6c 69 6e 65 73 2d 62 61 63 6b 77 61    72 64 73 20 22 5b 20 5c 74 5d 5c 5c 7c 65 6e 64  | kip-lines-backwards."[.\t]\\|end | 
| de80 |  5b 5b 3a 62 6c 61 6e 6b 3a 5d 5d 2b 5c 5c 28 3f    3a 63 6f 6d 6d 65 6e 74 5c 5c 7c 74 65 73 74 5c  | [[:blank:]]+\\(?:comment\\|test\ | 
| dea0 |  5c 29 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 28 70 6f 69 6e  | \)").......................(poin | 
| dec0 |  74 29 29 29 0a 20 20 20 20 20 20 20 20 28 65 6e    64 20 28 70 72 6f 67 6e 20 28 66 6f 72 77 61 72  | t))).........(end.(progn.(forwar | 
| dee0 |  64 2d 6c 69 6e 65 20 31 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c  | d-line.1).....................(l | 
| df00 |  65 64 67 65 72 2d 6e 61 76 69 67 61 74 65 2d 73    6b 69 70 2d 6c 69 6e 65 73 2d 66 6f 72 77 61 72  | edger-navigate-skip-lines-forwar | 
| df20 |  64 73 20 22 5b 20 5c 74 5d 22 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ds."[.\t]")..................... | 
| df40 |  28 31 2d 20 28 70 6f 69 6e 74 29 29 29 29 0a 20    20 20 20 20 20 20 20 28 63 6f 6d 6d 65 6e 74 2d  | (1-.(point)))).........(comment- | 
| df60 |  72 65 20 22 20 2a 3b 22 29 29 0a 20 20 20 20 3b    3b 20 68 61 6e 64 6c 65 20 62 6c 6f 63 6b 20 63  | re.".*;")).....;;.handle.block.c | 
| df80 |  6f 6d 6d 65 6e 74 73 20 68 65 72 65 0a 20 20 20    20 28 67 6f 74 6f 2d 63 68 61 72 20 62 65 67 69  | omments.here.....(goto-char.begi | 
| dfa0 |  6e 29 0a 20 20 20 20 28 63 6f 6e 64 0a 20 20 20    20 20 28 28 6c 6f 6f 6b 69 6e 67 2d 61 74 20 63  | n).....(cond......((looking-at.c | 
| dfc0 |  6f 6d 6d 65 6e 74 2d 72 65 29 0a 20 20 20 20 20    20 28 6c 65 64 67 65 72 2d 6e 61 76 69 67 61 74  | omment-re).......(ledger-navigat | 
| dfe0 |  65 2d 73 6b 69 70 2d 6c 69 6e 65 73 2d 62 61 63    6b 77 61 72 64 73 20 63 6f 6d 6d 65 6e 74 2d 72  | e-skip-lines-backwards.comment-r | 
| e000 |  65 29 0a 20 20 20 20 20 20 3b 3b 20 57 65 20 61    72 65 20 65 69 74 68 65 72 20 61 74 20 74 68 65  | e).......;;.We.are.either.at.the | 
| e020 |  20 62 65 67 69 6e 6e 69 6e 67 20 6f 66 20 74 68    65 20 62 75 66 66 65 72 2c 20 6f 72 20 77 65 20  | .beginning.of.the.buffer,.or.we. | 
| e040 |  66 6f 75 6e 64 0a 20 20 20 20 20 20 3b 3b 20 61    20 6c 69 6e 65 20 6f 75 74 73 69 64 65 20 74 68  | found.......;;.a.line.outside.th | 
| e060 |  65 20 63 6f 6d 6d 65 6e 74 2c 20 6f 72 20 62 6f    74 68 2e 20 20 49 66 20 77 65 20 61 72 65 20 6f  | e.comment,.or.both...If.we.are.o | 
| e080 |  75 74 73 69 64 65 0a 20 20 20 20 20 20 3b 3b 20    74 68 65 20 63 6f 6d 6d 65 6e 74 20 74 68 65 6e  | utside.......;;.the.comment.then | 
| e0a0 |  20 77 65 20 6e 65 65 64 20 74 6f 20 6d 6f 76 65    20 66 6f 72 77 61 72 64 20 61 20 6c 69 6e 65 2e  | .we.need.to.move.forward.a.line. | 
| e0c0 |  0a 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 28    6c 6f 6f 6b 69 6e 67 2d 61 74 20 63 6f 6d 6d 65  | .......(unless.(looking-at.comme | 
| e0e0 |  6e 74 2d 72 65 29 0a 20 20 20 20 20 20 20 20 28    66 6f 72 77 61 72 64 2d 6c 69 6e 65 20 31 29 0a  | nt-re).........(forward-line.1). | 
| e100 |  20 20 20 20 20 20 20 20 28 62 65 67 69 6e 6e 69    6e 67 2d 6f 66 2d 6c 69 6e 65 29 29 0a 20 20 20  | ........(beginning-of-line)).... | 
| e120 |  20 20 20 28 73 65 74 71 20 62 65 67 69 6e 20 28    70 6f 69 6e 74 29 29 0a 20 20 20 20 20 20 28 67  | ...(setq.begin.(point)).......(g | 
| e140 |  6f 74 6f 2d 63 68 61 72 20 70 6f 73 29 0a 20 20    20 20 20 20 28 6c 65 64 67 65 72 2d 6e 61 76 69  | oto-char.pos).......(ledger-navi | 
| e160 |  67 61 74 65 2d 73 6b 69 70 2d 6c 69 6e 65 73 2d    66 6f 72 77 61 72 64 73 20 63 6f 6d 6d 65 6e 74  | gate-skip-lines-forwards.comment | 
| e180 |  2d 72 65 29 0a 20 20 20 20 20 20 28 73 65 74 71    20 65 6e 64 20 28 70 6f 69 6e 74 29 29 29 0a 20  | -re).......(setq.end.(point))).. | 
| e1a0 |  20 20 20 20 28 28 6c 6f 6f 6b 69 6e 67 2d 61 74    20 22 5c 5c 28 3f 3a 63 6f 6d 6d 65 6e 74 5c 5c  | ....((looking-at."\\(?:comment\\ | 
| e1c0 |  7c 74 65 73 74 5c 5c 29 5c 5c 3e 22 29 0a 20 20    20 20 20 20 28 73 65 74 71 20 65 6e 64 20 28 6f  | |test\\)\\>").......(setq.end.(o | 
| e1e0 |  72 20 28 73 61 76 65 2d 6d 61 74 63 68 2d 64 61    74 61 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | r.(save-match-data.............. | 
| e200 |  20 20 20 20 20 20 20 20 20 28 72 65 2d 73 65 61    72 63 68 2d 66 6f 72 77 61 72 64 20 22 5e 65 6e  | .........(re-search-forward."^en | 
| e220 |  64 5b 5b 3a 62 6c 61 6e 6b 3a 5d 5d 2b 5c 5c 28    3f 3a 63 6f 6d 6d 65 6e 74 5c 5c 7c 74 65 73 74  | d[[:blank:]]+\\(?:comment\\|test | 
| e240 |  5c 5c 29 5c 5c 5f 3e 22 29 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28  | \\)\\_>")).....................( | 
| e260 |  70 6f 69 6e 74 2d 6d 61 78 29 29 29 29 29 0a 20    20 20 20 28 6c 69 73 74 20 62 65 67 69 6e 20 65  | point-max))))).....(list.begin.e | 
| e280 |  6e 64 29 29 29 0a 0a 28 64 65 66 75 6e 20 6c 65    64 67 65 72 2d 6e 61 76 69 67 61 74 65 2d 62 6c  | nd)))..(defun.ledger-navigate-bl | 
| e2a0 |  6f 63 6b 2d 63 6f 6d 6d 65 6e 74 20 28 70 6f 73    29 0a 20 20 22 4d 6f 76 65 20 70 61 73 74 20 74  | ock-comment.(pos)..."Move.past.t | 
| e2c0 |  68 65 20 62 6c 6f 63 6b 20 63 6f 6d 6d 65 6e 74    20 61 74 20 50 4f 53 2c 20 61 6e 64 20 72 65 74  | he.block.comment.at.POS,.and.ret | 
| e2e0 |  75 72 6e 20 69 74 73 20 65 78 74 65 6e 74 73 2e    22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65  | urn.its.extents."...(interactive | 
| e300 |  20 22 64 22 29 0a 20 20 28 67 6f 74 6f 2d 63 68    61 72 20 70 6f 73 29 0a 20 20 28 6c 65 74 20 28  | ."d")...(goto-char.pos)...(let.( | 
| e320 |  28 62 65 67 69 6e 20 28 70 72 6f 67 6e 20 28 62    65 67 69 6e 6e 69 6e 67 2d 6f 66 2d 6c 69 6e 65  | (begin.(progn.(beginning-of-line | 
| e340 |  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 70 6f 69 6e 74 29 29  | ).......................(point)) | 
| e360 |  29 0a 20 20 20 20 20 20 20 20 28 65 6e 64 20 28    70 72 6f 67 6e 20 28 65 6e 64 2d 6f 66 2d 6c 69  | ).........(end.(progn.(end-of-li | 
| e380 |  6e 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 28 70 6f 69 6e 74 29 29  | ne).....................(point)) | 
| e3a0 |  29 0a 20 20 20 20 20 20 20 20 28 63 6f 6d 6d 65    6e 74 2d 72 65 20 22 20 2a 3b 22 29 29 0a 20 20  | ).........(comment-re.".*;"))... | 
| e3c0 |  20 20 3b 3b 20 68 61 6e 64 6c 65 20 62 6c 6f 63    6b 20 63 6f 6d 6d 65 6e 74 73 20 68 65 72 65 0a  | ..;;.handle.block.comments.here. | 
| e3e0 |  20 20 20 20 28 62 65 67 69 6e 6e 69 6e 67 2d 6f    66 2d 6c 69 6e 65 29 0a 20 20 20 20 28 77 68 65  | ....(beginning-of-line).....(whe | 
| e400 |  6e 20 28 6c 6f 6f 6b 69 6e 67 2d 61 74 20 63 6f    6d 6d 65 6e 74 2d 72 65 29 0a 20 20 20 20 20 20  | n.(looking-at.comment-re)....... | 
| e420 |  28 6c 65 64 67 65 72 2d 6e 61 76 69 67 61 74 65    2d 73 6b 69 70 2d 6c 69 6e 65 73 2d 62 61 63 6b  | (ledger-navigate-skip-lines-back | 
| e440 |  77 61 72 64 73 20 63 6f 6d 6d 65 6e 74 2d 72 65    29 0a 20 20 20 20 20 20 28 73 65 74 71 20 62 65  | wards.comment-re).......(setq.be | 
| e460 |  67 69 6e 20 28 70 6f 69 6e 74 29 29 0a 20 20 20    20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 70 6f  | gin.(point)).......(goto-char.po | 
| e480 |  73 29 0a 20 20 20 20 20 20 28 62 65 67 69 6e 6e    69 6e 67 2d 6f 66 2d 6c 69 6e 65 29 0a 20 20 20  | s).......(beginning-of-line).... | 
| e4a0 |  20 20 20 28 6c 65 64 67 65 72 2d 6e 61 76 69 67    61 74 65 2d 73 6b 69 70 2d 6c 69 6e 65 73 2d 66  | ...(ledger-navigate-skip-lines-f | 
| e4c0 |  6f 72 77 61 72 64 73 20 63 6f 6d 6d 65 6e 74 2d    72 65 29 0a 20 20 20 20 20 20 28 73 65 74 71 20  | orwards.comment-re).......(setq. | 
| e4e0 |  65 6e 64 20 28 70 6f 69 6e 74 29 29 29 0a 20 20    20 20 28 6c 69 73 74 20 62 65 67 69 6e 20 65 6e  | end.(point))).....(list.begin.en | 
| e500 |  64 29 29 29 0a 0a 0a 28 64 65 66 75 6e 20 6c 65    64 67 65 72 2d 6e 61 76 69 67 61 74 65 2d 66 69  | d)))...(defun.ledger-navigate-fi | 
| e520 |  6e 64 2d 65 6c 65 6d 65 6e 74 2d 65 78 74 65 6e    74 73 20 28 70 6f 73 29 0a 20 20 22 52 65 74 75  | nd-element-extents.(pos)..."Retu | 
| e540 |  72 6e 20 6c 69 73 74 20 63 6f 6e 74 61 69 6e 69    6e 67 20 62 65 67 69 6e 6e 69 6e 67 20 61 6e 64  | rn.list.containing.beginning.and | 
| e560 |  20 65 6e 64 20 6f 66 20 74 68 65 20 65 6e 74 69    74 79 20 73 75 72 72 6f 75 6e 64 69 6e 67 20 50  | .end.of.the.entity.surrounding.P | 
| e580 |  4f 53 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74    69 76 65 20 22 64 22 29 0a 20 20 28 73 61 76 65  | OS."...(interactive."d")...(save | 
| e5a0 |  2d 65 78 63 75 72 73 69 6f 6e 0a 20 20 20 20 28    67 6f 74 6f 2d 63 68 61 72 20 70 6f 73 29 0a 20  | -excursion.....(goto-char.pos).. | 
| e5c0 |  20 20 20 28 62 65 67 69 6e 6e 69 6e 67 2d 6f 66    2d 6c 69 6e 65 29 0a 20 20 20 20 28 6c 65 64 67  | ...(beginning-of-line).....(ledg | 
| e5e0 |  65 72 2d 6e 61 76 69 67 61 74 65 2d 73 6b 69 70    2d 6c 69 6e 65 73 2d 62 61 63 6b 77 61 72 64 73  | er-navigate-skip-lines-backwards | 
| e600 |  20 22 5b 20 5c 74 5d 5c 5c 7c 65 6e 64 5b 5b 3a    62 6c 61 6e 6b 3a 5d 5d 2b 5c 5c 28 3f 3a 63 6f  | ."[.\t]\\|end[[:blank:]]+\\(?:co | 
| e620 |  6d 6d 65 6e 74 5c 5c 7c 74 65 73 74 5c 5c 29 5c    5c 5f 3e 22 29 0a 20 20 20 20 28 69 66 20 28 6c  | mment\\|test\\)\\_>").....(if.(l | 
| e640 |  6f 6f 6b 69 6e 67 2d 61 74 20 22 5b 3d 7e 30 2d    39 5c 5c 5b 5d 22 29 0a 20 20 20 20 20 20 20 20  | ooking-at."[=~0-9\\[]")......... | 
| e660 |  28 6c 65 64 67 65 72 2d 6e 61 76 69 67 61 74 65    2d 66 69 6e 64 2d 78 61 63 74 2d 65 78 74 65 6e  | (ledger-navigate-find-xact-exten | 
| e680 |  74 73 20 70 6f 73 29 0a 20 20 20 20 20 20 28 6c    65 64 67 65 72 2d 6e 61 76 69 67 61 74 65 2d 66  | ts.pos).......(ledger-navigate-f | 
| e6a0 |  69 6e 64 2d 64 69 72 65 63 74 69 76 65 2d 65 78    74 65 6e 74 73 20 70 6f 73 29 29 29 29 0a 0a 28  | ind-directive-extents.pos))))..( | 
| e6c0 |  64 65 66 75 6e 20 6c 65 64 67 65 72 2d 6e 61 76    69 67 61 74 65 2d 6e 65 78 74 2d 75 6e 63 6c 65  | defun.ledger-navigate-next-uncle | 
| e6e0 |  61 72 65 64 20 28 29 0a 20 20 22 4d 6f 76 65 20    70 6f 69 6e 74 20 74 6f 20 74 68 65 20 6e 65 78  | ared.()..."Move.point.to.the.nex | 
| e700 |  74 20 75 6e 63 6c 65 61 72 65 64 20 74 72 61 6e    73 61 63 74 69 6f 6e 2e 22 0a 20 20 28 69 6e 74  | t.uncleared.transaction."...(int | 
| e720 |  65 72 61 63 74 69 76 65 29 0a 20 20 28 77 68 65    6e 20 28 6c 6f 6f 6b 69 6e 67 2d 61 74 20 6c 65  | eractive)...(when.(looking-at.le | 
| e740 |  64 67 65 72 2d 70 61 79 65 65 2d 75 6e 63 6c 65    61 72 65 64 2d 72 65 67 65 78 29 0a 20 20 20 20  | dger-payee-uncleared-regex)..... | 
| e760 |  28 66 6f 72 77 61 72 64 2d 6c 69 6e 65 29 29 0a    20 20 28 69 66 20 28 72 65 2d 73 65 61 72 63 68  | (forward-line))...(if.(re-search | 
| e780 |  2d 66 6f 72 77 61 72 64 20 6c 65 64 67 65 72 2d    70 61 79 65 65 2d 75 6e 63 6c 65 61 72 65 64 2d  | -forward.ledger-payee-uncleared- | 
| e7a0 |  72 65 67 65 78 20 6e 69 6c 20 74 29 0a 20 20 20    20 20 20 28 70 72 6f 67 6e 20 28 62 65 67 69 6e  | regex.nil.t).......(progn.(begin | 
| e7c0 |  6e 69 6e 67 2d 6f 66 2d 6c 69 6e 65 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 28 70 6f 69 6e  | ning-of-line)..............(poin | 
| e7e0 |  74 29 29 0a 20 20 20 20 28 75 73 65 72 2d 65 72    72 6f 72 20 22 4e 6f 20 6e 65 78 74 20 75 6e 63  | t)).....(user-error."No.next.unc | 
| e800 |  6c 65 61 72 65 64 20 74 72 61 6e 73 61 63 74 69    6f 6e 73 22 29 29 29 0a 0a 28 64 65 66 75 6e 20  | leared.transactions")))..(defun. | 
| e820 |  6c 65 64 67 65 72 2d 6e 61 76 69 67 61 74 65 2d    70 72 65 76 69 6f 75 73 2d 75 6e 63 6c 65 61 72  | ledger-navigate-previous-unclear | 
| e840 |  65 64 20 28 29 0a 20 20 22 4d 6f 76 65 20 70 6f    69 6e 74 20 74 6f 20 74 68 65 20 70 72 65 76 69  | ed.()..."Move.point.to.the.previ | 
| e860 |  6f 75 73 20 75 6e 63 6c 65 61 72 65 64 20 74 72    61 6e 73 61 63 74 69 6f 6e 2e 22 0a 20 20 28 69  | ous.uncleared.transaction."...(i | 
| e880 |  6e 74 65 72 61 63 74 69 76 65 29 0a 20 20 28 77    68 65 6e 20 28 65 71 75 61 6c 20 28 63 61 72 20  | nteractive)...(when.(equal.(car. | 
| e8a0 |  28 6c 65 64 67 65 72 2d 63 6f 6e 74 65 78 74 2d    61 74 2d 70 6f 69 6e 74 29 29 20 27 61 63 63 74  | (ledger-context-at-point)).'acct | 
| e8c0 |  2d 74 72 61 6e 73 61 63 74 69 6f 6e 29 0a 20 20    20 20 28 6c 65 64 67 65 72 2d 6e 61 76 69 67 61  | -transaction).....(ledger-naviga | 
| e8e0 |  74 65 2d 62 65 67 69 6e 6e 69 6e 67 2d 6f 66 2d    78 61 63 74 29 29 0a 20 20 28 69 66 20 28 72 65  | te-beginning-of-xact))...(if.(re | 
| e900 |  2d 73 65 61 72 63 68 2d 62 61 63 6b 77 61 72 64    20 6c 65 64 67 65 72 2d 70 61 79 65 65 2d 75 6e  | -search-backward.ledger-payee-un | 
| e920 |  63 6c 65 61 72 65 64 2d 72 65 67 65 78 20 6e 69    6c 20 74 29 0a 20 20 20 20 20 20 28 70 72 6f 67  | cleared-regex.nil.t).......(prog | 
| e940 |  6e 20 28 62 65 67 69 6e 6e 69 6e 67 2d 6f 66 2d    6c 69 6e 65 29 0a 20 20 20 20 20 20 20 20 20 20  | n.(beginning-of-line)........... | 
| e960 |  20 20 20 28 70 6f 69 6e 74 29 29 0a 20 20 20 20    28 75 73 65 72 2d 65 72 72 6f 72 20 22 4e 6f 20  | ...(point)).....(user-error."No. | 
| e980 |  70 72 65 76 69 6f 75 73 20 75 6e 63 6c 65 61 72    65 64 20 74 72 61 6e 73 61 63 74 69 6f 6e 73 22  | previous.uncleared.transactions" | 
| e9a0 |  29 29 29 0a 0a 0a 28 70 72 6f 76 69 64 65 20 27    6c 65 64 67 65 72 2d 6e 61 76 69 67 61 74 65 29  | )))...(provide.'ledger-navigate) | 
| e9c0 |  0a 0a 3b 3b 3b 20 6c 65 64 67 65 72 2d 6e 61 76    69 67 61 74 65 2e 65 6c 20 65 6e 64 73 20 68 65  | ..;;;.ledger-navigate.el.ends.he | 
| e9e0 |  72 65 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  | re.............................. | 
| ea00 |  6c 65 64 67 65 72 2d 6d 6f 64 65 2d 32 30 32 34    30 34 31 36 2e 34 31 36 2f 6c 65 64 67 65 72 2d  | ledger-mode-20240416.416/ledger- | 
| ea20 |  69 6e 69 74 2e 65 6c 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | init.el......................... | 
| ea40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| ea60 |  00 00 00 00 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 | 
| ea80 |  30 30 30 37 32 37 37 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 35 36 35 34 00 20 30 00 00 00  | 0007277.00000000000.015654..0... | 
| eaa0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| eac0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| eae0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| eb00 |  00 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................... | 
| eb20 |  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................... | 
| eb40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| eb60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| eb80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| eba0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| ebc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| ebe0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| ec00 |  3b 3b 3b 20 6c 65 64 67 65 72 2d 69 6e 69 74 2e    65 6c 20 2d 2d 2d 20 48 65 6c 70 65 72 20 63 6f  | ;;;.ledger-init.el.---.Helper.co | 
| ec20 |  64 65 20 66 6f 72 20 75 73 65 20 77 69 74 68 20    74 68 65 20 22 6c 65 64 67 65 72 22 20 63 6f 6d  | de.for.use.with.the."ledger".com | 
| ec40 |  6d 61 6e 64 2d 6c 69 6e 65 20 74 6f 6f 6c 20 20    2d 2a 2d 20 6c 65 78 69 63 61 6c 2d 62 69 6e 64  | mand-line.tool..-*-.lexical-bind | 
| ec60 |  69 6e 67 3a 20 74 3b 20 2d 2a 2d 0a 0a 3b 3b 20    43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30  | ing:.t;.-*-..;;.Copyright.(C).20 | 
| ec80 |  30 33 2d 32 30 31 36 20 4a 6f 68 6e 20 57 69 65    67 6c 65 79 20 28 6a 6f 68 6e 77 20 41 54 20 67  | 03-2016.John.Wiegley.(johnw.AT.g | 
| eca0 |  6e 75 20 44 4f 54 20 6f 72 67 29 0a 0a 3b 3b 20    54 68 69 73 20 66 69 6c 65 20 69 73 20 6e 6f 74  | nu.DOT.org)..;;.This.file.is.not | 
| ecc0 |  20 70 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 69 73 20  | .part.of.GNU.Emacs...;;.This.is. | 
| ece0 |  66 72 65 65 20 73 6f 66 74 77 61 72 65 3b 20 79    6f 75 20 63 61 6e 20 72 65 64 69 73 74 72 69 62  | free.software;.you.can.redistrib | 
| ed00 |  75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f    64 69 66 79 20 69 74 20 75 6e 64 65 72 0a 3b 3b  | ute.it.and/or.modify.it.under.;; | 
| ed20 |  20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68    65 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75  | .the.terms.of.the.GNU.General.Pu | 
| ed40 |  62 6c 69 63 20 4c 69 63 65 6e 73 65 20 61 73 20    70 75 62 6c 69 73 68 65 64 20 62 79 20 74 68 65  | blic.License.as.published.by.the | 
| ed60 |  20 46 72 65 65 0a 3b 3b 20 53 6f 66 74 77 61 72    65 20 46 6f 75 6e 64 61 74 69 6f 6e 3b 20 65 69  | .Free.;;.Software.Foundation;.ei | 
| ed80 |  74 68 65 72 20 76 65 72 73 69 6f 6e 20 32 2c 20    6f 72 20 28 61 74 20 79 6f 75 72 20 6f 70 74 69  | ther.version.2,.or.(at.your.opti | 
| eda0 |  6f 6e 29 20 61 6e 79 20 6c 61 74 65 72 0a 3b 3b    20 76 65 72 73 69 6f 6e 2e 0a 3b 3b 0a 3b 3b 20  | on).any.later.;;.version..;;.;;. | 
| edc0 |  54 68 69 73 20 69 73 20 64 69 73 74 72 69 62 75    74 65 64 20 69 6e 20 74 68 65 20 68 6f 70 65 20  | This.is.distributed.in.the.hope. | 
| ede0 |  74 68 61 74 20 69 74 20 77 69 6c 6c 20 62 65 20    75 73 65 66 75 6c 2c 20 62 75 74 20 57 49 54 48  | that.it.will.be.useful,.but.WITH | 
| ee00 |  4f 55 54 0a 3b 3b 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  | OUT.;;.ANY.WARRANTY;.without.eve | 
| ee20 |  6e 20 74 68 65 20 69 6d 70 6c 69 65 64 20 77 61    72 72 61 6e 74 79 20 6f 66 20 4d 45 52 43 48 41  | n.the.implied.warranty.of.MERCHA | 
| ee40 |  4e 54 41 42 49 4c 49 54 59 20 6f 72 0a 3b 3b 20    46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41  | NTABILITY.or.;;.FITNESS.FOR.A.PA | 
| ee60 |  52 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45    2e 20 20 53 65 65 20 74 68 65 20 47 4e 55 20 47  | RTICULAR.PURPOSE...See.the.GNU.G | 
| ee80 |  65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69    63 65 6e 73 65 0a 3b 3b 20 66 6f 72 20 6d 6f 72  | eneral.Public.License.;;.for.mor | 
| eea0 |  65 20 64 65 74 61 69 6c 73 2e 0a 3b 3b 0a 3b 3b    20 59 6f 75 20 73 68 6f 75 6c 64 20 68 61 76 65  | e.details..;;.;;.You.should.have | 
| eec0 |  20 72 65 63 65 69 76 65 64 20 61 20 63 6f 70 79    20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65  | .received.a.copy.of.the.GNU.Gene | 
| eee0 |  72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e    73 65 0a 3b 3b 20 61 6c 6f 6e 67 20 77 69 74 68  | ral.Public.License.;;.along.with | 
| ef00 |  20 47 4e 55 20 45 6d 61 63 73 3b 20 73 65 65 20    74 68 65 20 66 69 6c 65 20 43 4f 50 59 49 4e 47  | .GNU.Emacs;.see.the.file.COPYING | 
| ef20 |  2e 20 20 49 66 20 6e 6f 74 2c 20 77 72 69 74 65    20 74 6f 20 74 68 65 0a 3b 3b 20 46 72 65 65 20  | ...If.not,.write.to.the.;;.Free. | 
| ef40 |  53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61 74    69 6f 6e 2c 20 49 6e 63 2e 2c 20 35 31 20 46 72  | Software.Foundation,.Inc.,.51.Fr | 
| ef60 |  61 6e 6b 6c 69 6e 20 53 74 72 65 65 74 2c 20 46    69 66 74 68 20 46 6c 6f 6f 72 2c 20 42 6f 73 74  | anklin.Street,.Fifth.Floor,.Bost | 
| ef80 |  6f 6e 2c 0a 3b 3b 20 4d 41 20 30 32 31 31 30 2d    31 33 30 31 20 55 53 41 2e 0a 0a 3b 3b 3b 20 43  | on,.;;.MA.02110-1301.USA...;;;.C | 
| efa0 |  6f 6d 6d 65 6e 74 61 72 79 3a 0a 3b 3b 20 44 65    74 65 72 6d 69 6e 65 20 74 68 65 20 6c 65 64 67  | ommentary:.;;.Determine.the.ledg | 
| efc0 |  65 72 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 0a 0a    28 72 65 71 75 69 72 65 20 27 6c 65 64 67 65 72  | er.environment..(require.'ledger | 
| efe0 |  2d 72 65 67 65 78 29 0a 0a 3b 3b 3b 20 43 6f 64    65 3a 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6c  | -regex)..;;;.Code:..(defcustom.l | 
| f000 |  65 64 67 65 72 2d 69 6e 69 74 2d 66 69 6c 65 2d    6e 61 6d 65 20 22 7e 2f 2e 6c 65 64 67 65 72 72  | edger-init-file-name."~/.ledgerr | 
| f020 |  63 22 0a 20 20 22 4c 6f 63 61 74 69 6f 6e 20 6f    66 20 74 68 65 20 6c 65 64 67 65 72 20 69 6e 69  | c"..."Location.of.the.ledger.ini | 
| f040 |  74 69 61 6c 69 7a 61 74 69 6f 6e 20 66 69 6c 65    2e 20 20 6e 69 6c 20 69 66 20 79 6f 75 20 64 6f  | tialization.file...nil.if.you.do | 
| f060 |  6e 27 74 20 68 61 76 65 20 6f 6e 65 2e 22 0a 20    20 3a 74 79 70 65 20 27 28 63 68 6f 69 63 65 20  | n't.have.one."...:type.'(choice. | 
| f080 |  28 63 6f 6e 73 74 20 3a 74 61 67 20 22 44 6f 20    6e 6f 74 20 72 65 61 64 20 6c 65 64 67 65 72 20  | (const.:tag."Do.not.read.ledger. | 
| f0a0 |  69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e 20 66    69 6c 65 22 20 6e 69 6c 29 0a 20 20 20 20 20 20  | initialization.file".nil)....... | 
| f0c0 |  20 20 20 20 20 20 20 20 20 20 20 66 69 6c 65 29    0a 20 20 3a 67 72 6f 75 70 20 27 6c 65 64 67 65  | ...........file)...:group.'ledge | 
| f0e0 |  72 2d 65 78 65 63 29 0a 0a 28 64 65 66 76 61 72    20 6c 65 64 67 65 72 2d 65 6e 76 69 72 6f 6e 6d  | r-exec)..(defvar.ledger-environm | 
| f100 |  65 6e 74 2d 61 6c 69 73 74 20 6e 69 6c 0a 20 20    22 56 61 72 69 61 62 6c 65 20 74 6f 20 68 6f 6c  | ent-alist.nil..."Variable.to.hol | 
| f120 |  64 20 64 65 74 61 69 6c 73 20 61 62 6f 75 74 20    6c 65 64 67 65 72 2d 6d 6f 64 65 27 73 20 65 6e  | d.details.about.ledger-mode's.en | 
| f140 |  76 69 72 6f 6e 6d 65 6e 74 2e 0a 0a 41 64 64 69    6e 67 20 74 68 65 20 64 6f 74 74 65 64 20 70 61  | vironment...Adding.the.dotted.pa | 
| f160 |  69 72 20 28 5c 22 64 65 63 69 6d 61 6c 2d 63 6f    6d 6d 61 5c 22 20 2e 20 74 29 20 77 69 6c 6c 20  | ir.(\"decimal-comma\"...t).will. | 
| f180 |  74 65 6c 6c 20 6c 65 64 67 65 72 0a 74 6f 20 74    72 65 61 74 20 63 6f 6d 6d 61 73 20 61 73 20 64  | tell.ledger.to.treat.commas.as.d | 
| f1a0 |  65 63 69 6d 61 6c 20 73 65 70 61 72 61 74 6f 72    2e 0a 0a 54 68 69 73 20 76 61 72 69 61 62 6c 65  | ecimal.separator...This.variable | 
| f1c0 |  20 69 73 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c    79 20 70 6f 70 75 6c 61 74 65 64 20 62 79 0a 60  | .is.automatically.populated.by.` | 
| f1e0 |  6c 65 64 67 65 72 2d 69 6e 69 74 2d 6c 6f 61 64    2d 69 6e 69 74 2d 66 69 6c 65 27 2c 20 77 68 69  | ledger-init-load-init-file',.whi | 
| f200 |  63 68 20 69 73 20 63 61 6c 6c 65 64 20 69 6e 20    74 68 65 20 62 6f 64 79 20 6f 66 0a 60 6c 65 64  | ch.is.called.in.the.body.of.`led | 
| f220 |  67 65 72 2d 6d 6f 64 65 27 2e 22 29 0a 0a 28 64    65 66 63 6f 6e 73 74 20 6c 65 64 67 65 72 2d 69  | ger-mode'.")..(defconst.ledger-i | 
| f240 |  73 6f 2d 64 61 74 65 2d 66 6f 72 6d 61 74 20 22    25 59 2d 25 6d 2d 25 64 22 0a 20 20 22 54 68 65  | so-date-format."%Y-%m-%d"..."The | 
| f260 |  20 66 6f 72 6d 61 74 20 66 6f 72 20 49 53 4f 20    38 36 30 31 20 64 61 74 65 73 2e 22 29 0a 0a 28  | .format.for.ISO.8601.dates.")..( | 
| f280 |  64 65 66 63 75 73 74 6f 6d 20 6c 65 64 67 65 72    2d 64 65 66 61 75 6c 74 2d 64 61 74 65 2d 66 6f  | defcustom.ledger-default-date-fo | 
| f2a0 |  72 6d 61 74 20 22 25 59 2f 25 6d 2f 25 64 22 0a    20 20 22 54 68 65 20 64 61 74 65 20 66 6f 72 6d  | rmat."%Y/%m/%d"..."The.date.form | 
| f2c0 |  61 74 20 74 68 61 74 20 6c 65 64 67 65 72 20 75    73 65 73 20 74 68 72 6f 75 67 68 6f 75 74 2e 0a  | at.that.ledger.uses.throughout.. | 
| f2e0 |  53 65 74 20 74 68 69 73 20 74 6f 20 74 68 65 20    76 61 6c 75 65 20 6f 66 20 60 6c 65 64 67 65 72  | Set.this.to.the.value.of.`ledger | 
| f300 |  2d 69 73 6f 2d 64 61 74 65 2d 66 6f 72 6d 61 74    27 20 69 66 20 79 6f 75 20 70 72 65 66 65 72 0a  | -iso-date-format'.if.you.prefer. | 
| f320 |  49 53 4f 20 38 36 30 31 20 64 61 74 65 73 2e 22    0a 20 20 3a 74 79 70 65 20 27 73 74 72 69 6e 67  | ISO.8601.dates."...:type.'string | 
| f340 |  0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73    69 6f 6e 20 27 28 6c 65 64 67 65 72 2d 6d 6f 64  | ...:package-version.'(ledger-mod | 
| f360 |  65 20 2e 20 22 34 2e 30 2e 30 22 29 0a 20 20 3a    67 72 6f 75 70 20 27 6c 65 64 67 65 72 29 0a 0a  | e..."4.0.0")...:group.'ledger).. | 
| f380 |  28 64 65 66 75 6e 20 6c 65 64 67 65 72 2d 66 6f    72 6d 61 74 2d 64 61 74 65 20 28 26 6f 70 74 69  | (defun.ledger-format-date.(&opti | 
| f3a0 |  6f 6e 61 6c 20 64 61 74 65 20 66 6f 72 6d 61 74    29 0a 20 20 22 46 6f 72 6d 61 74 20 44 41 54 45  | onal.date.format)..."Format.DATE | 
| f3c0 |  20 61 63 63 6f 72 64 69 6e 67 20 74 6f 20 74 68    65 20 63 75 72 72 65 6e 74 20 70 72 65 66 65 72  | .according.to.the.current.prefer | 
| f3e0 |  72 65 64 20 64 61 74 65 20 66 6f 72 6d 61 74 2e    0a 52 65 74 75 72 6e 73 20 74 68 65 20 63 75 72  | red.date.format..Returns.the.cur | 
| f400 |  72 65 6e 74 20 64 61 74 65 20 69 66 20 44 41 54    45 20 69 73 20 6e 69 6c 20 6f 72 20 6e 6f 74 20  | rent.date.if.DATE.is.nil.or.not. | 
| f420 |  73 75 70 70 6c 69 65 64 2e 0a 0a 49 66 20 46 4f    52 4d 41 54 20 69 73 20 70 72 6f 76 69 64 65 64  | supplied...If.FORMAT.is.provided | 
| f440 |  2c 20 75 73 65 20 74 68 61 74 20 61 73 20 74 68    65 20 64 61 74 65 20 66 6f 72 6d 61 74 2e 20 20  | ,.use.that.as.the.date.format... | 
| f460 |  4f 74 68 65 72 77 69 73 65 2c 0a 75 73 65 20 74    68 65 20 2d 2d 69 6e 70 75 74 2d 64 61 74 65 2d  | Otherwise,.use.the.--input-date- | 
| f480 |  66 6f 72 6d 61 74 20 73 70 65 63 69 66 69 65 64    20 69 6e 20 60 6c 65 64 67 65 72 2d 69 6e 69 74  | format.specified.in.`ledger-init | 
| f4a0 |  2d 66 69 6c 65 2d 6e 61 6d 65 27 2c 0a 6f 72 20    69 66 20 6e 6f 6e 65 2c 20 75 73 65 20 60 6c 65  | -file-name',.or.if.none,.use.`le | 
| f4c0 |  64 67 65 72 2d 64 65 66 61 75 6c 74 2d 64 61 74    65 2d 66 6f 72 6d 61 74 27 2e 22 0a 20 20 28 66  | dger-default-date-format'."...(f | 
| f4e0 |  6f 72 6d 61 74 2d 74 69 6d 65 2d 73 74 72 69 6e    67 0a 20 20 20 28 6f 72 20 66 6f 72 6d 61 74 0a  | ormat-time-string....(or.format. | 
| f500 |  20 20 20 20 20 20 20 28 63 64 72 20 28 61 73 73    6f 63 20 22 69 6e 70 75 74 2d 64 61 74 65 2d 66  | .......(cdr.(assoc."input-date-f | 
| f520 |  6f 72 6d 61 74 22 20 6c 65 64 67 65 72 2d 65 6e    76 69 72 6f 6e 6d 65 6e 74 2d 61 6c 69 73 74 29  | ormat".ledger-environment-alist) | 
| f540 |  29 0a 20 20 20 20 20 20 20 6c 65 64 67 65 72 2d    64 65 66 61 75 6c 74 2d 64 61 74 65 2d 66 6f 72  | )........ledger-default-date-for | 
| f560 |  6d 61 74 29 0a 20 20 20 64 61 74 65 29 29 0a 0a    0a 28 64 65 66 75 6e 20 6c 65 64 67 65 72 2d 69  | mat)....date))...(defun.ledger-i | 
| f580 |  6e 69 74 2d 70 61 72 73 65 2d 69 6e 69 74 69 61    6c 69 7a 61 74 69 6f 6e 20 28 62 75 66 66 65 72  | nit-parse-initialization.(buffer | 
| f5a0 |  29 0a 20 20 22 50 61 72 73 65 20 74 68 65 20 2e    6c 65 64 67 65 72 72 63 20 66 69 6c 65 20 69 6e  | )..."Parse.the..ledgerrc.file.in | 
| f5c0 |  20 42 55 46 46 45 52 2e 22 0a 20 20 28 77 69 74    68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72  | .BUFFER."...(with-current-buffer | 
| f5e0 |  20 62 75 66 66 65 72 0a 20 20 20 20 28 6c 65 74    20 28 65 6e 76 69 72 6f 6e 6d 65 6e 74 2d 61 6c  | .buffer.....(let.(environment-al | 
| f600 |  69 73 74 29 0a 20 20 20 20 20 20 28 67 6f 74 6f    2d 63 68 61 72 20 28 70 6f 69 6e 74 2d 6d 69 6e  | ist).......(goto-char.(point-min | 
| f620 |  29 29 0a 20 20 20 20 20 20 28 77 68 69 6c 65 20    28 72 65 2d 73 65 61 72 63 68 2d 66 6f 72 77 61  | )).......(while.(re-search-forwa | 
| f640 |  72 64 20 6c 65 64 67 65 72 2d 69 6e 69 74 2d 73    74 72 69 6e 67 2d 72 65 67 65 78 20 6e 69 6c 20  | rd.ledger-init-string-regex.nil. | 
| f660 |  74 29 0a 20 20 20 20 20 20 20 20 28 6c 65 74 20    28 28 6d 61 74 63 68 62 20 28 6d 61 74 63 68 2d  | t).........(let.((matchb.(match- | 
| f680 |  62 65 67 69 6e 6e 69 6e 67 20 30 29 29 20 3b 3b    20 73 61 76 65 20 74 68 65 20 6d 61 74 63 68 20  | beginning.0)).;;.save.the.match. | 
| f6a0 |  64 61 74 61 2c 20 73 74 72 69 6e 67 2d 6d 61 74    63 68 20 73 74 61 6d 70 20 6f 6e 20 69 74 0a 20  | data,.string-match.stamp.on.it.. | 
| f6c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 61    74 63 68 65 20 28 6d 61 74 63 68 2d 65 6e 64 20  | .............(matche.(match-end. | 
| f6e0 |  30 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28    65 6e 64 2d 6f 66 2d 6c 69 6e 65 29 0a 20 20 20  | 0)))...........(end-of-line).... | 
| f700 |  20 20 20 20 20 20 20 28 70 75 73 68 20 28 63 6f    6e 73 20 28 6c 65 74 20 28 28 66 6c 61 67 20 28  | .......(push.(cons.(let.((flag.( | 
| f720 |  62 75 66 66 65 72 2d 73 75 62 73 74 72 69 6e 67    2d 6e 6f 2d 70 72 6f 70 65 72 74 69 65 73 20 28  | buffer-substring-no-properties.( | 
| f740 |  2b 20 32 20 6d 61 74 63 68 62 29 20 6d 61 74 63    68 65 29 29 29 0a 20 20 20 20 20 20 20 20 20 20  | +.2.matchb).matche)))........... | 
| f760 |  20 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 6d 61 74 63 68 20  | ..............(if.(string-match. | 
| f780 |  22 5b 20 5c 74 5c 6e 5c 72 5d 2b 5c 5c 27 22 20    66 6c 61 67 29 0a 20 20 20 20 20 20 20 20 20 20  | "[.\t\n\r]+\\'".flag)........... | 
| f7a0 |  20 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 6d 61 74 63 68  | ..................(replace-match | 
| f7c0 |  20 22 22 20 74 20 74 20 66 6c 61 67 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ."".t.t.flag)................... | 
| f7e0 |  20 20 20 20 20 20 20 20 66 6c 61 67 29 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ........flag)).................. | 
| f800 |  20 20 20 20 20 28 6c 65 74 20 28 28 76 61 6c 75    65 20 28 62 75 66 66 65 72 2d 73 75 62 73 74 72  | .....(let.((value.(buffer-substr | 
| f820 |  69 6e 67 2d 6e 6f 2d 70 72 6f 70 65 72 74 69 65    73 20 6d 61 74 63 68 65 20 28 70 6f 69 6e 74 29  | ing-no-properties.matche.(point) | 
| f840 |  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 28 69 66 20  | ))).........................(if. | 
| f860 |  28 3e 20 28 6c 65 6e 67 74 68 20 76 61 6c 75 65    29 20 30 29 0a 20 20 20 20 20 20 20 20 20 20 20  | (>.(length.value).0)............ | 
| f880 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 76 61 6c 75 65 0a 20 20 20 20 20 20 20 20 20  | .................value.......... | 
| f8a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 74 29 29 29 0a 20 20 20 20 20 20 20 20 20 20  | .................t)))........... | 
| f8c0 |  20 20 20 20 20 20 65 6e 76 69 72 6f 6e 6d 65 6e    74 2d 61 6c 69 73 74 29 29 29 0a 20 20 20 20 20  | ......environment-alist)))...... | 
| f8e0 |  20 28 6e 72 65 76 65 72 73 65 20 65 6e 76 69 72    6f 6e 6d 65 6e 74 2d 61 6c 69 73 74 29 29 29 29  | .(nreverse.environment-alist)))) | 
| f900 |  0a 0a 28 64 65 66 75 6e 20 6c 65 64 67 65 72 2d    69 6e 69 74 2d 6c 6f 61 64 2d 69 6e 69 74 2d 66  | ..(defun.ledger-init-load-init-f | 
| f920 |  69 6c 65 20 28 29 0a 20 20 22 4c 6f 61 64 20 61    6e 64 20 70 61 72 73 65 20 74 68 65 20 2e 6c 65  | ile.()..."Load.and.parse.the..le | 
| f940 |  64 67 65 72 72 63 20 66 69 6c 65 20 69 6e 74 6f    20 60 6c 65 64 67 65 72 2d 65 6e 76 69 72 6f 6e  | dgerrc.file.into.`ledger-environ | 
| f960 |  6d 65 6e 74 2d 61 6c 69 73 74 27 2e 22 0a 20 20    28 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20  | ment-alist'."...(interactive)... | 
| f980 |  28 77 68 65 6e 20 28 61 6e 64 20 6c 65 64 67 65    72 2d 69 6e 69 74 2d 66 69 6c 65 2d 6e 61 6d 65  | (when.(and.ledger-init-file-name | 
| f9a0 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 66    69 6c 65 2d 72 65 61 64 61 62 6c 65 2d 70 20 6c  | ..............(file-readable-p.l | 
| f9c0 |  65 64 67 65 72 2d 69 6e 69 74 2d 66 69 6c 65 2d    6e 61 6d 65 29 29 0a 20 20 20 20 28 77 69 74 68  | edger-init-file-name)).....(with | 
| f9e0 |  2d 74 65 6d 70 2d 62 75 66 66 65 72 0a 20 20 20    20 20 20 28 69 6e 73 65 72 74 2d 66 69 6c 65 2d  | -temp-buffer.......(insert-file- | 
| fa00 |  63 6f 6e 74 65 6e 74 73 20 6c 65 64 67 65 72 2d    69 6e 69 74 2d 66 69 6c 65 2d 6e 61 6d 65 29 0a  | contents.ledger-init-file-name). | 
| fa20 |  20 20 20 20 20 20 28 73 65 74 71 20 6c 65 64 67    65 72 2d 65 6e 76 69 72 6f 6e 6d 65 6e 74 2d 61  | ......(setq.ledger-environment-a | 
| fa40 |  6c 69 73 74 0a 20 20 20 20 20 20 20 20 20 20 20    20 28 6c 65 64 67 65 72 2d 69 6e 69 74 2d 70 61  | list.............(ledger-init-pa | 
| fa60 |  72 73 65 2d 69 6e 69 74 69 61 6c 69 7a 61 74 69    6f 6e 20 28 63 75 72 72 65 6e 74 2d 62 75 66 66  | rse-initialization.(current-buff | 
| fa80 |  65 72 29 29 29 29 29 29 0a 0a 28 70 72 6f 76 69    64 65 20 27 6c 65 64 67 65 72 2d 69 6e 69 74 29  | er))))))..(provide.'ledger-init) | 
| faa0 |  0a 0a 3b 3b 3b 20 6c 65 64 67 65 72 2d 69 6e 69    74 2e 65 6c 20 65 6e 64 73 20 68 65 72 65 0a 00  | ..;;;.ledger-init.el.ends.here.. | 
| fac0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| fae0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| fb00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| fb20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| fb40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| fb60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| fb80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| fba0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| fbc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| fbe0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| fc00 |  6c 65 64 67 65 72 2d 6d 6f 64 65 2d 32 30 32 34    30 34 31 36 2e 34 31 36 2f 6c 65 64 67 65 72 2d  | ledger-mode-20240416.416/ledger- | 
| fc20 |  78 61 63 74 2e 65 6c 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | xact.el......................... | 
| fc40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| fc60 |  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 | 
| fc80 |  30 30 32 31 35 35 35 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 35 36 34 33 00 20 30 00 00 00  | 0021555.00000000000.015643..0... | 
| fca0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| fcc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| fce0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| fd00 |  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................... | 
| fd20 |  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................... | 
| fd40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| fd60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| fd80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| fda0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| fdc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| fde0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| fe00 |  3b 3b 3b 20 6c 65 64 67 65 72 2d 78 61 63 74 2e    65 6c 20 2d 2d 2d 20 48 65 6c 70 65 72 20 63 6f  | ;;;.ledger-xact.el.---.Helper.co | 
| fe20 |  64 65 20 66 6f 72 20 75 73 65 20 77 69 74 68 20    74 68 65 20 22 6c 65 64 67 65 72 22 20 63 6f 6d  | de.for.use.with.the."ledger".com | 
| fe40 |  6d 61 6e 64 2d 6c 69 6e 65 20 74 6f 6f 6c 20 20    2d 2a 2d 20 6c 65 78 69 63 61 6c 2d 62 69 6e 64  | mand-line.tool..-*-.lexical-bind | 
| fe60 |  69 6e 67 3a 20 74 3b 20 2d 2a 2d 0a 0a 3b 3b 20    43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30  | ing:.t;.-*-..;;.Copyright.(C).20 | 
| fe80 |  30 33 2d 32 30 31 36 20 4a 6f 68 6e 20 57 69 65    67 6c 65 79 20 28 6a 6f 68 6e 77 20 41 54 20 67  | 03-2016.John.Wiegley.(johnw.AT.g | 
| fea0 |  6e 75 20 44 4f 54 20 6f 72 67 29 0a 0a 3b 3b 20    54 68 69 73 20 66 69 6c 65 20 69 73 20 6e 6f 74  | nu.DOT.org)..;;.This.file.is.not | 
| fec0 |  20 70 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 69 73 20  | .part.of.GNU.Emacs...;;.This.is. | 
| fee0 |  66 72 65 65 20 73 6f 66 74 77 61 72 65 3b 20 79    6f 75 20 63 61 6e 20 72 65 64 69 73 74 72 69 62  | free.software;.you.can.redistrib | 
| ff00 |  75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f    64 69 66 79 20 69 74 20 75 6e 64 65 72 0a 3b 3b  | ute.it.and/or.modify.it.under.;; | 
| ff20 |  20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68    65 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75  | .the.terms.of.the.GNU.General.Pu | 
| ff40 |  62 6c 69 63 20 4c 69 63 65 6e 73 65 20 61 73 20    70 75 62 6c 69 73 68 65 64 20 62 79 20 74 68 65  | blic.License.as.published.by.the | 
| ff60 |  20 46 72 65 65 0a 3b 3b 20 53 6f 66 74 77 61 72    65 20 46 6f 75 6e 64 61 74 69 6f 6e 3b 20 65 69  | .Free.;;.Software.Foundation;.ei | 
| ff80 |  74 68 65 72 20 76 65 72 73 69 6f 6e 20 32 2c 20    6f 72 20 28 61 74 20 79 6f 75 72 20 6f 70 74 69  | ther.version.2,.or.(at.your.opti | 
| ffa0 |  6f 6e 29 20 61 6e 79 20 6c 61 74 65 72 0a 3b 3b    20 76 65 72 73 69 6f 6e 2e 0a 3b 3b 0a 3b 3b 20  | on).any.later.;;.version..;;.;;. | 
| ffc0 |  54 68 69 73 20 69 73 20 64 69 73 74 72 69 62 75    74 65 64 20 69 6e 20 74 68 65 20 68 6f 70 65 20  | This.is.distributed.in.the.hope. | 
| ffe0 |  74 68 61 74 20 69 74 20 77 69 6c 6c 20 62 65 20    75 73 65 66 75 6c 2c 20 62 75 74 20 57 49 54 48  | that.it.will.be.useful,.but.WITH | 
| 10000 |  4f 55 54 0a 3b 3b 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  | OUT.;;.ANY.WARRANTY;.without.eve | 
| 10020 |  6e 20 74 68 65 20 69 6d 70 6c 69 65 64 20 77 61    72 72 61 6e 74 79 20 6f 66 20 4d 45 52 43 48 41  | n.the.implied.warranty.of.MERCHA | 
| 10040 |  4e 54 41 42 49 4c 49 54 59 20 6f 72 0a 3b 3b 20    46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41  | NTABILITY.or.;;.FITNESS.FOR.A.PA | 
| 10060 |  52 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45    2e 20 20 53 65 65 20 74 68 65 20 47 4e 55 20 47  | RTICULAR.PURPOSE...See.the.GNU.G | 
| 10080 |  65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69    63 65 6e 73 65 0a 3b 3b 20 66 6f 72 20 6d 6f 72  | eneral.Public.License.;;.for.mor | 
| 100a0 |  65 20 64 65 74 61 69 6c 73 2e 0a 3b 3b 0a 3b 3b    20 59 6f 75 20 73 68 6f 75 6c 64 20 68 61 76 65  | e.details..;;.;;.You.should.have | 
| 100c0 |  20 72 65 63 65 69 76 65 64 20 61 20 63 6f 70 79    20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65  | .received.a.copy.of.the.GNU.Gene | 
| 100e0 |  72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e    73 65 0a 3b 3b 20 61 6c 6f 6e 67 20 77 69 74 68  | ral.Public.License.;;.along.with | 
| 10100 |  20 47 4e 55 20 45 6d 61 63 73 3b 20 73 65 65 20    74 68 65 20 66 69 6c 65 20 43 4f 50 59 49 4e 47  | .GNU.Emacs;.see.the.file.COPYING | 
| 10120 |  2e 20 20 49 66 20 6e 6f 74 2c 20 77 72 69 74 65    20 74 6f 20 74 68 65 0a 3b 3b 20 46 72 65 65 20  | ...If.not,.write.to.the.;;.Free. | 
| 10140 |  53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61 74    69 6f 6e 2c 20 49 6e 63 2e 2c 20 35 31 20 46 72  | Software.Foundation,.Inc.,.51.Fr | 
| 10160 |  61 6e 6b 6c 69 6e 20 53 74 72 65 65 74 2c 20 46    69 66 74 68 20 46 6c 6f 6f 72 2c 20 42 6f 73 74  | anklin.Street,.Fifth.Floor,.Bost | 
| 10180 |  6f 6e 2c 0a 3b 3b 20 4d 41 20 30 32 31 31 30 2d    31 33 30 31 20 55 53 41 2e 0a 0a 0a 3b 3b 3b 20  | on,.;;.MA.02110-1301.USA....;;;. | 
| 101a0 |  43 6f 6d 6d 65 6e 74 61 72 79 3a 0a 3b 3b 20 55    74 69 6c 69 74 69 65 73 20 66 6f 72 20 72 75 6e  | Commentary:.;;.Utilities.for.run | 
| 101c0 |  6e 69 6e 67 20 6c 65 64 67 65 72 20 73 79 6e 63    68 72 6f 6e 6f 75 73 6c 79 2e 0a 0a 3b 3b 3b 20  | ning.ledger.synchronously...;;;. | 
| 101e0 |  43 6f 64 65 3a 0a 0a 28 72 65 71 75 69 72 65 20    27 65 73 68 65 6c 6c 29 0a 28 72 65 71 75 69 72  | Code:..(require.'eshell).(requir | 
| 10200 |  65 20 27 6c 65 64 67 65 72 2d 72 65 67 65 78 29    0a 28 72 65 71 75 69 72 65 20 27 6c 65 64 67 65  | e.'ledger-regex).(require.'ledge | 
| 10220 |  72 2d 6e 61 76 69 67 61 74 65 29 0a 28 72 65 71    75 69 72 65 20 27 6c 65 64 67 65 72 2d 65 78 65  | r-navigate).(require.'ledger-exe | 
| 10240 |  63 29 0a 28 72 65 71 75 69 72 65 20 27 6c 65 64    67 65 72 2d 70 6f 73 74 29 0a 28 64 65 63 6c 61  | c).(require.'ledger-post).(decla | 
| 10260 |  72 65 2d 66 75 6e 63 74 69 6f 6e 20 6c 65 64 67    65 72 2d 72 65 61 64 2d 64 61 74 65 20 22 6c 65  | re-function.ledger-read-date."le | 
| 10280 |  64 67 65 72 2d 6d 6f 64 65 22 20 28 70 72 6f 6d    70 74 29 29 0a 0a 3b 3b 20 54 4f 44 4f 3a 20 54  | dger-mode".(prompt))..;;.TODO:.T | 
| 102a0 |  68 69 73 20 66 69 6c 65 20 64 65 70 65 6e 64 73    20 6f 6e 20 63 6f 64 65 20 69 6e 20 6c 65 64 67  | his.file.depends.on.code.in.ledg | 
| 102c0 |  65 72 2d 6d 6f 64 65 2e 65 6c 2c 20 77 68 69 63    68 20 64 65 70 65 6e 64 73 20 6f 6e 20 74 68 69  | er-mode.el,.which.depends.on.thi | 
| 102e0 |  73 2e 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6c    65 64 67 65 72 2d 68 69 67 68 6c 69 67 68 74 2d  | s...(defcustom.ledger-highlight- | 
| 10300 |  78 61 63 74 2d 75 6e 64 65 72 2d 70 6f 69 6e 74    20 74 0a 20 20 22 49 66 20 74 20 68 69 67 68 6c  | xact-under-point.t..."If.t.highl | 
| 10320 |  69 67 68 74 20 78 61 63 74 20 75 6e 64 65 72 20    70 6f 69 6e 74 2e 22 0a 20 20 3a 74 79 70 65 20  | ight.xact.under.point."...:type. | 
| 10340 |  27 62 6f 6f 6c 65 61 6e 0a 20 20 3a 67 72 6f 75    70 20 27 6c 65 64 67 65 72 29 0a 0a 28 64 65 66  | 'boolean...:group.'ledger)..(def | 
| 10360 |  63 75 73 74 6f 6d 20 6c 65 64 67 65 72 2d 61 64    64 2d 74 72 61 6e 73 61 63 74 69 6f 6e 2d 70 72  | custom.ledger-add-transaction-pr | 
| 10380 |  6f 6d 70 74 2d 66 6f 72 2d 74 65 78 74 20 74 0a    20 20 22 57 68 65 6e 20 6e 6f 6e 2d 6e 69 6c 2c  | ompt-for-text.t..."When.non-nil, | 
| 103a0 |  20 75 73 65 20 6c 65 64 67 65 72 20 78 61 63 74    20 74 6f 20 66 6f 72 6d 61 74 20 74 72 61 6e 73  | .use.ledger.xact.to.format.trans | 
| 103c0 |  61 63 74 69 6f 6e 2e 0a 57 68 65 6e 20 6e 69 6c    2c 20 60 6c 65 64 67 65 72 2d 61 64 64 2d 74 72  | action..When.nil,.`ledger-add-tr | 
| 103e0 |  61 6e 73 61 63 74 69 6f 6e 27 20 77 69 6c 6c 20    6e 6f 74 20 70 72 6f 6d 70 74 20 74 77 69 63 65  | ansaction'.will.not.prompt.twice | 
| 10400 |  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 | 
| 10420 |  65 72 73 69 6f 6e 20 27 28 6c 65 64 67 65 72 2d    6d 6f 64 65 20 2e 20 22 34 2e 30 2e 31 22 29 0a  | ersion.'(ledger-mode..."4.0.1"). | 
| 10440 |  20 20 3a 67 72 6f 75 70 20 27 6c 65 64 67 65 72    29 0a 0a 28 64 65 66 76 61 72 2d 6c 6f 63 61 6c  | ..:group.'ledger)..(defvar-local | 
| 10460 |  20 6c 65 64 67 65 72 2d 78 61 63 74 2d 68 69 67    68 6c 69 67 68 74 2d 6f 76 65 72 6c 61 79 20 28  | .ledger-xact-highlight-overlay.( | 
| 10480 |  6c 69 73 74 29 29 0a 0a 28 64 65 66 75 6e 20 6c    65 64 67 65 72 2d 68 69 67 68 6c 69 67 68 74 2d  | list))..(defun.ledger-highlight- | 
| 104a0 |  6d 61 6b 65 2d 6f 76 65 72 6c 61 79 20 28 29 0a    20 20 28 6c 65 74 20 28 28 6f 76 6c 20 28 6d 61  | make-overlay.()...(let.((ovl.(ma | 
| 104c0 |  6b 65 2d 6f 76 65 72 6c 61 79 20 31 20 31 29 29    29 0a 20 20 20 20 28 6f 76 65 72 6c 61 79 2d 70  | ke-overlay.1.1))).....(overlay-p | 
| 104e0 |  75 74 20 6f 76 6c 20 27 66 6f 6e 74 2d 6c 6f 63    6b 2d 66 61 63 65 20 27 6c 65 64 67 65 72 2d 66  | ut.ovl.'font-lock-face.'ledger-f | 
| 10500 |  6f 6e 74 2d 78 61 63 74 2d 68 69 67 68 6c 69 67    68 74 2d 66 61 63 65 29 0a 20 20 20 20 28 6f 76  | ont-xact-highlight-face).....(ov | 
| 10520 |  65 72 6c 61 79 2d 70 75 74 20 6f 76 6c 20 27 70    72 69 6f 72 69 74 79 20 27 28 6e 69 6c 20 2e 20  | erlay-put.ovl.'priority.'(nil... | 
| 10540 |  39 39 29 29 0a 20 20 20 20 6f 76 6c 29 29 0a 0a    28 64 65 66 75 6e 20 6c 65 64 67 65 72 2d 68 69  | 99)).....ovl))..(defun.ledger-hi | 
| 10560 |  67 68 6c 69 67 68 74 2d 78 61 63 74 2d 75 6e 64    65 72 2d 70 6f 69 6e 74 20 28 29 0a 20 20 22 4d  | ghlight-xact-under-point.()..."M | 
| 10580 |  6f 76 65 20 74 68 65 20 68 69 67 68 6c 69 67 68    74 20 6f 76 65 72 6c 61 79 20 74 6f 20 74 68 65  | ove.the.highlight.overlay.to.the | 
| 105a0 |  20 63 75 72 72 65 6e 74 20 74 72 61 6e 73 61 63    74 69 6f 6e 2e 22 0a 20 20 28 77 68 65 6e 20 6c  | .current.transaction."...(when.l | 
| 105c0 |  65 64 67 65 72 2d 68 69 67 68 6c 69 67 68 74 2d    78 61 63 74 2d 75 6e 64 65 72 2d 70 6f 69 6e 74  | edger-highlight-xact-under-point | 
| 105e0 |  0a 20 20 20 20 28 75 6e 6c 65 73 73 20 6c 65 64    67 65 72 2d 78 61 63 74 2d 68 69 67 68 6c 69 67  | .....(unless.ledger-xact-highlig | 
| 10600 |  68 74 2d 6f 76 65 72 6c 61 79 0a 20 20 20 20 20    20 28 73 65 74 71 20 6c 65 64 67 65 72 2d 78 61  | ht-overlay.......(setq.ledger-xa | 
| 10620 |  63 74 2d 68 69 67 68 6c 69 67 68 74 2d 6f 76 65    72 6c 61 79 20 28 6c 65 64 67 65 72 2d 68 69 67  | ct-highlight-overlay.(ledger-hig | 
| 10640 |  68 6c 69 67 68 74 2d 6d 61 6b 65 2d 6f 76 65 72    6c 61 79 29 29 29 0a 20 20 20 20 28 6c 65 74 20  | hlight-make-overlay))).....(let. | 
| 10660 |  28 28 65 78 74 73 20 28 6c 65 64 67 65 72 2d 6e    61 76 69 67 61 74 65 2d 66 69 6e 64 2d 65 6c 65  | ((exts.(ledger-navigate-find-ele | 
| 10680 |  6d 65 6e 74 2d 65 78 74 65 6e 74 73 20 28 70 6f    69 6e 74 29 29 29 29 0a 20 20 20 20 20 20 28 6c  | ment-extents.(point)))).......(l | 
| 106a0 |  65 74 20 28 28 62 20 28 63 61 72 20 65 78 74 73    29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28  | et.((b.(car.exts)).............( | 
| 106c0 |  65 20 28 63 61 64 72 20 65 78 74 73 29 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 28 70 20 28 70  | e.(cadr.exts)).............(p.(p | 
| 106e0 |  6f 69 6e 74 29 29 29 0a 20 20 20 20 20 20 20 20    28 69 66 20 28 61 6e 64 20 28 3e 20 28 2d 20 65  | oint))).........(if.(and.(>.(-.e | 
| 10700 |  20 62 29 20 31 29 20 20 20 20 20 20 20 20 20 20    20 20 3b 20 6e 6f 74 20 61 6e 20 65 6d 70 74 79  | .b).1)............;.not.an.empty | 
| 10720 |  20 6c 69 6e 65 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 28 3c 3d 20 70 20 65 29 20  | .line..................(<=.p.e). | 
| 10740 |  28 3e 3d 20 70 20 62 29 20 20 20 20 20 20 20 20    3b 20 70 6f 69 6e 74 20 69 73 20 77 69 74 68 69  | (>=.p.b)........;.point.is.withi | 
| 10760 |  6e 20 74 68 65 20 62 6f 75 6e 64 61 72 69 65 73    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | n.the.boundaries................ | 
| 10780 |  20 20 28 6e 6f 74 20 28 72 65 67 69 6f 6e 2d 61    63 74 69 76 65 2d 70 29 29 29 20 3b 20 6e 6f 20  | ..(not.(region-active-p))).;.no. | 
| 107a0 |  61 63 74 69 76 65 20 72 65 67 69 6f 6e 0a 20 20    20 20 20 20 20 20 20 20 20 20 28 6d 6f 76 65 2d  | active.region.............(move- | 
| 107c0 |  6f 76 65 72 6c 61 79 20 6c 65 64 67 65 72 2d 78    61 63 74 2d 68 69 67 68 6c 69 67 68 74 2d 6f 76  | overlay.ledger-xact-highlight-ov | 
| 107e0 |  65 72 6c 61 79 20 62 20 28 2b 20 31 20 65 29 29    0a 20 20 20 20 20 20 20 20 20 20 28 6d 6f 76 65  | erlay.b.(+.1.e))...........(move | 
| 10800 |  2d 6f 76 65 72 6c 61 79 20 6c 65 64 67 65 72 2d    78 61 63 74 2d 68 69 67 68 6c 69 67 68 74 2d 6f  | -overlay.ledger-xact-highlight-o | 
| 10820 |  76 65 72 6c 61 79 20 31 20 31 29 29 29 29 29 29    0a 0a 28 64 65 66 75 6e 20 6c 65 64 67 65 72 2d  | verlay.1.1))))))..(defun.ledger- | 
| 10840 |  68 69 67 68 6c 69 67 68 74 2d 2d 62 65 66 6f 72    65 2d 72 65 76 65 72 74 20 28 29 0a 20 20 22 43  | highlight--before-revert.()..."C | 
| 10860 |  6c 65 61 6e 20 75 70 20 68 69 67 68 6c 69 67 68    74 69 6e 67 20 6f 76 65 72 6c 61 79 20 62 65 66  | lean.up.highlighting.overlay.bef | 
| 10880 |  6f 72 65 20 72 65 76 65 72 74 69 6e 67 20 62 75    66 66 65 72 2e 22 0a 20 20 28 77 68 65 6e 20 6c  | ore.reverting.buffer."...(when.l | 
| 108a0 |  65 64 67 65 72 2d 78 61 63 74 2d 68 69 67 68 6c    69 67 68 74 2d 6f 76 65 72 6c 61 79 0a 20 20 20  | edger-xact-highlight-overlay.... | 
| 108c0 |  20 28 64 65 6c 65 74 65 2d 6f 76 65 72 6c 61 79    20 6c 65 64 67 65 72 2d 78 61 63 74 2d 68 69 67  | .(delete-overlay.ledger-xact-hig | 
| 108e0 |  68 6c 69 67 68 74 2d 6f 76 65 72 6c 61 79 29 29    29 0a 0a 28 64 65 66 75 6e 20 6c 65 64 67 65 72  | hlight-overlay)))..(defun.ledger | 
| 10900 |  2d 78 61 63 74 2d 63 6f 6e 74 65 78 74 20 28 29    0a 20 20 22 52 65 74 75 72 6e 20 74 68 65 20 63  | -xact-context.()..."Return.the.c | 
| 10920 |  6f 6e 74 65 78 74 20 6f 66 20 74 68 65 20 74 72    61 6e 73 61 63 74 69 6f 6e 20 63 6f 6e 74 61 69  | ontext.of.the.transaction.contai | 
| 10940 |  6e 69 6e 67 20 70 6f 69 6e 74 20 6f 72 20 6e 69    6c 2e 22 0a 20 20 28 6c 65 74 20 28 28 69 20 30  | ning.point.or.nil."...(let.((i.0 | 
| 10960 |  29 29 0a 20 20 20 20 28 77 68 69 6c 65 20 28 65    71 20 28 6c 65 64 67 65 72 2d 63 6f 6e 74 65 78  | )).....(while.(eq.(ledger-contex | 
| 10980 |  74 2d 6c 69 6e 65 2d 74 79 70 65 20 28 6c 65 64    67 65 72 2d 63 6f 6e 74 65 78 74 2d 6f 74 68 65  | t-line-type.(ledger-context-othe | 
| 109a0 |  72 2d 6c 69 6e 65 20 69 29 29 20 27 61 63 63 74    2d 74 72 61 6e 73 61 63 74 69 6f 6e 29 0a 20 20  | r-line.i)).'acct-transaction)... | 
| 109c0 |  20 20 20 20 28 73 65 74 71 20 69 20 28 2d 20 69    20 31 29 29 29 0a 20 20 20 20 28 6c 65 74 20 28  | ....(setq.i.(-.i.1))).....(let.( | 
| 109e0 |  28 63 6f 6e 74 65 78 74 2d 69 6e 66 6f 20 28 6c    65 64 67 65 72 2d 63 6f 6e 74 65 78 74 2d 6f 74  | (context-info.(ledger-context-ot | 
| 10a00 |  68 65 72 2d 6c 69 6e 65 20 69 29 29 29 0a 20 20    20 20 20 20 28 77 68 65 6e 20 28 65 71 20 28 6c  | her-line.i))).......(when.(eq.(l | 
| 10a20 |  65 64 67 65 72 2d 63 6f 6e 74 65 78 74 2d 6c 69    6e 65 2d 74 79 70 65 20 63 6f 6e 74 65 78 74 2d  | edger-context-line-type.context- | 
| 10a40 |  69 6e 66 6f 29 20 27 78 61 63 74 29 0a 20 20 20    20 20 20 20 20 63 6f 6e 74 65 78 74 2d 69 6e 66  | info).'xact).........context-inf | 
| 10a60 |  6f 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6c 65    64 67 65 72 2d 78 61 63 74 2d 70 61 79 65 65 20  | o))))..(defun.ledger-xact-payee. | 
| 10a80 |  28 29 0a 20 20 22 52 65 74 75 72 6e 20 74 68 65    20 70 61 79 65 65 20 6f 66 20 74 68 65 20 74 72  | ()..."Return.the.payee.of.the.tr | 
| 10aa0 |  61 6e 73 61 63 74 69 6f 6e 20 63 6f 6e 74 61 69    6e 69 6e 67 20 70 6f 69 6e 74 20 6f 72 20 6e 69  | ansaction.containing.point.or.ni | 
| 10ac0 |  6c 2e 22 0a 20 20 28 77 68 65 6e 2d 6c 65 74 20    28 28 78 61 63 74 2d 63 6f 6e 74 65 78 74 20 28  | l."...(when-let.((xact-context.( | 
| 10ae0 |  6c 65 64 67 65 72 2d 78 61 63 74 2d 63 6f 6e 74    65 78 74 29 29 29 0a 20 20 20 20 28 6c 65 64 67  | ledger-xact-context))).....(ledg | 
| 10b00 |  65 72 2d 63 6f 6e 74 65 78 74 2d 66 69 65 6c 64    2d 76 61 6c 75 65 20 78 61 63 74 2d 63 6f 6e 74  | er-context-field-value.xact-cont | 
| 10b20 |  65 78 74 20 27 70 61 79 65 65 29 29 29 0a 0a 28    64 65 66 75 6e 20 6c 65 64 67 65 72 2d 78 61 63  | ext.'payee)))..(defun.ledger-xac | 
| 10b40 |  74 2d 64 61 74 65 20 28 29 0a 20 20 22 52 65 74    75 72 6e 20 74 68 65 20 64 61 74 65 20 6f 66 20  | t-date.()..."Return.the.date.of. | 
| 10b60 |  74 68 65 20 74 72 61 6e 73 61 63 74 69 6f 6e 20    63 6f 6e 74 61 69 6e 69 6e 67 20 70 6f 69 6e 74  | the.transaction.containing.point | 
| 10b80 |  20 6f 72 20 6e 69 6c 2e 22 0a 20 20 28 77 68 65    6e 2d 6c 65 74 20 28 28 78 61 63 74 2d 63 6f 6e  | .or.nil."...(when-let.((xact-con | 
| 10ba0 |  74 65 78 74 20 28 6c 65 64 67 65 72 2d 78 61 63    74 2d 63 6f 6e 74 65 78 74 29 29 29 0a 20 20 20  | text.(ledger-xact-context))).... | 
| 10bc0 |  20 28 6c 65 64 67 65 72 2d 63 6f 6e 74 65 78 74    2d 66 69 65 6c 64 2d 76 61 6c 75 65 20 78 61 63  | .(ledger-context-field-value.xac | 
| 10be0 |  74 2d 63 6f 6e 74 65 78 74 20 27 64 61 74 65 29    29 29 0a 0a 28 64 65 66 75 6e 20 6c 65 64 67 65  | t-context.'date)))..(defun.ledge | 
| 10c00 |  72 2d 78 61 63 74 2d 66 69 6e 64 2d 73 6c 6f 74    20 28 6d 6f 6d 65 6e 74 29 0a 20 20 22 46 69 6e  | r-xact-find-slot.(moment)..."Fin | 
| 10c20 |  64 20 74 68 65 20 72 69 67 68 74 20 70 6c 61 63    65 20 69 6e 20 74 68 65 20 62 75 66 66 65 72 20  | d.the.right.place.in.the.buffer. | 
| 10c40 |  66 6f 72 20 61 20 74 72 61 6e 73 61 63 74 69 6f    6e 20 61 74 20 4d 4f 4d 45 4e 54 2e 0a 4d 4f 4d  | for.a.transaction.at.MOMENT..MOM | 
| 10c60 |  45 4e 54 20 69 73 20 61 6e 20 65 6e 63 6f 64 65    64 20 64 61 74 65 22 0a 20 20 28 6c 65 74 20 28  | ENT.is.an.encoded.date"...(let.( | 
| 10c80 |  6c 61 73 74 2d 78 61 63 74 2d 73 74 61 72 74 29    0a 20 20 20 20 28 63 61 74 63 68 20 27 66 6f 75  | last-xact-start).....(catch.'fou | 
| 10ca0 |  6e 64 0a 20 20 20 20 20 20 28 6c 65 64 67 65 72    2d 78 61 63 74 2d 69 74 65 72 61 74 65 2d 74 72  | nd.......(ledger-xact-iterate-tr | 
| 10cc0 |  61 6e 73 61 63 74 69 6f 6e 73 0a 20 20 20 20 20    20 20 28 6c 61 6d 62 64 61 20 28 73 74 61 72 74  | ansactions........(lambda.(start | 
| 10ce0 |  20 64 61 74 65 20 5f 6d 61 72 6b 20 5f 64 65 73    63 29 0a 20 20 20 20 20 20 20 20 20 28 73 65 74  | .date._mark._desc)..........(set | 
| 10d00 |  71 20 6c 61 73 74 2d 78 61 63 74 2d 73 74 61 72    74 20 73 74 61 72 74 29 0a 20 20 20 20 20 20 20  | q.last-xact-start.start)........ | 
| 10d20 |  20 20 28 77 68 65 6e 20 28 74 69 6d 65 2d 6c 65    73 73 2d 70 20 6d 6f 6d 65 6e 74 20 64 61 74 65  | ..(when.(time-less-p.moment.date | 
| 10d40 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 28 74 68    72 6f 77 20 27 66 6f 75 6e 64 20 74 29 29 29 29  | )............(throw.'found.t)))) | 
| 10d60 |  29 0a 20 20 20 20 3b 3b 20 49 66 20 77 65 20 61    72 65 20 69 6e 73 65 72 74 69 6e 67 20 61 74 20  | ).....;;.If.we.are.inserting.at. | 
| 10d80 |  74 68 65 20 65 6e 64 20 6f 66 20 74 68 65 20 62    75 66 66 65 72 2c 20 69 6e 73 65 72 74 20 61 6e  | the.end.of.the.buffer,.insert.an | 
| 10da0 |  20 65 78 74 72 61 20 6e 65 77 6c 69 6e 65 0a 20    20 20 20 28 77 68 65 6e 20 28 61 6e 64 20 28 65  | .extra.newline.....(when.(and.(e | 
| 10dc0 |  6f 62 70 29 20 6c 61 73 74 2d 78 61 63 74 2d 73    74 61 72 74 29 0a 20 20 20 20 20 20 28 6c 65 74  | obp).last-xact-start).......(let | 
| 10de0 |  20 28 28 65 6e 64 20 28 63 61 64 72 20 28 6c 65    64 67 65 72 2d 6e 61 76 69 67 61 74 65 2d 66 69  | .((end.(cadr.(ledger-navigate-fi | 
| 10e00 |  6e 64 2d 78 61 63 74 2d 65 78 74 65 6e 74 73 20    6c 61 73 74 2d 78 61 63 74 2d 73 74 61 72 74 29  | nd-xact-extents.last-xact-start) | 
| 10e20 |  29 29 29 0a 20 20 20 20 20 20 20 20 28 67 6f 74    6f 2d 63 68 61 72 20 65 6e 64 29 0a 20 20 20 20  | ))).........(goto-char.end)..... | 
| 10e40 |  20 20 20 20 28 69 6e 73 65 72 74 20 22 5c 6e 22    29 0a 20 20 20 20 20 20 20 20 28 66 6f 72 77 61  | ....(insert."\n").........(forwa | 
| 10e60 |  72 64 2d 6c 69 6e 65 29 29 29 29 29 0a 0a 28 64    65 66 75 6e 20 6c 65 64 67 65 72 2d 78 61 63 74  | rd-line)))))..(defun.ledger-xact | 
| 10e80 |  2d 69 74 65 72 61 74 65 2d 74 72 61 6e 73 61 63    74 69 6f 6e 73 20 28 63 61 6c 6c 62 61 63 6b 29  | -iterate-transactions.(callback) | 
| 10ea0 |  0a 20 20 22 49 74 65 72 61 74 65 20 74 68 72 6f    75 67 68 20 65 61 63 68 20 74 72 61 6e 73 61 63  | ..."Iterate.through.each.transac | 
| 10ec0 |  74 69 6f 6e 20 63 61 6c 6c 20 43 41 4c 4c 42 41    43 4b 20 66 6f 72 20 65 61 63 68 2e 22 0a 20 20  | tion.call.CALLBACK.for.each."... | 
| 10ee0 |  28 67 6f 74 6f 2d 63 68 61 72 20 28 70 6f 69 6e    74 2d 6d 69 6e 29 29 0a 20 20 28 6c 65 74 2a 20  | (goto-char.(point-min))...(let*. | 
| 10f00 |  28 28 6e 6f 77 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 20 28  | ((now.(current-time))..........( | 
| 10f20 |  63 75 72 72 65 6e 74 2d 79 65 61 72 20 28 6e 74    68 20 35 20 28 64 65 63 6f 64 65 2d 74 69 6d 65  | current-year.(nth.5.(decode-time | 
| 10f40 |  20 6e 6f 77 29 29 29 29 0a 20 20 20 20 28 77 68    69 6c 65 20 28 6e 6f 74 20 28 65 6f 62 70 29 29  | .now)))).....(while.(not.(eobp)) | 
| 10f60 |  0a 20 20 20 20 20 20 28 77 68 65 6e 20 28 6c 6f    6f 6b 69 6e 67 2d 61 74 20 6c 65 64 67 65 72 2d  | .......(when.(looking-at.ledger- | 
| 10f80 |  69 74 65 72 61 74 65 2d 72 65 67 65 78 70 29 0a    20 20 20 20 20 20 20 20 28 69 66 2d 6c 65 74 20  | iterate-regexp).........(if-let. | 
| 10fa0 |  28 28 79 65 61 72 20 28 6d 61 74 63 68 2d 73 74    72 69 6e 67 20 31 29 29 29 0a 20 20 20 20 20 20  | ((year.(match-string.1)))....... | 
| 10fc0 |  20 20 20 20 20 20 28 73 65 74 71 20 63 75 72 72    65 6e 74 2d 79 65 61 72 20 28 73 74 72 69 6e 67  | ......(setq.current-year.(string | 
| 10fe0 |  2d 74 6f 2d 6e 75 6d 62 65 72 20 79 65 61 72 29    29 20 3b 61 20 59 20 64 69 72 65 63 74 69 76 65  | -to-number.year)).;a.Y.directive | 
| 11000 |  20 77 61 73 20 66 6f 75 6e 64 0a 20 20 20 20 20    20 20 20 20 20 28 6c 65 74 20 28 28 73 74 61 72  | .was.found...........(let.((star | 
| 11020 |  74 20 28 6d 61 74 63 68 2d 62 65 67 69 6e 6e 69    6e 67 20 30 29 29 0a 20 20 20 20 20 20 20 20 20  | t.(match-beginning.0)).......... | 
| 11040 |  20 20 20 20 20 20 20 28 79 65 61 72 20 28 6d 61    74 63 68 2d 73 74 72 69 6e 67 20 28 2b 20 6c 65  | .......(year.(match-string.(+.le | 
| 11060 |  64 67 65 72 2d 72 65 67 65 78 2d 69 74 65 72 61    74 65 2d 67 72 6f 75 70 2d 61 63 74 75 61 6c 2d  | dger-regex-iterate-group-actual- | 
| 11080 |  64 61 74 65 20 31 29 29 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 6d 6f 6e 74 68  | date.1))).................(month | 
| 110a0 |  20 28 73 74 72 69 6e 67 2d 74 6f 2d 6e 75 6d 62    65 72 20 28 6d 61 74 63 68 2d 73 74 72 69 6e 67  | .(string-to-number.(match-string | 
| 110c0 |  20 28 2b 20 6c 65 64 67 65 72 2d 72 65 67 65 78    2d 69 74 65 72 61 74 65 2d 67 72 6f 75 70 2d 61  | .(+.ledger-regex-iterate-group-a | 
| 110e0 |  63 74 75 61 6c 2d 64 61 74 65 20 32 29 29 29 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ctual-date.2))))................ | 
| 11100 |  20 28 64 61 79 20 28 73 74 72 69 6e 67 2d 74 6f    2d 6e 75 6d 62 65 72 20 28 6d 61 74 63 68 2d 73  | .(day.(string-to-number.(match-s | 
| 11120 |  74 72 69 6e 67 20 28 2b 20 6c 65 64 67 65 72 2d    72 65 67 65 78 2d 69 74 65 72 61 74 65 2d 67 72  | tring.(+.ledger-regex-iterate-gr | 
| 11140 |  6f 75 70 2d 61 63 74 75 61 6c 2d 64 61 74 65 20    33 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20  | oup-actual-date.3))))........... | 
| 11160 |  20 20 20 20 20 20 28 73 74 61 74 65 20 28 6d 61    74 63 68 2d 73 74 72 69 6e 67 20 6c 65 64 67 65  | ......(state.(match-string.ledge | 
| 11180 |  72 2d 72 65 67 65 78 2d 69 74 65 72 61 74 65 2d    67 72 6f 75 70 2d 73 74 61 74 65 29 29 0a 20 20  | r-regex-iterate-group-state))... | 
| 111a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70    61 79 65 65 20 28 6d 61 74 63 68 2d 73 74 72 69  | ..............(payee.(match-stri | 
| 111c0 |  6e 67 20 6c 65 64 67 65 72 2d 72 65 67 65 78 2d    69 74 65 72 61 74 65 2d 67 72 6f 75 70 2d 70 61  | ng.ledger-regex-iterate-group-pa | 
| 111e0 |  79 65 65 29 29 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 28 69 66 20 28 61 6e 64 20 79 65 61 72  | yee))).............(if.(and.year | 
| 11200 |  20 28 3e 20 28 6c 65 6e 67 74 68 20 79 65 61 72    29 20 30 29 29 0a 20 20 20 20 20 20 20 20 20 20  | .(>.(length.year).0))........... | 
| 11220 |  20 20 20 20 20 20 28 73 65 74 71 20 79 65 61 72    20 28 73 74 72 69 6e 67 2d 74 6f 2d 6e 75 6d 62  | ......(setq.year.(string-to-numb | 
| 11240 |  65 72 20 79 65 61 72 29 29 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 28 66 75 6e 63 61 6c 6c 20  | er.year))).............(funcall. | 
| 11260 |  63 61 6c 6c 62 61 63 6b 20 73 74 61 72 74 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | callback.start.................. | 
| 11280 |  20 20 20 20 28 65 6e 63 6f 64 65 2d 74 69 6d 65    20 30 20 30 20 30 20 64 61 79 20 6d 6f 6e 74 68  | ....(encode-time.0.0.0.day.month | 
| 112a0 |  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  | ................................ | 
| 112c0 |  20 20 20 28 6f 72 20 79 65 61 72 20 63 75 72 72    65 6e 74 2d 79 65 61 72 29 29 0a 20 20 20 20 20  | ...(or.year.current-year))...... | 
| 112e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    73 74 61 74 65 20 70 61 79 65 65 29 29 29 29 0a  | ................state.payee)))). | 
| 11300 |  20 20 20 20 20 20 28 66 6f 72 77 61 72 64 2d 6c    69 6e 65 29 29 29 29 0a 0a 28 64 65 66 63 75 73  | ......(forward-line))))..(defcus | 
| 11320 |  74 6f 6d 20 6c 65 64 67 65 72 2d 63 6f 70 79 2d    74 72 61 6e 73 61 63 74 69 6f 6e 2d 69 6e 73 65  | tom.ledger-copy-transaction-inse | 
| 11340 |  72 74 2d 62 6c 61 6e 6b 2d 6c 69 6e 65 2d 61 66    74 65 72 20 6e 69 6c 0a 20 20 22 57 68 65 6e 20  | rt-blank-line-after.nil..."When. | 
| 11360 |  6e 6f 6e 2d 6e 69 6c 2c 20 69 6e 73 65 72 74 20    61 20 62 6c 61 6e 6b 20 6c 69 6e 65 20 61 66 74  | non-nil,.insert.a.blank.line.aft | 
| 11380 |  65 72 20 60 6c 65 64 67 65 72 2d 63 6f 70 79 2d    74 72 61 6e 73 61 63 74 69 6f 6e 2d 61 74 2d 70  | er.`ledger-copy-transaction-at-p | 
| 113a0 |  6f 69 6e 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 67 72 6f 75  | oint'."...:type.'boolean...:grou | 
| 113c0 |  70 20 27 6c 65 64 67 65 72 29 0a 0a 28 64 65 66    75 6e 20 6c 65 64 67 65 72 2d 63 6f 70 79 2d 74  | p.'ledger)..(defun.ledger-copy-t | 
| 113e0 |  72 61 6e 73 61 63 74 69 6f 6e 2d 61 74 2d 70 6f    69 6e 74 20 28 64 61 74 65 29 0a 20 20 22 41 73  | ransaction-at-point.(date)..."As | 
| 11400 |  6b 20 66 6f 72 20 61 20 6e 65 77 20 44 41 54 45    20 61 6e 64 20 63 6f 70 79 20 74 68 65 20 74 72  | k.for.a.new.DATE.and.copy.the.tr | 
| 11420 |  61 6e 73 61 63 74 69 6f 6e 20 75 6e 64 65 72 20    70 6f 69 6e 74 20 74 6f 20 74 68 61 74 20 64 61  | ansaction.under.point.to.that.da | 
| 11440 |  74 65 2e 0a 4c 65 61 76 65 20 70 6f 69 6e 74 20    6f 6e 20 74 68 65 20 66 69 72 73 74 20 61 6d 6f  | te..Leave.point.on.the.first.amo | 
| 11460 |  75 6e 74 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 6c 65 64 67  | unt."...(interactive.(list.(ledg | 
| 11480 |  65 72 2d 72 65 61 64 2d 64 61 74 65 20 22 43 6f    70 79 20 74 6f 20 64 61 74 65 3a 20 22 29 29 29  | er-read-date."Copy.to.date:."))) | 
| 114a0 |  0a 20 20 28 6c 65 74 2a 20 28 28 65 78 74 65 6e    74 73 20 28 6c 65 64 67 65 72 2d 6e 61 76 69 67  | ...(let*.((extents.(ledger-navig | 
| 114c0 |  61 74 65 2d 66 69 6e 64 2d 78 61 63 74 2d 65 78    74 65 6e 74 73 20 28 70 6f 69 6e 74 29 29 29 0a  | ate-find-xact-extents.(point))). | 
| 114e0 |  20 20 20 20 20 20 20 20 20 28 74 72 61 6e 73 61    63 74 69 6f 6e 20 28 62 75 66 66 65 72 2d 73 75  | .........(transaction.(buffer-su | 
| 11500 |  62 73 74 72 69 6e 67 2d 6e 6f 2d 70 72 6f 70 65    72 74 69 65 73 20 28 63 61 72 20 65 78 74 65 6e  | bstring-no-properties.(car.exten | 
| 11520 |  74 73 29 20 28 63 61 64 72 20 65 78 74 65 6e 74    73 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 65  | ts).(cadr.extents)))..........(e | 
| 11540 |  6e 63 6f 64 65 64 2d 64 61 74 65 20 28 6c 65 64    67 65 72 2d 70 61 72 73 65 2d 69 73 6f 2d 64 61  | ncoded-date.(ledger-parse-iso-da | 
| 11560 |  74 65 20 64 61 74 65 29 29 29 0a 20 20 20 20 28    70 75 73 68 2d 6d 61 72 6b 29 0a 20 20 20 20 28  | te.date))).....(push-mark).....( | 
| 11580 |  6c 65 64 67 65 72 2d 78 61 63 74 2d 66 69 6e 64    2d 73 6c 6f 74 20 65 6e 63 6f 64 65 64 2d 64 61  | ledger-xact-find-slot.encoded-da | 
| 115a0 |  74 65 29 0a 20 20 20 20 28 69 6e 73 65 72 74 20    74 72 61 6e 73 61 63 74 69 6f 6e 0a 20 20 20 20  | te).....(insert.transaction..... | 
| 115c0 |  20 20 20 20 20 20 20 20 28 69 66 20 28 61 6e 64    20 6c 65 64 67 65 72 2d 63 6f 70 79 2d 74 72 61  | ........(if.(and.ledger-copy-tra | 
| 115e0 |  6e 73 61 63 74 69 6f 6e 2d 69 6e 73 65 72 74 2d    62 6c 61 6e 6b 2d 6c 69 6e 65 2d 61 66 74 65 72  | nsaction-insert-blank-line-after | 
| 11600 |  20 28 6e 6f 74 20 28 65 6f 62 70 29 29 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22  | .(not.(eobp)))................." | 
| 11620 |  5c 6e 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 22 5c 6e 22 29 29 0a 20 20 20 20 28  | \n\n"..............."\n")).....( | 
| 11640 |  62 65 67 69 6e 6e 69 6e 67 2d 6f 66 2d 6c 69 6e    65 20 2d 31 29 0a 20 20 20 20 28 6c 65 64 67 65  | beginning-of-line.-1).....(ledge | 
| 11660 |  72 2d 6e 61 76 69 67 61 74 65 2d 62 65 67 69 6e    6e 69 6e 67 2d 6f 66 2d 78 61 63 74 29 0a 20 20  | r-navigate-beginning-of-xact)... | 
| 11680 |  20 20 28 72 65 2d 73 65 61 72 63 68 2d 66 6f 72    77 61 72 64 20 6c 65 64 67 65 72 2d 69 73 6f 2d  | ..(re-search-forward.ledger-iso- | 
| 116a0 |  64 61 74 65 2d 72 65 67 65 78 70 29 0a 20 20 20    20 28 72 65 70 6c 61 63 65 2d 6d 61 74 63 68 20  | date-regexp).....(replace-match. | 
| 116c0 |  64 61 74 65 29 0a 20 20 20 20 28 6c 65 64 67 65    72 2d 6e 65 78 74 2d 61 6d 6f 75 6e 74 29 0a 20  | date).....(ledger-next-amount).. | 
| 116e0 |  20 20 20 28 69 66 20 28 72 65 2d 73 65 61 72 63    68 2d 66 6f 72 77 61 72 64 20 22 5b 2d 30 2d 39  | ...(if.(re-search-forward."[-0-9 | 
| 11700 |  5d 22 29 0a 20 20 20 20 20 20 20 20 28 67 6f 74    6f 2d 63 68 61 72 20 28 6d 61 74 63 68 2d 62 65  | ]").........(goto-char.(match-be | 
| 11720 |  67 69 6e 6e 69 6e 67 20 30 29 29 29 29 29 0a 0a    28 64 65 66 75 6e 20 6c 65 64 67 65 72 2d 64 65  | ginning.0)))))..(defun.ledger-de | 
| 11740 |  6c 65 74 65 2d 63 75 72 72 65 6e 74 2d 74 72 61    6e 73 61 63 74 69 6f 6e 20 28 70 6f 73 29 0a 20  | lete-current-transaction.(pos).. | 
| 11760 |  20 22 44 65 6c 65 74 65 20 74 68 65 20 74 72 61    6e 73 61 63 74 69 6f 6e 20 73 75 72 72 6f 75 6e  | ."Delete.the.transaction.surroun | 
| 11780 |  64 69 6e 67 20 50 4f 53 2e 22 0a 20 20 28 69 6e    74 65 72 61 63 74 69 76 65 20 22 64 22 29 0a 20  | ding.POS."...(interactive."d").. | 
| 117a0 |  20 28 6c 65 74 20 28 28 62 6f 75 6e 64 73 20 28    6c 65 64 67 65 72 2d 6e 61 76 69 67 61 74 65 2d  | .(let.((bounds.(ledger-navigate- | 
| 117c0 |  66 69 6e 64 2d 78 61 63 74 2d 65 78 74 65 6e 74    73 20 70 6f 73 29 29 29 0a 20 20 20 20 28 64 65  | find-xact-extents.pos))).....(de | 
| 117e0 |  6c 65 74 65 2d 72 65 67 69 6f 6e 20 28 63 61 72    20 62 6f 75 6e 64 73 29 20 28 63 61 64 72 20 62  | lete-region.(car.bounds).(cadr.b | 
| 11800 |  6f 75 6e 64 73 29 29 29 0a 20 20 28 64 65 6c 65    74 65 2d 62 6c 61 6e 6b 2d 6c 69 6e 65 73 29 29  | ounds)))...(delete-blank-lines)) | 
| 11820 |  0a 0a 28 64 65 66 76 61 72 20 6c 65 64 67 65 72    2d 61 64 64 2d 74 72 61 6e 73 61 63 74 69 6f 6e  | ..(defvar.ledger-add-transaction | 
| 11840 |  2d 6c 61 73 74 2d 64 61 74 65 20 6e 69 6c 0a 20    20 22 4c 61 73 74 20 64 61 74 65 20 65 6e 74 65  | -last-date.nil..."Last.date.ente | 
| 11860 |  72 65 64 20 75 73 69 6e 67 20 60 6c 65 64 67 65    72 2d 72 65 61 64 2d 74 72 61 6e 73 61 63 74 69  | red.using.`ledger-read-transacti | 
| 11880 |  6f 6e 27 2e 22 29 0a 0a 28 64 65 66 75 6e 20 6c    65 64 67 65 72 2d 72 65 61 64 2d 74 72 61 6e 73  | on'.")..(defun.ledger-read-trans | 
| 118a0 |  61 63 74 69 6f 6e 20 28 29 0a 20 20 22 52 65 61    64 20 74 68 65 20 74 65 78 74 20 6f 66 20 61 20  | action.()..."Read.the.text.of.a. | 
| 118c0 |  74 72 61 6e 73 61 63 74 69 6f 6e 2c 20 77 68 69    63 68 20 69 73 20 61 74 20 6c 65 61 73 74 20 74  | transaction,.which.is.at.least.t | 
| 118e0 |  68 65 20 63 75 72 72 65 6e 74 20 64 61 74 65 2e    22 0a 20 20 28 6c 65 74 20 28 28 64 61 74 65 20  | he.current.date."...(let.((date. | 
| 11900 |  28 6c 65 64 67 65 72 2d 72 65 61 64 2d 64 61 74    65 20 22 44 61 74 65 3a 20 22 29 29 29 0a 20 20  | (ledger-read-date."Date:.")))... | 
| 11920 |  20 20 28 63 6f 6e 63 61 74 20 64 61 74 65 20 22    20 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 28  | ..(concat.date.".".............( | 
| 11940 |  77 68 65 6e 20 6c 65 64 67 65 72 2d 61 64 64 2d    74 72 61 6e 73 61 63 74 69 6f 6e 2d 70 72 6f 6d  | when.ledger-add-transaction-prom | 
| 11960 |  70 74 2d 66 6f 72 2d 74 65 78 74 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 72 65 61 64 2d  | pt-for-text...............(read- | 
| 11980 |  73 74 72 69 6e 67 20 28 63 6f 6e 63 61 74 20 22    78 61 63 74 20 22 20 64 61 74 65 20 22 3a 20 22  | string.(concat."xact.".date.":." | 
| 119a0 |  29 20 6e 69 6c 20 27 6c 65 64 67 65 72 2d 6d 69    6e 69 62 75 66 66 65 72 2d 68 69 73 74 6f 72 79  | ).nil.'ledger-minibuffer-history | 
| 119c0 |  29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6c 65    64 67 65 72 2d 70 61 72 73 65 2d 69 73 6f 2d 64  | )))))..(defun.ledger-parse-iso-d | 
| 119e0 |  61 74 65 20 28 64 61 74 65 29 0a 20 20 22 54 72    79 20 74 6f 20 70 61 72 73 65 20 44 41 54 45 20  | ate.(date)..."Try.to.parse.DATE. | 
| 11a00 |  75 73 69 6e 67 20 60 6c 65 64 67 65 72 2d 69 73    6f 2d 64 61 74 65 2d 72 65 67 65 78 70 27 20 61  | using.`ledger-iso-date-regexp'.a | 
| 11a20 |  6e 64 20 72 65 74 75 72 6e 20 61 20 74 69 6d 65    20 76 61 6c 75 65 20 6f 72 20 6e 69 6c 2e 22 0a  | nd.return.a.time.value.or.nil.". | 
| 11a40 |  20 20 28 73 61 76 65 2d 6d 61 74 63 68 2d 64 61    74 61 0a 20 20 20 20 28 77 68 65 6e 20 28 73 74  | ..(save-match-data.....(when.(st | 
| 11a60 |  72 69 6e 67 2d 6d 61 74 63 68 20 6c 65 64 67 65    72 2d 69 73 6f 2d 64 61 74 65 2d 72 65 67 65 78  | ring-match.ledger-iso-date-regex | 
| 11a80 |  70 20 64 61 74 65 29 0a 20 20 20 20 20 20 28 65    6e 63 6f 64 65 2d 74 69 6d 65 20 30 20 30 20 30  | p.date).......(encode-time.0.0.0 | 
| 11aa0 |  20 28 73 74 72 69 6e 67 2d 74 6f 2d 6e 75 6d 62    65 72 20 28 6d 61 74 63 68 2d 73 74 72 69 6e 67  | .(string-to-number.(match-string | 
| 11ac0 |  20 34 20 64 61 74 65 29 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 74  | .4.date))....................(st | 
| 11ae0 |  72 69 6e 67 2d 74 6f 2d 6e 75 6d 62 65 72 20 28    6d 61 74 63 68 2d 73 74 72 69 6e 67 20 33 20 64  | ring-to-number.(match-string.3.d | 
| 11b00 |  61 74 65 29 29 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 28 73 74 72 69 6e 67  | ate))....................(string | 
| 11b20 |  2d 74 6f 2d 6e 75 6d 62 65 72 20 28 6d 61 74 63    68 2d 73 74 72 69 6e 67 20 32 20 64 61 74 65 29  | -to-number.(match-string.2.date) | 
| 11b40 |  29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6c 65    64 67 65 72 2d 61 64 64 2d 74 72 61 6e 73 61 63  | )))))..(defun.ledger-add-transac | 
| 11b60 |  74 69 6f 6e 20 28 74 72 61 6e 73 61 63 74 69 6f    6e 2d 74 65 78 74 20 26 6f 70 74 69 6f 6e 61 6c  | tion.(transaction-text.&optional | 
| 11b80 |  20 69 6e 73 65 72 74 2d 61 74 2d 70 6f 69 6e 74    29 0a 20 20 22 55 73 65 20 6c 65 64 67 65 72 20  | .insert-at-point)..."Use.ledger. | 
| 11ba0 |  78 61 63 74 20 54 52 41 4e 53 41 43 54 49 4f 4e    2d 54 45 58 54 20 74 6f 20 61 64 64 20 61 20 74  | xact.TRANSACTION-TEXT.to.add.a.t | 
| 11bc0 |  72 61 6e 73 61 63 74 69 6f 6e 20 74 6f 20 74 68    65 20 62 75 66 66 65 72 2e 0a 49 66 20 49 4e 53  | ransaction.to.the.buffer..If.INS | 
| 11be0 |  45 52 54 2d 41 54 2d 50 4f 49 4e 54 20 69 73 20    6e 6f 6e 2d 6e 69 6c 20 69 6e 73 65 72 74 20 74  | ERT-AT-POINT.is.non-nil.insert.t | 
| 11c00 |  68 65 20 74 72 61 6e 73 61 63 74 69 6f 6e 20 74    68 65 72 65 2c 0a 6f 74 68 65 72 77 69 73 65 20  | he.transaction.there,.otherwise. | 
| 11c20 |  63 61 6c 6c 20 60 6c 65 64 67 65 72 2d 78 61 63    74 2d 66 69 6e 64 2d 73 6c 6f 74 27 20 74 6f 20  | call.`ledger-xact-find-slot'.to. | 
| 11c40 |  69 6e 73 65 72 74 20 69 74 20 61 74 20 74 68 65    0a 63 6f 72 72 65 63 74 20 63 68 72 6f 6e 6f 6c  | insert.it.at.the.correct.chronol | 
| 11c60 |  6f 67 69 63 61 6c 20 70 6c 61 63 65 20 69 6e 20    74 68 65 20 62 75 66 66 65 72 2e 0a 0a 49 6e 74  | ogical.place.in.the.buffer...Int | 
| 11c80 |  65 72 61 63 74 69 76 65 6c 79 2c 20 74 68 65 20    64 61 74 65 20 69 73 20 72 65 71 75 65 73 74 65  | eractively,.the.date.is.requeste | 
| 11ca0 |  64 20 76 69 61 20 60 6c 65 64 67 65 72 2d 72 65    61 64 2d 64 61 74 65 27 20 61 6e 64 0a 74 68 65  | d.via.`ledger-read-date'.and.the | 
| 11cc0 |  20 5c 5c 5b 75 6e 69 76 65 72 73 61 6c 2d 61 72    67 75 6d 65 6e 74 5d 20 65 6e 61 62 6c 65 73 20  | .\\[universal-argument].enables. | 
| 11ce0 |  49 4e 53 45 52 54 2d 41 54 2d 50 4f 49 4e 54 2e    22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65  | INSERT-AT-POINT."...(interactive | 
| 11d00 |  20 28 6c 69 73 74 20 28 6c 65 64 67 65 72 2d 72    65 61 64 2d 74 72 61 6e 73 61 63 74 69 6f 6e 29  | .(list.(ledger-read-transaction) | 
| 11d20 |  20 63 75 72 72 65 6e 74 2d 70 72 65 66 69 78 2d    61 72 67 29 29 0a 20 20 28 6c 65 74 2a 20 28 28  | .current-prefix-arg))...(let*.(( | 
| 11d40 |  61 72 67 73 20 28 77 69 74 68 2d 74 65 6d 70 2d    62 75 66 66 65 72 0a 20 20 20 20 20 20 20 20 20  | args.(with-temp-buffer.......... | 
| 11d60 |  20 20 20 20 20 20 20 20 28 69 6e 73 65 72 74 20    74 72 61 6e 73 61 63 74 69 6f 6e 2d 74 65 78 74  | ........(insert.transaction-text | 
| 11d80 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 65 73 68 65 6c 6c 2d 70 61 72 73 65  | )..................(eshell-parse | 
| 11da0 |  2d 61 72 67 75 6d 65 6e 74 73 20 28 70 6f 69 6e    74 2d 6d 69 6e 29 20 28 70 6f 69 6e 74 2d 6d 61  | -arguments.(point-min).(point-ma | 
| 11dc0 |  78 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 28    6c 65 64 67 65 72 2d 62 75 66 20 28 63 75 72 72  | x))))..........(ledger-buf.(curr | 
| 11de0 |  65 6e 74 2d 62 75 66 66 65 72 29 29 0a 20 20 20    20 20 20 20 20 20 28 73 65 70 61 72 61 74 6f 72  | ent-buffer))..........(separator | 
| 11e00 |  20 22 5c 6e 22 29 29 0a 20 20 20 20 28 75 6e 6c    65 73 73 20 69 6e 73 65 72 74 2d 61 74 2d 70 6f  | ."\n")).....(unless.insert-at-po | 
| 11e20 |  69 6e 74 0a 20 20 20 20 20 20 28 6c 65 74 2a 20    28 28 64 61 74 65 20 28 63 61 72 20 61 72 67 73  | int.......(let*.((date.(car.args | 
| 11e40 |  29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    28 70 61 72 73 65 64 2d 64 61 74 65 20 28 6c 65  | ))..............(parsed-date.(le | 
| 11e60 |  64 67 65 72 2d 70 61 72 73 65 2d 69 73 6f 2d 64    61 74 65 20 64 61 74 65 29 29 29 0a 20 20 20 20  | dger-parse-iso-date.date)))..... | 
| 11e80 |  20 20 20 20 28 73 65 74 71 20 6c 65 64 67 65 72    2d 61 64 64 2d 74 72 61 6e 73 61 63 74 69 6f 6e  | ....(setq.ledger-add-transaction | 
| 11ea0 |  2d 6c 61 73 74 2d 64 61 74 65 20 70 61 72 73 65    64 2d 64 61 74 65 29 0a 20 20 20 20 20 20 20 20  | -last-date.parsed-date)......... | 
| 11ec0 |  28 70 75 73 68 2d 6d 61 72 6b 29 0a 20 20 20 20    20 20 20 20 3b 3b 20 54 4f 44 4f 3a 20 77 68 61  | (push-mark).........;;.TODO:.wha | 
| 11ee0 |  74 20 61 62 6f 75 74 20 77 68 65 6e 20 69 74 20    63 61 6e 27 74 20 62 65 20 70 61 72 73 65 64 3f  | t.about.when.it.can't.be.parsed? | 
| 11f00 |  0a 20 20 20 20 20 20 20 20 28 6c 65 64 67 65 72    2d 78 61 63 74 2d 66 69 6e 64 2d 73 6c 6f 74 20  | .........(ledger-xact-find-slot. | 
| 11f20 |  28 6f 72 20 70 61 72 73 65 64 2d 64 61 74 65 20    64 61 74 65 29 29 0a 20 20 20 20 20 20 20 20 28  | (or.parsed-date.date)).........( | 
| 11f40 |  77 68 65 6e 20 28 6c 6f 6f 6b 69 6e 67 2d 61 74    20 22 5c 6e 2a 5c 5c 27 22 29 0a 20 20 20 20 20  | when.(looking-at."\n*\\'")...... | 
| 11f60 |  20 20 20 20 20 28 73 65 74 71 20 73 65 70 61 72    61 74 6f 72 20 22 22 29 29 29 29 0a 20 20 20 20  | .....(setq.separator.""))))..... | 
| 11f80 |  28 69 66 20 28 63 64 72 20 61 72 67 73 29 0a 20    20 20 20 20 20 20 20 28 73 61 76 65 2d 65 78 63  | (if.(cdr.args).........(save-exc | 
| 11fa0 |  75 72 73 69 6f 6e 0a 20 20 20 20 20 20 20 20 20    20 28 69 6e 73 65 72 74 0a 20 20 20 20 20 20 20  | ursion...........(insert........ | 
| 11fc0 |  20 20 20 20 28 77 69 74 68 2d 74 65 6d 70 2d 62    75 66 66 65 72 0a 20 20 20 20 20 20 20 20 20 20  | ....(with-temp-buffer........... | 
| 11fe0 |  20 20 20 28 61 70 70 6c 79 20 23 27 6c 65 64 67    65 72 2d 65 78 65 63 2d 6c 65 64 67 65 72 20 6c  | ...(apply.#'ledger-exec-ledger.l | 
| 12000 |  65 64 67 65 72 2d 62 75 66 20 28 63 75 72 72 65    6e 74 2d 62 75 66 66 65 72 29 20 22 78 61 63 74  | edger-buf.(current-buffer)."xact | 
| 12020 |  22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 6d 61 70 63 61 72 20 27 65  | ".....................(mapcar.'e | 
| 12040 |  76 61 6c 20 61 72 67 73 29 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68  | val.args))..............(goto-ch | 
| 12060 |  61 72 20 28 70 6f 69 6e 74 2d 6d 69 6e 29 29 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65  | ar.(point-min))..............(le | 
| 12080 |  64 67 65 72 2d 70 6f 73 74 2d 61 6c 69 67 6e 2d    70 6f 73 74 69 6e 67 73 20 28 70 6f 69 6e 74 2d  | dger-post-align-postings.(point- | 
| 120a0 |  6d 69 6e 29 20 28 70 6f 69 6e 74 2d 6d 61 78 29    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28  | min).(point-max))..............( | 
| 120c0 |  62 75 66 66 65 72 2d 73 74 72 69 6e 67 29 29 0a    20 20 20 20 20 20 20 20 20 20 20 73 65 70 61 72  | buffer-string))............separ | 
| 120e0 |  61 74 6f 72 29 29 0a 20 20 20 20 20 20 28 69 6e    73 65 72 74 20 28 63 61 72 20 61 72 67 73 29 20  | ator)).......(insert.(car.args). | 
| 12100 |  22 20 22 29 0a 20 20 20 20 20 20 28 73 61 76 65    2d 65 78 63 75 72 73 69 6f 6e 20 28 69 6e 73 65  | ".").......(save-excursion.(inse | 
| 12120 |  72 74 20 22 5c 6e 22 20 73 65 70 61 72 61 74 6f    72 29 29 29 29 29 0a 0a 28 70 72 6f 76 69 64 65  | rt."\n".separator)))))..(provide | 
| 12140 |  20 27 6c 65 64 67 65 72 2d 78 61 63 74 29 0a 0a    3b 3b 3b 20 6c 65 64 67 65 72 2d 78 61 63 74 2e  | .'ledger-xact)..;;;.ledger-xact. | 
| 12160 |  65 6c 20 65 6e 64 73 20 68 65 72 65 0a 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | el.ends.here.................... | 
| 12180 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 121a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 121c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 121e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 12200 |  6c 65 64 67 65 72 2d 6d 6f 64 65 2d 32 30 32 34    30 34 31 36 2e 34 31 36 2f 6c 65 64 67 65 72 2d  | ledger-mode-20240416.416/ledger- | 
| 12220 |  73 6f 72 74 2e 65 6c 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | sort.el......................... | 
| 12240 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 12260 |  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 | 
| 12280 |  30 30 30 37 36 31 31 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 35 36 37 30 00 20 30 00 00 00  | 0007611.00000000000.015670..0... | 
| 122a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 122c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 122e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 12300 |  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................... | 
| 12320 |  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................... | 
| 12340 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 12360 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 12380 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 123a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 123c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 123e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 12400 |  3b 3b 3b 20 6c 65 64 67 65 72 2d 73 6f 72 74 2e    65 6c 20 2d 2d 2d 20 48 65 6c 70 65 72 20 63 6f  | ;;;.ledger-sort.el.---.Helper.co | 
| 12420 |  64 65 20 66 6f 72 20 75 73 65 20 77 69 74 68 20    74 68 65 20 22 6c 65 64 67 65 72 22 20 63 6f 6d  | de.for.use.with.the."ledger".com | 
| 12440 |  6d 61 6e 64 2d 6c 69 6e 65 20 74 6f 6f 6c 20 20    2d 2a 2d 20 6c 65 78 69 63 61 6c 2d 62 69 6e 64  | mand-line.tool..-*-.lexical-bind | 
| 12460 |  69 6e 67 3a 20 74 3b 20 2d 2a 2d 0a 0a 3b 3b 20    43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30  | ing:.t;.-*-..;;.Copyright.(C).20 | 
| 12480 |  30 33 2d 32 30 31 36 20 4a 6f 68 6e 20 57 69 65    67 6c 65 79 20 28 6a 6f 68 6e 77 20 41 54 20 67  | 03-2016.John.Wiegley.(johnw.AT.g | 
| 124a0 |  6e 75 20 44 4f 54 20 6f 72 67 29 0a 0a 3b 3b 20    54 68 69 73 20 66 69 6c 65 20 69 73 20 6e 6f 74  | nu.DOT.org)..;;.This.file.is.not | 
| 124c0 |  20 70 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 69 73 20  | .part.of.GNU.Emacs...;;.This.is. | 
| 124e0 |  66 72 65 65 20 73 6f 66 74 77 61 72 65 3b 20 79    6f 75 20 63 61 6e 20 72 65 64 69 73 74 72 69 62  | free.software;.you.can.redistrib | 
| 12500 |  75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f    64 69 66 79 20 69 74 20 75 6e 64 65 72 0a 3b 3b  | ute.it.and/or.modify.it.under.;; | 
| 12520 |  20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68    65 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75  | .the.terms.of.the.GNU.General.Pu | 
| 12540 |  62 6c 69 63 20 4c 69 63 65 6e 73 65 20 61 73 20    70 75 62 6c 69 73 68 65 64 20 62 79 20 74 68 65  | blic.License.as.published.by.the | 
| 12560 |  20 46 72 65 65 0a 3b 3b 20 53 6f 66 74 77 61 72    65 20 46 6f 75 6e 64 61 74 69 6f 6e 3b 20 65 69  | .Free.;;.Software.Foundation;.ei | 
| 12580 |  74 68 65 72 20 76 65 72 73 69 6f 6e 20 32 2c 20    6f 72 20 28 61 74 20 79 6f 75 72 20 6f 70 74 69  | ther.version.2,.or.(at.your.opti | 
| 125a0 |  6f 6e 29 20 61 6e 79 20 6c 61 74 65 72 0a 3b 3b    20 76 65 72 73 69 6f 6e 2e 0a 3b 3b 0a 3b 3b 20  | on).any.later.;;.version..;;.;;. | 
| 125c0 |  54 68 69 73 20 69 73 20 64 69 73 74 72 69 62 75    74 65 64 20 69 6e 20 74 68 65 20 68 6f 70 65 20  | This.is.distributed.in.the.hope. | 
| 125e0 |  74 68 61 74 20 69 74 20 77 69 6c 6c 20 62 65 20    75 73 65 66 75 6c 2c 20 62 75 74 20 57 49 54 48  | that.it.will.be.useful,.but.WITH | 
| 12600 |  4f 55 54 0a 3b 3b 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  | OUT.;;.ANY.WARRANTY;.without.eve | 
| 12620 |  6e 20 74 68 65 20 69 6d 70 6c 69 65 64 20 77 61    72 72 61 6e 74 79 20 6f 66 20 4d 45 52 43 48 41  | n.the.implied.warranty.of.MERCHA | 
| 12640 |  4e 54 41 42 49 4c 49 54 59 20 6f 72 0a 3b 3b 20    46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41  | NTABILITY.or.;;.FITNESS.FOR.A.PA | 
| 12660 |  52 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45    2e 20 20 53 65 65 20 74 68 65 20 47 4e 55 20 47  | RTICULAR.PURPOSE...See.the.GNU.G | 
| 12680 |  65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69    63 65 6e 73 65 0a 3b 3b 20 66 6f 72 20 6d 6f 72  | eneral.Public.License.;;.for.mor | 
| 126a0 |  65 20 64 65 74 61 69 6c 73 2e 0a 3b 3b 0a 3b 3b    20 59 6f 75 20 73 68 6f 75 6c 64 20 68 61 76 65  | e.details..;;.;;.You.should.have | 
| 126c0 |  20 72 65 63 65 69 76 65 64 20 61 20 63 6f 70 79    20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65  | .received.a.copy.of.the.GNU.Gene | 
| 126e0 |  72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e    73 65 0a 3b 3b 20 61 6c 6f 6e 67 20 77 69 74 68  | ral.Public.License.;;.along.with | 
| 12700 |  20 47 4e 55 20 45 6d 61 63 73 3b 20 73 65 65 20    74 68 65 20 66 69 6c 65 20 43 4f 50 59 49 4e 47  | .GNU.Emacs;.see.the.file.COPYING | 
| 12720 |  2e 20 20 49 66 20 6e 6f 74 2c 20 77 72 69 74 65    20 74 6f 20 74 68 65 0a 3b 3b 20 46 72 65 65 20  | ...If.not,.write.to.the.;;.Free. | 
| 12740 |  53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61 74    69 6f 6e 2c 20 49 6e 63 2e 2c 20 35 31 20 46 72  | Software.Foundation,.Inc.,.51.Fr | 
| 12760 |  61 6e 6b 6c 69 6e 20 53 74 72 65 65 74 2c 20 46    69 66 74 68 20 46 6c 6f 6f 72 2c 20 42 6f 73 74  | anklin.Street,.Fifth.Floor,.Bost | 
| 12780 |  6f 6e 2c 0a 3b 3b 20 4d 41 20 30 32 31 31 30 2d    31 33 30 31 20 55 53 41 2e 0a 0a 0a 0a 3b 3b 3b  | on,.;;.MA.02110-1301.USA.....;;; | 
| 127a0 |  20 43 6f 6d 6d 65 6e 74 61 72 79 3a 0a 3b 3b 0a    0a 3b 3b 3b 20 43 6f 64 65 3a 0a 28 72 65 71 75  | .Commentary:.;;..;;;.Code:.(requ | 
| 127c0 |  69 72 65 20 27 6c 65 64 67 65 72 2d 72 65 67 65    78 29 0a 28 72 65 71 75 69 72 65 20 27 6c 65 64  | ire.'ledger-regex).(require.'led | 
| 127e0 |  67 65 72 2d 6e 61 76 69 67 61 74 65 29 0a 28 72    65 71 75 69 72 65 20 27 6c 65 64 67 65 72 2d 78  | ger-navigate).(require.'ledger-x | 
| 12800 |  61 63 74 29 0a 0a 28 64 65 66 75 6e 20 6c 65 64    67 65 72 2d 73 6f 72 74 2d 66 69 6e 64 2d 73 74  | act)..(defun.ledger-sort-find-st | 
| 12820 |  61 72 74 20 28 29 0a 20 20 22 46 69 6e 64 20 74    68 65 20 62 65 67 69 6e 6e 69 6e 67 20 6f 66 20  | art.()..."Find.the.beginning.of. | 
| 12840 |  61 20 73 6f 72 74 20 72 65 67 69 6f 6e 2e 22 0a    20 20 28 77 68 65 6e 20 28 72 65 2d 73 65 61 72  | a.sort.region."...(when.(re-sear | 
| 12860 |  63 68 2d 66 6f 72 77 61 72 64 20 22 3b 2e 2a 4c    65 64 67 65 72 2d 6d 6f 64 65 3a 2e 2a 53 74 61  | ch-forward.";.*Ledger-mode:.*Sta | 
| 12880 |  72 74 20 73 6f 72 74 22 20 6e 69 6c 20 74 29 0a    20 20 20 20 28 6d 61 74 63 68 2d 65 6e 64 20 30  | rt.sort".nil.t).....(match-end.0 | 
| 128a0 |  29 29 29 0a 0a 28 64 65 66 75 6e 20 6c 65 64 67    65 72 2d 73 6f 72 74 2d 66 69 6e 64 2d 65 6e 64  | )))..(defun.ledger-sort-find-end | 
| 128c0 |  20 28 29 0a 20 20 22 46 69 6e 64 20 74 68 65 20    65 6e 64 20 6f 66 20 61 20 73 6f 72 74 20 72 65  | .()..."Find.the.end.of.a.sort.re | 
| 128e0 |  67 69 6f 6e 2e 22 0a 20 20 28 77 68 65 6e 20 28    72 65 2d 73 65 61 72 63 68 2d 66 6f 72 77 61 72  | gion."...(when.(re-search-forwar | 
| 12900 |  64 20 22 3b 2e 2a 4c 65 64 67 65 72 2d 6d 6f 64    65 3a 2e 2a 45 6e 64 20 73 6f 72 74 22 20 6e 69  | d.";.*Ledger-mode:.*End.sort".ni | 
| 12920 |  6c 20 74 29 0a 20 20 20 20 28 6d 61 74 63 68 2d    65 6e 64 20 30 29 29 29 0a 0a 28 64 65 66 75 6e  | l.t).....(match-end.0)))..(defun | 
| 12940 |  20 6c 65 64 67 65 72 2d 73 6f 72 74 2d 69 6e 73    65 72 74 2d 73 74 61 72 74 2d 6d 61 72 6b 20 28  | .ledger-sort-insert-start-mark.( | 
| 12960 |  29 0a 20 20 22 49 6e 73 65 72 74 20 61 20 6d 61    72 6b 65 72 20 74 6f 20 73 74 61 72 74 20 61 20  | )..."Insert.a.marker.to.start.a. | 
| 12980 |  73 6f 72 74 20 72 65 67 69 6f 6e 2e 22 0a 20 20    28 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20  | sort.region."...(interactive)... | 
| 129a0 |  28 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e 0a    20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28  | (save-excursion.....(goto-char.( | 
| 129c0 |  70 6f 69 6e 74 2d 6d 69 6e 29 29 0a 20 20 20 20    28 77 68 65 6e 20 28 6c 65 64 67 65 72 2d 73 6f  | point-min)).....(when.(ledger-so | 
| 129e0 |  72 74 2d 66 69 6e 64 2d 73 74 61 72 74 29 0a 20    20 20 20 20 20 28 64 65 6c 65 74 65 2d 72 65 67  | rt-find-start).......(delete-reg | 
| 12a00 |  69 6f 6e 20 28 6d 61 74 63 68 2d 62 65 67 69 6e    6e 69 6e 67 20 30 29 20 28 6d 61 74 63 68 2d 65  | ion.(match-beginning.0).(match-e | 
| 12a20 |  6e 64 20 30 29 29 29 29 0a 20 20 28 62 65 67 69    6e 6e 69 6e 67 2d 6f 66 2d 6c 69 6e 65 29 0a 20  | nd.0))))...(beginning-of-line).. | 
| 12a40 |  20 28 69 6e 73 65 72 74 20 22 5c 6e 3b 20 4c 65    64 67 65 72 2d 6d 6f 64 65 3a 20 53 74 61 72 74  | .(insert."\n;.Ledger-mode:.Start | 
| 12a60 |  20 73 6f 72 74 5c 6e 5c 6e 22 29 29 0a 0a 28 64    65 66 75 6e 20 6c 65 64 67 65 72 2d 73 6f 72 74  | .sort\n\n"))..(defun.ledger-sort | 
| 12a80 |  2d 69 6e 73 65 72 74 2d 65 6e 64 2d 6d 61 72 6b    20 28 29 0a 20 20 22 49 6e 73 65 72 74 20 61 20  | -insert-end-mark.()..."Insert.a. | 
| 12aa0 |  6d 61 72 6b 65 72 20 74 6f 20 65 6e 64 20 61 20    73 6f 72 74 20 72 65 67 69 6f 6e 2e 22 0a 20 20  | marker.to.end.a.sort.region."... | 
| 12ac0 |  28 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20    28 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e 0a  | (interactive)...(save-excursion. | 
| 12ae0 |  20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28    70 6f 69 6e 74 2d 6d 69 6e 29 29 0a 20 20 20 20  | ....(goto-char.(point-min))..... | 
| 12b00 |  28 77 68 65 6e 20 28 6c 65 64 67 65 72 2d 73 6f    72 74 2d 66 69 6e 64 2d 65 6e 64 29 0a 20 20 20  | (when.(ledger-sort-find-end).... | 
| 12b20 |  20 20 20 28 64 65 6c 65 74 65 2d 72 65 67 69 6f    6e 20 28 6d 61 74 63 68 2d 62 65 67 69 6e 6e 69  | ...(delete-region.(match-beginni | 
| 12b40 |  6e 67 20 30 29 20 28 6d 61 74 63 68 2d 65 6e 64    20 30 29 29 29 29 0a 20 20 28 62 65 67 69 6e 6e  | ng.0).(match-end.0))))...(beginn | 
| 12b60 |  69 6e 67 2d 6f 66 2d 6c 69 6e 65 29 0a 20 20 28    69 6e 73 65 72 74 20 22 5c 6e 3b 20 4c 65 64 67  | ing-of-line)...(insert."\n;.Ledg | 
| 12b80 |  65 72 2d 6d 6f 64 65 3a 20 45 6e 64 20 73 6f 72    74 5c 6e 5c 6e 22 29 29 0a 0a 28 64 65 66 75 6e  | er-mode:.End.sort\n\n"))..(defun | 
| 12ba0 |  20 6c 65 64 67 65 72 2d 73 6f 72 74 2d 73 74 61    72 74 6b 65 79 20 28 29 0a 20 20 22 52 65 74 75  | .ledger-sort-startkey.()..."Retu | 
| 12bc0 |  72 6e 20 61 20 6e 75 6d 65 72 69 63 20 73 6f 72    74 20 6b 65 79 20 62 61 73 65 64 20 6f 6e 20 74  | rn.a.numeric.sort.key.based.on.t | 
| 12be0 |  68 65 20 64 61 74 65 20 6f 66 20 74 68 65 20 78    61 63 74 20 62 65 67 69 6e 6e 69 6e 67 20 61 74  | he.date.of.the.xact.beginning.at | 
| 12c00 |  20 70 6f 69 6e 74 2e 22 0a 20 20 3b 3b 20 43 61    6e 20 75 73 65 20 60 74 69 6d 65 2d 63 6f 6e 76  | .point."...;;.Can.use.`time-conv | 
| 12c20 |  65 72 74 27 20 74 6f 20 72 65 74 75 72 6e 20 61    6e 20 69 6e 74 65 67 65 72 20 69 6e 73 74 65 61  | ert'.to.return.an.integer.instea | 
| 12c40 |  64 20 6f 66 20 61 20 66 6c 6f 61 74 69 6e 67 2d    70 6f 69 6e 74 0a 20 20 3b 3b 20 6e 75 6d 62 65  | d.of.a.floating-point...;;.numbe | 
| 12c60 |  72 2c 20 73 74 61 72 74 69 6e 67 20 69 6e 20 45    6d 61 63 73 20 32 37 2e 0a 20 20 28 66 6c 6f 61  | r,.starting.in.Emacs.27....(floa | 
| 12c80 |  74 2d 74 69 6d 65 0a 20 20 20 28 6c 65 64 67 65    72 2d 70 61 72 73 65 2d 69 73 6f 2d 64 61 74 65  | t-time....(ledger-parse-iso-date | 
| 12ca0 |  0a 20 20 20 20 28 62 75 66 66 65 72 2d 73 75 62    73 74 72 69 6e 67 2d 6e 6f 2d 70 72 6f 70 65 72  | .....(buffer-substring-no-proper | 
| 12cc0 |  74 69 65 73 20 28 70 6f 69 6e 74 29 20 28 2b 20    31 30 20 28 70 6f 69 6e 74 29 29 29 29 29 29 0a  | ties.(point).(+.10.(point)))))). | 
| 12ce0 |  0a 28 64 65 66 75 6e 20 6c 65 64 67 65 72 2d 73    6f 72 74 2d 72 65 67 69 6f 6e 20 28 62 65 67 20  | .(defun.ledger-sort-region.(beg. | 
| 12d00 |  65 6e 64 29 0a 20 20 22 53 6f 72 74 20 74 68 65    20 72 65 67 69 6f 6e 20 66 72 6f 6d 20 42 45 47  | end)..."Sort.the.region.from.BEG | 
| 12d20 |  20 74 6f 20 45 4e 44 20 69 6e 20 63 68 72 6f 6e    6f 6c 6f 67 69 63 61 6c 20 6f 72 64 65 72 2e 22  | .to.END.in.chronological.order." | 
| 12d40 |  0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 20    22 72 22 29 20 3b 3b 20 6c 6f 61 64 20 62 65 67  | ...(interactive."r").;;.load.beg | 
| 12d60 |  20 61 6e 64 20 65 6e 64 20 66 72 6f 6d 20 70 6f    69 6e 74 20 61 6e 64 20 6d 61 72 6b 0a 20 20 3b  | .and.end.from.point.and.mark...; | 
| 12d80 |  3b 20 61 75 74 6f 6d 61 67 69 63 61 6c 6c 79 0a    20 20 28 6c 65 74 2a 20 28 28 62 6f 75 6e 64 73  | ;.automagically...(let*.((bounds | 
| 12da0 |  20 28 6c 65 64 67 65 72 2d 6e 61 76 69 67 61 74    65 2d 66 69 6e 64 2d 78 61 63 74 2d 65 78 74 65  | .(ledger-navigate-find-xact-exte | 
| 12dc0 |  6e 74 73 20 28 70 6f 69 6e 74 29 29 29 0a 20 20    20 20 20 20 20 20 20 28 70 6f 69 6e 74 2d 64 65  | nts.(point)))..........(point-de | 
| 12de0 |  6c 74 61 20 28 2d 20 28 70 6f 69 6e 74 29 20 28    63 61 72 20 62 6f 75 6e 64 73 29 29 29 0a 20 20  | lta.(-.(point).(car.bounds)))... | 
| 12e00 |  20 20 20 20 20 20 20 28 74 61 72 67 65 74 2d 78    61 63 74 20 28 62 75 66 66 65 72 2d 73 75 62 73  | .......(target-xact.(buffer-subs | 
| 12e20 |  74 72 69 6e 67 20 28 63 61 72 20 62 6f 75 6e 64    73 29 20 28 63 61 64 72 20 62 6f 75 6e 64 73 29  | tring.(car.bounds).(cadr.bounds) | 
| 12e40 |  29 29 0a 20 20 20 20 20 20 20 20 20 28 69 6e 68    69 62 69 74 2d 6d 6f 64 69 66 69 63 61 74 69 6f  | ))..........(inhibit-modificatio | 
| 12e60 |  6e 2d 68 6f 6f 6b 73 20 74 29 29 0a 20 20 20 20    28 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e 0a  | n-hooks.t)).....(save-excursion. | 
| 12e80 |  20 20 20 20 20 20 28 73 61 76 65 2d 72 65 73 74    72 69 63 74 69 6f 6e 0a 20 20 20 20 20 20 20 20  | ......(save-restriction......... | 
| 12ea0 |  28 67 6f 74 6f 2d 63 68 61 72 20 62 65 67 29 0a    20 20 20 20 20 20 20 20 3b 3b 20 6d 61 6b 65 20  | (goto-char.beg).........;;.make. | 
| 12ec0 |  73 75 72 65 20 62 65 67 20 6f 66 20 72 65 67 69    6f 6e 20 69 73 20 61 74 20 74 68 65 20 62 65 67  | sure.beg.of.region.is.at.the.beg | 
| 12ee0 |  69 6e 6e 69 6e 67 20 6f 66 20 61 20 6c 69 6e 65    0a 20 20 20 20 20 20 20 20 28 62 65 67 69 6e 6e  | inning.of.a.line.........(beginn | 
| 12f00 |  69 6e 67 2d 6f 66 2d 6c 69 6e 65 29 0a 20 20 20    20 20 20 20 20 3b 3b 20 6d 61 6b 65 20 73 75 72  | ing-of-line).........;;.make.sur | 
| 12f20 |  65 20 70 6f 69 6e 74 20 69 73 20 61 74 20 74 68    65 20 62 65 67 69 6e 6e 69 6e 67 20 6f 66 20 61  | e.point.is.at.the.beginning.of.a | 
| 12f40 |  20 78 61 63 74 0a 20 20 20 20 20 20 20 20 28 75    6e 6c 65 73 73 20 28 6c 6f 6f 6b 69 6e 67 2d 61  | .xact.........(unless.(looking-a | 
| 12f60 |  74 20 6c 65 64 67 65 72 2d 70 61 79 65 65 2d 61    6e 79 2d 73 74 61 74 75 73 2d 72 65 67 65 78 29  | t.ledger-payee-any-status-regex) | 
| 12f80 |  0a 20 20 20 20 20 20 20 20 20 20 28 6c 65 64 67    65 72 2d 6e 61 76 69 67 61 74 65 2d 6e 65 78 74  | ...........(ledger-navigate-next | 
| 12fa0 |  2d 78 61 63 74 29 29 0a 20 20 20 20 20 20 20 20    28 73 65 74 71 20 62 65 67 20 28 70 6f 69 6e 74  | -xact)).........(setq.beg.(point | 
| 12fc0 |  29 29 0a 20 20 20 20 20 20 20 20 28 67 6f 74 6f    2d 63 68 61 72 20 65 6e 64 29 0a 20 20 20 20 20  | )).........(goto-char.end)...... | 
| 12fe0 |  20 20 20 28 6c 65 64 67 65 72 2d 6e 61 76 69 67    61 74 65 2d 6e 65 78 74 2d 78 61 63 74 29 0a 20  | ...(ledger-navigate-next-xact).. | 
| 13000 |  20 20 20 20 20 20 20 3b 3b 20 6d 61 6b 65 20 73    75 72 65 20 65 6e 64 20 6f 66 20 72 65 67 69 6f  | .......;;.make.sure.end.of.regio | 
| 13020 |  6e 20 69 73 20 61 74 20 74 68 65 20 62 65 67 69    6e 6e 69 6e 67 20 6f 66 20 6e 65 78 74 20 72 65  | n.is.at.the.beginning.of.next.re | 
| 13040 |  63 6f 72 64 0a 20 20 20 20 20 20 20 20 3b 3b 20    61 66 74 65 72 20 74 68 65 20 72 65 67 69 6f 6e  | cord.........;;.after.the.region | 
| 13060 |  0a 20 20 20 20 20 20 20 20 28 73 65 74 71 20 65    6e 64 20 28 70 6f 69 6e 74 29 29 0a 20 20 20 20  | .........(setq.end.(point))..... | 
| 13080 |  20 20 20 20 28 6e 61 72 72 6f 77 2d 74 6f 2d 72    65 67 69 6f 6e 20 62 65 67 20 65 6e 64 29 0a 20  | ....(narrow-to-region.beg.end).. | 
| 130a0 |  20 20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68 61    72 20 62 65 67 29 0a 0a 20 20 20 20 20 20 20 20  | .......(goto-char.beg).......... | 
| 130c0 |  28 6c 65 74 20 28 28 69 6e 68 69 62 69 74 2d 66    69 65 6c 64 2d 74 65 78 74 2d 6d 6f 74 69 6f 6e  | (let.((inhibit-field-text-motion | 
| 130e0 |  20 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 28    73 6f 72 74 2d 73 75 62 72 0a 20 20 20 20 20 20  | .t))...........(sort-subr....... | 
| 13100 |  20 20 20 20 20 6e 69 6c 0a 20 20 20 20 20 20 20    20 20 20 20 23 27 6c 65 64 67 65 72 2d 6e 61 76  | .....nil............#'ledger-nav | 
| 13120 |  69 67 61 74 65 2d 6e 65 78 74 2d 78 61 63 74 0a    20 20 20 20 20 20 20 20 20 20 20 23 27 6c 65 64  | igate-next-xact............#'led | 
| 13140 |  67 65 72 2d 6e 61 76 69 67 61 74 65 2d 65 6e 64    2d 6f 66 2d 78 61 63 74 0a 20 20 20 20 20 20 20  | ger-navigate-end-of-xact........ | 
| 13160 |  20 20 20 20 23 27 6c 65 64 67 65 72 2d 73 6f 72    74 2d 73 74 61 72 74 6b 65 79 29 29 29 29 0a 0a  | ....#'ledger-sort-startkey)))).. | 
| 13180 |  20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28    70 6f 69 6e 74 2d 6d 69 6e 29 29 0a 20 20 20 20  | ....(goto-char.(point-min))..... | 
| 131a0 |  28 73 65 61 72 63 68 2d 66 6f 72 77 61 72 64 20    74 61 72 67 65 74 2d 78 61 63 74 29 0a 20 20 20  | (search-forward.target-xact).... | 
| 131c0 |  20 28 67 6f 74 6f 2d 63 68 61 72 20 28 2b 20 28    6d 61 74 63 68 2d 62 65 67 69 6e 6e 69 6e 67 20  | .(goto-char.(+.(match-beginning. | 
| 131e0 |  30 29 20 70 6f 69 6e 74 2d 64 65 6c 74 61 29 29    29 29 0a 0a 28 64 65 66 75 6e 20 6c 65 64 67 65  | 0).point-delta))))..(defun.ledge | 
| 13200 |  72 2d 73 6f 72 74 2d 62 75 66 66 65 72 20 28 29    0a 20 20 22 53 6f 72 74 20 74 68 65 20 65 6e 74  | r-sort-buffer.()..."Sort.the.ent | 
| 13220 |  69 72 65 20 62 75 66 66 65 72 2e 22 0a 20 20 28    69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20 28  | ire.buffer."...(interactive)...( | 
| 13240 |  6c 65 74 20 28 73 6f 72 74 2d 73 74 61 72 74 20    73 6f 72 74 2d 65 6e 64 29 0a 20 20 20 20 28 73  | let.(sort-start.sort-end).....(s | 
| 13260 |  61 76 65 2d 65 78 63 75 72 73 69 6f 6e 0a 20 20    20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28  | ave-excursion.......(goto-char.( | 
| 13280 |  70 6f 69 6e 74 2d 6d 69 6e 29 29 0a 20 20 20 20    20 20 28 73 65 74 71 20 73 6f 72 74 2d 73 74 61  | point-min)).......(setq.sort-sta | 
| 132a0 |  72 74 20 28 6c 65 64 67 65 72 2d 73 6f 72 74 2d    66 69 6e 64 2d 73 74 61 72 74 29 0a 20 20 20 20  | rt.(ledger-sort-find-start)..... | 
| 132c0 |  20 20 20 20 20 20 20 20 73 6f 72 74 2d 65 6e 64    20 28 6c 65 64 67 65 72 2d 73 6f 72 74 2d 66 69  | ........sort-end.(ledger-sort-fi | 
| 132e0 |  6e 64 2d 65 6e 64 29 29 29 0a 20 20 20 20 28 6c    65 64 67 65 72 2d 73 6f 72 74 2d 72 65 67 69 6f  | nd-end))).....(ledger-sort-regio | 
| 13300 |  6e 20 28 6f 72 20 73 6f 72 74 2d 73 74 61 72 74    20 28 70 6f 69 6e 74 2d 6d 69 6e 29 29 0a 20 20  | n.(or.sort-start.(point-min))... | 
| 13320 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 6f 72 20 73 6f 72 74 2d 65  | ......................(or.sort-e | 
| 13340 |  6e 64 20 28 70 6f 69 6e 74 2d 6d 61 78 29 29 29    29 29 0a 0a 28 70 72 6f 76 69 64 65 20 27 6c 65  | nd.(point-max)))))..(provide.'le | 
| 13360 |  64 67 65 72 2d 73 6f 72 74 29 0a 0a 3b 3b 3b 20    6c 65 64 67 65 72 2d 73 6f 72 74 2e 65 6c 20 65  | dger-sort)..;;;.ledger-sort.el.e | 
| 13380 |  6e 64 73 20 68 65 72 65 0a 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | nds.here........................ | 
| 133a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 133c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 133e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 13400 |  6c 65 64 67 65 72 2d 6d 6f 64 65 2d 32 30 32 34    30 34 31 36 2e 34 31 36 2f 6c 65 64 67 65 72 2d  | ledger-mode-20240416.416/ledger- | 
| 13420 |  6f 63 63 75 72 2e 65 6c 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | occur.el........................ | 
| 13440 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 13460 |  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 | 
| 13480 |  30 30 31 35 33 36 31 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 36 30 31 35 00 20 30 00 00 00  | 0015361.00000000000.016015..0... | 
| 134a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 134c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 134e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 13500 |  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................... | 
| 13520 |  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................... | 
| 13540 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 13560 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 13580 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 135a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 135c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 135e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 13600 |  3b 3b 3b 20 6c 65 64 67 65 72 2d 6f 63 63 75 72    2e 65 6c 20 2d 2d 2d 20 48 65 6c 70 65 72 20 63  | ;;;.ledger-occur.el.---.Helper.c | 
| 13620 |  6f 64 65 20 66 6f 72 20 75 73 65 20 77 69 74 68    20 74 68 65 20 22 6c 65 64 67 65 72 22 20 63 6f  | ode.for.use.with.the."ledger".co | 
| 13640 |  6d 6d 61 6e 64 2d 6c 69 6e 65 20 74 6f 6f 6c 20    20 2d 2a 2d 20 6c 65 78 69 63 61 6c 2d 62 69 6e  | mmand-line.tool..-*-.lexical-bin | 
| 13660 |  64 69 6e 67 3a 20 74 3b 20 2d 2a 2d 0a 0a 3b 3b    20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32  | ding:.t;.-*-..;;.Copyright.(C).2 | 
| 13680 |  30 30 33 2d 32 30 31 36 20 4a 6f 68 6e 20 57 69    65 67 6c 65 79 20 28 6a 6f 68 6e 77 20 41 54 20  | 003-2016.John.Wiegley.(johnw.AT. | 
| 136a0 |  67 6e 75 20 44 4f 54 20 6f 72 67 29 0a 0a 3b 3b    20 54 68 69 73 20 66 69 6c 65 20 69 73 20 6e 6f  | gnu.DOT.org)..;;.This.file.is.no | 
| 136c0 |  74 20 70 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 69 73  | t.part.of.GNU.Emacs...;;.This.is | 
| 136e0 |  20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3b 20    79 6f 75 20 63 61 6e 20 72 65 64 69 73 74 72 69  | .free.software;.you.can.redistri | 
| 13700 |  62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d    6f 64 69 66 79 20 69 74 20 75 6e 64 65 72 0a 3b  | bute.it.and/or.modify.it.under.; | 
| 13720 |  3b 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74    68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50  | ;.the.terms.of.the.GNU.General.P | 
| 13740 |  75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 61 73    20 70 75 62 6c 69 73 68 65 64 20 62 79 20 74 68  | ublic.License.as.published.by.th | 
| 13760 |  65 20 46 72 65 65 0a 3b 3b 20 53 6f 66 74 77 61    72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 3b 20 65  | e.Free.;;.Software.Foundation;.e | 
| 13780 |  69 74 68 65 72 20 76 65 72 73 69 6f 6e 20 32 2c    20 6f 72 20 28 61 74 20 79 6f 75 72 20 6f 70 74  | ither.version.2,.or.(at.your.opt | 
| 137a0 |  69 6f 6e 29 20 61 6e 79 20 6c 61 74 65 72 0a 3b    3b 20 76 65 72 73 69 6f 6e 2e 0a 3b 3b 0a 3b 3b  | ion).any.later.;;.version..;;.;; | 
| 137c0 |  20 54 68 69 73 20 69 73 20 64 69 73 74 72 69 62    75 74 65 64 20 69 6e 20 74 68 65 20 68 6f 70 65  | .This.is.distributed.in.the.hope | 
| 137e0 |  20 74 68 61 74 20 69 74 20 77 69 6c 6c 20 62 65    20 75 73 65 66 75 6c 2c 20 62 75 74 20 57 49 54  | .that.it.will.be.useful,.but.WIT | 
| 13800 |  48 4f 55 54 0a 3b 3b 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  | HOUT.;;.ANY.WARRANTY;.without.ev | 
| 13820 |  65 6e 20 74 68 65 20 69 6d 70 6c 69 65 64 20 77    61 72 72 61 6e 74 79 20 6f 66 20 4d 45 52 43 48  | en.the.implied.warranty.of.MERCH | 
| 13840 |  41 4e 54 41 42 49 4c 49 54 59 20 6f 72 0a 3b 3b    20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50  | ANTABILITY.or.;;.FITNESS.FOR.A.P | 
| 13860 |  41 52 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53    45 2e 20 20 53 65 65 20 74 68 65 20 47 4e 55 20  | ARTICULAR.PURPOSE...See.the.GNU. | 
| 13880 |  47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c    69 63 65 6e 73 65 0a 3b 3b 20 66 6f 72 20 6d 6f  | General.Public.License.;;.for.mo | 
| 138a0 |  72 65 20 64 65 74 61 69 6c 73 2e 0a 3b 3b 0a 3b    3b 20 59 6f 75 20 73 68 6f 75 6c 64 20 68 61 76  | re.details..;;.;;.You.should.hav | 
| 138c0 |  65 20 72 65 63 65 69 76 65 64 20 61 20 63 6f 70    79 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e  | e.received.a.copy.of.the.GNU.Gen | 
| 138e0 |  65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65    6e 73 65 0a 3b 3b 20 61 6c 6f 6e 67 20 77 69 74  | eral.Public.License.;;.along.wit | 
| 13900 |  68 20 47 4e 55 20 45 6d 61 63 73 3b 20 73 65 65    20 74 68 65 20 66 69 6c 65 20 43 4f 50 59 49 4e  | h.GNU.Emacs;.see.the.file.COPYIN | 
| 13920 |  47 2e 20 20 49 66 20 6e 6f 74 2c 20 77 72 69 74    65 20 74 6f 20 74 68 65 0a 3b 3b 20 46 72 65 65  | G...If.not,.write.to.the.;;.Free | 
| 13940 |  20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61    74 69 6f 6e 2c 20 49 6e 63 2e 2c 20 35 31 20 46  | .Software.Foundation,.Inc.,.51.F | 
| 13960 |  72 61 6e 6b 6c 69 6e 20 53 74 72 65 65 74 2c 20    46 69 66 74 68 20 46 6c 6f 6f 72 2c 20 42 6f 73  | ranklin.Street,.Fifth.Floor,.Bos | 
| 13980 |  74 6f 6e 2c 0a 3b 3b 20 4d 41 20 30 32 31 31 30    2d 31 33 30 31 20 55 53 41 2e 0a 0a 3b 3b 3b 20  | ton,.;;.MA.02110-1301.USA...;;;. | 
| 139a0 |  43 6f 6d 6d 65 6e 74 61 72 79 3a 0a 3b 3b 20 50    72 6f 76 69 64 65 20 62 75 66 66 65 72 20 6e 61  | Commentary:.;;.Provide.buffer.na | 
| 139c0 |  72 72 6f 77 69 6e 67 20 74 6f 20 6c 65 64 67 65    72 20 6d 6f 64 65 2e 20 20 41 64 61 70 74 65 64  | rrowing.to.ledger.mode...Adapted | 
| 139e0 |  20 66 72 6f 6d 20 6f 72 69 67 69 6e 61 6c 20 6c    6f 63 63 75 72 0a 3b 3b 20 6d 6f 64 65 20 62 79  | .from.original.loccur.;;.mode.by | 
| 13a00 |  20 41 6c 65 78 65 79 20 56 65 72 65 74 65 6e 6e    69 6b 6f 76 20 3c 61 6c 65 78 65 79 20 64 6f 74  | .Alexey.Veretennikov.<alexey.dot | 
| 13a20 |  20 76 65 72 65 74 65 6e 6e 69 6b 6f 76 20 61 74    20 67 6d 61 69 6c 20 64 6f 74 0a 3b 3b 20 63 6f  | .veretennikov.at.gmail.dot.;;.co | 
| 13a40 |  6d 3e 0a 3b 3b 0a 3b 3b 20 41 64 61 70 74 65 64    20 74 6f 20 6c 65 64 67 65 72 20 6d 6f 64 65 20  | m>.;;.;;.Adapted.to.ledger.mode. | 
| 13a60 |  62 79 20 43 72 61 69 67 20 45 61 72 6c 73 20 3c    65 6e 64 65 72 77 77 20 61 74 20 67 6d 61 69 6c  | by.Craig.Earls.<enderww.at.gmail | 
| 13a80 |  20 64 6f 74 0a 3b 3b 20 63 6f 6d 3e 0a 0a 3b 3b    3b 20 43 6f 64 65 3a 0a 0a 28 72 65 71 75 69 72  | .dot.;;.com>..;;;.Code:..(requir | 
| 13aa0 |  65 20 27 63 6c 2d 6c 69 62 29 0a 28 72 65 71 75    69 72 65 20 27 6c 65 64 67 65 72 2d 6e 61 76 69  | e.'cl-lib).(require.'ledger-navi | 
| 13ac0 |  67 61 74 65 29 0a 0a 28 64 65 66 63 6f 6e 73 74    20 6c 65 64 67 65 72 2d 6f 63 63 75 72 2d 6f 76  | gate)..(defconst.ledger-occur-ov | 
| 13ae0 |  65 72 6c 61 79 2d 70 72 6f 70 65 72 74 79 2d 6e    61 6d 65 20 27 6c 65 64 67 65 72 2d 6f 63 63 75  | erlay-property-name.'ledger-occu | 
| 13b00 |  72 2d 63 75 73 74 6f 6d 2d 62 75 66 66 65 72 2d    67 72 65 70 29 0a 0a 28 64 65 66 63 75 73 74 6f  | r-custom-buffer-grep)..(defcusto | 
| 13b20 |  6d 20 6c 65 64 67 65 72 2d 6f 63 63 75 72 2d 75    73 65 2d 66 61 63 65 2d 73 68 6f 77 6e 20 74 0a  | m.ledger-occur-use-face-shown.t. | 
| 13b40 |  20 20 22 49 66 20 6e 6f 6e 2d 6e 69 6c 2c 20 75    73 65 20 61 20 63 75 73 74 6f 6d 20 66 61 63 65  | .."If.non-nil,.use.a.custom.face | 
| 13b60 |  20 66 6f 72 20 78 61 63 74 73 20 73 68 6f 77 6e    20 69 6e 20 60 6c 65 64 67 65 72 2d 6f 63 63 75  | .for.xacts.shown.in.`ledger-occu | 
| 13b80 |  72 27 20 6d 6f 64 65 2e 0a 54 68 69 73 20 75 73    65 73 20 60 6c 65 64 67 65 72 2d 6f 63 63 75 72  | r'.mode..This.uses.`ledger-occur | 
| 13ba0 |  2d 78 61 63 74 2d 66 61 63 65 27 2e 22 0a 20 20    3a 74 79 70 65 20 27 62 6f 6f 6c 65 61 6e 0a 20  | -xact-face'."...:type.'boolean.. | 
| 13bc0 |  20 3a 67 72 6f 75 70 20 27 6c 65 64 67 65 72 29    0a 28 6d 61 6b 65 2d 76 61 72 69 61 62 6c 65 2d  | .:group.'ledger).(make-variable- | 
| 13be0 |  62 75 66 66 65 72 2d 6c 6f 63 61 6c 20 27 6c 65    64 67 65 72 2d 6f 63 63 75 72 2d 75 73 65 2d 66  | buffer-local.'ledger-occur-use-f | 
| 13c00 |  61 63 65 2d 73 68 6f 77 6e 29 0a 0a 0a 28 64 65    66 76 61 72 20 6c 65 64 67 65 72 2d 6f 63 63 75  | ace-shown)...(defvar.ledger-occu | 
| 13c20 |  72 2d 68 69 73 74 6f 72 79 20 6e 69 6c 0a 20 20    22 48 69 73 74 6f 72 79 20 6f 66 20 70 72 65 76  | r-history.nil..."History.of.prev | 
| 13c40 |  69 6f 75 73 6c 79 20 73 65 61 72 63 68 65 64 20    65 78 70 72 65 73 73 69 6f 6e 73 20 66 6f 72 20  | iously.searched.expressions.for. | 
| 13c60 |  74 68 65 20 70 72 6f 6d 70 74 2e 22 29 0a 0a 28    64 65 66 76 61 72 2d 6c 6f 63 61 6c 20 6c 65 64  | the.prompt.")..(defvar-local.led | 
| 13c80 |  67 65 72 2d 6f 63 63 75 72 2d 63 75 72 72 65 6e    74 2d 72 65 67 65 78 20 6e 69 6c 0a 20 20 22 50  | ger-occur-current-regex.nil..."P | 
| 13ca0 |  61 74 74 65 72 6e 20 63 75 72 72 65 6e 74 6c 79    20 61 70 70 6c 69 65 64 20 74 6f 20 6e 61 72 72  | attern.currently.applied.to.narr | 
| 13cc0 |  6f 77 20 74 68 65 20 62 75 66 66 65 72 2e 22 29    0a 0a 28 64 65 66 76 61 72 20 6c 65 64 67 65 72  | ow.the.buffer.")..(defvar.ledger | 
| 13ce0 |  2d 6f 63 63 75 72 2d 6d 6f 64 65 2d 6d 61 70 0a    20 20 28 6c 65 74 20 28 28 6d 61 70 20 28 6d 61  | -occur-mode-map...(let.((map.(ma | 
| 13d00 |  6b 65 2d 73 70 61 72 73 65 2d 6b 65 79 6d 61 70    29 29 29 0a 20 20 20 20 28 64 65 66 69 6e 65 2d  | ke-sparse-keymap))).....(define- | 
| 13d20 |  6b 65 79 20 6d 61 70 20 28 6b 62 64 20 22 43 2d    63 20 43 2d 67 22 29 20 23 27 6c 65 64 67 65 72  | key.map.(kbd."C-c.C-g").#'ledger | 
| 13d40 |  2d 6f 63 63 75 72 2d 72 65 66 72 65 73 68 29 0a    20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65 79 20  | -occur-refresh).....(define-key. | 
| 13d60 |  6d 61 70 20 28 6b 62 64 20 22 43 2d 63 20 43 2d    66 22 29 20 23 27 6c 65 64 67 65 72 2d 6f 63 63  | map.(kbd."C-c.C-f").#'ledger-occ | 
| 13d80 |  75 72 2d 6d 6f 64 65 29 0a 20 20 20 20 6d 61 70    29 0a 20 20 22 4b 65 79 6d 61 70 20 75 73 65 64  | ur-mode).....map)..."Keymap.used | 
| 13da0 |  20 62 79 20 60 6c 65 64 67 65 72 2d 6f 63 63 75    72 2d 6d 6f 64 65 27 2e 22 29 0a 0a 28 64 65 66  | .by.`ledger-occur-mode'.")..(def | 
| 13dc0 |  69 6e 65 2d 6d 69 6e 6f 72 2d 6d 6f 64 65 20 6c    65 64 67 65 72 2d 6f 63 63 75 72 2d 6d 6f 64 65  | ine-minor-mode.ledger-occur-mode | 
| 13de0 |  0a 20 20 22 41 20 6d 69 6e 6f 72 20 6d 6f 64 65    20 77 68 69 63 68 20 64 69 73 70 6c 61 79 20 6f  | ..."A.minor.mode.which.display.o | 
| 13e00 |  6e 6c 79 20 74 72 61 6e 73 61 63 74 69 6f 6e 73    20 6d 61 74 63 68 69 6e 67 20 61 20 70 61 74 74  | nly.transactions.matching.a.patt | 
| 13e20 |  65 72 6e 2e 0a 54 68 65 20 70 61 74 74 65 72 6e    20 69 73 20 67 69 76 65 6e 20 62 79 20 60 6c 65  | ern..The.pattern.is.given.by.`le | 
| 13e40 |  64 67 65 72 2d 6f 63 63 75 72 2d 63 75 72 72 65    6e 74 2d 72 65 67 65 78 27 2e 22 0a 20 20 3a 69  | dger-occur-current-regex'."...:i | 
| 13e60 |  6e 69 74 2d 76 61 6c 75 65 20 6e 69 6c 0a 20 20    3a 6c 69 67 68 74 65 72 20 28 3a 65 76 61 6c 20  | nit-value.nil...:lighter.(:eval. | 
| 13e80 |  28 66 6f 72 6d 61 74 20 22 20 4c 65 64 67 65 72    2d 4e 61 72 72 6f 77 28 25 73 29 22 20 6c 65 64  | (format.".Ledger-Narrow(%s)".led | 
| 13ea0 |  67 65 72 2d 6f 63 63 75 72 2d 63 75 72 72 65 6e    74 2d 72 65 67 65 78 29 29 0a 20 20 3a 6b 65 79  | ger-occur-current-regex))...:key | 
| 13ec0 |  6d 61 70 20 6c 65 64 67 65 72 2d 6f 63 63 75 72    2d 6d 6f 64 65 2d 6d 61 70 0a 20 20 28 69 66 20  | map.ledger-occur-mode-map...(if. | 
| 13ee0 |  28 61 6e 64 20 6c 65 64 67 65 72 2d 6f 63 63 75    72 2d 63 75 72 72 65 6e 74 2d 72 65 67 65 78 20  | (and.ledger-occur-current-regex. | 
| 13f00 |  6c 65 64 67 65 72 2d 6f 63 63 75 72 2d 6d 6f 64    65 29 0a 20 20 20 20 20 20 28 70 72 6f 67 6e 20  | ledger-occur-mode).......(progn. | 
| 13f20 |  28 6c 65 64 67 65 72 2d 6f 63 63 75 72 2d 72 65    66 72 65 73 68 29 0a 20 20 20 20 20 20 20 20 20  | (ledger-occur-refresh).......... | 
| 13f40 |  20 20 20 20 3b 3b 20 43 6c 65 61 72 20 6f 76 65    72 6c 61 79 73 20 61 66 74 65 72 20 72 65 76 65  | ....;;.Clear.overlays.after.reve | 
| 13f60 |  72 74 2d 62 75 66 66 65 72 20 61 6e 64 20 73 69    6d 69 6c 61 72 20 63 6f 6d 6d 61 6e 64 73 2e 0a  | rt-buffer.and.similar.commands.. | 
| 13f80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 64    64 2d 68 6f 6f 6b 20 27 63 68 61 6e 67 65 2d 6d  | .............(add-hook.'change-m | 
| 13fa0 |  61 6a 6f 72 2d 6d 6f 64 65 2d 68 6f 6f 6b 20 23    27 6c 65 64 67 65 72 2d 6f 63 63 75 72 2d 72 65  | ajor-mode-hook.#'ledger-occur-re | 
| 13fc0 |  6d 6f 76 65 2d 6f 76 65 72 6c 61 79 73 20 6e 69    6c 20 74 29 29 0a 20 20 20 20 28 6c 65 64 67 65  | move-overlays.nil.t)).....(ledge | 
| 13fe0 |  72 2d 6f 63 63 75 72 2d 72 65 6d 6f 76 65 2d 6f    76 65 72 6c 61 79 73 29 0a 20 20 20 20 28 6d 65  | r-occur-remove-overlays).....(me | 
| 14000 |  73 73 61 67 65 20 22 53 68 6f 77 69 6e 67 20 61    6c 6c 20 74 72 61 6e 73 61 63 74 69 6f 6e 73 22  | ssage."Showing.all.transactions" | 
| 14020 |  29 29 29 0a 0a 28 64 65 66 75 6e 20 6c 65 64 67    65 72 2d 6f 63 63 75 72 2d 72 65 66 72 65 73 68  | )))..(defun.ledger-occur-refresh | 
| 14040 |  20 28 29 0a 20 20 22 52 65 2d 61 70 70 6c 79 20    74 68 65 20 63 75 72 72 65 6e 74 20 6e 61 72 72  | .()..."Re-apply.the.current.narr | 
| 14060 |  6f 77 69 6e 67 20 65 78 70 72 65 73 73 69 6f 6e    2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76  | owing.expression."...(interactiv | 
| 14080 |  65 29 0a 20 20 28 6c 65 74 20 28 28 6d 61 74 63    68 65 73 20 28 6c 65 64 67 65 72 2d 6f 63 63 75  | e)...(let.((matches.(ledger-occu | 
| 140a0 |  72 2d 63 6f 6d 70 72 65 73 73 2d 6d 61 74 63 68    65 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | r-compress-matches.............. | 
| 140c0 |  20 20 20 20 20 28 6c 65 64 67 65 72 2d 6f 63 63    75 72 2d 66 69 6e 64 2d 6d 61 74 63 68 65 73 20  | .....(ledger-occur-find-matches. | 
| 140e0 |  6c 65 64 67 65 72 2d 6f 63 63 75 72 2d 63 75 72    72 65 6e 74 2d 72 65 67 65 78 29 29 29 29 0a 20  | ledger-occur-current-regex)))).. | 
| 14100 |  20 20 20 28 69 66 20 6d 61 74 63 68 65 73 0a 20    20 20 20 20 20 20 20 28 6c 65 64 67 65 72 2d 6f  | ...(if.matches.........(ledger-o | 
| 14120 |  63 63 75 72 2d 63 72 65 61 74 65 2d 6f 76 65 72    6c 61 79 73 20 6d 61 74 63 68 65 73 29 0a 20 20  | ccur-create-overlays.matches)... | 
| 14140 |  20 20 20 20 28 6d 65 73 73 61 67 65 20 22 4e 6f    20 6d 61 74 63 68 65 73 20 66 6f 75 6e 64 20 66  | ....(message."No.matches.found.f | 
| 14160 |  6f 72 20 27 25 73 27 22 20 6c 65 64 67 65 72 2d    6f 63 63 75 72 2d 63 75 72 72 65 6e 74 2d 72 65  | or.'%s'".ledger-occur-current-re | 
| 14180 |  67 65 78 29 0a 20 20 20 20 20 20 28 6c 65 64 67    65 72 2d 6f 63 63 75 72 2d 6d 6f 64 65 20 2d 31  | gex).......(ledger-occur-mode.-1 | 
| 141a0 |  29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6c 65 64    67 65 72 2d 6f 63 63 75 72 20 28 72 65 67 65 78  | ))))..(defun.ledger-occur.(regex | 
| 141c0 |  29 0a 20 20 22 53 68 6f 77 20 6f 6e 6c 79 20 74    72 61 6e 73 61 63 74 69 6f 6e 73 20 69 6e 20 74  | )..."Show.only.transactions.in.t | 
| 141e0 |  68 65 20 63 75 72 72 65 6e 74 20 62 75 66 66 65    72 20 77 68 69 63 68 20 6d 61 74 63 68 20 52 45  | he.current.buffer.which.match.RE | 
| 14200 |  47 45 58 2e 0a 0a 54 68 69 73 20 63 6f 6d 6d 61    6e 64 20 68 69 64 65 73 20 61 6c 6c 20 78 61 63  | GEX...This.command.hides.all.xac | 
| 14220 |  74 20 69 6e 20 74 68 65 20 63 75 72 72 65 6e 74    20 62 75 66 66 65 72 20 65 78 63 65 70 74 20 74  | t.in.the.current.buffer.except.t | 
| 14240 |  68 6f 73 65 0a 6d 61 74 63 68 69 6e 67 20 52 45    47 45 58 2e 20 20 49 66 20 52 45 47 45 58 20 69  | hose.matching.REGEX...If.REGEX.i | 
| 14260 |  73 20 6e 69 6c 20 6f 72 20 65 6d 70 74 79 2c 20    74 75 72 6e 20 6f 66 66 20 61 6e 79 20 6e 61 72  | s.nil.or.empty,.turn.off.any.nar | 
| 14280 |  72 6f 77 69 6e 67 0a 63 75 72 72 65 6e 74 6c 79    20 61 63 74 69 76 65 2e 22 0a 20 20 28 69 6e 74  | rowing.currently.active."...(int | 
| 142a0 |  65 72 61 63 74 69 76 65 0a 20 20 20 28 6c 69 73    74 20 28 72 65 61 64 2d 72 65 67 65 78 70 20 22  | eractive....(list.(read-regexp." | 
| 142c0 |  52 65 67 65 78 70 22 20 28 6c 65 64 67 65 72 2d    6f 63 63 75 72 2d 70 72 6f 6d 70 74 29 20 27 6c  | Regexp".(ledger-occur-prompt).'l | 
| 142e0 |  65 64 67 65 72 2d 6f 63 63 75 72 2d 68 69 73 74    6f 72 79 29 29 29 0a 20 20 28 69 66 20 28 6f 72  | edger-occur-history)))...(if.(or | 
| 14300 |  20 28 6e 75 6c 6c 20 72 65 67 65 78 29 0a 20 20    20 20 20 20 20 20 20 20 28 7a 65 72 6f 70 20 28  | .(null.regex)...........(zerop.( | 
| 14320 |  6c 65 6e 67 74 68 20 72 65 67 65 78 29 29 29 20    20 3b 20 65 6d 70 74 79 20 72 65 67 65 78 2c 20  | length.regex)))..;.empty.regex,. | 
| 14340 |  6f 72 20 61 6c 72 65 61 64 79 20 68 61 76 65 20    6e 61 72 72 6f 77 65 64 2c 20 63 6c 65 61 72 20  | or.already.have.narrowed,.clear. | 
| 14360 |  6e 61 72 72 6f 77 69 6e 67 0a 20 20 20 20 20 20    28 6c 65 64 67 65 72 2d 6f 63 63 75 72 2d 6d 6f  | narrowing.......(ledger-occur-mo | 
| 14380 |  64 65 20 2d 31 29 0a 20 20 20 20 28 73 65 74 71    20 6c 65 64 67 65 72 2d 6f 63 63 75 72 2d 63 75  | de.-1).....(setq.ledger-occur-cu | 
| 143a0 |  72 72 65 6e 74 2d 72 65 67 65 78 20 72 65 67 65    78 29 0a 20 20 20 20 28 6c 65 64 67 65 72 2d 6f  | rrent-regex.regex).....(ledger-o | 
| 143c0 |  63 63 75 72 2d 6d 6f 64 65 20 31 29 29 29 0a 0a    28 64 65 66 75 6e 20 6c 65 64 67 65 72 2d 6f 63  | ccur-mode.1)))..(defun.ledger-oc | 
| 143e0 |  63 75 72 2d 70 72 6f 6d 70 74 20 28 29 0a 20 20    22 52 65 74 75 72 6e 20 74 68 65 20 64 65 66 61  | cur-prompt.()..."Return.the.defa | 
| 14400 |  75 6c 74 20 76 61 6c 75 65 20 6f 66 20 74 68 65    20 70 72 6f 6d 70 74 2e 0a 0a 44 65 66 61 75 6c  | ult.value.of.the.prompt...Defaul | 
| 14420 |  74 20 76 61 6c 75 65 20 66 6f 72 20 70 72 6f 6d    70 74 20 69 73 20 74 68 65 20 61 63 74 69 76 65  | t.value.for.prompt.is.the.active | 
| 14440 |  20 72 65 67 69 6f 6e 2c 20 69 66 20 69 74 20 69    73 20 6f 6e 65 20 6c 69 6e 65 0a 6c 6f 6e 67 2c  | .region,.if.it.is.one.line.long, | 
| 14460 |  20 6f 74 68 65 72 77 69 73 65 20 69 74 20 69 73    20 74 68 65 20 77 6f 72 64 20 61 74 20 70 6f 69  | .otherwise.it.is.the.word.at.poi | 
| 14480 |  6e 74 2e 22 0a 20 20 28 69 66 20 28 75 73 65 2d    72 65 67 69 6f 6e 2d 70 29 0a 20 20 20 20 20 20  | nt."...(if.(use-region-p)....... | 
| 144a0 |  28 6c 65 74 20 28 28 70 6f 73 31 20 28 72 65 67    69 6f 6e 2d 62 65 67 69 6e 6e 69 6e 67 29 29 0a  | (let.((pos1.(region-beginning)). | 
| 144c0 |  20 20 20 20 20 20 20 20 20 20 20 20 28 70 6f 73    32 20 28 72 65 67 69 6f 6e 2d 65 6e 64 29 29 29  | ............(pos2.(region-end))) | 
| 144e0 |  0a 20 20 20 20 20 20 20 20 3b 3b 20 43 68 65 63    6b 20 69 66 20 74 68 65 20 73 74 61 72 74 20 61  | .........;;.Check.if.the.start.a | 
| 14500 |  6e 64 20 74 68 65 20 6f 66 20 61 6e 20 61 63 74    69 76 65 20 72 65 67 69 6f 6e 20 69 73 20 6f 6e  | nd.the.of.an.active.region.is.on | 
| 14520 |  0a 20 20 20 20 20 20 20 20 3b 3b 20 74 68 65 20    73 61 6d 65 20 6c 69 6e 65 0a 20 20 20 20 20 20  | .........;;.the.same.line....... | 
| 14540 |  20 20 28 69 66 20 28 3d 20 28 6c 69 6e 65 2d 6e    75 6d 62 65 72 2d 61 74 2d 70 6f 73 20 70 6f 73  | ..(if.(=.(line-number-at-pos.pos | 
| 14560 |  31 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 6c 69 6e 65 2d 6e 75 6d 62 65 72 2d 61  | 1)................(line-number-a | 
| 14580 |  74 2d 70 6f 73 20 70 6f 73 32 29 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 28 62 75 66 66 65 72  | t-pos.pos2)).............(buffer | 
| 145a0 |  2d 73 75 62 73 74 72 69 6e 67 2d 6e 6f 2d 70 72    6f 70 65 72 74 69 65 73 20 70 6f 73 31 20 70 6f  | -substring-no-properties.pos1.po | 
| 145c0 |  73 32 29 29 29 0a 20 20 20 20 28 63 75 72 72 65    6e 74 2d 77 6f 72 64 29 29 29 0a 0a 0a 28 64 65  | s2))).....(current-word)))...(de | 
| 145e0 |  66 75 6e 20 6c 65 64 67 65 72 2d 6f 63 63 75 72    2d 6d 61 6b 65 2d 76 69 73 69 62 6c 65 2d 6f 76  | fun.ledger-occur-make-visible-ov | 
| 14600 |  65 72 6c 61 79 20 28 62 65 67 20 65 6e 64 29 0a    20 20 22 4d 61 6b 65 20 61 6e 20 6f 76 65 72 6c  | erlay.(beg.end)..."Make.an.overl | 
| 14620 |  61 79 20 66 6f 72 20 61 20 76 69 73 69 62 6c 65    20 70 6f 72 74 69 6f 6e 20 6f 66 20 74 68 65 20  | ay.for.a.visible.portion.of.the. | 
| 14640 |  62 75 66 66 65 72 2c 20 66 72 6f 6d 20 42 45 47    20 74 6f 20 45 4e 44 2e 22 0a 20 20 28 6c 65 74  | buffer,.from.BEG.to.END."...(let | 
| 14660 |  20 28 28 6f 76 6c 20 28 6d 61 6b 65 2d 6f 76 65    72 6c 61 79 20 62 65 67 20 65 6e 64 29 29 29 0a  | .((ovl.(make-overlay.beg.end))). | 
| 14680 |  20 20 20 20 28 6f 76 65 72 6c 61 79 2d 70 75 74    20 6f 76 6c 20 6c 65 64 67 65 72 2d 6f 63 63 75  | ....(overlay-put.ovl.ledger-occu | 
| 146a0 |  72 2d 6f 76 65 72 6c 61 79 2d 70 72 6f 70 65 72    74 79 2d 6e 61 6d 65 20 74 29 0a 20 20 20 20 28  | r-overlay-property-name.t).....( | 
| 146c0 |  77 68 65 6e 20 6c 65 64 67 65 72 2d 6f 63 63 75    72 2d 75 73 65 2d 66 61 63 65 2d 73 68 6f 77 6e  | when.ledger-occur-use-face-shown | 
| 146e0 |  0a 20 20 20 20 20 20 28 6f 76 65 72 6c 61 79 2d    70 75 74 20 6f 76 6c 20 27 66 6f 6e 74 2d 6c 6f  | .......(overlay-put.ovl.'font-lo | 
| 14700 |  63 6b 2d 66 61 63 65 20 27 6c 65 64 67 65 72 2d    6f 63 63 75 72 2d 78 61 63 74 2d 66 61 63 65 29  | ck-face.'ledger-occur-xact-face) | 
| 14720 |  29 29 29 0a 0a 28 64 65 66 75 6e 20 6c 65 64 67    65 72 2d 6f 63 63 75 72 2d 6d 61 6b 65 2d 69 6e  | )))..(defun.ledger-occur-make-in | 
| 14740 |  76 69 73 69 62 6c 65 2d 6f 76 65 72 6c 61 79 20    28 62 65 67 20 65 6e 64 29 0a 20 20 22 4d 61 6b  | visible-overlay.(beg.end)..."Mak | 
| 14760 |  65 20 61 6e 20 6f 76 65 72 6c 61 79 20 66 6f 72    20 61 6e 20 69 6e 76 69 73 69 62 6c 65 20 70 6f  | e.an.overlay.for.an.invisible.po | 
| 14780 |  72 74 69 6f 6e 20 6f 66 20 74 68 65 20 62 75 66    66 65 72 2c 20 66 72 6f 6d 20 42 45 47 20 74 6f  | rtion.of.the.buffer,.from.BEG.to | 
| 147a0 |  20 45 4e 44 2e 22 0a 20 20 28 6c 65 74 20 28 28    6f 76 6c 20 28 6d 61 6b 65 2d 6f 76 65 72 6c 61  | .END."...(let.((ovl.(make-overla | 
| 147c0 |  79 20 62 65 67 20 65 6e 64 29 29 29 0a 20 20 20    20 28 6f 76 65 72 6c 61 79 2d 70 75 74 20 6f 76  | y.beg.end))).....(overlay-put.ov | 
| 147e0 |  6c 20 6c 65 64 67 65 72 2d 6f 63 63 75 72 2d 6f    76 65 72 6c 61 79 2d 70 72 6f 70 65 72 74 79 2d  | l.ledger-occur-overlay-property- | 
| 14800 |  6e 61 6d 65 20 74 29 0a 20 20 20 20 28 6f 76 65    72 6c 61 79 2d 70 75 74 20 6f 76 6c 20 27 69 6e  | name.t).....(overlay-put.ovl.'in | 
| 14820 |  76 69 73 69 62 6c 65 20 74 29 29 29 0a 0a 28 64    65 66 75 6e 20 6c 65 64 67 65 72 2d 6f 63 63 75  | visible.t)))..(defun.ledger-occu | 
| 14840 |  72 2d 63 72 65 61 74 65 2d 6f 76 65 72 6c 61 79    73 20 28 6f 76 6c 2d 62 6f 75 6e 64 73 29 0a 20  | r-create-overlays.(ovl-bounds).. | 
| 14860 |  20 22 43 72 65 61 74 65 20 74 68 65 20 6f 76 65    72 6c 61 79 73 20 66 6f 72 20 74 68 65 20 76 69  | ."Create.the.overlays.for.the.vi | 
| 14880 |  73 69 62 6c 65 20 74 72 61 6e 73 61 63 74 69 6f    6e 73 2e 0a 41 72 67 75 6d 65 6e 74 20 4f 56 4c  | sible.transactions..Argument.OVL | 
| 148a0 |  2d 42 4f 55 4e 44 53 20 63 6f 6e 74 61 69 6e 73    20 62 6f 75 6e 64 73 20 66 6f 72 20 74 68 65 20  | -BOUNDS.contains.bounds.for.the. | 
| 148c0 |  74 72 61 6e 73 61 63 74 69 6f 6e 73 20 74 6f 20    62 65 20 6c 65 66 74 20 76 69 73 69 62 6c 65 2e  | transactions.to.be.left.visible. | 
| 148e0 |  22 0a 20 20 28 6c 65 64 67 65 72 2d 6f 63 63 75    72 2d 72 65 6d 6f 76 65 2d 6f 76 65 72 6c 61 79  | "...(ledger-occur-remove-overlay | 
| 14900 |  73 29 0a 20 20 28 6c 65 74 20 28 28 65 6e 64 2d    6f 66 2d 6c 61 73 74 2d 76 69 73 69 62 6c 65 20  | s)...(let.((end-of-last-visible. | 
| 14920 |  28 70 6f 69 6e 74 2d 6d 69 6e 29 29 29 0a 20 20    20 20 28 70 63 61 73 65 2d 64 6f 6c 69 73 74 20  | (point-min))).....(pcase-dolist. | 
| 14940 |  28 60 28 2c 62 65 67 20 2c 65 6e 64 29 20 6f 76    6c 2d 62 6f 75 6e 64 73 29 0a 20 20 20 20 20 20  | (`(,beg.,end).ovl-bounds)....... | 
| 14960 |  3b 3b 20 6b 65 65 70 20 6e 65 77 6c 69 6e 65 20    62 65 66 6f 72 65 20 78 61 63 74 20 76 69 73 69  | ;;.keep.newline.before.xact.visi | 
| 14980 |  62 6c 65 2c 20 62 75 74 20 64 6f 20 6e 6f 74 20    68 69 67 68 6c 69 67 68 74 20 69 74 20 77 69 74  | ble,.but.do.not.highlight.it.wit | 
| 149a0 |  68 0a 20 20 20 20 20 20 3b 3b 20 60 6c 65 64 67    65 72 2d 6f 63 63 75 72 2d 78 61 63 74 2d 66 61  | h.......;;.`ledger-occur-xact-fa | 
| 149c0 |  63 65 27 0a 20 20 20 20 20 20 28 6c 65 64 67 65    72 2d 6f 63 63 75 72 2d 6d 61 6b 65 2d 69 6e 76  | ce'.......(ledger-occur-make-inv | 
| 149e0 |  69 73 69 62 6c 65 2d 6f 76 65 72 6c 61 79 20 65    6e 64 2d 6f 66 2d 6c 61 73 74 2d 76 69 73 69 62  | isible-overlay.end-of-last-visib | 
| 14a00 |  6c 65 20 28 31 2d 20 62 65 67 29 29 0a 20 20 20    20 20 20 28 6c 65 64 67 65 72 2d 6f 63 63 75 72  | le.(1-.beg)).......(ledger-occur | 
| 14a20 |  2d 6d 61 6b 65 2d 76 69 73 69 62 6c 65 2d 6f 76    65 72 6c 61 79 20 62 65 67 20 65 6e 64 29 0a 20  | -make-visible-overlay.beg.end).. | 
| 14a40 |  20 20 20 20 20 3b 3b 20 6b 65 65 70 20 6e 65 77    6c 69 6e 65 20 61 66 74 65 72 20 78 61 63 74 20  | .....;;.keep.newline.after.xact. | 
| 14a60 |  76 69 73 69 62 6c 65 0a 20 20 20 20 20 20 28 73    65 74 71 20 65 6e 64 2d 6f 66 2d 6c 61 73 74 2d  | visible.......(setq.end-of-last- | 
| 14a80 |  76 69 73 69 62 6c 65 20 28 31 2b 20 65 6e 64 29    29 29 0a 20 20 20 20 28 6c 65 64 67 65 72 2d 6f  | visible.(1+.end))).....(ledger-o | 
| 14aa0 |  63 63 75 72 2d 6d 61 6b 65 2d 69 6e 76 69 73 69    62 6c 65 2d 6f 76 65 72 6c 61 79 20 65 6e 64 2d  | ccur-make-invisible-overlay.end- | 
| 14ac0 |  6f 66 2d 6c 61 73 74 2d 76 69 73 69 62 6c 65 20    28 70 6f 69 6e 74 2d 6d 61 78 29 29 29 29 0a 0a  | of-last-visible.(point-max)))).. | 
| 14ae0 |  28 64 65 66 75 6e 20 6c 65 64 67 65 72 2d 6f 63    63 75 72 2d 72 65 6d 6f 76 65 2d 6f 76 65 72 6c  | (defun.ledger-occur-remove-overl | 
| 14b00 |  61 79 73 20 28 29 0a 20 20 22 52 65 6d 6f 76 65    20 74 68 65 20 74 72 61 6e 73 61 63 74 69 6f 6e  | ays.()..."Remove.the.transaction | 
| 14b20 |  20 68 69 64 69 6e 67 20 6f 76 65 72 6c 61 79 73    2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76  | .hiding.overlays."...(interactiv | 
| 14b40 |  65 29 0a 20 20 28 72 65 6d 6f 76 65 2d 6f 76 65    72 6c 61 79 73 20 28 70 6f 69 6e 74 2d 6d 69 6e  | e)...(remove-overlays.(point-min | 
| 14b60 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 70 6f 69 6e 74 2d 6d 61 78 29  | )....................(point-max) | 
| 14b80 |  20 6c 65 64 67 65 72 2d 6f 63 63 75 72 2d 6f 76    65 72 6c 61 79 2d 70 72 6f 70 65 72 74 79 2d 6e  | .ledger-occur-overlay-property-n | 
| 14ba0 |  61 6d 65 20 74 29 29 0a 0a 28 64 65 66 75 6e 20    6c 65 64 67 65 72 2d 6f 63 63 75 72 2d 66 69 6e  | ame.t))..(defun.ledger-occur-fin | 
| 14bc0 |  64 2d 6d 61 74 63 68 65 73 20 28 72 65 67 65 78    29 0a 20 20 22 52 65 74 75 72 6e 20 61 20 6c 69  | d-matches.(regex)..."Return.a.li | 
| 14be0 |  73 74 20 6f 66 20 62 6f 75 6e 64 73 20 66 6f 72    20 74 72 61 6e 73 61 63 74 69 6f 6e 73 20 6d 61  | st.of.bounds.for.transactions.ma | 
| 14c00 |  74 63 68 69 6e 67 20 52 45 47 45 58 2e 22 0a 20    20 28 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e  | tching.REGEX."...(save-excursion | 
| 14c20 |  0a 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20    28 70 6f 69 6e 74 2d 6d 69 6e 29 29 0a 20 20 20  | .....(goto-char.(point-min)).... | 
| 14c40 |  20 3b 3b 20 53 65 74 20 69 6e 69 74 69 61 6c 20    76 61 6c 75 65 73 20 66 6f 72 20 76 61 72 69 61  | .;;.Set.initial.values.for.varia | 
| 14c60 |  62 6c 65 73 0a 20 20 20 20 28 6c 65 74 20 28 6c    69 6e 65 73 29 0a 20 20 20 20 20 20 3b 3b 20 53  | bles.....(let.(lines).......;;.S | 
| 14c80 |  65 61 72 63 68 20 6c 6f 6f 70 0a 20 20 20 20 20    20 28 77 68 69 6c 65 20 28 6e 6f 74 20 28 65 6f  | earch.loop.......(while.(not.(eo | 
| 14ca0 |  62 70 29 29 0a 20 20 20 20 20 20 20 20 3b 3b 20    69 66 20 73 6f 6d 65 74 68 69 6e 67 20 66 6f 75  | bp)).........;;.if.something.fou | 
| 14cc0 |  6e 64 0a 20 20 20 20 20 20 20 20 28 77 68 65 6e    2d 6c 65 74 20 28 28 65 6e 64 70 6f 69 6e 74 20  | nd.........(when-let.((endpoint. | 
| 14ce0 |  28 72 65 2d 73 65 61 72 63 68 2d 66 6f 72 77 61    72 64 20 72 65 67 65 78 20 6e 69 6c 20 27 65 6e  | (re-search-forward.regex.nil.'en | 
| 14d00 |  64 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 28 62 6f 75 6e 64 73 20 28  | d))....................(bounds.( | 
| 14d20 |  6c 65 64 67 65 72 2d 6e 61 76 69 67 61 74 65 2d    66 69 6e 64 2d 65 6c 65 6d 65 6e 74 2d 65 78 74  | ledger-navigate-find-element-ext | 
| 14d40 |  65 6e 74 73 20 65 6e 64 70 6f 69 6e 74 29 29 29    0a 20 20 20 20 20 20 20 20 20 20 28 70 75 73 68  | ents.endpoint)))...........(push | 
| 14d60 |  20 62 6f 75 6e 64 73 20 6c 69 6e 65 73 29 0a 20    20 20 20 20 20 20 20 20 20 3b 3b 20 6d 6f 76 65  | .bounds.lines)...........;;.move | 
| 14d80 |  20 74 6f 20 74 68 65 20 65 6e 64 20 6f 66 20 74    68 65 20 78 61 63 74 2c 20 6e 6f 20 6e 65 65 64  | .to.the.end.of.the.xact,.no.need | 
| 14da0 |  20 74 6f 20 73 65 61 72 63 68 20 69 6e 73 69 64    65 20 69 74 20 6d 6f 72 65 0a 20 20 20 20 20 20  | .to.search.inside.it.more....... | 
| 14dc0 |  20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28    63 61 64 72 20 62 6f 75 6e 64 73 29 29 29 29 0a  | ....(goto-char.(cadr.bounds)))). | 
| 14de0 |  20 20 20 20 20 20 28 6e 72 65 76 65 72 73 65 20    6c 69 6e 65 73 29 29 29 29 0a 0a 28 64 65 66 75  | ......(nreverse.lines))))..(defu | 
| 14e00 |  6e 20 6c 65 64 67 65 72 2d 6f 63 63 75 72 2d 63    6f 6d 70 72 65 73 73 2d 6d 61 74 63 68 65 73 20  | n.ledger-occur-compress-matches. | 
| 14e20 |  28 62 75 66 66 65 72 2d 6d 61 74 63 68 65 73 29    0a 20 20 22 49 64 65 6e 74 69 66 79 20 73 65 71  | (buffer-matches)..."Identify.seq | 
| 14e40 |  75 65 6e 74 69 61 6c 20 78 61 63 74 73 20 74 6f    20 72 65 64 75 63 65 20 6e 75 6d 62 65 72 20 6f  | uential.xacts.to.reduce.number.o | 
| 14e60 |  66 20 6f 76 65 72 6c 61 79 73 20 72 65 71 75 69    72 65 64 2e 0a 0a 42 55 46 46 45 52 2d 4d 41 54  | f.overlays.required...BUFFER-MAT | 
| 14e80 |  43 48 45 53 20 73 68 6f 75 6c 64 20 62 65 20 61    20 6c 69 73 74 20 6f 66 20 28 42 45 47 20 45 4e  | CHES.should.be.a.list.of.(BEG.EN | 
| 14ea0 |  44 29 20 6c 69 73 74 73 2e 22 0a 20 20 28 69 66    20 62 75 66 66 65 72 2d 6d 61 74 63 68 65 73 0a  | D).lists."...(if.buffer-matches. | 
| 14ec0 |  20 20 20 20 20 20 28 6c 65 74 20 28 28 70 6f 69    6e 74 73 20 28 6c 69 73 74 29 29 0a 20 20 20 20  | ......(let.((points.(list))..... | 
| 14ee0 |  20 20 20 20 20 20 20 20 28 63 75 72 72 65 6e 74    2d 62 65 67 69 6e 6e 69 6e 67 20 28 63 61 61 72  | ........(current-beginning.(caar | 
| 14f00 |  20 62 75 66 66 65 72 2d 6d 61 74 63 68 65 73 29    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 63  | .buffer-matches)).............(c | 
| 14f20 |  75 72 72 65 6e 74 2d 65 6e 64 20 28 63 6c 2d 63    61 64 61 72 20 62 75 66 66 65 72 2d 6d 61 74 63  | urrent-end.(cl-cadar.buffer-matc | 
| 14f40 |  68 65 73 29 29 29 0a 20 20 20 20 20 20 20 20 28    64 6f 6c 69 73 74 20 28 6d 61 74 63 68 20 28 63  | hes))).........(dolist.(match.(c | 
| 14f60 |  64 72 20 62 75 66 66 65 72 2d 6d 61 74 63 68 65    73 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 69  | dr.buffer-matches))...........(i | 
| 14f80 |  66 20 28 3c 20 28 2d 20 28 63 61 72 20 6d 61 74    63 68 29 20 63 75 72 72 65 6e 74 2d 65 6e 64 29  | f.(<.(-.(car.match).current-end) | 
| 14fa0 |  20 32 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 73 65 74 71 20 63 75 72 72 65 6e 74 2d  | .2)...............(setq.current- | 
| 14fc0 |  65 6e 64 20 28 63 61 64 72 20 6d 61 74 63 68 29    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 70  | end.(cadr.match)).............(p | 
| 14fe0 |  75 73 68 20 28 6c 69 73 74 20 63 75 72 72 65 6e    74 2d 62 65 67 69 6e 6e 69 6e 67 20 63 75 72 72  | ush.(list.current-beginning.curr | 
| 15000 |  65 6e 74 2d 65 6e 64 29 20 70 6f 69 6e 74 73 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65  | ent-end).points).............(se | 
| 15020 |  74 71 20 63 75 72 72 65 6e 74 2d 62 65 67 69 6e    6e 69 6e 67 20 28 63 61 72 20 6d 61 74 63 68 29  | tq.current-beginning.(car.match) | 
| 15040 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 73    65 74 71 20 63 75 72 72 65 6e 74 2d 65 6e 64 20  | ).............(setq.current-end. | 
| 15060 |  28 63 61 64 72 20 6d 61 74 63 68 29 29 29 29 0a    20 20 20 20 20 20 20 20 28 6e 72 65 76 65 72 73  | (cadr.match)))).........(nrevers | 
| 15080 |  65 20 28 70 75 73 68 20 28 6c 69 73 74 20 63 75    72 72 65 6e 74 2d 62 65 67 69 6e 6e 69 6e 67 20  | e.(push.(list.current-beginning. | 
| 150a0 |  63 75 72 72 65 6e 74 2d 65 6e 64 29 20 70 6f 69    6e 74 73 29 29 29 29 29 0a 0a 28 70 72 6f 76 69  | current-end).points)))))..(provi | 
| 150c0 |  64 65 20 27 6c 65 64 67 65 72 2d 6f 63 63 75 72    29 0a 0a 3b 3b 3b 20 6c 65 64 67 65 72 2d 6f 63  | de.'ledger-occur)..;;;.ledger-oc | 
| 150e0 |  63 75 72 2e 65 6c 20 65 6e 64 73 20 68 65 72 65    0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | cur.el.ends.here................ | 
| 15100 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 15120 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 15140 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 15160 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 15180 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 151a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 151c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 151e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 15200 |  6c 65 64 67 65 72 2d 6d 6f 64 65 2d 32 30 32 34    30 34 31 36 2e 34 31 36 2f 6c 65 64 67 65 72 2d  | ledger-mode-20240416.416/ledger- | 
| 15220 |  63 6f 6d 6d 6f 64 69 74 69 65 73 2e 65 6c 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | commodities.el.................. | 
| 15240 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 15260 |  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 | 
| 15280 |  30 30 31 35 33 31 36 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 37 32 31 36 00 20 30 00 00 00  | 0015316.00000000000.017216..0... | 
| 152a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 152c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 152e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 15300 |  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................... | 
| 15320 |  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................... | 
| 15340 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 15360 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 15380 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 153a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 153c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 153e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 15400 |  3b 3b 3b 20 6c 65 64 67 65 72 2d 63 6f 6d 6d 6f    64 69 74 69 65 73 2e 65 6c 20 2d 2d 2d 20 48 65  | ;;;.ledger-commodities.el.---.He | 
| 15420 |  6c 70 65 72 20 63 6f 64 65 20 66 6f 72 20 75 73    65 20 77 69 74 68 20 74 68 65 20 22 6c 65 64 67  | lper.code.for.use.with.the."ledg | 
| 15440 |  65 72 22 20 63 6f 6d 6d 61 6e 64 2d 6c 69 6e 65    20 74 6f 6f 6c 20 20 2d 2a 2d 20 6c 65 78 69 63  | er".command-line.tool..-*-.lexic | 
| 15460 |  61 6c 2d 62 69 6e 64 69 6e 67 3a 20 74 3b 20 2d    2a 2d 0a 0a 3b 3b 20 43 6f 70 79 72 69 67 68 74  | al-binding:.t;.-*-..;;.Copyright | 
| 15480 |  20 28 43 29 20 32 30 30 33 2d 32 30 31 36 20 4a    6f 68 6e 20 57 69 65 67 6c 65 79 20 28 6a 6f 68  | .(C).2003-2016.John.Wiegley.(joh | 
| 154a0 |  6e 77 20 41 54 20 67 6e 75 20 44 4f 54 20 6f 72    67 29 0a 0a 3b 3b 20 54 68 69 73 20 66 69 6c 65  | nw.AT.gnu.DOT.org)..;;.This.file | 
| 154c0 |  20 69 73 20 6e 6f 74 20 70 61 72 74 20 6f 66 20    47 4e 55 20 45 6d 61 63 73 2e 0a 0a 3b 3b 20 54  | .is.not.part.of.GNU.Emacs...;;.T | 
| 154e0 |  68 69 73 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  | his.is.free.software;.you.can.re | 
| 15500 |  64 69 73 74 72 69 62 75 74 65 20 69 74 20 61 6e    64 2f 6f 72 20 6d 6f 64 69 66 79 20 69 74 20 75  | distribute.it.and/or.modify.it.u | 
| 15520 |  6e 64 65 72 0a 3b 3b 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  | nder.;;.the.terms.of.the.GNU.Gen | 
| 15540 |  65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65    6e 73 65 20 61 73 20 70 75 62 6c 69 73 68 65 64  | eral.Public.License.as.published | 
| 15560 |  20 62 79 20 74 68 65 20 46 72 65 65 0a 3b 3b 20    53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61 74  | .by.the.Free.;;.Software.Foundat | 
| 15580 |  69 6f 6e 3b 20 65 69 74 68 65 72 20 76 65 72 73    69 6f 6e 20 32 2c 20 6f 72 20 28 61 74 20 79 6f  | ion;.either.version.2,.or.(at.yo | 
| 155a0 |  75 72 20 6f 70 74 69 6f 6e 29 20 61 6e 79 20 6c    61 74 65 72 0a 3b 3b 20 76 65 72 73 69 6f 6e 2e  | ur.option).any.later.;;.version. | 
| 155c0 |  0a 3b 3b 0a 3b 3b 20 54 68 69 73 20 69 73 20 64    69 73 74 72 69 62 75 74 65 64 20 69 6e 20 74 68  | .;;.;;.This.is.distributed.in.th | 
| 155e0 |  65 20 68 6f 70 65 20 74 68 61 74 20 69 74 20 77    69 6c 6c 20 62 65 20 75 73 65 66 75 6c 2c 20 62  | e.hope.that.it.will.be.useful,.b | 
| 15600 |  75 74 20 57 49 54 48 4f 55 54 0a 3b 3b 20 41 4e    59 20 57 41 52 52 41 4e 54 59 3b 20 77 69 74 68  | ut.WITHOUT.;;.ANY.WARRANTY;.with | 
| 15620 |  6f 75 74 20 65 76 65 6e 20 74 68 65 20 69 6d 70    6c 69 65 64 20 77 61 72 72 61 6e 74 79 20 6f 66  | out.even.the.implied.warranty.of | 
| 15640 |  20 4d 45 52 43 48 41 4e 54 41 42 49 4c 49 54 59    20 6f 72 0a 3b 3b 20 46 49 54 4e 45 53 53 20 46  | .MERCHANTABILITY.or.;;.FITNESS.F | 
| 15660 |  4f 52 20 41 20 50 41 52 54 49 43 55 4c 41 52 20    50 55 52 50 4f 53 45 2e 20 20 53 65 65 20 74 68  | OR.A.PARTICULAR.PURPOSE...See.th | 
| 15680 |  65 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75    62 6c 69 63 20 4c 69 63 65 6e 73 65 0a 3b 3b 20  | e.GNU.General.Public.License.;;. | 
| 156a0 |  66 6f 72 20 6d 6f 72 65 20 64 65 74 61 69 6c 73    2e 0a 3b 3b 0a 3b 3b 20 59 6f 75 20 73 68 6f 75  | for.more.details..;;.;;.You.shou | 
| 156c0 |  6c 64 20 68 61 76 65 20 72 65 63 65 69 76 65 64    20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 47  | ld.have.received.a.copy.of.the.G | 
| 156e0 |  4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69    63 20 4c 69 63 65 6e 73 65 0a 3b 3b 20 61 6c 6f  | NU.General.Public.License.;;.alo | 
| 15700 |  6e 67 20 77 69 74 68 20 47 4e 55 20 45 6d 61 63    73 3b 20 73 65 65 20 74 68 65 20 66 69 6c 65 20  | ng.with.GNU.Emacs;.see.the.file. | 
| 15720 |  43 4f 50 59 49 4e 47 2e 20 20 49 66 20 6e 6f 74    2c 20 77 72 69 74 65 20 74 6f 20 74 68 65 0a 3b  | COPYING...If.not,.write.to.the.; | 
| 15740 |  3b 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20    46 6f 75 6e 64 61 74 69 6f 6e 2c 20 49 6e 63 2e  | ;.Free.Software.Foundation,.Inc. | 
| 15760 |  2c 20 35 31 20 46 72 61 6e 6b 6c 69 6e 20 53 74    72 65 65 74 2c 20 46 69 66 74 68 20 46 6c 6f 6f  | ,.51.Franklin.Street,.Fifth.Floo | 
| 15780 |  72 2c 20 42 6f 73 74 6f 6e 2c 0a 3b 3b 20 4d 41    20 30 32 31 31 30 2d 31 33 30 31 20 55 53 41 2e  | r,.Boston,.;;.MA.02110-1301.USA. | 
| 157a0 |  0a 0a 3b 3b 3b 20 43 6f 6d 6d 65 6e 74 61 72 79    3a 0a 3b 3b 20 48 65 6c 70 65 72 20 66 75 6e 63  | ..;;;.Commentary:.;;.Helper.func | 
| 157c0 |  74 69 6f 6e 73 20 74 6f 20 64 65 61 6c 20 77 69    74 68 20 63 6f 6d 6d 6f 64 69 74 69 7a 65 64 20  | tions.to.deal.with.commoditized. | 
| 157e0 |  6e 75 6d 62 65 72 73 2e 20 20 41 20 63 6f 6d 6d    6f 64 69 74 69 7a 65 64 0a 3b 3b 20 6e 75 6d 62  | numbers...A.commoditized.;;.numb | 
| 15800 |  65 72 20 77 69 6c 6c 20 62 65 20 61 20 6c 69 73    74 20 6f 66 20 76 61 6c 75 65 20 61 6e 64 20 73  | er.will.be.a.list.of.value.and.s | 
| 15820 |  74 72 69 6e 67 20 77 68 65 72 65 20 74 68 65 20    73 74 72 69 6e 67 20 63 6f 6e 74 61 69 6e 73 0a  | tring.where.the.string.contains. | 
| 15840 |  3b 3b 20 74 68 65 20 63 6f 6d 6d 6f 64 69 74 79    0a 0a 3b 3b 3b 20 43 6f 64 65 3a 0a 0a 28 72 65  | ;;.the.commodity..;;;.Code:..(re | 
| 15860 |  71 75 69 72 65 20 27 6c 65 64 67 65 72 2d 72 65    67 65 78 29 0a 0a 3b 3b 20 54 68 65 73 65 20 6b  | quire.'ledger-regex)..;;.These.k | 
| 15880 |  65 65 70 20 74 68 65 20 62 79 74 65 2d 63 6f 6d    70 69 6c 65 72 20 66 72 6f 6d 20 77 61 72 6e 69  | eep.the.byte-compiler.from.warni | 
| 158a0 |  6e 67 20 61 62 6f 75 74 20 74 68 65 6d 2c 20 62    75 74 20 68 61 76 65 20 6e 6f 20 6f 74 68 65 72  | ng.about.them,.but.have.no.other | 
| 158c0 |  0a 3b 3b 20 65 66 66 65 63 74 3a 0a 28 64 65 66    76 61 72 20 6c 65 64 67 65 72 2d 65 6e 76 69 72  | .;;.effect:.(defvar.ledger-envir | 
| 158e0 |  6f 6e 6d 65 6e 74 2d 61 6c 69 73 74 29 0a 28 64    65 63 6c 61 72 65 2d 66 75 6e 63 74 69 6f 6e 20  | onment-alist).(declare-function. | 
| 15900 |  6c 65 64 67 65 72 2d 65 78 65 63 2d 6c 65 64 67    65 72 20 22 6c 65 64 67 65 72 2d 65 78 65 63 22  | ledger-exec-ledger."ledger-exec" | 
| 15920 |  20 28 69 6e 70 75 74 2d 62 75 66 66 65 72 20 26    6f 70 74 69 6f 6e 61 6c 20 6f 75 74 70 75 74 2d  | .(input-buffer.&optional.output- | 
| 15940 |  62 75 66 66 65 72 20 26 72 65 73 74 20 61 72 67    73 29 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20  | buffer.&rest.args))..(defcustom. | 
| 15960 |  6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65    2d 64 65 66 61 75 6c 74 2d 63 6f 6d 6d 6f 64 69  | ledger-reconcile-default-commodi | 
| 15980 |  74 79 20 22 24 22 0a 20 20 22 54 68 65 20 64 65    66 61 75 6c 74 20 63 6f 6d 6d 6f 64 69 74 79 20  | ty."$"..."The.default.commodity. | 
| 159a0 |  66 6f 72 20 75 73 65 20 69 6e 20 74 61 72 67 65    74 20 63 61 6c 63 75 6c 61 74 69 6f 6e 73 20 69  | for.use.in.target.calculations.i | 
| 159c0 |  6e 20 6c 65 64 67 65 72 20 72 65 63 6f 6e 63 69    6c 65 2e 22 0a 20 20 3a 74 79 70 65 20 27 73 74  | n.ledger.reconcile."...:type.'st | 
| 159e0 |  72 69 6e 67 0a 20 20 3a 67 72 6f 75 70 20 27 6c    65 64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65 29  | ring...:group.'ledger-reconcile) | 
| 15a00 |  0a 0a 28 64 65 66 75 6e 20 6c 65 64 67 65 72 2d    72 65 61 64 2d 63 6f 6d 6d 6f 64 69 74 79 2d 77  | ..(defun.ledger-read-commodity-w | 
| 15a20 |  69 74 68 2d 70 72 6f 6d 70 74 20 28 70 72 6f 6d    70 74 29 0a 20 20 22 52 65 61 64 20 63 6f 6d 6d  | ith-prompt.(prompt)..."Read.comm | 
| 15a40 |  6f 64 69 74 79 20 6e 61 6d 65 20 61 66 74 65 72    20 50 52 4f 4d 50 54 2e 0a 0a 44 65 66 61 75 6c  | odity.name.after.PROMPT...Defaul | 
| 15a60 |  74 20 76 61 6c 75 65 20 69 73 20 60 6c 65 64 67    65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d 64 65 66  | t.value.is.`ledger-reconcile-def | 
| 15a80 |  61 75 6c 74 2d 63 6f 6d 6d 6f 64 69 74 79 27 2e    22 0a 20 20 28 6c 65 74 2a 20 28 28 62 75 66 66  | ault-commodity'."...(let*.((buff | 
| 15aa0 |  65 72 20 28 63 75 72 72 65 6e 74 2d 62 75 66 66    65 72 29 29 0a 20 20 20 20 20 20 20 20 20 28 63  | er.(current-buffer))..........(c | 
| 15ac0 |  6f 6d 6d 6f 64 69 74 69 65 73 20 28 77 69 74 68    2d 74 65 6d 70 2d 62 75 66 66 65 72 0a 20 20 20  | ommodities.(with-temp-buffer.... | 
| 15ae0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 6c 65 64 67 65 72 2d 65 78 65  | .....................(ledger-exe | 
| 15b00 |  63 2d 6c 65 64 67 65 72 20 62 75 66 66 65 72 20    28 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 29  | c-ledger.buffer.(current-buffer) | 
| 15b20 |  20 22 63 6f 6d 6d 6f 64 69 74 69 65 73 22 29 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ."commodities")................. | 
| 15b40 |  20 20 20 20 20 20 20 20 28 73 70 6c 69 74 2d 73    74 72 69 6e 67 20 28 62 75 66 66 65 72 2d 73 74  | ........(split-string.(buffer-st | 
| 15b60 |  72 69 6e 67 29 20 22 5c 6e 22 20 74 29 29 29 29    0a 20 20 20 20 28 63 6f 6d 70 6c 65 74 69 6e 67  | ring)."\n".t)))).....(completing | 
| 15b80 |  2d 72 65 61 64 20 70 72 6f 6d 70 74 20 63 6f 6d    6d 6f 64 69 74 69 65 73 20 6e 69 6c 20 74 20 6e  | -read.prompt.commodities.nil.t.n | 
| 15ba0 |  69 6c 20 6e 69 6c 20 6c 65 64 67 65 72 2d 72 65    63 6f 6e 63 69 6c 65 2d 64 65 66 61 75 6c 74 2d  | il.nil.ledger-reconcile-default- | 
| 15bc0 |  63 6f 6d 6d 6f 64 69 74 79 29 29 29 0a 0a 28 64    65 66 75 6e 20 6c 65 64 67 65 72 2d 73 70 6c 69  | commodity)))..(defun.ledger-spli | 
| 15be0 |  74 2d 63 6f 6d 6d 6f 64 69 74 79 2d 73 74 72 69    6e 67 20 28 73 74 72 29 0a 20 20 22 53 70 6c 69  | t-commodity-string.(str)..."Spli | 
| 15c00 |  74 20 61 20 63 6f 6d 6d 6f 64 69 74 69 7a 65 64    20 73 74 72 69 6e 67 2c 20 53 54 52 2c 20 69 6e  | t.a.commoditized.string,.STR,.in | 
| 15c20 |  74 6f 20 74 77 6f 20 70 61 72 74 73 2e 0a 52 65    74 75 72 6e 73 20 61 20 6c 69 73 74 20 77 69 74  | to.two.parts..Returns.a.list.wit | 
| 15c40 |  68 20 28 76 61 6c 75 65 20 63 6f 6d 6d 6f 64 69    74 79 29 2e 22 0a 20 20 28 6c 65 74 20 28 28 6e  | h.(value.commodity)."...(let.((n | 
| 15c60 |  75 6d 62 65 72 2d 72 65 67 65 78 20 28 69 66 20    28 61 73 73 6f 63 20 22 64 65 63 69 6d 61 6c 2d  | umber-regex.(if.(assoc."decimal- | 
| 15c80 |  63 6f 6d 6d 61 22 20 6c 65 64 67 65 72 2d 65 6e    76 69 72 6f 6e 6d 65 6e 74 2d 61 6c 69 73 74 29  | comma".ledger-environment-alist) | 
| 15ca0 |  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 6c 65 64 67 65  | ...........................ledge | 
| 15cc0 |  72 2d 61 6d 6f 75 6e 74 2d 64 65 63 69 6d 61 6c    2d 63 6f 6d 6d 61 2d 72 65 67 65 78 0a 20 20 20  | r-amount-decimal-comma-regex.... | 
| 15ce0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 6c 65 64 67 65 72 2d 61 6d 6f 75  | .....................ledger-amou | 
| 15d00 |  6e 74 2d 64 65 63 69 6d 61 6c 2d 70 65 72 69 6f    64 2d 72 65 67 65 78 29 29 29 0a 20 20 20 20 28  | nt-decimal-period-regex))).....( | 
| 15d20 |  69 66 20 28 3e 20 28 6c 65 6e 67 74 68 20 73 74    72 29 20 30 29 0a 20 20 20 20 20 20 20 20 28 77  | if.(>.(length.str).0).........(w | 
| 15d40 |  69 74 68 2d 74 65 6d 70 2d 62 75 66 66 65 72 0a    20 20 20 20 20 20 20 20 20 20 28 69 6e 73 65 72  | ith-temp-buffer...........(inser | 
| 15d60 |  74 20 73 74 72 29 0a 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  | t.str)...........(goto-char.(poi | 
| 15d80 |  6e 74 2d 6d 69 6e 29 29 0a 20 20 20 20 20 20 20    20 20 20 28 63 6f 6e 64 0a 20 20 20 20 20 20 20  | nt-min))...........(cond........ | 
| 15da0 |  20 20 20 20 28 28 72 65 2d 73 65 61 72 63 68 2d    66 6f 72 77 61 72 64 20 22 5c 22 5c 5c 28 2e 2a  | ....((re-search-forward."\"\\(.* | 
| 15dc0 |  5c 5c 29 5c 22 22 20 6e 69 6c 20 74 29 20 3b 20    6c 6f 6f 6b 20 66 6f 72 20 71 75 6f 74 65 64 20  | \\)\"".nil.t).;.look.for.quoted. | 
| 15de0 |  63 6f 6d 6d 6f 64 69 74 69 65 73 0a 20 20 20 20    20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 63  | commodities.............(let.((c | 
| 15e00 |  6f 6d 20 28 64 65 6c 65 74 65 2d 61 6e 64 2d 65    78 74 72 61 63 74 2d 72 65 67 69 6f 6e 0a 20 20  | om.(delete-and-extract-region... | 
| 15e20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 6d 61 74 63 68 2d 62 65 67  | ......................(match-beg | 
| 15e40 |  69 6e 6e 69 6e 67 20 31 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | inning.1)....................... | 
| 15e60 |  20 20 28 6d 61 74 63 68 2d 65 6e 64 20 31 29 29    29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | ..(match-end.1)))).............. | 
| 15e80 |  20 28 69 66 20 28 72 65 2d 73 65 61 72 63 68 2d    66 6f 72 77 61 72 64 0a 20 20 20 20 20 20 20 20  | .(if.(re-search-forward......... | 
| 15ea0 |  20 20 20 20 20 20 20 20 20 20 20 6e 75 6d 62 65    72 2d 72 65 67 65 78 20 6e 69 6c 20 74 29 0a 20  | ...........number-regex.nil.t).. | 
| 15ec0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 6c 69 73 74 0a 20 20 20 20 20 20 20 20 20  | .................(list.......... | 
| 15ee0 |  20 20 20 20 20 20 20 20 20 20 28 6c 65 64 67 65    72 2d 73 74 72 69 6e 67 2d 74 6f 2d 6e 75 6d 62  | ..........(ledger-string-to-numb | 
| 15f00 |  65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 28 64 65 6c 65 74 65 2d 61  | er.....................(delete-a | 
| 15f20 |  6e 64 2d 65 78 74 72 61 63 74 2d 72 65 67 69 6f    6e 20 28 6d 61 74 63 68 2d 62 65 67 69 6e 6e 69  | nd-extract-region.(match-beginni | 
| 15f40 |  6e 67 20 30 29 20 28 6d 61 74 63 68 2d 65 6e 64    20 30 29 29 29 0a 20 20 20 20 20 20 20 20 20 20  | ng.0).(match-end.0)))........... | 
| 15f60 |  20 20 20 20 20 20 20 20 20 63 6f 6d 29 29 29 29    0a 20 20 20 20 20 20 20 20 20 20 20 28 28 72 65  | .........com))))............((re | 
| 15f80 |  2d 73 65 61 72 63 68 2d 66 6f 72 77 61 72 64 20    6e 75 6d 62 65 72 2d 72 65 67 65 78 20 6e 69 6c  | -search-forward.number-regex.nil | 
| 15fa0 |  20 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    3b 3b 20 66 6f 75 6e 64 20 61 20 6e 75 6d 62 65  | .t).............;;.found.a.numbe | 
| 15fc0 |  72 20 69 6e 20 74 68 65 20 63 75 72 72 65 6e 74    20 6c 6f 63 61 6c 65 2c 20 72 65 74 75 72 6e 20  | r.in.the.current.locale,.return. | 
| 15fe0 |  69 74 20 69 6e 20 74 68 65 0a 20 20 20 20 20 20    20 20 20 20 20 20 3b 3b 20 63 61 72 2e 20 20 41  | it.in.the.............;;.car...A | 
| 16000 |  6e 79 74 68 69 6e 67 20 6c 65 66 74 20 6f 76 65    72 20 69 73 20 61 6e 6e 6f 74 61 74 69 6f 6e 2c  | nything.left.over.is.annotation, | 
| 16020 |  20 74 68 65 20 66 69 72 73 74 0a 20 20 20 20 20    20 20 20 20 20 20 20 3b 3b 20 74 68 69 6e 67 20  | .the.first.............;;.thing. | 
| 16040 |  73 68 6f 75 6c 64 20 62 65 20 74 68 65 20 63 6f    6d 6d 6f 64 69 74 79 2c 20 73 65 70 61 72 61 74  | should.be.the.commodity,.separat | 
| 16060 |  65 64 20 62 79 0a 20 20 20 20 20 20 20 20 20 20    20 20 3b 3b 20 77 68 69 74 65 73 70 61 63 65 2c  | ed.by.............;;.whitespace, | 
| 16080 |  20 72 65 74 75 72 6e 20 69 74 20 69 6e 20 74 68    65 20 63 64 72 2e 20 20 49 20 63 61 6e 27 74 20  | .return.it.in.the.cdr...I.can't. | 
| 160a0 |  74 68 69 6e 6b 20 6f 66 0a 20 20 20 20 20 20 20    20 20 20 20 20 3b 3b 20 61 6e 79 20 63 6f 75 6e  | think.of.............;;.any.coun | 
| 160c0 |  74 65 72 65 78 61 6d 70 6c 65 73 0a 20 20 20 20    20 20 20 20 20 20 20 20 28 6c 69 73 74 0a 20 20  | terexamples.............(list... | 
| 160e0 |  20 20 20 20 20 20 20 20 20 20 20 28 6c 65 64 67    65 72 2d 73 74 72 69 6e 67 2d 74 6f 2d 6e 75 6d  | ...........(ledger-string-to-num | 
| 16100 |  62 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 64 65 6c 65 74 65 2d 61 6e 64 2d 65 78  | ber...............(delete-and-ex | 
| 16120 |  74 72 61 63 74 2d 72 65 67 69 6f 6e 20 28 6d 61    74 63 68 2d 62 65 67 69 6e 6e 69 6e 67 20 30 29  | tract-region.(match-beginning.0) | 
| 16140 |  20 28 6d 61 74 63 68 2d 65 6e 64 20 30 29 29 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e  | .(match-end.0)))..............(n | 
| 16160 |  74 68 20 30 20 28 73 70 6c 69 74 2d 73 74 72 69    6e 67 20 28 62 75 66 66 65 72 2d 73 75 62 73 74  | th.0.(split-string.(buffer-subst | 
| 16180 |  72 69 6e 67 2d 6e 6f 2d 70 72 6f 70 65 72 74 69    65 73 20 28 70 6f 69 6e 74 2d 6d 69 6e 29 20 28  | ring-no-properties.(point-min).( | 
| 161a0 |  70 6f 69 6e 74 2d 6d 61 78 29 29 29 29 29 29 0a    20 20 20 20 20 20 20 20 20 20 20 28 28 72 65 2d  | point-max))))))............((re- | 
| 161c0 |  73 65 61 72 63 68 2d 66 6f 72 77 61 72 64 20 22    30 22 20 6e 69 6c 20 74 29 0a 20 20 20 20 20 20  | search-forward."0".nil.t)....... | 
| 161e0 |  20 20 20 20 20 20 3b 3b 20 63 6f 75 6c 64 6e 27    74 20 66 69 6e 64 20 61 20 64 65 63 69 6d 61 6c  | ......;;.couldn't.find.a.decimal | 
| 16200 |  20 6e 75 6d 62 65 72 2c 20 6c 6f 6f 6b 20 66 6f    72 20 61 20 73 69 6e 67 6c 65 20 30 2c 0a 20 20  | .number,.look.for.a.single.0,... | 
| 16220 |  20 20 20 20 20 20 20 20 20 20 3b 3b 20 69 6e 64    69 63 61 74 69 6e 67 20 61 63 63 6f 75 6e 74 20  | ..........;;.indicating.account. | 
| 16240 |  77 69 74 68 20 7a 65 72 6f 20 62 61 6c 61 6e 63    65 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 6c  | with.zero.balance.............(l | 
| 16260 |  69 73 74 20 30 20 6c 65 64 67 65 72 2d 72 65 63    6f 6e 63 69 6c 65 2d 64 65 66 61 75 6c 74 2d 63  | ist.0.ledger-reconcile-default-c | 
| 16280 |  6f 6d 6d 6f 64 69 74 79 29 29 0a 20 20 20 20 20    20 20 20 20 20 20 3b 3b 20 6e 6f 74 68 69 6e 67  | ommodity))............;;.nothing | 
| 162a0 |  20 66 6f 75 6e 64 2c 20 72 65 74 75 72 6e 20 30    0a 20 20 20 20 20 20 20 20 20 20 20 28 74 20 28  | .found,.return.0............(t.( | 
| 162c0 |  6c 69 73 74 20 30 20 6c 65 64 67 65 72 2d 72 65    63 6f 6e 63 69 6c 65 2d 64 65 66 61 75 6c 74 2d  | list.0.ledger-reconcile-default- | 
| 162e0 |  63 6f 6d 6d 6f 64 69 74 79 29 29 29 29 29 29 29    0a 0a 28 64 65 66 75 6e 20 6c 65 64 67 65 72 2d  | commodity)))))))..(defun.ledger- | 
| 16300 |  73 74 72 69 6e 67 2d 62 61 6c 61 6e 63 65 2d 74    6f 2d 63 6f 6d 6d 6f 64 69 74 69 7a 65 64 2d 61  | string-balance-to-commoditized-a | 
| 16320 |  6d 6f 75 6e 74 20 28 73 74 72 29 0a 20 20 22 52    65 74 75 72 6e 20 61 20 63 6f 6d 6d 6f 64 69 74  | mount.(str)..."Return.a.commodit | 
| 16340 |  69 7a 65 64 20 61 6d 6f 75 6e 74 20 28 76 61 6c    2c 20 5c 22 63 6f 6d 6d 5c 22 29 20 66 72 6f 6d  | ized.amount.(val,.\"comm\").from | 
| 16360 |  20 53 54 52 2e 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  | .STR.".......................... | 
| 16380 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b    20 62 72 65 61 6b 20 61 6e 79 20 62 61 6c 61 6e  | ...............;.break.any.balan | 
| 163a0 |  63 65 73 20 77 69 74 68 20 6d 75 6c 74 69 20 63    6f 6d 6d 6f 64 69 74 69 65 73 20 69 6e 74 6f 20  | ces.with.multi.commodities.into. | 
| 163c0 |  61 20 6c 69 73 74 0a 20 20 28 6d 61 70 63 61 72    20 23 27 28 6c 61 6d 62 64 61 20 28 73 74 29 0a  | a.list...(mapcar.#'(lambda.(st). | 
| 163e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c    65 64 67 65 72 2d 73 70 6c 69 74 2d 63 6f 6d 6d  | ..............(ledger-split-comm | 
| 16400 |  6f 64 69 74 79 2d 73 74 72 69 6e 67 20 73 74 29    29 0a 20 20 20 20 20 20 20 20 20 20 28 73 70 6c  | odity-string.st))...........(spl | 
| 16420 |  69 74 2d 73 74 72 69 6e 67 20 73 74 72 20 22 5b    5c 6e 5c 72 5d 22 29 29 29 0a 0a 28 64 65 66 75  | it-string.str."[\n\r]")))..(defu | 
| 16440 |  6e 20 6c 65 64 67 65 72 2d 73 75 62 74 72 61 63    74 2d 63 6f 6d 6d 6f 64 69 74 79 20 28 63 31 20  | n.ledger-subtract-commodity.(c1. | 
| 16460 |  63 32 29 0a 20 20 22 53 75 62 74 72 61 63 74 20    43 32 20 66 72 6f 6d 20 43 31 2c 20 65 6e 73 75  | c2)..."Subtract.C2.from.C1,.ensu | 
| 16480 |  72 69 6e 67 20 74 68 65 69 72 20 63 6f 6d 6d 6f    64 69 74 69 65 73 20 6d 61 74 63 68 2e 0a 0a 41  | ring.their.commodities.match...A | 
| 164a0 |  73 20 61 6e 20 65 78 63 65 70 74 69 6f 6e 2c 20    69 66 20 74 68 65 20 71 75 61 6e 74 69 74 79 20  | s.an.exception,.if.the.quantity. | 
| 164c0 |  6f 66 20 43 32 20 69 73 20 7a 65 72 6f 2c 20 43    31 20 69 73 20 72 65 74 75 72 6e 65 64 0a 64 69  | of.C2.is.zero,.C1.is.returned.di | 
| 164e0 |  72 65 63 74 6c 79 2e 22 0a 20 20 28 63 6f 6e 64    0a 20 20 20 28 28 7a 65 72 6f 70 20 28 63 61 72  | rectly."...(cond....((zerop.(car | 
| 16500 |  20 63 32 29 29 20 63 31 29 0a 20 20 20 28 28 73    74 72 69 6e 67 3d 20 28 63 61 64 72 20 63 31 29  | .c2)).c1)....((string=.(cadr.c1) | 
| 16520 |  20 28 63 61 64 72 20 63 32 29 29 0a 20 20 20 20    28 6c 69 73 74 20 28 2d 20 28 63 61 72 20 63 31  | .(cadr.c2)).....(list.(-.(car.c1 | 
| 16540 |  29 20 28 63 61 72 20 63 32 29 29 20 28 63 61 64    72 20 63 31 29 29 29 0a 20 20 20 28 74 20 28 65  | ).(car.c2)).(cadr.c1)))....(t.(e | 
| 16560 |  72 72 6f 72 20 22 43 61 6e 27 74 20 73 75 62 74    72 61 63 74 20 64 69 66 66 65 72 65 6e 74 20 63  | rror."Can't.subtract.different.c | 
| 16580 |  6f 6d 6d 6f 64 69 74 69 65 73 3a 20 25 53 20 2d    20 25 53 22 20 63 31 20 63 32 29 29 29 29 0a 0a  | ommodities:.%S.-.%S".c1.c2)))).. | 
| 165a0 |  28 64 65 66 75 6e 20 6c 65 64 67 65 72 2d 61 64    64 2d 63 6f 6d 6d 6f 64 69 74 79 20 28 63 31 20  | (defun.ledger-add-commodity.(c1. | 
| 165c0 |  63 32 29 0a 20 20 22 41 64 64 20 43 31 20 61 6e    64 20 43 32 2c 20 65 6e 73 75 72 69 6e 67 20 74  | c2)..."Add.C1.and.C2,.ensuring.t | 
| 165e0 |  68 65 69 72 20 63 6f 6d 6d 6f 64 69 74 69 65 73    20 6d 61 74 63 68 2e 0a 0a 41 73 20 61 6e 20 65  | heir.commodities.match...As.an.e | 
| 16600 |  78 63 65 70 74 69 6f 6e 2c 20 69 66 20 74 68 65    20 71 75 61 6e 74 69 74 79 20 6f 66 20 43 32 20  | xception,.if.the.quantity.of.C2. | 
| 16620 |  69 73 20 7a 65 72 6f 2c 20 43 31 20 69 73 20 72    65 74 75 72 6e 65 64 0a 64 69 72 65 63 74 6c 79  | is.zero,.C1.is.returned.directly | 
| 16640 |  2e 22 0a 20 20 28 63 6f 6e 64 0a 20 20 20 28 28    7a 65 72 6f 70 20 28 63 61 72 20 63 32 29 29 20  | ."...(cond....((zerop.(car.c2)). | 
| 16660 |  63 31 29 0a 20 20 20 28 28 73 74 72 69 6e 67 3d    20 28 63 61 64 72 20 63 31 29 20 28 63 61 64 72  | c1)....((string=.(cadr.c1).(cadr | 
| 16680 |  20 63 32 29 29 0a 20 20 20 20 28 6c 69 73 74 20    28 2b 20 28 63 61 72 20 63 31 29 20 28 63 61 72  | .c2)).....(list.(+.(car.c1).(car | 
| 166a0 |  20 63 32 29 29 20 28 63 61 64 72 20 63 31 29 29    29 0a 20 20 20 28 74 20 28 65 72 72 6f 72 20 22  | .c2)).(cadr.c1)))....(t.(error." | 
| 166c0 |  43 61 6e 27 74 20 61 64 64 20 64 69 66 66 65 72    65 6e 74 20 63 6f 6d 6d 6f 64 69 74 69 65 73 3a  | Can't.add.different.commodities: | 
| 166e0 |  20 25 53 20 2b 20 25 53 22 20 63 31 20 63 32 29    29 29 29 0a 0a 28 64 65 66 75 6e 20 6c 65 64 67  | .%S.+.%S".c1.c2))))..(defun.ledg | 
| 16700 |  65 72 2d 73 74 72 69 70 20 28 73 74 72 20 63 68    61 72 29 0a 20 20 22 52 65 74 75 72 6e 20 53 54  | er-strip.(str.char)..."Return.ST | 
| 16720 |  52 20 77 69 74 68 20 43 48 41 52 20 72 65 6d 6f    76 65 64 2e 22 0a 20 20 28 72 65 70 6c 61 63 65  | R.with.CHAR.removed."...(replace | 
| 16740 |  2d 72 65 67 65 78 70 2d 69 6e 2d 73 74 72 69 6e    67 20 63 68 61 72 20 22 22 20 73 74 72 29 29 0a  | -regexp-in-string.char."".str)). | 
| 16760 |  0a 28 64 65 66 75 6e 20 6c 65 64 67 65 72 2d 73    74 72 69 6e 67 2d 74 6f 2d 6e 75 6d 62 65 72 20  | .(defun.ledger-string-to-number. | 
| 16780 |  28 73 74 72 20 26 6f 70 74 69 6f 6e 61 6c 20 64    65 63 69 6d 61 6c 2d 63 6f 6d 6d 61 29 0a 20 20  | (str.&optional.decimal-comma)... | 
| 167a0 |  22 50 61 72 73 65 20 53 54 52 20 61 73 20 61 20    6e 75 6d 62 65 72 20 61 6e 64 20 72 65 74 75 72  | "Parse.STR.as.a.number.and.retur | 
| 167c0 |  6e 20 74 68 61 74 20 6e 75 6d 62 65 72 2e 0a 0a    49 6d 70 72 6f 76 65 73 20 62 75 69 6c 74 69 6e  | n.that.number...Improves.builtin | 
| 167e0 |  20 60 73 74 72 69 6e 67 2d 74 6f 2d 6e 75 6d 62    65 72 27 20 62 79 20 68 61 6e 64 6c 69 6e 67 0a  | .`string-to-number'.by.handling. | 
| 16800 |  69 6e 74 65 72 6e 61 74 69 6f 6e 61 6c 69 7a 61    74 69 6f 6e 2c 20 61 6e 64 20 72 65 74 75 72 6e  | internationalization,.and.return | 
| 16820 |  20 6e 69 6c 20 69 66 20 6e 75 6d 62 65 72 20 63    61 6e 27 74 20 62 65 20 70 61 72 73 65 64 2e 0a  | .nil.if.number.can't.be.parsed.. | 
| 16840 |  53 65 65 20 60 6c 65 64 67 65 72 2d 65 6e 76 69    72 6f 6e 6d 65 6e 74 2d 61 6c 69 73 74 27 20 66  | See.`ledger-environment-alist'.f | 
| 16860 |  6f 72 20 44 45 43 49 4d 41 4c 2d 43 4f 4d 4d 41    2e 22 0a 20 20 28 6c 65 74 20 28 28 6e 73 74 72  | or.DECIMAL-COMMA."...(let.((nstr | 
| 16880 |  20 28 69 66 20 28 6f 72 20 64 65 63 69 6d 61 6c    2d 63 6f 6d 6d 61 0a 20 20 20 20 20 20 20 20 20  | .(if.(or.decimal-comma.......... | 
| 168a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 73    73 6f 63 20 22 64 65 63 69 6d 61 6c 2d 63 6f 6d  | .............(assoc."decimal-com | 
| 168c0 |  6d 61 22 20 6c 65 64 67 65 72 2d 65 6e 76 69 72    6f 6e 6d 65 6e 74 2d 61 6c 69 73 74 29 29 0a 20  | ma".ledger-environment-alist)).. | 
| 168e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 6c 65 64 67 65 72 2d 73 74 72 69 70 20 73  | .................(ledger-strip.s | 
| 16900 |  74 72 20 22 5b 2e 5d 22 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 6c 65 64 67 65  | tr."[.]").................(ledge | 
| 16920 |  72 2d 73 74 72 69 70 20 73 74 72 20 22 2c 22 29    29 29 29 0a 20 20 20 20 28 77 68 69 6c 65 20 28  | r-strip.str.",")))).....(while.( | 
| 16940 |  73 74 72 69 6e 67 2d 6d 61 74 63 68 20 22 2c 22    20 6e 73 74 72 29 20 20 3b 69 66 20 74 68 65 72  | string-match.",".nstr)..;if.ther | 
| 16960 |  65 20 69 73 20 61 20 63 6f 6d 6d 61 20 6e 6f 77    2c 20 69 74 20 69 73 20 61 20 64 65 63 69 6d 61  | e.is.a.comma.now,.it.is.a.decima | 
| 16980 |  6c 20 70 6f 69 6e 74 0a 20 20 20 20 20 20 28 73    65 74 71 20 6e 73 74 72 20 28 72 65 70 6c 61 63  | l.point.......(setq.nstr.(replac | 
| 169a0 |  65 2d 6d 61 74 63 68 20 22 2e 22 20 6e 69 6c 20    6e 69 6c 20 6e 73 74 72 29 29 29 0a 20 20 20 20  | e-match.".".nil.nil.nstr)))..... | 
| 169c0 |  28 73 74 72 69 6e 67 2d 74 6f 2d 6e 75 6d 62 65    72 20 6e 73 74 72 29 29 29 0a 0a 28 64 65 66 75  | (string-to-number.nstr)))..(defu | 
| 169e0 |  6e 20 6c 65 64 67 65 72 2d 6e 75 6d 62 65 72 2d    74 6f 2d 73 74 72 69 6e 67 20 28 6e 20 26 6f 70  | n.ledger-number-to-string.(n.&op | 
| 16a00 |  74 69 6f 6e 61 6c 20 64 65 63 69 6d 61 6c 2d 63    6f 6d 6d 61 29 0a 20 20 22 53 65 65 20 60 6e 75  | tional.decimal-comma)..."See.`nu | 
| 16a20 |  6d 62 65 72 2d 74 6f 2d 73 74 72 69 6e 67 27 20    66 6f 72 20 4e 2e 0a 44 45 43 49 4d 41 4c 2d 43  | mber-to-string'.for.N..DECIMAL-C | 
| 16a40 |  4f 4d 4d 41 20 69 73 20 61 73 20 64 6f 63 75 6d    65 6e 74 65 64 20 69 6e 20 60 6c 65 64 67 65 72  | OMMA.is.as.documented.in.`ledger | 
| 16a60 |  2d 65 6e 76 69 72 6f 6e 6d 65 6e 74 2d 61 6c 69    73 74 27 2e 22 0a 20 20 28 6c 65 74 20 28 28 73  | -environment-alist'."...(let.((s | 
| 16a80 |  74 72 20 28 6e 75 6d 62 65 72 2d 74 6f 2d 73 74    72 69 6e 67 20 6e 29 29 29 0a 20 20 20 20 28 77  | tr.(number-to-string.n))).....(w | 
| 16aa0 |  68 65 6e 20 28 6f 72 20 64 65 63 69 6d 61 6c 2d    63 6f 6d 6d 61 0a 20 20 20 20 20 20 20 20 20 20  | hen.(or.decimal-comma........... | 
| 16ac0 |  20 20 20 20 28 61 73 73 6f 63 20 22 64 65 63 69    6d 61 6c 2d 63 6f 6d 6d 61 22 20 6c 65 64 67 65  | ....(assoc."decimal-comma".ledge | 
| 16ae0 |  72 2d 65 6e 76 69 72 6f 6e 6d 65 6e 74 2d 61 6c    69 73 74 29 29 0a 20 20 20 20 20 20 28 77 68 69  | r-environment-alist)).......(whi | 
| 16b00 |  6c 65 20 28 73 74 72 69 6e 67 2d 6d 61 74 63 68    20 22 5c 5c 2e 22 20 73 74 72 29 0a 20 20 20 20  | le.(string-match."\\.".str)..... | 
| 16b20 |  20 20 20 20 28 73 65 74 71 20 73 74 72 20 28 72    65 70 6c 61 63 65 2d 6d 61 74 63 68 20 22 2c 22  | ....(setq.str.(replace-match."," | 
| 16b40 |  20 6e 69 6c 20 6e 69 6c 20 73 74 72 29 29 29 29    0a 20 20 20 20 73 74 72 29 29 0a 0a 28 64 65 66  | .nil.nil.str)))).....str))..(def | 
| 16b60 |  75 6e 20 6c 65 64 67 65 72 2d 63 6f 6d 6d 6f 64    69 74 79 2d 74 6f 2d 73 74 72 69 6e 67 20 28 63  | un.ledger-commodity-to-string.(c | 
| 16b80 |  31 29 0a 20 20 22 52 65 74 75 72 6e 20 73 74 72    69 6e 67 20 72 65 70 72 65 73 65 6e 74 69 6e 67  | 1)..."Return.string.representing | 
| 16ba0 |  20 43 31 2e 0a 53 69 6e 67 6c 65 20 63 68 61 72    61 63 74 65 72 20 63 6f 6d 6d 6f 64 69 74 69 65  | .C1..Single.character.commoditie | 
| 16bc0 |  73 20 61 72 65 20 70 6c 61 63 65 64 20 61 68 65    61 64 20 6f 66 20 74 68 65 20 76 61 6c 75 65 2c  | s.are.placed.ahead.of.the.value, | 
| 16be0 |  0a 6c 6f 6e 67 65 72 20 6f 6e 65 73 20 61 72 65    20 61 66 74 65 72 20 74 68 65 20 76 61 6c 75 65  | .longer.ones.are.after.the.value | 
| 16c00 |  2e 22 0a 20 20 28 6c 65 74 20 28 28 73 74 72 20    28 6c 65 64 67 65 72 2d 6e 75 6d 62 65 72 2d 74  | ."...(let.((str.(ledger-number-t | 
| 16c20 |  6f 2d 73 74 72 69 6e 67 20 28 63 61 72 20 63 31    29 29 29 0a 20 20 20 20 20 20 20 20 28 63 6f 6d  | o-string.(car.c1))).........(com | 
| 16c40 |  6d 6f 64 69 74 79 20 28 63 61 64 72 20 63 31 29    29 29 0a 20 20 20 20 28 69 66 20 28 3e 20 28 6c  | modity.(cadr.c1))).....(if.(>.(l | 
| 16c60 |  65 6e 67 74 68 20 63 6f 6d 6d 6f 64 69 74 79 29    20 31 29 0a 20 20 20 20 20 20 20 20 28 63 6f 6e  | ength.commodity).1).........(con | 
| 16c80 |  63 61 74 20 73 74 72 20 22 20 22 20 63 6f 6d 6d    6f 64 69 74 79 29 0a 20 20 20 20 20 20 28 63 6f  | cat.str.".".commodity).......(co | 
| 16ca0 |  6e 63 61 74 20 63 6f 6d 6d 6f 64 69 74 79 20 22    20 22 20 73 74 72 29 29 29 29 0a 0a 28 64 65 66  | ncat.commodity.".".str))))..(def | 
| 16cc0 |  75 6e 20 6c 65 64 67 65 72 2d 72 65 61 64 2d 63    6f 6d 6d 6f 64 69 74 79 2d 73 74 72 69 6e 67 20  | un.ledger-read-commodity-string. | 
| 16ce0 |  28 70 72 6f 6d 70 74 29 0a 20 20 22 52 65 61 64    20 61 6e 20 61 6d 6f 75 6e 74 20 66 72 6f 6d 20  | (prompt)..."Read.an.amount.from. | 
| 16d00 |  6d 69 6e 69 2d 62 75 66 66 65 72 20 75 73 69 6e    67 20 50 52 4f 4d 50 54 2e 22 0a 20 20 28 6c 65  | mini-buffer.using.PROMPT."...(le | 
| 16d20 |  74 20 28 28 73 74 72 20 28 72 65 61 64 2d 66 72    6f 6d 2d 6d 69 6e 69 62 75 66 66 65 72 0a 20 20  | t.((str.(read-from-minibuffer... | 
| 16d40 |  20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e    63 61 74 20 70 72 6f 6d 70 74 20 22 20 28 22 20  | ............(concat.prompt.".(". | 
| 16d60 |  6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65    2d 64 65 66 61 75 6c 74 2d 63 6f 6d 6d 6f 64 69  | ledger-reconcile-default-commodi | 
| 16d80 |  74 79 20 22 29 3a 20 22 29 29 29 0a 20 20 20 20    20 20 20 20 63 6f 6d 6d 29 0a 20 20 20 20 28 77  | ty."):."))).........comm).....(w | 
| 16da0 |  68 65 6e 20 28 61 6e 64 20 28 3e 20 28 6c 65 6e    67 74 68 20 73 74 72 29 20 30 29 0a 20 20 20 20  | hen.(and.(>.(length.str).0)..... | 
| 16dc0 |  20 20 20 20 20 20 20 20 20 28 6c 65 64 67 65 72    2d 73 70 6c 69 74 2d 63 6f 6d 6d 6f 64 69 74 79  | .........(ledger-split-commodity | 
| 16de0 |  2d 73 74 72 69 6e 67 20 73 74 72 29 29 0a 20 20    20 20 20 20 28 73 65 74 71 20 63 6f 6d 6d 20 28  | -string.str)).......(setq.comm.( | 
| 16e00 |  6c 65 64 67 65 72 2d 73 70 6c 69 74 2d 63 6f 6d    6d 6f 64 69 74 79 2d 73 74 72 69 6e 67 20 73 74  | ledger-split-commodity-string.st | 
| 16e20 |  72 29 29 0a 20 20 20 20 20 20 28 69 66 20 28 63    61 64 72 20 63 6f 6d 6d 29 0a 20 20 20 20 20 20  | r)).......(if.(cadr.comm)....... | 
| 16e40 |  20 20 20 20 63 6f 6d 6d 0a 20 20 20 20 20 20 20    20 28 6c 69 73 74 20 28 63 61 72 20 63 6f 6d 6d  | ....comm.........(list.(car.comm | 
| 16e60 |  29 20 6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69    6c 65 2d 64 65 66 61 75 6c 74 2d 63 6f 6d 6d 6f  | ).ledger-reconcile-default-commo | 
| 16e80 |  64 69 74 79 29 29 29 29 29 0a 0a 28 70 72 6f 76    69 64 65 20 27 6c 65 64 67 65 72 2d 63 6f 6d 6d  | dity)))))..(provide.'ledger-comm | 
| 16ea0 |  6f 64 69 74 69 65 73 29 0a 0a 3b 3b 3b 20 6c 65    64 67 65 72 2d 63 6f 6d 6d 6f 64 69 74 69 65 73  | odities)..;;;.ledger-commodities | 
| 16ec0 |  2e 65 6c 20 65 6e 64 73 20 68 65 72 65 0a 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | .el.ends.here................... | 
| 16ee0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 16f00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 16f20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 16f40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 16f60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 16f80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 16fa0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 16fc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 16fe0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 17000 |  6c 65 64 67 65 72 2d 6d 6f 64 65 2d 32 30 32 34    30 34 31 36 2e 34 31 36 2f 6c 65 64 67 65 72 2d  | ledger-mode-20240416.416/ledger- | 
| 17020 |  6d 6f 64 65 2d 70 6b 67 2e 65 6c 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | mode-pkg.el..................... | 
| 17040 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 17060 |  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 | 
| 17080 |  30 30 30 30 33 34 35 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 36 34 30 31 00 20 30 00 00 00  | 0000345.00000000000.016401..0... | 
| 170a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 170c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 170e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 17100 |  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................... | 
| 17120 |  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................... | 
| 17140 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 17160 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 17180 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 171a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 171c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 171e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 17200 |  28 64 65 66 69 6e 65 2d 70 61 63 6b 61 67 65 20    22 6c 65 64 67 65 72 2d 6d 6f 64 65 22 20 22 32  | (define-package."ledger-mode"."2 | 
| 17220 |  30 32 34 30 34 31 36 2e 34 31 36 22 20 22 48 65    6c 70 65 72 20 63 6f 64 65 20 66 6f 72 20 75 73  | 0240416.416"."Helper.code.for.us | 
| 17240 |  65 20 77 69 74 68 20 74 68 65 20 5c 22 6c 65 64    67 65 72 5c 22 20 63 6f 6d 6d 61 6e 64 2d 6c 69  | e.with.the.\"ledger\".command-li | 
| 17260 |  6e 65 20 74 6f 6f 6c 22 0a 20 20 27 28 28 65 6d    61 63 73 20 22 32 35 2e 31 22 29 29 0a 20 20 3a  | ne.tool"...'((emacs."25.1"))...: | 
| 17280 |  63 6f 6d 6d 69 74 20 22 64 32 35 66 64 34 62 39    66 66 65 66 64 64 33 64 34 66 33 35 36 34 62 64  | commit."d25fd4b9ffefdd3d4f3564bd | 
| 172a0 |  61 33 33 66 39 38 39 62 64 37 62 30 36 63 30 35    22 29 0a 3b 3b 20 4c 6f 63 61 6c 20 56 61 72 69  | a33f989bd7b06c05").;;.Local.Vari | 
| 172c0 |  61 62 6c 65 73 3a 0a 3b 3b 20 6e 6f 2d 62 79 74    65 2d 63 6f 6d 70 69 6c 65 3a 20 74 0a 3b 3b 20  | ables:.;;.no-byte-compile:.t.;;. | 
| 172e0 |  45 6e 64 3a 0a 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | End:............................ | 
| 17300 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 17320 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 17340 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 17360 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 17380 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 173a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 173c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 173e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 17400 |  6c 65 64 67 65 72 2d 6d 6f 64 65 2d 32 30 32 34    30 34 31 36 2e 34 31 36 2f 6c 65 64 67 65 72 2d  | ledger-mode-20240416.416/ledger- | 
| 17420 |  6d 6f 64 65 2e 65 6c 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | mode.el......................... | 
| 17440 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 17460 |  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 | 
| 17480 |  30 30 33 33 33 31 31 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 35 36 32 31 00 20 30 00 00 00  | 0033311.00000000000.015621..0... | 
| 174a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 174c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 174e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 17500 |  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................... | 
| 17520 |  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................... | 
| 17540 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 17560 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 17580 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 175a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 175c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 175e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 17600 |  3b 3b 3b 20 6c 65 64 67 65 72 2d 6d 6f 64 65 2e    65 6c 20 2d 2d 2d 20 48 65 6c 70 65 72 20 63 6f  | ;;;.ledger-mode.el.---.Helper.co | 
| 17620 |  64 65 20 66 6f 72 20 75 73 65 20 77 69 74 68 20    74 68 65 20 22 6c 65 64 67 65 72 22 20 63 6f 6d  | de.for.use.with.the."ledger".com | 
| 17640 |  6d 61 6e 64 2d 6c 69 6e 65 20 74 6f 6f 6c 20 20    2d 2a 2d 20 6c 65 78 69 63 61 6c 2d 62 69 6e 64  | mand-line.tool..-*-.lexical-bind | 
| 17660 |  69 6e 67 3a 20 74 3b 20 2d 2a 2d 0a 0a 3b 3b 20    43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30  | ing:.t;.-*-..;;.Copyright.(C).20 | 
| 17680 |  30 33 2d 32 30 31 36 20 4a 6f 68 6e 20 57 69 65    67 6c 65 79 20 28 6a 6f 68 6e 77 20 41 54 20 67  | 03-2016.John.Wiegley.(johnw.AT.g | 
| 176a0 |  6e 75 20 44 4f 54 20 6f 72 67 29 0a 0a 3b 3b 20    54 68 69 73 20 66 69 6c 65 20 69 73 20 6e 6f 74  | nu.DOT.org)..;;.This.file.is.not | 
| 176c0 |  20 70 61 72 74 20 6f 66 20 47 4e 55 20 45 6d 61    63 73 2e 0a 0a 3b 3b 20 50 61 63 6b 61 67 65 2d  | .part.of.GNU.Emacs...;;.Package- | 
| 176e0 |  52 65 71 75 69 72 65 73 3a 20 28 28 65 6d 61 63    73 20 22 32 35 2e 31 22 29 29 0a 0a 3b 3b 20 54  | Requires:.((emacs."25.1"))..;;.T | 
| 17700 |  68 69 73 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  | his.is.free.software;.you.can.re | 
| 17720 |  64 69 73 74 72 69 62 75 74 65 20 69 74 20 61 6e    64 2f 6f 72 20 6d 6f 64 69 66 79 20 69 74 20 75  | distribute.it.and/or.modify.it.u | 
| 17740 |  6e 64 65 72 0a 3b 3b 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  | nder.;;.the.terms.of.the.GNU.Gen | 
| 17760 |  65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65    6e 73 65 20 61 73 20 70 75 62 6c 69 73 68 65 64  | eral.Public.License.as.published | 
| 17780 |  20 62 79 20 74 68 65 20 46 72 65 65 0a 3b 3b 20    53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61 74  | .by.the.Free.;;.Software.Foundat | 
| 177a0 |  69 6f 6e 3b 20 65 69 74 68 65 72 20 76 65 72 73    69 6f 6e 20 32 2c 20 6f 72 20 28 61 74 20 79 6f  | ion;.either.version.2,.or.(at.yo | 
| 177c0 |  75 72 20 6f 70 74 69 6f 6e 29 20 61 6e 79 20 6c    61 74 65 72 0a 3b 3b 20 76 65 72 73 69 6f 6e 2e  | ur.option).any.later.;;.version. | 
| 177e0 |  0a 3b 3b 0a 3b 3b 20 54 68 69 73 20 69 73 20 64    69 73 74 72 69 62 75 74 65 64 20 69 6e 20 74 68  | .;;.;;.This.is.distributed.in.th | 
| 17800 |  65 20 68 6f 70 65 20 74 68 61 74 20 69 74 20 77    69 6c 6c 20 62 65 20 75 73 65 66 75 6c 2c 20 62  | e.hope.that.it.will.be.useful,.b | 
| 17820 |  75 74 20 57 49 54 48 4f 55 54 0a 3b 3b 20 41 4e    59 20 57 41 52 52 41 4e 54 59 3b 20 77 69 74 68  | ut.WITHOUT.;;.ANY.WARRANTY;.with | 
| 17840 |  6f 75 74 20 65 76 65 6e 20 74 68 65 20 69 6d 70    6c 69 65 64 20 77 61 72 72 61 6e 74 79 20 6f 66  | out.even.the.implied.warranty.of | 
| 17860 |  20 4d 45 52 43 48 41 4e 54 41 42 49 4c 49 54 59    20 6f 72 0a 3b 3b 20 46 49 54 4e 45 53 53 20 46  | .MERCHANTABILITY.or.;;.FITNESS.F | 
| 17880 |  4f 52 20 41 20 50 41 52 54 49 43 55 4c 41 52 20    50 55 52 50 4f 53 45 2e 20 20 53 65 65 20 74 68  | OR.A.PARTICULAR.PURPOSE...See.th | 
| 178a0 |  65 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75    62 6c 69 63 20 4c 69 63 65 6e 73 65 0a 3b 3b 20  | e.GNU.General.Public.License.;;. | 
| 178c0 |  66 6f 72 20 6d 6f 72 65 20 64 65 74 61 69 6c 73    2e 0a 3b 3b 0a 3b 3b 20 59 6f 75 20 73 68 6f 75  | for.more.details..;;.;;.You.shou | 
| 178e0 |  6c 64 20 68 61 76 65 20 72 65 63 65 69 76 65 64    20 61 20 63 6f 70 79 20 6f 66 20 74 68 65 20 47  | ld.have.received.a.copy.of.the.G | 
| 17900 |  4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69    63 20 4c 69 63 65 6e 73 65 0a 3b 3b 20 61 6c 6f  | NU.General.Public.License.;;.alo | 
| 17920 |  6e 67 20 77 69 74 68 20 47 4e 55 20 45 6d 61 63    73 3b 20 73 65 65 20 74 68 65 20 66 69 6c 65 20  | ng.with.GNU.Emacs;.see.the.file. | 
| 17940 |  43 4f 50 59 49 4e 47 2e 20 20 49 66 20 6e 6f 74    2c 20 77 72 69 74 65 20 74 6f 20 74 68 65 0a 3b  | COPYING...If.not,.write.to.the.; | 
| 17960 |  3b 20 46 72 65 65 20 53 6f 66 74 77 61 72 65 20    46 6f 75 6e 64 61 74 69 6f 6e 2c 20 49 6e 63 2e  | ;.Free.Software.Foundation,.Inc. | 
| 17980 |  2c 20 35 31 20 46 72 61 6e 6b 6c 69 6e 20 53 74    72 65 65 74 2c 20 46 69 66 74 68 20 46 6c 6f 6f  | ,.51.Franklin.Street,.Fifth.Floo | 
| 179a0 |  72 2c 20 42 6f 73 74 6f 6e 2c 0a 3b 3b 20 4d 41    20 30 32 31 31 30 2d 31 33 30 31 20 55 53 41 2e  | r,.Boston,.;;.MA.02110-1301.USA. | 
| 179c0 |  0a 0a 3b 3b 3b 20 43 6f 6d 6d 65 6e 74 61 72 79    3a 0a 3b 3b 20 54 68 69 73 20 45 6d 61 63 73 20  | ..;;;.Commentary:.;;.This.Emacs. | 
| 179e0 |  6c 69 62 72 61 72 79 20 70 72 6f 76 69 64 65 73    20 61 20 6d 61 6a 6f 72 20 6d 6f 64 65 20 66 6f  | library.provides.a.major.mode.fo | 
| 17a00 |  72 20 65 64 69 74 69 6e 67 20 66 69 6c 65 73 20    69 6e 20 74 68 65 20 66 6f 72 6d 61 74 20 75 73  | r.editing.files.in.the.format.us | 
| 17a20 |  65 64 0a 3b 3b 20 62 79 20 74 68 65 20 60 6c 65    64 67 65 72 27 20 63 6f 6d 6d 61 6e 64 2d 6c 69  | ed.;;.by.the.`ledger'.command-li | 
| 17a40 |  6e 65 20 61 63 63 6f 75 6e 74 69 6e 67 20 73 79    73 74 65 6d 2e 0a 0a 3b 3b 20 49 74 20 61 6c 73  | ne.accounting.system...;;.It.als | 
| 17a60 |  6f 20 70 72 6f 76 69 64 65 73 20 61 75 74 6f 6d    61 74 65 64 20 73 75 70 70 6f 72 74 20 66 6f 72  | o.provides.automated.support.for | 
| 17a80 |  20 73 6f 6d 65 20 60 6c 65 64 67 65 72 27 20 77    6f 72 6b 66 6c 6f 77 73 2c 20 73 75 63 68 20 61  | .some.`ledger'.workflows,.such.a | 
| 17aa0 |  73 0a 3b 3b 20 72 65 63 6f 6e 63 69 6c 69 6e 67    20 74 72 61 6e 73 61 63 74 69 6f 6e 73 2c 20 6f  | s.;;.reconciling.transactions,.o | 
| 17ac0 |  72 20 72 75 6e 6e 69 6e 67 20 63 65 72 74 61 69    6e 20 72 65 70 6f 72 74 73 2e 0a 0a 3b 3b 3b 20  | r.running.certain.reports...;;;. | 
| 17ae0 |  43 6f 64 65 3a 0a 0a 28 72 65 71 75 69 72 65 20    27 6c 65 64 67 65 72 2d 72 65 67 65 78 29 0a 28  | Code:..(require.'ledger-regex).( | 
| 17b00 |  72 65 71 75 69 72 65 20 27 6f 72 67 29 0a 28 72    65 71 75 69 72 65 20 27 6c 65 64 67 65 72 2d 63  | require.'org).(require.'ledger-c | 
| 17b20 |  6f 6d 6d 6f 64 69 74 69 65 73 29 0a 28 72 65 71    75 69 72 65 20 27 6c 65 64 67 65 72 2d 63 6f 6d  | ommodities).(require.'ledger-com | 
| 17b40 |  70 6c 65 74 65 29 0a 28 72 65 71 75 69 72 65 20    27 6c 65 64 67 65 72 2d 63 6f 6e 74 65 78 74 29  | plete).(require.'ledger-context) | 
| 17b60 |  0a 28 72 65 71 75 69 72 65 20 27 6c 65 64 67 65    72 2d 65 78 65 63 29 0a 28 72 65 71 75 69 72 65  | .(require.'ledger-exec).(require | 
| 17b80 |  20 27 6c 65 64 67 65 72 2d 66 6f 6e 74 73 29 0a    28 72 65 71 75 69 72 65 20 27 6c 65 64 67 65 72  | .'ledger-fonts).(require.'ledger | 
| 17ba0 |  2d 66 6f 6e 74 69 66 79 29 0a 28 72 65 71 75 69    72 65 20 27 6c 65 64 67 65 72 2d 69 6e 69 74 29  | -fontify).(require.'ledger-init) | 
| 17bc0 |  0a 28 72 65 71 75 69 72 65 20 27 6c 65 64 67 65    72 2d 6e 61 76 69 67 61 74 65 29 0a 28 72 65 71  | .(require.'ledger-navigate).(req | 
| 17be0 |  75 69 72 65 20 27 6c 65 64 67 65 72 2d 6f 63 63    75 72 29 0a 28 72 65 71 75 69 72 65 20 27 6c 65  | uire.'ledger-occur).(require.'le | 
| 17c00 |  64 67 65 72 2d 70 6f 73 74 29 0a 28 72 65 71 75    69 72 65 20 27 6c 65 64 67 65 72 2d 72 65 63 6f  | dger-post).(require.'ledger-reco | 
| 17c20 |  6e 63 69 6c 65 29 0a 28 72 65 71 75 69 72 65 20    27 6c 65 64 67 65 72 2d 72 65 70 6f 72 74 29 0a  | ncile).(require.'ledger-report). | 
| 17c40 |  28 72 65 71 75 69 72 65 20 27 6c 65 64 67 65 72    2d 73 6f 72 74 29 0a 28 72 65 71 75 69 72 65 20  | (require.'ledger-sort).(require. | 
| 17c60 |  27 6c 65 64 67 65 72 2d 73 74 61 74 65 29 0a 28    72 65 71 75 69 72 65 20 27 6c 65 64 67 65 72 2d  | 'ledger-state).(require.'ledger- | 
| 17c80 |  74 65 73 74 29 0a 28 72 65 71 75 69 72 65 20 27    6c 65 64 67 65 72 2d 74 65 78 69 29 0a 28 72 65  | test).(require.'ledger-texi).(re | 
| 17ca0 |  71 75 69 72 65 20 27 6c 65 64 67 65 72 2d 78 61    63 74 29 0a 28 72 65 71 75 69 72 65 20 27 6c 65  | quire.'ledger-xact).(require.'le | 
| 17cc0 |  64 67 65 72 2d 73 63 68 65 64 75 6c 65 29 0a 28    72 65 71 75 69 72 65 20 27 6c 65 64 67 65 72 2d  | dger-schedule).(require.'ledger- | 
| 17ce0 |  63 68 65 63 6b 29 0a 0a 28 64 65 63 6c 61 72 65    2d 66 75 6e 63 74 69 6f 6e 20 63 75 73 74 6f 6d  | check)..(declare-function.custom | 
| 17d00 |  2d 67 72 6f 75 70 2d 6d 65 6d 62 65 72 73 20 22    63 75 73 2d 65 64 69 74 22 20 28 73 79 6d 62 6f  | -group-members."cus-edit".(symbo | 
| 17d20 |  6c 20 67 72 6f 75 70 73 2d 6f 6e 6c 79 29 29 0a    0a 3b 3b 3b 20 43 6f 64 65 3a 0a 0a 28 64 65 66  | l.groups-only))..;;;.Code:..(def | 
| 17d40 |  67 72 6f 75 70 20 6c 65 64 67 65 72 20 6e 69 6c    0a 20 20 22 49 6e 74 65 72 66 61 63 65 20 74 6f  | group.ledger.nil..."Interface.to | 
| 17d60 |  20 74 68 65 20 4c 65 64 67 65 72 20 63 6f 6d 6d    61 6e 64 2d 6c 69 6e 65 20 61 63 63 6f 75 6e 74  | .the.Ledger.command-line.account | 
| 17d80 |  69 6e 67 20 70 72 6f 67 72 61 6d 2e 22 0a 20 20    3a 67 72 6f 75 70 20 27 64 61 74 61 29 0a 0a 28  | ing.program."...:group.'data)..( | 
| 17da0 |  64 65 66 63 6f 6e 73 74 20 6c 65 64 67 65 72 2d    76 65 72 73 69 6f 6e 20 22 33 2e 30 22 0a 20 20  | defconst.ledger-version."3.0"... | 
| 17dc0 |  22 54 68 65 20 76 65 72 73 69 6f 6e 20 6f 66 20    6c 65 64 67 65 72 2e 65 6c 20 63 75 72 72 65 6e  | "The.version.of.ledger.el.curren | 
| 17de0 |  74 6c 79 20 6c 6f 61 64 65 64 2e 22 29 0a 0a 28    64 65 66 63 6f 6e 73 74 20 6c 65 64 67 65 72 2d  | tly.loaded.")..(defconst.ledger- | 
| 17e00 |  6d 6f 64 65 2d 76 65 72 73 69 6f 6e 20 22 34 2e    30 2e 30 22 29 0a 0a 28 64 65 66 75 6e 20 6c 65  | mode-version."4.0.0")..(defun.le | 
| 17e20 |  64 67 65 72 2d 6d 6f 64 65 2d 64 75 6d 70 2d 76    61 72 69 61 62 6c 65 20 28 76 61 72 29 0a 20 20  | dger-mode-dump-variable.(var)... | 
| 17e40 |  22 46 6f 72 6d 61 74 20 56 41 52 20 66 6f 72 20    64 75 6d 70 20 74 6f 20 62 75 66 66 65 72 2e 22  | "Format.VAR.for.dump.to.buffer." | 
| 17e60 |  0a 20 20 28 69 66 20 76 61 72 0a 20 20 20 20 20    20 28 69 6e 73 65 72 74 20 28 66 6f 72 6d 61 74  | ...(if.var.......(insert.(format | 
| 17e80 |  20 22 20 20 20 20 20 20 20 20 20 25 73 3a 20 25    53 5c 6e 22 20 28 73 79 6d 62 6f 6c 2d 6e 61 6d  | .".........%s:.%S\n".(symbol-nam | 
| 17ea0 |  65 20 76 61 72 29 20 28 65 76 61 6c 20 76 61 72    29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6c 65  | e.var).(eval.var)))))..(defun.le | 
| 17ec0 |  64 67 65 72 2d 6d 6f 64 65 2d 64 75 6d 70 2d 67    72 6f 75 70 20 28 67 72 6f 75 70 29 0a 20 20 22  | dger-mode-dump-group.(group)..." | 
| 17ee0 |  44 75 6d 70 20 47 52 4f 55 50 20 63 75 73 74 6f    6d 69 7a 61 74 69 6f 6e 73 20 74 6f 20 63 75 72  | Dump.GROUP.customizations.to.cur | 
| 17f00 |  72 65 6e 74 20 62 75 66 66 65 72 2e 22 0a 20 20    28 72 65 71 75 69 72 65 20 27 63 75 73 2d 65 64  | rent.buffer."...(require.'cus-ed | 
| 17f20 |  69 74 29 0a 20 20 28 6c 65 74 20 28 28 6d 65 6d    62 65 72 73 20 28 63 75 73 74 6f 6d 2d 67 72 6f  | it)...(let.((members.(custom-gro | 
| 17f40 |  75 70 2d 6d 65 6d 62 65 72 73 20 67 72 6f 75 70    20 6e 69 6c 29 29 29 0a 20 20 20 20 28 64 6f 6c  | up-members.group.nil))).....(dol | 
| 17f60 |  69 73 74 20 28 6d 65 6d 62 65 72 20 6d 65 6d 62    65 72 73 29 0a 20 20 20 20 20 20 28 63 6f 6e 64  | ist.(member.members).......(cond | 
| 17f80 |  20 28 28 65 71 20 28 63 61 64 72 20 6d 65 6d 62    65 72 29 20 27 63 75 73 74 6f 6d 2d 67 72 6f 75  | .((eq.(cadr.member).'custom-grou | 
| 17fa0 |  70 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    28 69 6e 73 65 72 74 20 28 66 6f 72 6d 61 74 20  | p)..............(insert.(format. | 
| 17fc0 |  22 47 72 6f 75 70 20 25 73 3a 5c 6e 22 20 28 73    79 6d 62 6f 6c 2d 6e 61 6d 65 20 28 63 61 72 20  | "Group.%s:\n".(symbol-name.(car. | 
| 17fe0 |  6d 65 6d 62 65 72 29 29 29 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 28 6c 65 64 67 65 72 2d  | member))))..............(ledger- | 
| 18000 |  6d 6f 64 65 2d 64 75 6d 70 2d 67 72 6f 75 70 20    28 63 61 72 20 6d 65 6d 62 65 72 29 29 29 0a 20  | mode-dump-group.(car.member))).. | 
| 18020 |  20 20 20 20 20 20 20 20 20 20 20 28 28 65 71 20    28 63 61 64 72 20 6d 65 6d 62 65 72 29 20 27 63  | ...........((eq.(cadr.member).'c | 
| 18040 |  75 73 74 6f 6d 2d 76 61 72 69 61 62 6c 65 29 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65  | ustom-variable)..............(le | 
| 18060 |  64 67 65 72 2d 6d 6f 64 65 2d 64 75 6d 70 2d 76    61 72 69 61 62 6c 65 20 28 63 61 72 20 6d 65 6d  | dger-mode-dump-variable.(car.mem | 
| 18080 |  62 65 72 29 29 29 29 29 29 29 0a 0a 28 64 65 66    75 6e 20 6c 65 64 67 65 72 2d 6d 6f 64 65 2d 64  | ber)))))))..(defun.ledger-mode-d | 
| 180a0 |  75 6d 70 2d 63 6f 6e 66 69 67 75 72 61 74 69 6f    6e 20 28 29 0a 20 20 22 44 75 6d 70 20 61 6c 6c  | ump-configuration.()..."Dump.all | 
| 180c0 |  20 63 75 73 74 6f 6d 69 7a 61 74 69 6f 6e 73 2e    22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65  | .customizations."...(interactive | 
| 180e0 |  29 0a 20 20 28 66 69 6e 64 2d 66 69 6c 65 20 22    6c 65 64 67 65 72 2d 6d 6f 64 65 2d 64 75 6d 70  | )...(find-file."ledger-mode-dump | 
| 18100 |  22 29 0a 20 20 28 6c 65 64 67 65 72 2d 6d 6f 64    65 2d 64 75 6d 70 2d 67 72 6f 75 70 20 27 6c 65  | ")...(ledger-mode-dump-group.'le | 
| 18120 |  64 67 65 72 29 29 0a 0a 28 64 65 66 75 6e 20 6c    65 64 67 65 72 2d 72 65 61 64 2d 61 63 63 6f 75  | dger))..(defun.ledger-read-accou | 
| 18140 |  6e 74 2d 77 69 74 68 2d 70 72 6f 6d 70 74 20 28    70 72 6f 6d 70 74 29 0a 20 20 22 52 65 61 64 20  | nt-with-prompt.(prompt)..."Read. | 
| 18160 |  61 6e 20 61 63 63 6f 75 6e 74 20 66 72 6f 6d 20    74 68 65 20 6d 69 6e 69 62 75 66 66 65 72 20 77  | an.account.from.the.minibuffer.w | 
| 18180 |  69 74 68 20 50 52 4f 4d 50 54 2e 22 0a 20 20 28    6c 65 74 2a 20 28 28 63 6f 6e 74 65 78 74 20 28  | ith.PROMPT."...(let*.((context.( | 
| 181a0 |  6c 65 64 67 65 72 2d 63 6f 6e 74 65 78 74 2d 61    74 2d 70 6f 69 6e 74 29 29 0a 20 20 20 20 20 20  | ledger-context-at-point))....... | 
| 181c0 |  20 20 20 28 61 63 63 6f 75 6e 74 20 28 6c 65 64    67 65 72 2d 63 6f 6e 74 65 78 74 2d 66 69 65 6c  | ...(account.(ledger-context-fiel | 
| 181e0 |  64 2d 76 61 6c 75 65 20 63 6f 6e 74 65 78 74 20    27 61 63 63 6f 75 6e 74 29 29 29 0a 20 20 20 20  | d-value.context.'account)))..... | 
| 18200 |  28 6c 65 64 67 65 72 2d 63 6f 6d 70 6c 65 74 69    6e 67 2d 72 65 61 64 2d 77 69 74 68 2d 64 65 66  | (ledger-completing-read-with-def | 
| 18220 |  61 75 6c 74 20 70 72 6f 6d 70 74 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ault.prompt..................... | 
| 18240 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 77 68 65 6e 20 61 63 63 6f 75  | .....................(when.accou | 
| 18260 |  6e 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | nt.............................. | 
| 18280 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 72    65 67 65 78 70 2d 71 75 6f 74 65 20 61 63 63 6f  | ..............(regexp-quote.acco | 
| 182a0 |  75 6e 74 29 29 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | unt))........................... | 
| 182c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    6c 65 64 67 65 72 2d 61 63 63 6f 75 6e 74 73 2d  | ...............(ledger-accounts- | 
| 182e0 |  6c 69 73 74 29 29 29 29 0a 0a 28 64 65 66 75 6e    20 6c 65 64 67 65 72 2d 72 65 61 64 2d 70 61 79  | list))))..(defun.ledger-read-pay | 
| 18300 |  65 65 2d 77 69 74 68 2d 70 72 6f 6d 70 74 20 28    70 72 6f 6d 70 74 29 0a 20 20 22 52 65 61 64 20  | ee-with-prompt.(prompt)..."Read. | 
| 18320 |  61 20 70 61 79 65 65 20 66 72 6f 6d 20 74 68 65    20 6d 69 6e 69 62 75 66 66 65 72 20 77 69 74 68  | a.payee.from.the.minibuffer.with | 
| 18340 |  20 50 52 4f 4d 50 54 2e 22 0a 20 20 28 6c 65 64    67 65 72 2d 63 6f 6d 70 6c 65 74 69 6e 67 2d 72  | .PROMPT."...(ledger-completing-r | 
| 18360 |  65 61 64 2d 77 69 74 68 2d 64 65 66 61 75 6c 74    20 70 72 6f 6d 70 74 0a 20 20 20 20 20 20 20 20  | ead-with-default.prompt......... | 
| 18380 |  20 20 20 20 20 20 20 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  | ...............................( | 
| 183a0 |  77 68 65 6e 2d 6c 65 74 20 28 28 70 61 79 65 65    20 28 6c 65 64 67 65 72 2d 78 61 63 74 2d 70 61  | when-let.((payee.(ledger-xact-pa | 
| 183c0 |  79 65 65 29 29 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | yee))).......................... | 
| 183e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 72 65 67 65 78 70 2d 71 75 6f 74 65 20 70 61  | ................(regexp-quote.pa | 
| 18400 |  79 65 65 29 29 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | yee))........................... | 
| 18420 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65    64 67 65 72 2d 70 61 79 65 65 73 2d 6c 69 73 74  | .............(ledger-payees-list | 
| 18440 |  29 29 29 0a 0a 28 64 65 66 75 6e 20 6c 65 64 67    65 72 2d 72 65 61 64 2d 64 61 74 65 20 28 70 72  | )))..(defun.ledger-read-date.(pr | 
| 18460 |  6f 6d 70 74 29 0a 20 20 22 52 65 74 75 72 6e 20    75 73 65 72 2d 73 75 70 70 6c 69 65 64 20 64 61  | ompt)..."Return.user-supplied.da | 
| 18480 |  74 65 20 61 66 74 65 72 20 60 50 52 4f 4d 50 54    27 2c 20 64 65 66 61 75 6c 74 73 20 74 6f 20 74  | te.after.`PROMPT',.defaults.to.t | 
| 184a0 |  6f 64 61 79 2e 0a 54 68 69 73 20 75 73 65 73 20    60 6f 72 67 2d 72 65 61 64 2d 64 61 74 65 27 2c  | oday..This.uses.`org-read-date', | 
| 184c0 |  20 77 68 69 63 68 20 73 65 65 2e 22 0a 20 20 28    6c 65 64 67 65 72 2d 66 6f 72 6d 61 74 2d 64 61  | .which.see."...(ledger-format-da | 
| 184e0 |  74 65 20 28 6c 65 74 20 28 28 6f 72 67 2d 72 65    61 64 2d 64 61 74 65 2d 70 72 65 66 65 72 2d 66  | te.(let.((org-read-date-prefer-f | 
| 18500 |  75 74 75 72 65 20 6e 69 6c 29 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | uture.nil))..................... | 
| 18520 |  20 20 20 20 28 6f 72 67 2d 72 65 61 64 2d 64 61    74 65 20 6e 69 6c 20 74 20 6e 69 6c 20 70 72 6f  | ....(org-read-date.nil.t.nil.pro | 
| 18540 |  6d 70 74 29 29 29 29 0a 0a 28 64 65 66 75 6e 20    6c 65 64 67 65 72 2d 67 65 74 2d 6d 69 6e 69 62  | mpt))))..(defun.ledger-get-minib | 
| 18560 |  75 66 66 65 72 2d 70 72 6f 6d 70 74 20 28 70 72    6f 6d 70 74 20 64 65 66 61 75 6c 74 29 0a 20 20  | uffer-prompt.(prompt.default)... | 
| 18580 |  22 52 65 74 75 72 6e 20 61 20 6d 69 6e 69 62 75    66 66 65 72 20 70 72 6f 6d 70 74 20 73 74 72 69  | "Return.a.minibuffer.prompt.stri | 
| 185a0 |  6e 67 20 63 6f 6d 70 6f 73 69 6e 67 20 50 52 4f    4d 50 54 20 61 6e 64 20 44 45 46 41 55 4c 54 2e  | ng.composing.PROMPT.and.DEFAULT. | 
| 185c0 |  22 0a 20 20 28 63 6f 6e 63 61 74 20 70 72 6f 6d    70 74 0a 20 20 20 20 20 20 20 20 20 20 28 69 66  | "...(concat.prompt...........(if | 
| 185e0 |  20 64 65 66 61 75 6c 74 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 28 63 6f 6e 63 61 74 20 22  | .default...............(concat." | 
| 18600 |  20 28 22 20 64 65 66 61 75 6c 74 20 22 29 3a 20    22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 22  | .(".default."):.")............." | 
| 18620 |  3a 20 22 29 29 29 0a 0a 28 64 65 66 75 6e 20 6c    65 64 67 65 72 2d 63 6f 6d 70 6c 65 74 69 6e 67  | :.")))..(defun.ledger-completing | 
| 18640 |  2d 72 65 61 64 2d 77 69 74 68 2d 64 65 66 61 75    6c 74 20 28 70 72 6f 6d 70 74 20 64 65 66 61 75  | -read-with-default.(prompt.defau | 
| 18660 |  6c 74 20 63 6f 6c 6c 65 63 74 69 6f 6e 29 0a 20    20 22 52 65 74 75 72 6e 20 61 20 75 73 65 72 2d  | lt.collection)..."Return.a.user- | 
| 18680 |  73 75 70 70 6c 69 65 64 20 73 74 72 69 6e 67 20    61 66 74 65 72 20 50 52 4f 4d 50 54 2e 0a 55 73  | supplied.string.after.PROMPT..Us | 
| 186a0 |  65 20 74 68 65 20 67 69 76 65 6e 20 44 45 46 41    55 4c 54 2c 20 77 68 69 6c 65 20 70 72 6f 76 69  | e.the.given.DEFAULT,.while.provi | 
| 186c0 |  64 69 6e 67 20 63 6f 6d 70 6c 65 74 69 6f 6e 73    20 66 72 6f 6d 20 43 4f 4c 4c 45 43 54 49 4f 4e  | ding.completions.from.COLLECTION | 
| 186e0 |  2e 22 0a 20 20 28 63 6f 6d 70 6c 65 74 69 6e 67    2d 72 65 61 64 20 28 6c 65 64 67 65 72 2d 67 65  | ."...(completing-read.(ledger-ge | 
| 18700 |  74 2d 6d 69 6e 69 62 75 66 66 65 72 2d 70 72 6f    6d 70 74 20 70 72 6f 6d 70 74 20 64 65 66 61 75  | t-minibuffer-prompt.prompt.defau | 
| 18720 |  6c 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 63 6f 6c 6c 65 63 74 69 6f  | lt)....................collectio | 
| 18740 |  6e 20 6e 69 6c 20 6e 69 6c 20 6e 69 6c 20 27 6c    65 64 67 65 72 2d 6d 69 6e 69 62 75 66 66 65 72  | n.nil.nil.nil.'ledger-minibuffer | 
| 18760 |  2d 68 69 73 74 6f 72 79 20 64 65 66 61 75 6c 74    29 29 0a 0a 28 64 65 66 75 6e 20 6c 65 64 67 65  | -history.default))..(defun.ledge | 
| 18780 |  72 2d 72 65 61 64 2d 73 74 72 69 6e 67 2d 77 69    74 68 2d 64 65 66 61 75 6c 74 20 28 70 72 6f 6d  | r-read-string-with-default.(prom | 
| 187a0 |  70 74 20 64 65 66 61 75 6c 74 29 0a 20 20 22 52    65 74 75 72 6e 20 75 73 65 72 20 73 75 70 70 6c  | pt.default)..."Return.user.suppl | 
| 187c0 |  69 65 64 20 73 74 72 69 6e 67 20 61 66 74 65 72    20 50 52 4f 4d 50 54 2c 20 6f 72 20 44 45 46 41  | ied.string.after.PROMPT,.or.DEFA | 
| 187e0 |  55 4c 54 2e 22 0a 20 20 28 72 65 61 64 2d 73 74    72 69 6e 67 20 28 6c 65 64 67 65 72 2d 67 65 74  | ULT."...(read-string.(ledger-get | 
| 18800 |  2d 6d 69 6e 69 62 75 66 66 65 72 2d 70 72 6f 6d    70 74 20 70 72 6f 6d 70 74 20 64 65 66 61 75 6c  | -minibuffer-prompt.prompt.defaul | 
| 18820 |  74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 6e 69 6c 20 27 6c 65 64 67 65 72 2d 6d 69  | t)................nil.'ledger-mi | 
| 18840 |  6e 69 62 75 66 66 65 72 2d 68 69 73 74 6f 72 79    20 64 65 66 61 75 6c 74 29 29 0a 0a 28 64 65 66  | nibuffer-history.default))..(def | 
| 18860 |  75 6e 20 6c 65 64 67 65 72 2d 64 69 73 70 6c 61    79 2d 62 61 6c 61 6e 63 65 2d 61 74 2d 70 6f 69  | un.ledger-display-balance-at-poi | 
| 18880 |  6e 74 20 28 26 6f 70 74 69 6f 6e 61 6c 20 61 72    67 29 0a 20 20 22 44 69 73 70 6c 61 79 20 74 68  | nt.(&optional.arg)..."Display.th | 
| 188a0 |  65 20 63 6c 65 61 72 65 64 2d 6f 72 2d 70 65 6e    64 69 6e 67 20 62 61 6c 61 6e 63 65 2e 0a 41 6e  | e.cleared-or-pending.balance..An | 
| 188c0 |  64 20 63 61 6c 63 75 6c 61 74 65 20 74 68 65 20    74 61 72 67 65 74 2d 64 65 6c 74 61 20 6f 66 20  | d.calculate.the.target-delta.of. | 
| 188e0 |  74 68 65 20 61 63 63 6f 75 6e 74 20 62 65 69 6e    67 20 72 65 63 6f 6e 63 69 6c 65 64 2e 0a 0a 57  | the.account.being.reconciled...W | 
| 18900 |  69 74 68 20 41 52 47 20 28 5c 5c 5b 75 6e 69 76    65 72 73 61 6c 2d 61 72 67 75 6d 65 6e 74 5d 29  | ith.ARG.(\\[universal-argument]) | 
| 18920 |  20 61 73 6b 20 66 6f 72 20 74 68 65 20 74 61 72    67 65 74 20 63 6f 6d 6d 6f 64 69 74 79 20 61 6e  | .ask.for.the.target.commodity.an | 
| 18940 |  64 20 63 6f 6e 76 65 72 74 0a 74 68 65 20 62 61    6c 61 6e 63 65 20 69 6e 74 6f 20 74 68 61 74 2e  | d.convert.the.balance.into.that. | 
| 18960 |  22 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 2a 20 28 28  | "...(interactive."P")...(let*.(( | 
| 18980 |  61 63 63 6f 75 6e 74 20 28 6c 65 64 67 65 72 2d    72 65 61 64 2d 61 63 63 6f 75 6e 74 2d 77 69 74  | account.(ledger-read-account-wit | 
| 189a0 |  68 2d 70 72 6f 6d 70 74 20 22 41 63 63 6f 75 6e    74 20 62 61 6c 61 6e 63 65 20 74 6f 20 73 68 6f  | h-prompt."Account.balance.to.sho | 
| 189c0 |  77 22 29 29 0a 20 20 20 20 20 20 20 20 20 28 74    61 72 67 65 74 2d 63 6f 6d 6d 6f 64 69 74 79 20  | w"))..........(target-commodity. | 
| 189e0 |  28 77 68 65 6e 20 61 72 67 20 28 6c 65 64 67 65    72 2d 72 65 61 64 2d 63 6f 6d 6d 6f 64 69 74 79  | (when.arg.(ledger-read-commodity | 
| 18a00 |  2d 77 69 74 68 2d 70 72 6f 6d 70 74 20 22 54 61    72 67 65 74 20 63 6f 6d 6d 6f 64 69 74 79 3a 20  | -with-prompt."Target.commodity:. | 
| 18a20 |  22 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 62    75 66 66 65 72 20 28 66 69 6e 64 2d 66 69 6c 65  | ")))..........(buffer.(find-file | 
| 18a40 |  2d 6e 6f 73 65 6c 65 63 74 20 28 6c 65 64 67 65    72 2d 6d 61 73 74 65 72 2d 66 69 6c 65 29 29 29  | -noselect.(ledger-master-file))) | 
| 18a60 |  0a 20 20 20 20 20 20 20 20 20 28 62 61 6c 61 6e    63 65 20 28 77 69 74 68 2d 74 65 6d 70 2d 62 75  | ..........(balance.(with-temp-bu | 
| 18a80 |  66 66 65 72 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 28 61 70 70 6c 79 20  | ffer.....................(apply. | 
| 18aa0 |  27 6c 65 64 67 65 72 2d 65 78 65 63 2d 6c 65 64    67 65 72 20 62 75 66 66 65 72 20 28 63 75 72 72  | 'ledger-exec-ledger.buffer.(curr | 
| 18ac0 |  65 6e 74 2d 62 75 66 66 65 72 29 20 22 63 6c 65    61 72 65 64 22 20 61 63 63 6f 75 6e 74 0a 20 20  | ent-buffer)."cleared".account... | 
| 18ae0 |  20 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 65 6e 20 74  | .........................(when.t | 
| 18b00 |  61 72 67 65 74 2d 63 6f 6d 6d 6f 64 69 74 79 20    28 6c 69 73 74 20 22 2d 58 22 20 74 61 72 67 65  | arget-commodity.(list."-X".targe | 
| 18b20 |  74 2d 63 6f 6d 6d 6f 64 69 74 79 29 29 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | t-commodity))).................. | 
| 18b40 |  20 20 20 28 69 66 20 28 3e 20 28 62 75 66 66 65    72 2d 73 69 7a 65 29 20 30 29 0a 20 20 20 20 20  | ...(if.(>.(buffer-size).0)...... | 
| 18b60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 62 75 66 66 65 72 2d 73 75 62 73 74  | ...................(buffer-subst | 
| 18b80 |  72 69 6e 67 2d 6e 6f 2d 70 72 6f 70 65 72 74 69    65 73 20 28 70 6f 69 6e 74 2d 6d 69 6e 29 20 28  | ring-no-properties.(point-min).( | 
| 18ba0 |  31 2d 20 28 70 6f 69 6e 74 2d 6d 61 78 29 29 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | 1-.(point-max)))................ | 
| 18bc0 |  20 20 20 20 20 20 20 28 63 6f 6e 63 61 74 20 61    63 63 6f 75 6e 74 20 22 20 69 73 20 65 6d 70 74  | .......(concat.account.".is.empt | 
| 18be0 |  79 2e 22 29 29 29 29 29 0a 20 20 20 20 28 77 68    65 6e 20 62 61 6c 61 6e 63 65 0a 20 20 20 20 20  | y."))))).....(when.balance...... | 
| 18c00 |  20 28 64 69 73 70 6c 61 79 2d 6d 65 73 73 61 67    65 2d 6f 72 2d 62 75 66 66 65 72 20 62 61 6c 61  | .(display-message-or-buffer.bala | 
| 18c20 |  6e 63 65 29 29 29 29 0a 0a 28 64 65 66 75 6e 20    6c 65 64 67 65 72 2d 64 69 73 70 6c 61 79 2d 6c  | nce))))..(defun.ledger-display-l | 
| 18c40 |  65 64 67 65 72 2d 73 74 61 74 73 20 28 29 0a 20    20 22 44 69 73 70 6c 61 79 20 73 6f 6d 65 20 73  | edger-stats.()..."Display.some.s | 
| 18c60 |  75 6d 6d 61 72 79 20 73 74 61 74 69 73 74 69 63    73 20 61 62 6f 75 74 20 74 68 65 20 63 75 72 72  | ummary.statistics.about.the.curr | 
| 18c80 |  65 6e 74 20 6c 65 64 67 65 72 20 66 69 6c 65 2e    22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65  | ent.ledger.file."...(interactive | 
| 18ca0 |  29 0a 20 20 28 6c 65 74 2a 20 28 28 62 75 66 66    65 72 20 28 66 69 6e 64 2d 66 69 6c 65 2d 6e 6f  | )...(let*.((buffer.(find-file-no | 
| 18cc0 |  73 65 6c 65 63 74 20 28 6c 65 64 67 65 72 2d 6d    61 73 74 65 72 2d 66 69 6c 65 29 29 29 0a 20 20  | select.(ledger-master-file)))... | 
| 18ce0 |  20 20 20 20 20 20 20 28 62 61 6c 61 6e 63 65 20    28 77 69 74 68 2d 74 65 6d 70 2d 62 75 66 66 65  | .......(balance.(with-temp-buffe | 
| 18d00 |  72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 6c 65 64 67 65 72 2d 65 78  | r.....................(ledger-ex | 
| 18d20 |  65 63 2d 6c 65 64 67 65 72 20 62 75 66 66 65 72    20 28 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72  | ec-ledger.buffer.(current-buffer | 
| 18d40 |  29 20 22 73 74 61 74 73 22 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28  | )."stats").....................( | 
| 18d60 |  62 75 66 66 65 72 2d 73 75 62 73 74 72 69 6e 67    2d 6e 6f 2d 70 72 6f 70 65 72 74 69 65 73 20 28  | buffer-substring-no-properties.( | 
| 18d80 |  70 6f 69 6e 74 2d 6d 69 6e 29 20 28 31 2d 20 28    70 6f 69 6e 74 2d 6d 61 78 29 29 29 29 29 29 0a  | point-min).(1-.(point-max)))))). | 
| 18da0 |  20 20 20 20 28 77 68 65 6e 20 62 61 6c 61 6e 63    65 0a 20 20 20 20 20 20 28 6d 65 73 73 61 67 65  | ....(when.balance.......(message | 
| 18dc0 |  20 62 61 6c 61 6e 63 65 29 29 29 29 0a 0a 28 64    65 66 76 61 72 20 6c 65 64 67 65 72 2d 6d 6f 64  | .balance))))..(defvar.ledger-mod | 
| 18de0 |  65 2d 61 62 62 72 65 76 2d 74 61 62 6c 65 29 0a    0a 28 64 65 66 76 61 72 20 6c 65 64 67 65 72 2d  | e-abbrev-table)..(defvar.ledger- | 
| 18e00 |  64 61 74 65 2d 73 74 72 69 6e 67 2d 74 6f 64 61    79 20 28 6c 65 64 67 65 72 2d 66 6f 72 6d 61 74  | date-string-today.(ledger-format | 
| 18e20 |  2d 64 61 74 65 29 29 0a 0a 28 64 65 66 75 6e 20    6c 65 64 67 65 72 2d 72 65 6d 6f 76 65 2d 65 66  | -date))..(defun.ledger-remove-ef | 
| 18e40 |  66 65 63 74 69 76 65 2d 64 61 74 65 20 28 29 0a    20 20 22 52 65 6d 6f 76 65 20 74 68 65 20 65 66  | fective-date.()..."Remove.the.ef | 
| 18e60 |  66 65 63 74 69 76 65 20 64 61 74 65 20 66 72 6f    6d 20 61 20 74 72 61 6e 73 61 63 74 69 6f 6e 20  | fective.date.from.a.transaction. | 
| 18e80 |  6f 72 20 70 6f 73 74 69 6e 67 2e 22 0a 20 20 28    69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20 28  | or.posting."...(interactive)...( | 
| 18ea0 |  6c 65 74 20 28 28 63 6f 6e 74 65 78 74 20 28 63    61 72 20 28 6c 65 64 67 65 72 2d 63 6f 6e 74 65  | let.((context.(car.(ledger-conte | 
| 18ec0 |  78 74 2d 61 74 2d 70 6f 69 6e 74 29 29 29 29 0a    20 20 20 20 28 73 61 76 65 2d 65 78 63 75 72 73  | xt-at-point)))).....(save-excurs | 
| 18ee0 |  69 6f 6e 0a 20 20 20 20 20 20 28 73 61 76 65 2d    72 65 73 74 72 69 63 74 69 6f 6e 0a 20 20 20 20  | ion.......(save-restriction..... | 
| 18f00 |  20 20 20 20 28 6e 61 72 72 6f 77 2d 74 6f 2d 72    65 67 69 6f 6e 20 28 6c 69 6e 65 2d 62 65 67 69  | ....(narrow-to-region.(line-begi | 
| 18f20 |  6e 6e 69 6e 67 2d 70 6f 73 69 74 69 6f 6e 29 20    28 6c 69 6e 65 2d 65 6e 64 2d 70 6f 73 69 74 69  | nning-position).(line-end-positi | 
| 18f40 |  6f 6e 29 29 0a 20 20 20 20 20 20 20 20 28 62 65    67 69 6e 6e 69 6e 67 2d 6f 66 2d 6c 69 6e 65 29  | on)).........(beginning-of-line) | 
| 18f60 |  0a 20 20 20 20 20 20 20 20 28 63 6f 6e 64 20 28    28 65 71 20 27 78 61 63 74 20 63 6f 6e 74 65 78  | .........(cond.((eq.'xact.contex | 
| 18f80 |  74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 72 65 2d 73 65 61 72 63 68 2d 66 6f 72  | t)................(re-search-for | 
| 18fa0 |  77 61 72 64 20 6c 65 64 67 65 72 2d 69 73 6f 2d    64 61 74 65 2d 72 65 67 65 78 70 29 0a 20 20 20  | ward.ledger-iso-date-regexp).... | 
| 18fc0 |  20 20 20 20 20 20 20 20 20 20 20 20 28 77 68 65    6e 20 28 3d 20 28 63 68 61 72 2d 61 66 74 65 72  | ............(when.(=.(char-after | 
| 18fe0 |  29 20 3f 3d 29 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 28 6c 65 74 20 28 28 65 71  | ).?=)..................(let.((eq | 
| 19000 |  2d 70 6f 73 20 28 70 6f 69 6e 74 29 29 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | -pos.(point))).................. | 
| 19020 |  20 20 28 64 65 6c 65 74 65 2d 72 65 67 69 6f 6e    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ..(delete-region................ | 
| 19040 |  20 20 20 20 20 65 71 2d 70 6f 73 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .....eq-pos..................... | 
| 19060 |  28 72 65 2d 73 65 61 72 63 68 2d 66 6f 72 77 61    72 64 20 6c 65 64 67 65 72 2d 69 73 6f 2d 64 61  | (re-search-forward.ledger-iso-da | 
| 19080 |  74 65 2d 72 65 67 65 78 70 29 29 29 29 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 65  | te-regexp)))))...............((e | 
| 190a0 |  71 20 27 61 63 63 74 2d 74 72 61 6e 73 61 63 74    69 6f 6e 20 63 6f 6e 74 65 78 74 29 0a 20 20 20  | q.'acct-transaction.context).... | 
| 190c0 |  20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 4d    61 74 63 68 20 22 3b 20 5b 3d 64 61 74 65 5d 22  | ............;;.Match.";.[=date]" | 
| 190e0 |  20 26 20 64 65 6c 65 74 65 20 73 74 72 69 6e 67    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .&.delete.string................ | 
| 19100 |  28 77 68 65 6e 20 28 72 65 2d 73 65 61 72 63 68    2d 66 6f 72 77 61 72 64 0a 20 20 20 20 20 20 20  | (when.(re-search-forward........ | 
| 19120 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    63 6f 6e 63 61 74 20 6c 65 64 67 65 72 2d 63 6f  | ...............(concat.ledger-co | 
| 19140 |  6d 6d 65 6e 74 2d 72 65 67 65 78 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | mment-regex..................... | 
| 19160 |  20 20 20 20 20 20 20 20 20 20 22 5c 5c 5b 3d 22    20 6c 65 64 67 65 72 2d 69 73 6f 2d 64 61 74 65  | .........."\\[=".ledger-iso-date | 
| 19180 |  2d 72 65 67 65 78 70 20 22 5c 5c 5d 22 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | -regexp."\\]").................. | 
| 191a0 |  20 20 20 20 20 6e 69 6c 20 27 6e 6f 65 72 72 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .....nil.'noerr)................ | 
| 191c0 |  20 20 28 72 65 70 6c 61 63 65 2d 6d 61 74 63 68    20 22 22 29 29 29 29 29 29 29 29 0a 0a 28 64 65  | ..(replace-match.""))))))))..(de | 
| 191e0 |  66 75 6e 20 6c 65 64 67 65 72 2d 69 6e 73 65 72    74 2d 65 66 66 65 63 74 69 76 65 2d 64 61 74 65  | fun.ledger-insert-effective-date | 
| 19200 |  20 28 26 6f 70 74 69 6f 6e 61 6c 20 64 61 74 65    29 0a 20 20 22 49 6e 73 65 72 74 20 65 66 66 65  | .(&optional.date)..."Insert.effe | 
| 19220 |  63 74 69 76 65 20 64 61 74 65 20 60 44 41 54 45    27 20 74 6f 20 74 68 65 20 74 72 61 6e 73 61 63  | ctive.date.`DATE'.to.the.transac | 
| 19240 |  74 69 6f 6e 20 6f 72 20 70 6f 73 74 69 6e 67 2e    0a 0a 49 66 20 60 44 41 54 45 27 20 69 73 20 6e  | tion.or.posting...If.`DATE'.is.n | 
| 19260 |  69 6c 2c 20 70 72 6f 6d 70 74 20 74 68 65 20 75    73 65 72 20 61 20 64 61 74 65 2e 0a 0a 52 65 70  | il,.prompt.the.user.a.date...Rep | 
| 19280 |  6c 61 63 65 20 74 68 65 20 63 75 72 72 65 6e 74    20 65 66 66 65 63 74 69 76 65 20 64 61 74 65 20  | lace.the.current.effective.date. | 
| 192a0 |  69 66 20 74 68 65 72 65 27 73 20 6f 6e 65 20 69    6e 20 74 68 65 20 73 61 6d 65 0a 6c 69 6e 65 2e  | if.there's.one.in.the.same.line. | 
| 192c0 |  0a 0a 57 69 74 68 20 61 20 70 72 65 66 69 78 20    61 72 67 75 6d 65 6e 74 2c 20 72 65 6d 6f 76 65  | ..With.a.prefix.argument,.remove | 
| 192e0 |  20 74 68 65 20 65 66 66 65 63 74 69 76 65 20 64    61 74 65 2e 22 0a 20 20 28 69 6e 74 65 72 61 63  | .the.effective.date."...(interac | 
| 19300 |  74 69 76 65 29 0a 20 20 28 69 66 20 28 61 6e 64    20 28 6c 69 73 74 70 20 63 75 72 72 65 6e 74 2d  | tive)...(if.(and.(listp.current- | 
| 19320 |  70 72 65 66 69 78 2d 61 72 67 29 0a 20 20 20 20    20 20 20 20 20 20 20 28 3d 20 34 20 28 70 72 65  | prefix-arg)............(=.4.(pre | 
| 19340 |  66 69 78 2d 6e 75 6d 65 72 69 63 2d 76 61 6c 75    65 20 63 75 72 72 65 6e 74 2d 70 72 65 66 69 78  | fix-numeric-value.current-prefix | 
| 19360 |  2d 61 72 67 29 29 29 0a 20 20 20 20 20 20 28 6c    65 64 67 65 72 2d 72 65 6d 6f 76 65 2d 65 66 66  | -arg))).......(ledger-remove-eff | 
| 19380 |  65 63 74 69 76 65 2d 64 61 74 65 29 0a 20 20 20    20 28 6c 65 74 2a 20 28 28 63 6f 6e 74 65 78 74  | ective-date).....(let*.((context | 
| 193a0 |  20 28 63 61 72 20 28 6c 65 64 67 65 72 2d 63 6f    6e 74 65 78 74 2d 61 74 2d 70 6f 69 6e 74 29 29  | .(car.(ledger-context-at-point)) | 
| 193c0 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 28 64 61    74 65 2d 73 74 72 69 6e 67 20 28 6f 72 20 64 61  | )............(date-string.(or.da | 
| 193e0 |  74 65 20 28 6c 65 64 67 65 72 2d 72 65 61 64 2d    64 61 74 65 20 22 45 66 66 65 63 74 69 76 65 20  | te.(ledger-read-date."Effective. | 
| 19400 |  64 61 74 65 3a 20 22 29 29 29 29 0a 20 20 20 20    20 20 28 73 61 76 65 2d 72 65 73 74 72 69 63 74  | date:.")))).......(save-restrict | 
| 19420 |  69 6f 6e 0a 20 20 20 20 20 20 20 20 28 6e 61 72    72 6f 77 2d 74 6f 2d 72 65 67 69 6f 6e 20 28 6c  | ion.........(narrow-to-region.(l | 
| 19440 |  69 6e 65 2d 62 65 67 69 6e 6e 69 6e 67 2d 70 6f    73 69 74 69 6f 6e 29 20 28 6c 69 6e 65 2d 65 6e  | ine-beginning-position).(line-en | 
| 19460 |  64 2d 70 6f 73 69 74 69 6f 6e 29 29 0a 20 20 20    20 20 20 20 20 28 63 6f 6e 64 0a 20 20 20 20 20  | d-position)).........(cond...... | 
| 19480 |  20 20 20 20 28 28 65 71 20 27 78 61 63 74 20 63    6f 6e 74 65 78 74 29 0a 20 20 20 20 20 20 20 20  | ....((eq.'xact.context)......... | 
| 194a0 |  20 20 28 62 65 67 69 6e 6e 69 6e 67 2d 6f 66 2d    6c 69 6e 65 29 0a 20 20 20 20 20 20 20 20 20 20  | ..(beginning-of-line)........... | 
| 194c0 |  28 72 65 2d 73 65 61 72 63 68 2d 66 6f 72 77 61    72 64 20 6c 65 64 67 65 72 2d 69 73 6f 2d 64 61  | (re-search-forward.ledger-iso-da | 
| 194e0 |  74 65 2d 72 65 67 65 78 70 29 0a 20 20 20 20 20    20 20 20 20 20 28 77 68 65 6e 20 28 3d 20 28 63  | te-regexp)...........(when.(=.(c | 
| 19500 |  68 61 72 2d 61 66 74 65 72 29 20 3f 3d 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 28 6c 65 64 67  | har-after).?=).............(ledg | 
| 19520 |  65 72 2d 72 65 6d 6f 76 65 2d 65 66 66 65 63 74    69 76 65 2d 64 61 74 65 29 29 0a 20 20 20 20 20  | er-remove-effective-date))...... | 
| 19540 |  20 20 20 20 20 28 69 6e 73 65 72 74 20 22 3d 22    20 64 61 74 65 2d 73 74 72 69 6e 67 29 29 0a 20  | .....(insert."=".date-string)).. | 
| 19560 |  20 20 20 20 20 20 20 20 28 28 65 71 20 27 61 63    63 74 2d 74 72 61 6e 73 61 63 74 69 6f 6e 20 63  | ........((eq.'acct-transaction.c | 
| 19580 |  6f 6e 74 65 78 74 29 0a 20 20 20 20 20 20 20 20    20 20 28 65 6e 64 2d 6f 66 2d 6c 69 6e 65 29 0a  | ontext)...........(end-of-line). | 
| 195a0 |  20 20 20 20 20 20 20 20 20 20 28 6c 65 64 67 65    72 2d 72 65 6d 6f 76 65 2d 65 66 66 65 63 74 69  | ..........(ledger-remove-effecti | 
| 195c0 |  76 65 2d 64 61 74 65 29 0a 20 20 20 20 20 20 20    20 20 20 28 69 6e 73 65 72 74 20 22 20 20 3b 20  | ve-date)...........(insert."..;. | 
| 195e0 |  5b 3d 22 20 64 61 74 65 2d 73 74 72 69 6e 67 20    22 5d 22 29 29 29 29 29 29 29 0a 0a 28 64 65 66  | [=".date-string."]")))))))..(def | 
| 19600 |  75 6e 20 6c 65 64 67 65 72 2d 6d 6f 64 65 2d 72    65 6d 6f 76 65 2d 65 78 74 72 61 2d 6c 69 6e 65  | un.ledger-mode-remove-extra-line | 
| 19620 |  73 20 28 29 0a 20 20 22 47 65 74 20 72 69 64 20    6f 66 20 6d 75 6c 74 69 70 6c 65 20 65 6d 70 74  | s.()..."Get.rid.of.multiple.empt | 
| 19640 |  79 20 6c 69 6e 65 73 2e 22 0a 20 20 28 67 6f 74    6f 2d 63 68 61 72 20 28 70 6f 69 6e 74 2d 6d 69  | y.lines."...(goto-char.(point-mi | 
| 19660 |  6e 29 29 0a 20 20 28 77 68 69 6c 65 20 28 72 65    2d 73 65 61 72 63 68 2d 66 6f 72 77 61 72 64 20  | n))...(while.(re-search-forward. | 
| 19680 |  22 5c 6e 5c 6e 5c 5c 28 5c 6e 5c 5c 29 2b 22 20    6e 69 6c 20 74 29 0a 20 20 20 20 28 72 65 70 6c  | "\n\n\\(\n\\)+".nil.t).....(repl | 
| 196a0 |  61 63 65 2d 6d 61 74 63 68 20 22 5c 6e 5c 6e 22    29 29 29 0a 0a 28 64 65 66 75 6e 20 6c 65 64 67  | ace-match."\n\n")))..(defun.ledg | 
| 196c0 |  65 72 2d 6d 6f 64 65 2d 63 6c 65 61 6e 2d 62 75    66 66 65 72 20 28 29 0a 20 20 22 49 6e 64 65 6e  | er-mode-clean-buffer.()..."Inden | 
| 196e0 |  74 2c 20 72 65 6d 6f 76 65 20 6d 75 6c 74 69 70    6c 65 20 6c 69 6e 65 20 66 65 65 64 73 20 61 6e  | t,.remove.multiple.line.feeds.an | 
| 19700 |  64 20 73 6f 72 74 20 74 68 65 20 62 75 66 66 65    72 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69  | d.sort.the.buffer."...(interacti | 
| 19720 |  76 65 29 0a 20 20 28 6c 65 74 20 28 28 73 74 61    72 74 20 28 70 6f 69 6e 74 2d 6d 69 6e 2d 6d 61  | ve)...(let.((start.(point-min-ma | 
| 19740 |  72 6b 65 72 29 29 0a 20 20 20 20 20 20 20 20 28    65 6e 64 20 28 70 6f 69 6e 74 2d 6d 61 78 2d 6d  | rker)).........(end.(point-max-m | 
| 19760 |  61 72 6b 65 72 29 29 0a 20 20 20 20 20 20 20 20    28 64 69 73 74 61 6e 63 65 2d 69 6e 2d 78 61 63  | arker)).........(distance-in-xac | 
| 19780 |  74 20 28 2d 20 28 70 6f 69 6e 74 29 20 28 6c 65    64 67 65 72 2d 6e 61 76 69 67 61 74 65 2d 62 65  | t.(-.(point).(ledger-navigate-be | 
| 197a0 |  67 69 6e 6e 69 6e 67 2d 6f 66 2d 78 61 63 74 29    29 29 29 0a 20 20 20 20 28 6c 65 74 20 28 28 74  | ginning-of-xact)))).....(let.((t | 
| 197c0 |  61 72 67 65 74 20 28 62 75 66 66 65 72 2d 73 75    62 73 74 72 69 6e 67 20 28 6c 69 6e 65 2d 62 65  | arget.(buffer-substring.(line-be | 
| 197e0 |  67 69 6e 6e 69 6e 67 2d 70 6f 73 69 74 69 6f 6e    29 20 28 6c 69 6e 65 2d 65 6e 64 2d 70 6f 73 69  | ginning-position).(line-end-posi | 
| 19800 |  74 69 6f 6e 29 29 29 29 0a 20 20 20 20 20 20 28    67 6f 74 6f 2d 63 68 61 72 20 73 74 61 72 74 29  | tion)))).......(goto-char.start) | 
| 19820 |  0a 20 20 20 20 20 20 28 75 6e 74 61 62 69 66 79    20 73 74 61 72 74 20 65 6e 64 29 0a 20 20 20 20  | .......(untabify.start.end)..... | 
| 19840 |  20 20 28 6c 65 64 67 65 72 2d 73 6f 72 74 2d 62    75 66 66 65 72 29 0a 20 20 20 20 20 20 28 6c 65  | ..(ledger-sort-buffer).......(le | 
| 19860 |  64 67 65 72 2d 70 6f 73 74 2d 61 6c 69 67 6e 2d    70 6f 73 74 69 6e 67 73 20 73 74 61 72 74 20 65  | dger-post-align-postings.start.e | 
| 19880 |  6e 64 29 0a 20 20 20 20 20 20 28 6c 65 64 67 65    72 2d 6d 6f 64 65 2d 72 65 6d 6f 76 65 2d 65 78  | nd).......(ledger-mode-remove-ex | 
| 198a0 |  74 72 61 2d 6c 69 6e 65 73 29 0a 20 20 20 20 20    20 28 67 6f 74 6f 2d 63 68 61 72 20 73 74 61 72  | tra-lines).......(goto-char.star | 
| 198c0 |  74 29 0a 20 20 20 20 20 20 28 73 65 61 72 63 68    2d 66 6f 72 77 61 72 64 20 74 61 72 67 65 74 29  | t).......(search-forward.target) | 
| 198e0 |  0a 20 20 20 20 20 20 28 62 65 67 69 6e 6e 69 6e    67 2d 6f 66 2d 6c 69 6e 65 29 0a 20 20 20 20 20  | .......(beginning-of-line)...... | 
| 19900 |  20 28 66 6f 72 77 61 72 64 2d 63 68 61 72 20 64    69 73 74 61 6e 63 65 2d 69 6e 2d 78 61 63 74 29  | .(forward-char.distance-in-xact) | 
| 19920 |  29 29 29 0a 0a 28 64 65 66 76 61 72 20 6c 65 64    67 65 72 2d 6d 6f 64 65 2d 73 79 6e 74 61 78 2d  | )))..(defvar.ledger-mode-syntax- | 
| 19940 |  74 61 62 6c 65 0a 20 20 28 6c 65 74 20 28 28 74    61 62 6c 65 20 28 6d 61 6b 65 2d 73 79 6e 74 61  | table...(let.((table.(make-synta | 
| 19960 |  78 2d 74 61 62 6c 65 20 74 65 78 74 2d 6d 6f 64    65 2d 73 79 6e 74 61 78 2d 74 61 62 6c 65 29 29  | x-table.text-mode-syntax-table)) | 
| 19980 |  29 0a 20 20 20 20 28 6d 6f 64 69 66 79 2d 73 79    6e 74 61 78 2d 65 6e 74 72 79 20 3f 5c 3b 20 22  | ).....(modify-syntax-entry.?\;." | 
| 199a0 |  3c 22 20 74 61 62 6c 65 29 0a 20 20 20 20 28 6d    6f 64 69 66 79 2d 73 79 6e 74 61 78 2d 65 6e 74  | <".table).....(modify-syntax-ent | 
| 199c0 |  72 79 20 3f 5c 6e 20 22 3e 22 20 74 61 62 6c 65    29 0a 20 20 20 20 74 61 62 6c 65 29 0a 20 20 22  | ry.?\n.">".table).....table)..." | 
| 199e0 |  53 79 6e 74 61 78 20 74 61 62 6c 65 20 69 6e 20    75 73 65 20 69 6e 20 60 6c 65 64 67 65 72 2d 6d  | Syntax.table.in.use.in.`ledger-m | 
| 19a00 |  6f 64 65 27 20 62 75 66 66 65 72 73 2e 22 29 0a    0a 28 64 65 66 76 61 72 20 6c 65 64 67 65 72 2d  | ode'.buffers.")..(defvar.ledger- | 
| 19a20 |  6d 6f 64 65 2d 6d 61 70 0a 20 20 28 6c 65 74 20    28 28 6d 61 70 20 28 6d 61 6b 65 2d 73 70 61 72  | mode-map...(let.((map.(make-spar | 
| 19a40 |  73 65 2d 6b 65 79 6d 61 70 29 29 29 0a 20 20 20    20 28 64 65 66 69 6e 65 2d 6b 65 79 20 6d 61 70  | se-keymap))).....(define-key.map | 
| 19a60 |  20 28 6b 62 64 20 22 43 2d 63 20 43 2d 61 22 29    20 23 27 6c 65 64 67 65 72 2d 61 64 64 2d 74 72  | .(kbd."C-c.C-a").#'ledger-add-tr | 
| 19a80 |  61 6e 73 61 63 74 69 6f 6e 29 0a 20 20 20 20 28    64 65 66 69 6e 65 2d 6b 65 79 20 6d 61 70 20 28  | ansaction).....(define-key.map.( | 
| 19aa0 |  6b 62 64 20 22 43 2d 63 20 43 2d 62 22 29 20 23    27 6c 65 64 67 65 72 2d 70 6f 73 74 2d 65 64 69  | kbd."C-c.C-b").#'ledger-post-edi | 
| 19ac0 |  74 2d 61 6d 6f 75 6e 74 29 0a 20 20 20 20 28 64    65 66 69 6e 65 2d 6b 65 79 20 6d 61 70 20 28 6b  | t-amount).....(define-key.map.(k | 
| 19ae0 |  62 64 20 22 43 2d 63 20 43 2d 63 22 29 20 23 27    6c 65 64 67 65 72 2d 74 6f 67 67 6c 65 2d 63 75  | bd."C-c.C-c").#'ledger-toggle-cu | 
| 19b00 |  72 72 65 6e 74 29 0a 20 20 20 20 28 64 65 66 69    6e 65 2d 6b 65 79 20 6d 61 70 20 28 6b 62 64 20  | rrent).....(define-key.map.(kbd. | 
| 19b20 |  22 43 2d 63 20 43 2d 64 22 29 20 23 27 6c 65 64    67 65 72 2d 64 65 6c 65 74 65 2d 63 75 72 72 65  | "C-c.C-d").#'ledger-delete-curre | 
| 19b40 |  6e 74 2d 74 72 61 6e 73 61 63 74 69 6f 6e 29 0a    20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65 79 20  | nt-transaction).....(define-key. | 
| 19b60 |  6d 61 70 20 28 6b 62 64 20 22 43 2d 63 20 43 2d    65 22 29 20 23 27 6c 65 64 67 65 72 2d 74 6f 67  | map.(kbd."C-c.C-e").#'ledger-tog | 
| 19b80 |  67 6c 65 2d 63 75 72 72 65 6e 74 2d 74 72 61 6e    73 61 63 74 69 6f 6e 29 0a 20 20 20 20 28 64 65  | gle-current-transaction).....(de | 
| 19ba0 |  66 69 6e 65 2d 6b 65 79 20 6d 61 70 20 28 6b 62    64 20 22 43 2d 63 20 43 2d 66 22 29 20 23 27 6c  | fine-key.map.(kbd."C-c.C-f").#'l | 
| 19bc0 |  65 64 67 65 72 2d 6f 63 63 75 72 29 0a 20 20 20    20 28 64 65 66 69 6e 65 2d 6b 65 79 20 6d 61 70  | edger-occur).....(define-key.map | 
| 19be0 |  20 28 6b 62 64 20 22 43 2d 63 20 43 2d 6b 22 29    20 23 27 6c 65 64 67 65 72 2d 63 6f 70 79 2d 74  | .(kbd."C-c.C-k").#'ledger-copy-t | 
| 19c00 |  72 61 6e 73 61 63 74 69 6f 6e 2d 61 74 2d 70 6f    69 6e 74 29 0a 20 20 20 20 28 64 65 66 69 6e 65  | ransaction-at-point).....(define | 
| 19c20 |  2d 6b 65 79 20 6d 61 70 20 28 6b 62 64 20 22 43    2d 63 20 43 2d 72 22 29 20 23 27 6c 65 64 67 65  | -key.map.(kbd."C-c.C-r").#'ledge | 
| 19c40 |  72 2d 72 65 63 6f 6e 63 69 6c 65 29 0a 20 20 20    20 28 64 65 66 69 6e 65 2d 6b 65 79 20 6d 61 70  | r-reconcile).....(define-key.map | 
| 19c60 |  20 28 6b 62 64 20 22 43 2d 63 20 43 2d 73 22 29    20 23 27 6c 65 64 67 65 72 2d 73 6f 72 74 2d 72  | .(kbd."C-c.C-s").#'ledger-sort-r | 
| 19c80 |  65 67 69 6f 6e 29 0a 20 20 20 20 28 64 65 66 69    6e 65 2d 6b 65 79 20 6d 61 70 20 28 6b 62 64 20  | egion).....(define-key.map.(kbd. | 
| 19ca0 |  22 43 2d 63 20 43 2d 74 22 29 20 23 27 6c 65 64    67 65 72 2d 69 6e 73 65 72 74 2d 65 66 66 65 63  | "C-c.C-t").#'ledger-insert-effec | 
| 19cc0 |  74 69 76 65 2d 64 61 74 65 29 0a 20 20 20 20 28    64 65 66 69 6e 65 2d 6b 65 79 20 6d 61 70 20 28  | tive-date).....(define-key.map.( | 
| 19ce0 |  6b 62 64 20 22 43 2d 63 20 43 2d 75 22 29 20 23    27 6c 65 64 67 65 72 2d 73 63 68 65 64 75 6c 65  | kbd."C-c.C-u").#'ledger-schedule | 
| 19d00 |  2d 75 70 63 6f 6d 69 6e 67 29 0a 20 20 20 20 28    64 65 66 69 6e 65 2d 6b 65 79 20 6d 61 70 20 28  | -upcoming).....(define-key.map.( | 
| 19d20 |  6b 62 64 20 22 43 2d 63 20 43 2d 70 22 29 20 23    27 6c 65 64 67 65 72 2d 64 69 73 70 6c 61 79 2d  | kbd."C-c.C-p").#'ledger-display- | 
| 19d40 |  62 61 6c 61 6e 63 65 2d 61 74 2d 70 6f 69 6e 74    29 0a 20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65  | balance-at-point).....(define-ke | 
| 19d60 |  79 20 6d 61 70 20 28 6b 62 64 20 22 43 2d 63 20    43 2d 6c 22 29 20 23 27 6c 65 64 67 65 72 2d 64  | y.map.(kbd."C-c.C-l").#'ledger-d | 
| 19d80 |  69 73 70 6c 61 79 2d 6c 65 64 67 65 72 2d 73 74    61 74 73 29 0a 20 20 20 20 28 64 65 66 69 6e 65  | isplay-ledger-stats).....(define | 
| 19da0 |  2d 6b 65 79 20 6d 61 70 20 28 6b 62 64 20 22 43    2d 63 20 43 2d 71 22 29 20 23 27 6c 65 64 67 65  | -key.map.(kbd."C-c.C-q").#'ledge | 
| 19dc0 |  72 2d 70 6f 73 74 2d 61 6c 69 67 6e 2d 78 61 63    74 29 0a 0a 20 20 20 20 28 64 65 66 69 6e 65 2d  | r-post-align-xact)......(define- | 
| 19de0 |  6b 65 79 20 6d 61 70 20 28 6b 62 64 20 22 43 2d    54 41 42 22 29 20 23 27 6c 65 64 67 65 72 2d 70  | key.map.(kbd."C-TAB").#'ledger-p | 
| 19e00 |  6f 73 74 2d 61 6c 69 67 6e 2d 78 61 63 74 29 0a    20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65 79 20  | ost-align-xact).....(define-key. | 
| 19e20 |  6d 61 70 20 28 6b 62 64 20 22 43 2d 63 20 54 41    42 22 29 20 23 27 6c 65 64 67 65 72 2d 66 75 6c  | map.(kbd."C-c.TAB").#'ledger-ful | 
| 19e40 |  6c 79 2d 63 6f 6d 70 6c 65 74 65 2d 78 61 63 74    29 0a 20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65  | ly-complete-xact).....(define-ke | 
| 19e60 |  79 20 6d 61 70 20 28 6b 62 64 20 22 43 2d 63 20    43 2d 69 22 29 20 23 27 6c 65 64 67 65 72 2d 66  | y.map.(kbd."C-c.C-i").#'ledger-f | 
| 19e80 |  75 6c 6c 79 2d 63 6f 6d 70 6c 65 74 65 2d 78 61    63 74 29 0a 0a 20 20 20 20 28 64 65 66 69 6e 65  | ully-complete-xact)......(define | 
| 19ea0 |  2d 6b 65 79 20 6d 61 70 20 28 6b 62 64 20 22 43    2d 63 20 43 2d 6f 20 43 2d 61 22 29 20 23 27 6c  | -key.map.(kbd."C-c.C-o.C-a").#'l | 
| 19ec0 |  65 64 67 65 72 2d 72 65 70 6f 72 74 2d 72 65 64    6f 29 0a 20 20 20 20 28 64 65 66 69 6e 65 2d 6b  | edger-report-redo).....(define-k | 
| 19ee0 |  65 79 20 6d 61 70 20 28 6b 62 64 20 22 43 2d 63    20 43 2d 6f 20 43 2d 65 22 29 20 23 27 6c 65 64  | ey.map.(kbd."C-c.C-o.C-e").#'led | 
| 19f00 |  67 65 72 2d 72 65 70 6f 72 74 2d 65 64 69 74 2d    72 65 70 6f 72 74 29 0a 20 20 20 20 28 64 65 66  | ger-report-edit-report).....(def | 
| 19f20 |  69 6e 65 2d 6b 65 79 20 6d 61 70 20 28 6b 62 64    20 22 43 2d 63 20 43 2d 6f 20 43 2d 67 22 29 20  | ine-key.map.(kbd."C-c.C-o.C-g"). | 
| 19f40 |  23 27 6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d    67 6f 74 6f 29 0a 20 20 20 20 28 64 65 66 69 6e  | #'ledger-report-goto).....(defin | 
| 19f60 |  65 2d 6b 65 79 20 6d 61 70 20 28 6b 62 64 20 22    43 2d 63 20 43 2d 6f 20 43 2d 6b 22 29 20 23 27  | e-key.map.(kbd."C-c.C-o.C-k").#' | 
| 19f80 |  6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d 71 75    69 74 29 0a 20 20 20 20 28 64 65 66 69 6e 65 2d  | ledger-report-quit).....(define- | 
| 19fa0 |  6b 65 79 20 6d 61 70 20 28 6b 62 64 20 22 43 2d    63 20 43 2d 6f 20 43 2d 72 22 29 20 23 27 6c 65  | key.map.(kbd."C-c.C-o.C-r").#'le | 
| 19fc0 |  64 67 65 72 2d 72 65 70 6f 72 74 29 0a 20 20 20    20 28 64 65 66 69 6e 65 2d 6b 65 79 20 6d 61 70  | dger-report).....(define-key.map | 
| 19fe0 |  20 28 6b 62 64 20 22 43 2d 63 20 43 2d 6f 20 43    2d 73 22 29 20 23 27 6c 65 64 67 65 72 2d 72 65  | .(kbd."C-c.C-o.C-s").#'ledger-re | 
| 1a000 |  70 6f 72 74 2d 73 61 76 65 29 0a 0a 20 20 20 20    28 64 65 66 69 6e 65 2d 6b 65 79 20 6d 61 70 20  | port-save)......(define-key.map. | 
| 1a020 |  28 6b 62 64 20 22 4d 2d 70 22 29 20 23 27 6c 65    64 67 65 72 2d 6e 61 76 69 67 61 74 65 2d 70 72  | (kbd."M-p").#'ledger-navigate-pr | 
| 1a040 |  65 76 2d 78 61 63 74 2d 6f 72 2d 64 69 72 65 63    74 69 76 65 29 0a 20 20 20 20 28 64 65 66 69 6e  | ev-xact-or-directive).....(defin | 
| 1a060 |  65 2d 6b 65 79 20 6d 61 70 20 28 6b 62 64 20 22    4d 2d 6e 22 29 20 23 27 6c 65 64 67 65 72 2d 6e  | e-key.map.(kbd."M-n").#'ledger-n | 
| 1a080 |  61 76 69 67 61 74 65 2d 6e 65 78 74 2d 78 61 63    74 2d 6f 72 2d 64 69 72 65 63 74 69 76 65 29 0a  | avigate-next-xact-or-directive). | 
| 1a0a0 |  20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65 79 20    6d 61 70 20 28 6b 62 64 20 22 4d 2d 71 22 29 20  | ....(define-key.map.(kbd."M-q"). | 
| 1a0c0 |  23 27 6c 65 64 67 65 72 2d 70 6f 73 74 2d 61 6c    69 67 6e 2d 64 77 69 6d 29 0a 0a 20 20 20 20 3b  | #'ledger-post-align-dwim)......; | 
| 1a0e0 |  3b 20 52 65 73 65 74 20 74 68 65 20 60 74 65 78    74 2d 6d 6f 64 65 27 20 6f 76 65 72 72 69 64 65  | ;.Reset.the.`text-mode'.override | 
| 1a100 |  20 6f 66 20 74 68 69 73 20 73 74 61 6e 64 61 72    64 20 62 69 6e 64 69 6e 67 0a 20 20 20 20 28 64  | .of.this.standard.binding.....(d | 
| 1a120 |  65 66 69 6e 65 2d 6b 65 79 20 6d 61 70 20 28 6b    62 64 20 22 43 2d 4d 2d 69 22 29 20 27 63 6f 6d  | efine-key.map.(kbd."C-M-i").'com | 
| 1a140 |  70 6c 65 74 69 6f 6e 2d 61 74 2d 70 6f 69 6e 74    29 0a 20 20 20 20 6d 61 70 29 0a 20 20 22 4b 65  | pletion-at-point).....map)..."Ke | 
| 1a160 |  79 6d 61 70 20 66 6f 72 20 60 6c 65 64 67 65 72    2d 6d 6f 64 65 27 2e 22 29 0a 0a 28 65 61 73 79  | ymap.for.`ledger-mode'.")..(easy | 
| 1a180 |  2d 6d 65 6e 75 2d 64 65 66 69 6e 65 20 6c 65 64    67 65 72 2d 6d 6f 64 65 2d 6d 65 6e 75 20 6c 65  | -menu-define.ledger-mode-menu.le | 
| 1a1a0 |  64 67 65 72 2d 6d 6f 64 65 2d 6d 61 70 0a 20 20    22 4c 65 64 67 65 72 20 6d 65 6e 75 22 0a 20 20  | dger-mode-map..."Ledger.menu"... | 
| 1a1c0 |  27 28 22 4c 65 64 67 65 72 22 0a 20 20 20 20 5b    22 4e 61 72 72 6f 77 20 74 6f 20 52 45 47 45 58  | '("Ledger".....["Narrow.to.REGEX | 
| 1a1e0 |  22 20 6c 65 64 67 65 72 2d 6f 63 63 75 72 5d 0a    20 20 20 20 5b 22 53 68 6f 77 20 61 6c 6c 20 74  | ".ledger-occur].....["Show.all.t | 
| 1a200 |  72 61 6e 73 61 63 74 69 6f 6e 73 22 20 6c 65 64    67 65 72 2d 6f 63 63 75 72 2d 6d 6f 64 65 20 6c  | ransactions".ledger-occur-mode.l | 
| 1a220 |  65 64 67 65 72 2d 6f 63 63 75 72 2d 6d 6f 64 65    5d 0a 20 20 20 20 5b 22 4c 65 64 67 65 72 20 53  | edger-occur-mode].....["Ledger.S | 
| 1a240 |  74 61 74 69 73 74 69 63 73 22 20 6c 65 64 67 65    72 2d 64 69 73 70 6c 61 79 2d 6c 65 64 67 65 72  | tatistics".ledger-display-ledger | 
| 1a260 |  2d 73 74 61 74 73 20 6c 65 64 67 65 72 2d 77 6f    72 6b 73 5d 0a 20 20 20 20 22 2d 2d 2d 22 0a 20  | -stats.ledger-works]....."---".. | 
| 1a280 |  20 20 20 5b 22 53 68 6f 77 20 75 70 63 6f 6d 69    6e 67 20 74 72 61 6e 73 61 63 74 69 6f 6e 73 22  | ...["Show.upcoming.transactions" | 
| 1a2a0 |  20 6c 65 64 67 65 72 2d 73 63 68 65 64 75 6c 65    2d 75 70 63 6f 6d 69 6e 67 5d 0a 20 20 20 20 5b  | .ledger-schedule-upcoming].....[ | 
| 1a2c0 |  22 41 64 64 20 54 72 61 6e 73 61 63 74 69 6f 6e    20 28 6c 65 64 67 65 72 20 78 61 63 74 29 22 20  | "Add.Transaction.(ledger.xact)". | 
| 1a2e0 |  6c 65 64 67 65 72 2d 61 64 64 2d 74 72 61 6e 73    61 63 74 69 6f 6e 20 6c 65 64 67 65 72 2d 77 6f  | ledger-add-transaction.ledger-wo | 
| 1a300 |  72 6b 73 5d 0a 20 20 20 20 5b 22 43 6f 6d 70 6c    65 74 65 20 54 72 61 6e 73 61 63 74 69 6f 6e 22  | rks].....["Complete.Transaction" | 
| 1a320 |  20 6c 65 64 67 65 72 2d 66 75 6c 6c 79 2d 63 6f    6d 70 6c 65 74 65 2d 78 61 63 74 5d 0a 20 20 20  | .ledger-fully-complete-xact].... | 
| 1a340 |  20 5b 22 44 65 6c 65 74 65 20 54 72 61 6e 73 61    63 74 69 6f 6e 22 20 6c 65 64 67 65 72 2d 64 65  | .["Delete.Transaction".ledger-de | 
| 1a360 |  6c 65 74 65 2d 63 75 72 72 65 6e 74 2d 74 72 61    6e 73 61 63 74 69 6f 6e 5d 0a 20 20 20 20 22 2d  | lete-current-transaction]....."- | 
| 1a380 |  2d 2d 22 0a 20 20 20 20 5b 22 43 61 6c 63 20 6f    6e 20 41 6d 6f 75 6e 74 22 20 6c 65 64 67 65 72  | --".....["Calc.on.Amount".ledger | 
| 1a3a0 |  2d 70 6f 73 74 2d 65 64 69 74 2d 61 6d 6f 75 6e    74 5d 0a 20 20 20 20 22 2d 2d 2d 22 0a 20 20 20  | -post-edit-amount]....."---".... | 
| 1a3c0 |  20 5b 22 43 68 65 63 6b 20 42 61 6c 61 6e 63 65    22 20 6c 65 64 67 65 72 2d 64 69 73 70 6c 61 79  | .["Check.Balance".ledger-display | 
| 1a3e0 |  2d 62 61 6c 61 6e 63 65 2d 61 74 2d 70 6f 69 6e    74 20 6c 65 64 67 65 72 2d 77 6f 72 6b 73 5d 0a  | -balance-at-point.ledger-works]. | 
| 1a400 |  20 20 20 20 5b 22 52 65 63 6f 6e 63 69 6c 65 20    41 63 63 6f 75 6e 74 22 20 6c 65 64 67 65 72 2d  | ....["Reconcile.Account".ledger- | 
| 1a420 |  72 65 63 6f 6e 63 69 6c 65 20 6c 65 64 67 65 72    2d 77 6f 72 6b 73 5d 0a 20 20 20 20 22 2d 2d 2d  | reconcile.ledger-works]....."--- | 
| 1a440 |  22 0a 20 20 20 20 5b 22 54 6f 67 67 6c 65 20 43    75 72 72 65 6e 74 20 54 72 61 6e 73 61 63 74 69  | ".....["Toggle.Current.Transacti | 
| 1a460 |  6f 6e 22 20 6c 65 64 67 65 72 2d 74 6f 67 67 6c    65 2d 63 75 72 72 65 6e 74 2d 74 72 61 6e 73 61  | on".ledger-toggle-current-transa | 
| 1a480 |  63 74 69 6f 6e 5d 0a 20 20 20 20 5b 22 54 6f 67    67 6c 65 20 43 75 72 72 65 6e 74 20 50 6f 73 74  | ction].....["Toggle.Current.Post | 
| 1a4a0 |  69 6e 67 22 20 6c 65 64 67 65 72 2d 74 6f 67 67    6c 65 2d 63 75 72 72 65 6e 74 5d 0a 20 20 20 20  | ing".ledger-toggle-current]..... | 
| 1a4c0 |  5b 22 43 6f 70 79 20 54 72 61 6e 73 20 61 74 20    50 6f 69 6e 74 22 20 6c 65 64 67 65 72 2d 63 6f  | ["Copy.Trans.at.Point".ledger-co | 
| 1a4e0 |  70 79 2d 74 72 61 6e 73 61 63 74 69 6f 6e 2d 61    74 2d 70 6f 69 6e 74 5d 0a 20 20 20 20 22 2d 2d  | py-transaction-at-point]....."-- | 
| 1a500 |  2d 22 0a 20 20 20 20 5b 22 43 6c 65 61 6e 2d 75    70 20 42 75 66 66 65 72 22 20 6c 65 64 67 65 72  | -".....["Clean-up.Buffer".ledger | 
| 1a520 |  2d 6d 6f 64 65 2d 63 6c 65 61 6e 2d 62 75 66 66    65 72 5d 0a 20 20 20 20 5b 22 43 68 65 63 6b 20  | -mode-clean-buffer].....["Check. | 
| 1a540 |  42 75 66 66 65 72 22 20 6c 65 64 67 65 72 2d 63    68 65 63 6b 2d 62 75 66 66 65 72 20 6c 65 64 67  | Buffer".ledger-check-buffer.ledg | 
| 1a560 |  65 72 2d 77 6f 72 6b 73 5d 0a 20 20 20 20 5b 22    41 6c 69 67 6e 20 52 65 67 69 6f 6e 22 20 6c 65  | er-works].....["Align.Region".le | 
| 1a580 |  64 67 65 72 2d 70 6f 73 74 2d 61 6c 69 67 6e 2d    70 6f 73 74 69 6e 67 73 20 6d 61 72 6b 2d 61 63  | dger-post-align-postings.mark-ac | 
| 1a5a0 |  74 69 76 65 5d 0a 20 20 20 20 5b 22 41 6c 69 67    6e 20 58 61 63 74 22 20 6c 65 64 67 65 72 2d 70  | tive].....["Align.Xact".ledger-p | 
| 1a5c0 |  6f 73 74 2d 61 6c 69 67 6e 2d 78 61 63 74 5d 0a    20 20 20 20 5b 22 53 6f 72 74 20 52 65 67 69 6f  | ost-align-xact].....["Sort.Regio | 
| 1a5e0 |  6e 22 20 6c 65 64 67 65 72 2d 73 6f 72 74 2d 72    65 67 69 6f 6e 20 6d 61 72 6b 2d 61 63 74 69 76  | n".ledger-sort-region.mark-activ | 
| 1a600 |  65 5d 0a 20 20 20 20 5b 22 53 6f 72 74 20 42 75    66 66 65 72 22 20 6c 65 64 67 65 72 2d 73 6f 72  | e].....["Sort.Buffer".ledger-sor | 
| 1a620 |  74 2d 62 75 66 66 65 72 5d 0a 20 20 20 20 5b 22    4d 61 72 6b 20 53 6f 72 74 20 42 65 67 69 6e 6e  | t-buffer].....["Mark.Sort.Beginn | 
| 1a640 |  69 6e 67 22 20 6c 65 64 67 65 72 2d 73 6f 72 74    2d 69 6e 73 65 72 74 2d 73 74 61 72 74 2d 6d 61  | ing".ledger-sort-insert-start-ma | 
| 1a660 |  72 6b 5d 0a 20 20 20 20 5b 22 4d 61 72 6b 20 53    6f 72 74 20 45 6e 64 22 20 6c 65 64 67 65 72 2d  | rk].....["Mark.Sort.End".ledger- | 
| 1a680 |  73 6f 72 74 2d 69 6e 73 65 72 74 2d 65 6e 64 2d    6d 61 72 6b 5d 0a 20 20 20 20 5b 22 53 65 74 20  | sort-insert-end-mark].....["Set. | 
| 1a6a0 |  65 66 66 65 63 74 69 76 65 20 64 61 74 65 22 20    6c 65 64 67 65 72 2d 69 6e 73 65 72 74 2d 65 66  | effective.date".ledger-insert-ef | 
| 1a6c0 |  66 65 63 74 69 76 65 2d 64 61 74 65 5d 0a 20 20    20 20 22 2d 2d 2d 22 0a 20 20 20 20 5b 22 43 75  | fective-date]....."---".....["Cu | 
| 1a6e0 |  73 74 6f 6d 69 7a 65 20 4c 65 64 67 65 72 20 4d    6f 64 65 22 20 28 6c 61 6d 62 64 61 20 28 29 20  | stomize.Ledger.Mode".(lambda.(). | 
| 1a700 |  28 69 6e 74 65 72 61 63 74 69 76 65 29 20 28 63    75 73 74 6f 6d 69 7a 65 2d 67 72 6f 75 70 20 27  | (interactive).(customize-group.' | 
| 1a720 |  6c 65 64 67 65 72 29 29 5d 0a 20 20 20 20 22 2d    2d 2d 22 0a 20 20 20 20 5b 22 52 75 6e 20 52 65  | ledger))]....."---".....["Run.Re | 
| 1a740 |  70 6f 72 74 22 20 6c 65 64 67 65 72 2d 72 65 70    6f 72 74 20 6c 65 64 67 65 72 2d 77 6f 72 6b 73  | port".ledger-report.ledger-works | 
| 1a760 |  5d 0a 20 20 20 20 5b 22 47 6f 74 6f 20 52 65 70    6f 72 74 22 20 6c 65 64 67 65 72 2d 72 65 70 6f  | ].....["Goto.Report".ledger-repo | 
| 1a780 |  72 74 2d 67 6f 74 6f 20 6c 65 64 67 65 72 2d 77    6f 72 6b 73 5d 0a 20 20 20 20 5b 22 52 65 2d 72  | rt-goto.ledger-works].....["Re-r | 
| 1a7a0 |  75 6e 20 52 65 70 6f 72 74 22 20 6c 65 64 67 65    72 2d 72 65 70 6f 72 74 2d 72 65 64 6f 20 6c 65  | un.Report".ledger-report-redo.le | 
| 1a7c0 |  64 67 65 72 2d 77 6f 72 6b 73 5d 0a 20 20 20 20    5b 22 53 61 76 65 20 52 65 70 6f 72 74 22 20 6c  | dger-works].....["Save.Report".l | 
| 1a7e0 |  65 64 67 65 72 2d 72 65 70 6f 72 74 2d 73 61 76    65 20 6c 65 64 67 65 72 2d 77 6f 72 6b 73 5d 0a  | edger-report-save.ledger-works]. | 
| 1a800 |  20 20 20 20 5b 22 45 64 69 74 20 52 65 70 6f 72    74 22 20 6c 65 64 67 65 72 2d 72 65 70 6f 72 74  | ....["Edit.Report".ledger-report | 
| 1a820 |  2d 65 64 69 74 2d 72 65 70 6f 72 74 20 6c 65 64    67 65 72 2d 77 6f 72 6b 73 5d 0a 20 20 20 20 5b  | -edit-report.ledger-works].....[ | 
| 1a840 |  22 51 75 69 74 20 52 65 70 6f 72 74 22 20 6c 65    64 67 65 72 2d 72 65 70 6f 72 74 2d 71 75 69 74  | "Quit.Report".ledger-report-quit | 
| 1a860 |  20 6c 65 64 67 65 72 2d 77 6f 72 6b 73 5d 29 29    0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64  | .ledger-works]))..;;;###autoload | 
| 1a880 |  0a 28 64 65 66 69 6e 65 2d 64 65 72 69 76 65 64    2d 6d 6f 64 65 20 6c 65 64 67 65 72 2d 6d 6f 64  | .(define-derived-mode.ledger-mod | 
| 1a8a0 |  65 20 74 65 78 74 2d 6d 6f 64 65 20 22 4c 65 64    67 65 72 22 0a 20 20 22 41 20 6d 6f 64 65 20 66  | e.text-mode."Ledger"..."A.mode.f | 
| 1a8c0 |  6f 72 20 65 64 69 74 69 6e 67 20 6c 65 64 67 65    72 20 64 61 74 61 20 66 69 6c 65 73 2e 22 0a 20  | or.editing.ledger.data.files.".. | 
| 1a8e0 |  20 28 6c 65 64 67 65 72 2d 63 68 65 63 6b 2d 76    65 72 73 69 6f 6e 29 0a 20 20 28 73 65 74 71 20  | .(ledger-check-version)...(setq. | 
| 1a900 |  66 6f 6e 74 2d 6c 6f 63 6b 2d 64 65 66 61 75 6c    74 73 0a 20 20 20 20 20 20 20 20 27 28 6c 65 64  | font-lock-defaults.........'(led | 
| 1a920 |  67 65 72 2d 66 6f 6e 74 2d 6c 6f 63 6b 2d 6b 65    79 77 6f 72 64 73 20 74 20 6e 69 6c 20 6e 69 6c  | ger-font-lock-keywords.t.nil.nil | 
| 1a940 |  20 6e 69 6c 29 29 0a 20 20 28 61 64 64 2d 68 6f    6f 6b 20 27 66 6f 6e 74 2d 6c 6f 63 6b 2d 65 78  | .nil))...(add-hook.'font-lock-ex | 
| 1a960 |  74 65 6e 64 2d 72 65 67 69 6f 6e 2d 66 75 6e 63    74 69 6f 6e 73 20 27 6c 65 64 67 65 72 2d 66 6f  | tend-region-functions.'ledger-fo | 
| 1a980 |  6e 74 69 66 79 2d 65 78 74 65 6e 64 2d 72 65 67    69 6f 6e 29 0a 20 20 28 61 64 64 2d 68 6f 6f 6b  | ntify-extend-region)...(add-hook | 
| 1a9a0 |  20 27 63 6f 6d 70 6c 65 74 69 6f 6e 2d 61 74 2d    70 6f 69 6e 74 2d 66 75 6e 63 74 69 6f 6e 73 20  | .'completion-at-point-functions. | 
| 1a9c0 |  23 27 6c 65 64 67 65 72 2d 63 6f 6d 70 6c 65 74    65 2d 61 74 2d 70 6f 69 6e 74 20 6e 69 6c 20 74  | #'ledger-complete-at-point.nil.t | 
| 1a9e0 |  29 0a 20 20 28 61 64 64 2d 68 6f 6f 6b 20 27 61    66 74 65 72 2d 73 61 76 65 2d 68 6f 6f 6b 20 27  | )...(add-hook.'after-save-hook.' | 
| 1aa00 |  6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d 72 65    64 6f 20 6e 69 6c 20 74 29 0a 0a 20 20 28 61 64  | ledger-report-redo.nil.t)....(ad | 
| 1aa20 |  64 2d 68 6f 6f 6b 20 27 70 6f 73 74 2d 63 6f 6d    6d 61 6e 64 2d 68 6f 6f 6b 20 27 6c 65 64 67 65  | d-hook.'post-command-hook.'ledge | 
| 1aa40 |  72 2d 68 69 67 68 6c 69 67 68 74 2d 78 61 63 74    2d 75 6e 64 65 72 2d 70 6f 69 6e 74 20 6e 69 6c  | r-highlight-xact-under-point.nil | 
| 1aa60 |  20 74 29 0a 20 20 28 61 64 64 2d 68 6f 6f 6b 20    27 62 65 66 6f 72 65 2d 72 65 76 65 72 74 2d 68  | .t)...(add-hook.'before-revert-h | 
| 1aa80 |  6f 6f 6b 20 27 6c 65 64 67 65 72 2d 68 69 67 68    6c 69 67 68 74 2d 2d 62 65 66 6f 72 65 2d 72 65  | ook.'ledger-highlight--before-re | 
| 1aaa0 |  76 65 72 74 20 6e 69 6c 20 74 29 0a 20 20 28 61    64 64 2d 68 6f 6f 6b 20 27 61 66 74 65 72 2d 72  | vert.nil.t)...(add-hook.'after-r | 
| 1aac0 |  65 76 65 72 74 2d 68 6f 6f 6b 20 27 6c 65 64 67    65 72 2d 68 69 67 68 6c 69 67 68 74 2d 78 61 63  | evert-hook.'ledger-highlight-xac | 
| 1aae0 |  74 2d 75 6e 64 65 72 2d 70 6f 69 6e 74 20 6e 69    6c 20 74 29 0a 0a 20 20 28 6c 65 64 67 65 72 2d  | t-under-point.nil.t)....(ledger- | 
| 1ab00 |  69 6e 69 74 2d 6c 6f 61 64 2d 69 6e 69 74 2d 66    69 6c 65 29 0a 20 20 28 73 65 74 71 2d 6c 6f 63  | init-load-init-file)...(setq-loc | 
| 1ab20 |  61 6c 20 63 6f 6d 6d 65 6e 74 2d 73 74 61 72 74    20 22 3b 22 29 0a 20 20 28 73 65 74 71 2d 6c 6f  | al.comment-start.";")...(setq-lo | 
| 1ab40 |  63 61 6c 20 69 6e 64 65 6e 74 2d 6c 69 6e 65 2d    66 75 6e 63 74 69 6f 6e 20 23 27 6c 65 64 67 65  | cal.indent-line-function.#'ledge | 
| 1ab60 |  72 2d 69 6e 64 65 6e 74 2d 6c 69 6e 65 29 0a 20    20 28 73 65 74 71 2d 6c 6f 63 61 6c 20 69 6e 64  | r-indent-line)...(setq-local.ind | 
| 1ab80 |  65 6e 74 2d 72 65 67 69 6f 6e 2d 66 75 6e 63 74    69 6f 6e 20 27 6c 65 64 67 65 72 2d 70 6f 73 74  | ent-region-function.'ledger-post | 
| 1aba0 |  2d 61 6c 69 67 6e 2d 70 6f 73 74 69 6e 67 73 29    0a 20 20 28 73 65 74 71 2d 6c 6f 63 61 6c 20 62  | -align-postings)...(setq-local.b | 
| 1abc0 |  65 67 69 6e 6e 69 6e 67 2d 6f 66 2d 64 65 66 75    6e 2d 66 75 6e 63 74 69 6f 6e 20 23 27 6c 65 64  | eginning-of-defun-function.#'led | 
| 1abe0 |  67 65 72 2d 6e 61 76 69 67 61 74 65 2d 62 65 67    69 6e 6e 69 6e 67 2d 6f 66 2d 78 61 63 74 29 0a  | ger-navigate-beginning-of-xact). | 
| 1ac00 |  20 20 28 73 65 74 71 2d 6c 6f 63 61 6c 20 65 6e    64 2d 6f 66 2d 64 65 66 75 6e 2d 66 75 6e 63 74  | ..(setq-local.end-of-defun-funct | 
| 1ac20 |  69 6f 6e 20 23 27 6c 65 64 67 65 72 2d 6e 61 76    69 67 61 74 65 2d 65 6e 64 2d 6f 66 2d 78 61 63  | ion.#'ledger-navigate-end-of-xac | 
| 1ac40 |  74 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c    6f 61 64 0a 28 61 64 64 2d 74 6f 2d 6c 69 73 74  | t))..;;;###autoload.(add-to-list | 
| 1ac60 |  20 27 61 75 74 6f 2d 6d 6f 64 65 2d 61 6c 69 73    74 20 27 28 22 5c 5c 2e 6c 65 64 67 65 72 5c 5c  | .'auto-mode-alist.'("\\.ledger\\ | 
| 1ac80 |  27 22 20 2e 20 6c 65 64 67 65 72 2d 6d 6f 64 65    29 29 0a 0a 28 70 72 6f 76 69 64 65 20 27 6c 65  | '"...ledger-mode))..(provide.'le | 
| 1aca0 |  64 67 65 72 2d 6d 6f 64 65 29 0a 0a 3b 3b 3b 20    6c 65 64 67 65 72 2d 6d 6f 64 65 2e 65 6c 20 65  | dger-mode)..;;;.ledger-mode.el.e | 
| 1acc0 |  6e 64 73 20 68 65 72 65 0a 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | nds.here........................ | 
| 1ace0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1ad00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1ad20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1ad40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1ad60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1ad80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1ada0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1adc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1ade0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1ae00 |  6c 65 64 67 65 72 2d 6d 6f 64 65 2d 32 30 32 34    30 34 31 36 2e 34 31 36 2f 6c 65 64 67 65 72 2d  | ledger-mode-20240416.416/ledger- | 
| 1ae20 |  72 65 70 6f 72 74 2e 65 6c 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | report.el....................... | 
| 1ae40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1ae60 |  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 | 
| 1ae80 |  30 30 36 34 36 35 37 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 36 32 33 31 00 20 30 00 00 00  | 0064657.00000000000.016231..0... | 
| 1aea0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1aec0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1aee0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1af00 |  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................... | 
| 1af20 |  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................... | 
| 1af40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1af60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1af80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1afa0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1afc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1afe0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1b000 |  3b 3b 3b 20 6c 65 64 67 65 72 2d 72 65 70 6f 72    74 2e 65 6c 20 2d 2d 2d 20 48 65 6c 70 65 72 20  | ;;;.ledger-report.el.---.Helper. | 
| 1b020 |  63 6f 64 65 20 66 6f 72 20 75 73 65 20 77 69 74    68 20 74 68 65 20 22 6c 65 64 67 65 72 22 20 63  | code.for.use.with.the."ledger".c | 
| 1b040 |  6f 6d 6d 61 6e 64 2d 6c 69 6e 65 20 74 6f 6f 6c    20 20 2d 2a 2d 20 6c 65 78 69 63 61 6c 2d 62 69  | ommand-line.tool..-*-.lexical-bi | 
| 1b060 |  6e 64 69 6e 67 3a 20 74 3b 20 2d 2a 2d 0a 0a 3b    3b 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20  | nding:.t;.-*-..;;.Copyright.(C). | 
| 1b080 |  32 30 30 33 2d 32 30 31 36 20 4a 6f 68 6e 20 57    69 65 67 6c 65 79 20 28 6a 6f 68 6e 77 20 41 54  | 2003-2016.John.Wiegley.(johnw.AT | 
| 1b0a0 |  20 67 6e 75 20 44 4f 54 20 6f 72 67 29 0a 0a 3b    3b 20 54 68 69 73 20 66 69 6c 65 20 69 73 20 6e  | .gnu.DOT.org)..;;.This.file.is.n | 
| 1b0c0 |  6f 74 20 70 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 69  | ot.part.of.GNU.Emacs...;;.This.i | 
| 1b0e0 |  73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3b    20 79 6f 75 20 63 61 6e 20 72 65 64 69 73 74 72  | s.free.software;.you.can.redistr | 
| 1b100 |  69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20    6d 6f 64 69 66 79 20 69 74 20 75 6e 64 65 72 0a  | ibute.it.and/or.modify.it.under. | 
| 1b120 |  3b 3b 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20    74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c 20  | ;;.the.terms.of.the.GNU.General. | 
| 1b140 |  50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 61    73 20 70 75 62 6c 69 73 68 65 64 20 62 79 20 74  | Public.License.as.published.by.t | 
| 1b160 |  68 65 20 46 72 65 65 0a 3b 3b 20 53 6f 66 74 77    61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 3b 20  | he.Free.;;.Software.Foundation;. | 
| 1b180 |  65 69 74 68 65 72 20 76 65 72 73 69 6f 6e 20 32    2c 20 6f 72 20 28 61 74 20 79 6f 75 72 20 6f 70  | either.version.2,.or.(at.your.op | 
| 1b1a0 |  74 69 6f 6e 29 20 61 6e 79 20 6c 61 74 65 72 0a    3b 3b 20 76 65 72 73 69 6f 6e 2e 0a 3b 3b 0a 3b  | tion).any.later.;;.version..;;.; | 
| 1b1c0 |  3b 20 54 68 69 73 20 69 73 20 64 69 73 74 72 69    62 75 74 65 64 20 69 6e 20 74 68 65 20 68 6f 70  | ;.This.is.distributed.in.the.hop | 
| 1b1e0 |  65 20 74 68 61 74 20 69 74 20 77 69 6c 6c 20 62    65 20 75 73 65 66 75 6c 2c 20 62 75 74 20 57 49  | e.that.it.will.be.useful,.but.WI | 
| 1b200 |  54 48 4f 55 54 0a 3b 3b 20 41 4e 59 20 57 41 52    52 41 4e 54 59 3b 20 77 69 74 68 6f 75 74 20 65  | THOUT.;;.ANY.WARRANTY;.without.e | 
| 1b220 |  76 65 6e 20 74 68 65 20 69 6d 70 6c 69 65 64 20    77 61 72 72 61 6e 74 79 20 6f 66 20 4d 45 52 43  | ven.the.implied.warranty.of.MERC | 
| 1b240 |  48 41 4e 54 41 42 49 4c 49 54 59 20 6f 72 0a 3b    3b 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20  | HANTABILITY.or.;;.FITNESS.FOR.A. | 
| 1b260 |  50 41 52 54 49 43 55 4c 41 52 20 50 55 52 50 4f    53 45 2e 20 20 53 65 65 20 74 68 65 20 47 4e 55  | PARTICULAR.PURPOSE...See.the.GNU | 
| 1b280 |  20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20    4c 69 63 65 6e 73 65 0a 3b 3b 20 66 6f 72 20 6d  | .General.Public.License.;;.for.m | 
| 1b2a0 |  6f 72 65 20 64 65 74 61 69 6c 73 2e 0a 3b 3b 0a    3b 3b 20 59 6f 75 20 73 68 6f 75 6c 64 20 68 61  | ore.details..;;.;;.You.should.ha | 
| 1b2c0 |  76 65 20 72 65 63 65 69 76 65 64 20 61 20 63 6f    70 79 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65  | ve.received.a.copy.of.the.GNU.Ge | 
| 1b2e0 |  6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63    65 6e 73 65 0a 3b 3b 20 61 6c 6f 6e 67 20 77 69  | neral.Public.License.;;.along.wi | 
| 1b300 |  74 68 20 47 4e 55 20 45 6d 61 63 73 3b 20 73 65    65 20 74 68 65 20 66 69 6c 65 20 43 4f 50 59 49  | th.GNU.Emacs;.see.the.file.COPYI | 
| 1b320 |  4e 47 2e 20 20 49 66 20 6e 6f 74 2c 20 77 72 69    74 65 20 74 6f 20 74 68 65 0a 3b 3b 20 46 72 65  | NG...If.not,.write.to.the.;;.Fre | 
| 1b340 |  65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64    61 74 69 6f 6e 2c 20 49 6e 63 2e 2c 20 35 31 20  | e.Software.Foundation,.Inc.,.51. | 
| 1b360 |  46 72 61 6e 6b 6c 69 6e 20 53 74 72 65 65 74 2c    20 46 69 66 74 68 20 46 6c 6f 6f 72 2c 20 42 6f  | Franklin.Street,.Fifth.Floor,.Bo | 
| 1b380 |  73 74 6f 6e 2c 0a 3b 3b 20 4d 41 20 30 32 31 31    30 2d 31 33 30 31 20 55 53 41 2e 0a 0a 0a 3b 3b  | ston,.;;.MA.02110-1301.USA....;; | 
| 1b3a0 |  3b 20 43 6f 6d 6d 65 6e 74 61 72 79 3a 0a 3b 3b    20 20 50 72 6f 76 69 64 65 20 66 61 63 69 6c 69  | ;.Commentary:.;;..Provide.facili | 
| 1b3c0 |  74 69 65 73 20 66 6f 72 20 72 75 6e 6e 69 6e 67    20 61 6e 64 20 73 61 76 69 6e 67 20 72 65 70 6f  | ties.for.running.and.saving.repo | 
| 1b3e0 |  72 74 73 20 69 6e 20 45 6d 61 63 73 0a 0a 3b 3b    3b 20 43 6f 64 65 3a 0a 0a 28 72 65 71 75 69 72  | rts.in.Emacs..;;;.Code:..(requir | 
| 1b400 |  65 20 27 6c 65 64 67 65 72 2d 78 61 63 74 29 0a    28 72 65 71 75 69 72 65 20 27 6c 65 64 67 65 72  | e.'ledger-xact).(require.'ledger | 
| 1b420 |  2d 6e 61 76 69 67 61 74 65 29 0a 28 72 65 71 75    69 72 65 20 27 6c 65 64 67 65 72 2d 63 6f 6d 6d  | -navigate).(require.'ledger-comm | 
| 1b440 |  6f 64 69 74 69 65 73 29 0a 28 72 65 71 75 69 72    65 20 27 6c 65 64 67 65 72 2d 63 6f 6d 70 6c 65  | odities).(require.'ledger-comple | 
| 1b460 |  74 65 29 0a 28 64 65 63 6c 61 72 65 2d 66 75 6e    63 74 69 6f 6e 20 6c 65 64 67 65 72 2d 72 65 61  | te).(declare-function.ledger-rea | 
| 1b480 |  64 2d 73 74 72 69 6e 67 2d 77 69 74 68 2d 64 65    66 61 75 6c 74 20 22 6c 65 64 67 65 72 2d 6d 6f  | d-string-with-default."ledger-mo | 
| 1b4a0 |  64 65 22 20 28 70 72 6f 6d 70 74 20 64 65 66 61    75 6c 74 29 29 0a 28 64 65 63 6c 61 72 65 2d 66  | de".(prompt.default)).(declare-f | 
| 1b4c0 |  75 6e 63 74 69 6f 6e 20 6c 65 64 67 65 72 2d 72    65 61 64 2d 61 63 63 6f 75 6e 74 2d 77 69 74 68  | unction.ledger-read-account-with | 
| 1b4e0 |  2d 70 72 6f 6d 70 74 20 22 6c 65 64 67 65 72 2d    6d 6f 64 65 22 20 28 70 72 6f 6d 70 74 29 29 0a  | -prompt."ledger-mode".(prompt)). | 
| 1b500 |  28 64 65 63 6c 61 72 65 2d 66 75 6e 63 74 69 6f    6e 20 6c 65 64 67 65 72 2d 72 65 61 64 2d 70 61  | (declare-function.ledger-read-pa | 
| 1b520 |  79 65 65 2d 77 69 74 68 2d 70 72 6f 6d 70 74 20    22 6c 65 64 67 65 72 2d 6d 6f 64 65 22 20 28 70  | yee-with-prompt."ledger-mode".(p | 
| 1b540 |  72 6f 6d 70 74 29 29 0a 0a 28 72 65 71 75 69 72    65 20 27 65 61 73 79 6d 65 6e 75 29 0a 28 72 65  | rompt))..(require.'easymenu).(re | 
| 1b560 |  71 75 69 72 65 20 27 61 6e 73 69 2d 63 6f 6c 6f    72 29 0a 28 72 65 71 75 69 72 65 20 27 66 6f 6e  | quire.'ansi-color).(require.'fon | 
| 1b580 |  74 2d 6c 6f 63 6b 29 0a 28 65 76 61 6c 2d 77 68    65 6e 2d 63 6f 6d 70 69 6c 65 0a 20 20 28 72 65  | t-lock).(eval-when-compile...(re | 
| 1b5a0 |  71 75 69 72 65 20 27 72 78 29 0a 20 20 28 72 65    71 75 69 72 65 20 27 73 75 62 72 2d 78 29 29 0a  | quire.'rx)...(require.'subr-x)). | 
| 1b5c0 |  0a 28 64 65 66 67 72 6f 75 70 20 6c 65 64 67 65    72 2d 72 65 70 6f 72 74 20 6e 69 6c 0a 20 20 22  | .(defgroup.ledger-report.nil..." | 
| 1b5e0 |  43 75 73 74 6f 6d 69 7a 61 74 69 6f 6e 20 6f 70    74 69 6f 6e 20 66 6f 72 20 74 68 65 20 52 65 70  | Customization.option.for.the.Rep | 
| 1b600 |  6f 72 74 20 62 75 66 66 65 72 2e 22 0a 20 20 3a    67 72 6f 75 70 20 27 6c 65 64 67 65 72 29 0a 0a  | ort.buffer."...:group.'ledger).. | 
| 1b620 |  28 64 65 66 63 75 73 74 6f 6d 20 6c 65 64 67 65    72 2d 72 65 70 6f 72 74 73 0a 20 20 27 28 28 22  | (defcustom.ledger-reports...'((" | 
| 1b640 |  62 61 6c 22 20 22 25 28 62 69 6e 61 72 79 29 20    2d 66 20 25 28 6c 65 64 67 65 72 2d 66 69 6c 65  | bal"."%(binary).-f.%(ledger-file | 
| 1b660 |  29 20 62 61 6c 22 29 0a 20 20 20 20 28 22 72 65    67 22 20 22 25 28 62 69 6e 61 72 79 29 20 2d 66  | ).bal").....("reg"."%(binary).-f | 
| 1b680 |  20 25 28 6c 65 64 67 65 72 2d 66 69 6c 65 29 20    72 65 67 22 29 0a 20 20 20 20 28 22 70 61 79 65  | .%(ledger-file).reg").....("paye | 
| 1b6a0 |  65 22 20 22 25 28 62 69 6e 61 72 79 29 20 2d 66    20 25 28 6c 65 64 67 65 72 2d 66 69 6c 65 29 20  | e"."%(binary).-f.%(ledger-file). | 
| 1b6c0 |  72 65 67 20 40 25 28 70 61 79 65 65 29 22 29 0a    20 20 20 20 28 22 61 63 63 6f 75 6e 74 22 20 22  | reg.@%(payee)").....("account"." | 
| 1b6e0 |  25 28 62 69 6e 61 72 79 29 20 2d 66 20 25 28 6c    65 64 67 65 72 2d 66 69 6c 65 29 20 72 65 67 20  | %(binary).-f.%(ledger-file).reg. | 
| 1b700 |  25 28 61 63 63 6f 75 6e 74 29 22 29 29 0a 20 20    22 44 65 66 69 6e 69 74 69 6f 6e 20 6f 66 20 72  | %(account)"))..."Definition.of.r | 
| 1b720 |  65 70 6f 72 74 73 20 74 6f 20 72 75 6e 2e 0a 0a    45 61 63 68 20 65 6c 65 6d 65 6e 74 20 68 61 73  | eports.to.run...Each.element.has | 
| 1b740 |  20 74 68 65 20 66 6f 72 6d 20 28 4e 41 4d 45 20    43 4d 44 4c 49 4e 45 29 2e 20 20 54 68 65 20 63  | .the.form.(NAME.CMDLINE)...The.c | 
| 1b760 |  6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 63 61 6e 0a    63 6f 6e 74 61 69 6e 20 66 6f 72 6d 61 74 20 73  | ommand.line.can.contain.format.s | 
| 1b780 |  70 65 63 69 66 69 65 72 73 20 74 68 61 74 20 61    72 65 20 72 65 70 6c 61 63 65 64 20 77 69 74 68  | pecifiers.that.are.replaced.with | 
| 1b7a0 |  20 63 6f 6e 74 65 78 74 20 73 65 6e 73 69 74 69    76 65 0a 69 6e 66 6f 72 6d 61 74 69 6f 6e 2e 20  | .context.sensitive.information.. | 
| 1b7c0 |  20 46 6f 72 6d 61 74 20 73 70 65 63 69 66 69 65    72 73 20 68 61 76 65 20 74 68 65 20 66 6f 72 6d  | .Format.specifiers.have.the.form | 
| 1b7e0 |  61 74 20 27 25 28 3c 6e 61 6d 65 3e 29 27 20 77    68 65 72 65 0a 3c 6e 61 6d 65 3e 20 69 73 20 61  | at.'%(<name>)'.where.<name>.is.a | 
| 1b800 |  6e 20 69 64 65 6e 74 69 66 69 65 72 20 66 6f 72    20 74 68 65 20 69 6e 66 6f 72 6d 61 74 69 6f 6e  | n.identifier.for.the.information | 
| 1b820 |  20 74 6f 20 62 65 20 72 65 70 6c 61 63 65 64 2e    20 20 54 68 65 0a 60 6c 65 64 67 65 72 2d 72 65  | .to.be.replaced...The.`ledger-re | 
| 1b840 |  70 6f 72 74 2d 66 6f 72 6d 61 74 2d 73 70 65 63    69 66 69 65 72 73 27 20 61 6c 69 73 74 20 76 61  | port-format-specifiers'.alist.va | 
| 1b860 |  72 69 61 62 6c 65 20 63 6f 6e 74 61 69 6e 73 20    61 20 6d 61 70 70 69 6e 67 0a 66 72 6f 6d 20 66  | riable.contains.a.mapping.from.f | 
| 1b880 |  6f 72 6d 61 74 20 73 70 65 63 69 66 69 65 72 20    69 64 65 6e 74 69 66 69 65 72 20 74 6f 20 61 20  | ormat.specifier.identifier.to.a. | 
| 1b8a0 |  4c 69 73 70 20 66 75 6e 63 74 69 6f 6e 20 74 68    61 74 20 69 6d 70 6c 65 6d 65 6e 74 73 0a 74 68  | Lisp.function.that.implements.th | 
| 1b8c0 |  65 20 73 75 62 73 74 69 74 75 74 69 6f 6e 2e 20    20 53 65 65 20 74 68 65 20 64 6f 63 75 6d 65 6e  | e.substitution...See.the.documen | 
| 1b8e0 |  74 61 74 69 6f 6e 20 6f 66 20 74 68 65 20 69 6e    64 69 76 69 64 75 61 6c 20 66 75 6e 63 74 69 6f  | tation.of.the.individual.functio | 
| 1b900 |  6e 73 0a 69 6e 20 74 68 61 74 20 76 61 72 69 61    62 6c 65 20 66 6f 72 20 6d 6f 72 65 20 69 6e 66  | ns.in.that.variable.for.more.inf | 
| 1b920 |  6f 72 6d 61 74 69 6f 6e 20 6f 6e 20 74 68 65 20    62 65 68 61 76 69 6f 72 20 6f 66 20 65 61 63 68  | ormation.on.the.behavior.of.each | 
| 1b940 |  0a 73 70 65 63 69 66 69 65 72 2e 22 0a 20 20 3a    74 79 70 65 20 27 28 72 65 70 65 61 74 20 28 6c  | .specifier."...:type.'(repeat.(l | 
| 1b960 |  69 73 74 20 28 73 74 72 69 6e 67 20 3a 74 61 67    20 22 52 65 70 6f 72 74 20 4e 61 6d 65 22 29 0a  | ist.(string.:tag."Report.Name"). | 
| 1b980 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 28 73 74 72 69 6e 67 20 3a  | .......................(string.: | 
| 1b9a0 |  74 61 67 20 22 43 6f 6d 6d 61 6e 64 20 4c 69 6e    65 22 29 29 29 0a 20 20 3a 67 72 6f 75 70 20 27  | tag."Command.Line")))...:group.' | 
| 1b9c0 |  6c 65 64 67 65 72 2d 72 65 70 6f 72 74 29 0a 0a    28 64 65 66 63 75 73 74 6f 6d 20 6c 65 64 67 65  | ledger-report)..(defcustom.ledge | 
| 1b9e0 |  72 2d 72 65 70 6f 72 74 2d 66 6f 72 6d 61 74 2d    73 70 65 63 69 66 69 65 72 73 0a 20 20 27 28 28  | r-report-format-specifiers...'(( | 
| 1ba00 |  22 6c 65 64 67 65 72 2d 66 69 6c 65 22 20 2e 20    6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d 6c 65  | "ledger-file"...ledger-report-le | 
| 1ba20 |  64 67 65 72 2d 66 69 6c 65 2d 66 6f 72 6d 61 74    2d 73 70 65 63 69 66 69 65 72 29 0a 20 20 20 20  | dger-file-format-specifier)..... | 
| 1ba40 |  28 22 62 69 6e 61 72 79 22 20 2e 20 6c 65 64 67    65 72 2d 72 65 70 6f 72 74 2d 62 69 6e 61 72 79  | ("binary"...ledger-report-binary | 
| 1ba60 |  2d 66 6f 72 6d 61 74 2d 73 70 65 63 69 66 69 65    72 29 0a 20 20 20 20 28 22 70 61 79 65 65 22 20  | -format-specifier).....("payee". | 
| 1ba80 |  2e 20 6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d    70 61 79 65 65 2d 66 6f 72 6d 61 74 2d 73 70 65  | ..ledger-report-payee-format-spe | 
| 1baa0 |  63 69 66 69 65 72 29 0a 20 20 20 20 28 22 61 63    63 6f 75 6e 74 22 20 2e 20 6c 65 64 67 65 72 2d  | cifier).....("account"...ledger- | 
| 1bac0 |  72 65 70 6f 72 74 2d 61 63 63 6f 75 6e 74 2d 66    6f 72 6d 61 74 2d 73 70 65 63 69 66 69 65 72 29  | report-account-format-specifier) | 
| 1bae0 |  0a 20 20 20 20 28 22 6d 6f 6e 74 68 22 20 2e 20    6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d 6d 6f  | .....("month"...ledger-report-mo | 
| 1bb00 |  6e 74 68 2d 66 6f 72 6d 61 74 2d 73 70 65 63 69    66 69 65 72 29 0a 20 20 20 20 28 22 74 61 67 6e  | nth-format-specifier).....("tagn | 
| 1bb20 |  61 6d 65 22 20 2e 20 6c 65 64 67 65 72 2d 72 65    70 6f 72 74 2d 74 61 67 6e 61 6d 65 2d 66 6f 72  | ame"...ledger-report-tagname-for | 
| 1bb40 |  6d 61 74 2d 73 70 65 63 69 66 69 65 72 29 0a 20    20 20 20 28 22 74 61 67 76 61 6c 75 65 22 20 2e  | mat-specifier).....("tagvalue".. | 
| 1bb60 |  20 6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d 74    61 67 76 61 6c 75 65 2d 66 6f 72 6d 61 74 2d 73  | .ledger-report-tagvalue-format-s | 
| 1bb80 |  70 65 63 69 66 69 65 72 29 29 0a 20 20 22 41 6e    20 61 6c 69 73 74 20 6d 61 70 70 69 6e 67 20 6c  | pecifier))..."An.alist.mapping.l | 
| 1bba0 |  65 64 67 65 72 20 72 65 70 6f 72 74 20 66 6f 72    6d 61 74 20 73 70 65 63 69 66 69 65 72 73 20 74  | edger.report.format.specifiers.t | 
| 1bbc0 |  6f 20 69 6d 70 6c 65 6d 65 6e 74 69 6e 67 20 66    75 6e 63 74 69 6f 6e 73 2e 0a 0a 54 68 65 20 66  | o.implementing.functions...The.f | 
| 1bbe0 |  75 6e 63 74 69 6f 6e 20 69 73 20 63 61 6c 6c 65    64 20 77 69 74 68 20 6e 6f 20 70 61 72 61 6d 65  | unction.is.called.with.no.parame | 
| 1bc00 |  74 65 72 73 20 61 6e 64 20 65 78 70 65 63 74 65    64 20 74 6f 20 72 65 74 75 72 6e 0a 61 20 73 74  | ters.and.expected.to.return.a.st | 
| 1bc20 |  72 69 6e 67 2c 20 6f 72 20 61 20 6c 69 73 74 20    6f 66 20 73 74 72 69 6e 67 73 2c 20 74 68 61 74  | ring,.or.a.list.of.strings,.that | 
| 1bc40 |  20 73 68 6f 75 6c 64 20 72 65 70 6c 61 63 65 20    74 68 65 20 66 6f 72 6d 61 74 20 73 70 65 63 69  | .should.replace.the.format.speci | 
| 1bc60 |  66 69 65 72 2e 0a 53 69 6e 67 6c 65 20 73 74 72    69 6e 67 73 20 61 72 65 20 71 75 6f 74 65 64 20  | fier..Single.strings.are.quoted. | 
| 1bc80 |  77 69 74 68 20 60 73 68 65 6c 6c 2d 71 75 6f 74    65 2d 61 72 67 75 6d 65 6e 74 27 3b 20 6c 69 73  | with.`shell-quote-argument';.lis | 
| 1bca0 |  74 73 20 6f 66 20 73 74 72 69 6e 67 73 20 61 72    65 0a 73 69 6d 70 6c 79 20 63 6f 6e 63 61 74 65  | ts.of.strings.are.simply.concate | 
| 1bcc0 |  6e 61 74 65 64 20 28 6e 6f 20 71 75 6f 74 69 6e    67 29 2e 22 0a 20 20 3a 74 79 70 65 20 27 28 61  | nated.(no.quoting)."...:type.'(a | 
| 1bce0 |  6c 69 73 74 20 3a 6b 65 79 2d 74 79 70 65 20 73    74 72 69 6e 67 0a 20 20 20 20 20 20 20 20 20 20  | list.:key-type.string........... | 
| 1bd00 |  20 20 20 20 20 20 3a 76 61 6c 75 65 2d 74 79 70    65 20 66 75 6e 63 74 69 6f 6e 29 0a 20 20 3a 67  | ......:value-type.function)...:g | 
| 1bd20 |  72 6f 75 70 20 27 6c 65 64 67 65 72 2d 72 65 70    6f 72 74 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d  | roup.'ledger-report)..(defcustom | 
| 1bd40 |  20 6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d 61    75 74 6f 2d 72 65 66 72 65 73 68 20 74 0a 20 20  | .ledger-report-auto-refresh.t... | 
| 1bd60 |  22 49 66 20 6e 6f 6e 2d 6e 69 6c 2c 20 61 75 74    6f 6d 61 74 69 63 61 6c 6c 79 20 72 65 72 75 6e  | "If.non-nil,.automatically.rerun | 
| 1bd80 |  20 74 68 65 20 72 65 70 6f 72 74 20 77 68 65 6e    20 74 68 65 20 6c 65 64 67 65 72 20 62 75 66 66  | .the.report.when.the.ledger.buff | 
| 1bda0 |  65 72 20 69 73 20 73 61 76 65 64 2e 22 0a 20 20    3a 74 79 70 65 20 27 62 6f 6f 6c 65 61 6e 0a 20  | er.is.saved."...:type.'boolean.. | 
| 1bdc0 |  20 3a 67 72 6f 75 70 20 27 6c 65 64 67 65 72 2d    72 65 70 6f 72 74 29 0a 0a 28 64 65 66 63 75 73  | .:group.'ledger-report)..(defcus | 
| 1bde0 |  74 6f 6d 20 6c 65 64 67 65 72 2d 72 65 70 6f 72    74 2d 61 75 74 6f 2d 72 65 66 72 65 73 68 2d 73  | tom.ledger-report-auto-refresh-s | 
| 1be00 |  74 69 63 6b 79 2d 63 75 72 73 6f 72 20 6e 69 6c    0a 20 20 22 49 66 20 6e 6f 6e 2d 6e 69 6c 2c 20  | ticky-cursor.nil..."If.non-nil,. | 
| 1be20 |  6b 65 65 70 20 63 75 72 73 6f 72 27 73 20 72 65    6c 61 74 69 76 65 20 70 6f 73 69 74 69 6f 6e 20  | keep.cursor's.relative.position. | 
| 1be40 |  61 66 74 65 72 20 61 75 74 6f 2d 72 65 66 72 65    73 68 2e 22 0a 20 20 3a 74 79 70 65 20 27 62 6f  | after.auto-refresh."...:type.'bo | 
| 1be60 |  6f 6c 65 61 6e 0a 20 20 3a 67 72 6f 75 70 20 27    6c 65 64 67 65 72 2d 72 65 70 6f 72 74 29 0a 0a  | olean...:group.'ledger-report).. | 
| 1be80 |  28 64 65 66 63 75 73 74 6f 6d 20 6c 65 64 67 65    72 2d 72 65 70 6f 72 74 2d 6c 69 6e 6b 73 2d 69  | (defcustom.ledger-report-links-i | 
| 1bea0 |  6e 2d 72 65 67 69 73 74 65 72 20 74 0a 20 20 22    49 66 20 6e 6f 6e 2d 6e 69 6c 2c 20 6c 69 6e 6b  | n-register.t..."If.non-nil,.link | 
| 1bec0 |  20 65 6e 74 72 69 65 73 20 69 6e 20 5c 22 72 65    67 69 73 74 65 72 5c 22 20 72 65 70 6f 72 74 73  | .entries.in.\"register\".reports | 
| 1bee0 |  20 74 6f 20 65 6e 74 72 69 65 73 20 69 6e 20 74    68 65 20 6c 65 64 67 65 72 20 62 75 66 66 65 72  | .to.entries.in.the.ledger.buffer | 
| 1bf00 |  2e 22 0a 20 20 3a 74 79 70 65 20 27 62 6f 6f 6c    65 61 6e 0a 20 20 3a 67 72 6f 75 70 20 27 6c 65  | ."...:type.'boolean...:group.'le | 
| 1bf20 |  64 67 65 72 2d 72 65 70 6f 72 74 29 0a 0a 28 64    65 66 63 75 73 74 6f 6d 20 6c 65 64 67 65 72 2d  | dger-report)..(defcustom.ledger- | 
| 1bf40 |  72 65 70 6f 72 74 2d 75 73 65 2d 6e 61 74 69 76    65 2d 68 69 67 68 6c 69 67 68 74 69 6e 67 20 74  | report-use-native-highlighting.t | 
| 1bf60 |  0a 20 20 22 57 68 65 6e 20 6e 6f 6e 2d 6e 69 6c    2c 20 75 73 65 20 6c 65 64 67 65 72 27 73 20 6e  | ..."When.non-nil,.use.ledger's.n | 
| 1bf80 |  61 74 69 76 65 20 68 69 67 68 6c 69 67 68 74 69    6e 67 20 69 6e 20 72 65 70 6f 72 74 73 2e 22 0a  | ative.highlighting.in.reports.". | 
| 1bfa0 |  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 65 72 73  | ..:type.'boolean...:package-vers | 
| 1bfc0 |  69 6f 6e 20 27 28 6c 65 64 67 65 72 2d 6d 6f 64    65 20 2e 20 22 34 2e 30 2e 30 22 29 0a 20 20 3a  | ion.'(ledger-mode..."4.0.0")...: | 
| 1bfe0 |  67 72 6f 75 70 20 27 6c 65 64 67 65 72 2d 72 65    70 6f 72 74 29 0a 0a 28 64 65 66 63 75 73 74 6f  | group.'ledger-report)..(defcusto | 
| 1c000 |  6d 20 6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d    6e 61 74 69 76 65 2d 68 69 67 68 6c 69 67 68 74  | m.ledger-report-native-highlight | 
| 1c020 |  69 6e 67 2d 61 72 67 75 6d 65 6e 74 73 20 27 28    22 2d 2d 63 6f 6c 6f 72 22 20 22 2d 2d 66 6f 72  | ing-arguments.'("--color"."--for | 
| 1c040 |  63 65 2d 63 6f 6c 6f 72 22 29 0a 20 20 22 4c 69    73 74 20 6f 66 20 6c 65 64 67 65 72 20 61 72 67  | ce-color")..."List.of.ledger.arg | 
| 1c060 |  73 20 6e 65 65 64 65 64 20 62 79 20 60 6c 65 64    67 65 72 2d 72 65 70 6f 72 74 2d 75 73 65 2d 6e  | s.needed.by.`ledger-report-use-n | 
| 1c080 |  61 74 69 76 65 2d 68 69 67 68 6c 69 67 68 74 69    6e 67 27 2e 0a 0a 49 66 20 79 6f 75 20 61 72 65  | ative-highlighting'...If.you.are | 
| 1c0a0 |  20 75 73 69 6e 67 20 68 6c 65 64 67 65 72 20 69    6e 73 74 65 61 64 20 6f 66 20 6c 65 64 67 65 72  | .using.hledger.instead.of.ledger | 
| 1c0c0 |  2c 20 79 6f 75 20 6d 69 67 68 74 20 77 61 6e 74    20 74 6f 20 73 65 74 0a 74 68 69 73 20 76 61 72  | ,.you.might.want.to.set.this.var | 
| 1c0e0 |  69 61 62 6c 65 20 74 6f 20 60 28 5c 22 2d 2d 63    6f 6c 6f 72 3d 61 6c 77 61 79 73 5c 22 29 27 2e  | iable.to.`(\"--color=always\")'. | 
| 1c100 |  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 67 72  | "...:type.'(repeat.string)...:gr | 
| 1c120 |  6f 75 70 20 27 6c 65 64 67 65 72 2d 72 65 70 6f    72 74 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20  | oup.'ledger-report)..(defcustom. | 
| 1c140 |  6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d 61 75    74 6f 2d 77 69 64 74 68 20 74 0a 20 20 22 57 68  | ledger-report-auto-width.t..."Wh | 
| 1c160 |  65 6e 20 6e 6f 6e 2d 6e 69 6c 2c 20 74 65 6c 6c    20 6c 65 64 67 65 72 20 61 62 6f 75 74 20 74 68  | en.non-nil,.tell.ledger.about.th | 
| 1c180 |  65 20 77 69 64 74 68 20 6f 66 20 74 68 65 20 72    65 70 6f 72 74 20 77 69 6e 64 6f 77 2e 22 0a 20  | e.width.of.the.report.window.".. | 
| 1c1a0 |  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 65 72 73 69  | .:type.'boolean...:package-versi | 
| 1c1c0 |  6f 6e 20 27 28 6c 65 64 67 65 72 2d 6d 6f 64 65    20 2e 20 22 34 2e 30 2e 30 22 29 0a 20 20 3a 67  | on.'(ledger-mode..."4.0.0")...:g | 
| 1c1e0 |  72 6f 75 70 20 27 6c 65 64 67 65 72 2d 72 65 70    6f 72 74 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d  | roup.'ledger-report)..(defcustom | 
| 1c200 |  20 6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d 75    73 65 2d 68 65 61 64 65 72 2d 6c 69 6e 65 20 6e  | .ledger-report-use-header-line.n | 
| 1c220 |  69 6c 0a 20 20 22 49 66 20 6e 6f 6e 2d 6e 69 6c    2c 20 69 6e 64 69 63 61 74 65 20 72 65 70 6f 72  | il..."If.non-nil,.indicate.repor | 
| 1c240 |  74 20 6e 61 6d 65 2f 63 6f 6d 6d 61 6e 64 20 69    6e 20 74 68 65 20 60 68 65 61 64 65 72 2d 6c 69  | t.name/command.in.the.`header-li | 
| 1c260 |  6e 65 27 2e 0a 54 68 65 20 72 65 70 6f 72 74 20    6e 61 6d 65 2f 63 6f 6d 6d 61 6e 64 20 77 6f 6e  | ne'..The.report.name/command.won | 
| 1c280 |  27 74 20 62 65 20 70 72 69 6e 74 65 64 20 69 6e    20 74 68 65 20 62 75 66 66 65 72 2e 20 20 53 65  | 't.be.printed.in.the.buffer...Se | 
| 1c2a0 |  65 0a 60 6c 65 64 67 65 72 2d 72 65 70 6f 72 74    2d 68 65 61 64 65 72 2d 6c 69 6e 65 2d 66 6e 27  | e.`ledger-report-header-line-fn' | 
| 1c2c0 |  20 66 6f 72 20 68 6f 77 20 74 6f 20 63 75 73 74    6f 6d 69 7a 65 20 74 68 65 0a 69 6e 66 6f 72 6d  | .for.how.to.customize.the.inform | 
| 1c2e0 |  61 74 69 6f 6e 20 72 65 70 6f 72 74 65 64 2e 22    0a 20 20 3a 74 79 70 65 20 27 62 6f 6f 6c 65 61  | ation.reported."...:type.'boolea | 
| 1c300 |  6e 0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72    73 69 6f 6e 20 27 28 6c 65 64 67 65 72 2d 6d 6f  | n...:package-version.'(ledger-mo | 
| 1c320 |  64 65 20 2e 20 22 34 2e 30 2e 30 22 29 0a 20 20    3a 67 72 6f 75 70 20 27 6c 65 64 67 65 72 2d 72  | de..."4.0.0")...:group.'ledger-r | 
| 1c340 |  65 70 6f 72 74 29 0a 0a 28 64 65 66 63 75 73 74    6f 6d 20 6c 65 64 67 65 72 2d 72 65 70 6f 72 74  | eport)..(defcustom.ledger-report | 
| 1c360 |  2d 68 65 61 64 65 72 2d 6c 69 6e 65 2d 66 6e 20    23 27 6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d  | -header-line-fn.#'ledger-report- | 
| 1c380 |  2d 68 65 61 64 65 72 2d 66 75 6e 63 74 69 6f 6e    0a 20 20 22 45 76 61 6c 75 61 74 65 20 74 68 69  | -header-function..."Evaluate.thi | 
| 1c3a0 |  73 20 66 75 6e 63 74 69 6f 6e 20 69 6e 20 74 68    65 20 60 68 65 61 64 65 72 2d 6c 69 6e 65 27 20  | s.function.in.the.`header-line'. | 
| 1c3c0 |  6f 66 20 74 68 65 20 72 65 70 6f 72 74 20 62 75    66 66 65 72 2e 0a 60 6c 65 64 67 65 72 2d 72 65  | of.the.report.buffer..`ledger-re | 
| 1c3e0 |  70 6f 72 74 2d 75 73 65 2d 68 65 61 64 65 72 2d    6c 69 6e 65 27 20 6d 75 73 74 20 62 65 20 6e 6f  | port-use-header-line'.must.be.no | 
| 1c400 |  6e 2d 6e 69 6c 20 66 6f 72 20 74 68 69 73 20 74    6f 20 68 61 76 65 20 61 6e 79 20 65 66 66 65 63  | n-nil.for.this.to.have.any.effec | 
| 1c420 |  74 2e 22 0a 20 20 3a 74 79 70 65 20 27 66 75 6e    63 74 69 6f 6e 0a 20 20 3a 70 61 63 6b 61 67 65  | t."...:type.'function...:package | 
| 1c440 |  2d 76 65 72 73 69 6f 6e 20 27 28 6c 65 64 67 65    72 2d 6d 6f 64 65 20 2e 20 22 34 2e 30 2e 30 22  | -version.'(ledger-mode..."4.0.0" | 
| 1c460 |  29 0a 20 20 3a 67 72 6f 75 70 20 27 6c 65 64 67    65 72 2d 72 65 70 6f 72 74 29 0a 0a 28 64 65 66  | )...:group.'ledger-report)..(def | 
| 1c480 |  63 75 73 74 6f 6d 20 6c 65 64 67 65 72 2d 72 65    70 6f 72 74 2d 72 65 73 69 7a 65 2d 77 69 6e 64  | custom.ledger-report-resize-wind | 
| 1c4a0 |  6f 77 20 74 0a 20 20 22 49 66 20 6e 6f 6e 2d 6e    69 6c 2c 20 72 65 73 69 7a 65 20 74 68 65 20 72  | ow.t..."If.non-nil,.resize.the.r | 
| 1c4c0 |  65 70 6f 72 74 20 77 69 6e 64 6f 77 2e 0a 43 61    6c 6c 73 20 60 73 68 72 69 6e 6b 2d 77 69 6e 64  | eport.window..Calls.`shrink-wind | 
| 1c4e0 |  6f 77 2d 69 66 2d 6c 61 72 67 65 72 2d 74 68 61    6e 2d 62 75 66 66 65 72 27 2e 22 0a 20 20 3a 74  | ow-if-larger-than-buffer'."...:t | 
| 1c500 |  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 65 72 73 69 6f 6e 20  | ype.'boolean...:package-version. | 
| 1c520 |  27 28 6c 65 64 67 65 72 2d 6d 6f 64 65 20 2e 20    22 34 2e 30 2e 30 22 29 0a 20 20 3a 67 72 6f 75  | '(ledger-mode..."4.0.0")...:grou | 
| 1c540 |  70 20 27 6c 65 64 67 65 72 2d 72 65 70 6f 72 74    29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6c 65  | p.'ledger-report)..(defcustom.le | 
| 1c560 |  64 67 65 72 2d 72 65 70 6f 72 74 2d 75 73 65 2d    73 74 72 69 63 74 20 6e 69 6c 0a 20 20 22 57 68  | dger-report-use-strict.nil..."Wh | 
| 1c580 |  65 6e 20 6e 6f 6e 2d 6e 69 6c 2c 20 60 6c 65 64    67 65 72 2d 6d 6f 64 65 27 20 77 69 6c 6c 20 75  | en.non-nil,.`ledger-mode'.will.u | 
| 1c5a0 |  73 65 20 2d 2d 73 74 72 69 63 74 20 77 68 65 6e    20 72 75 6e 6e 69 6e 67 20 72 65 70 6f 72 74 73  | se.--strict.when.running.reports | 
| 1c5c0 |  3f 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 | 
| 1c5e0 |  65 72 73 69 6f 6e 20 27 28 6c 65 64 67 65 72 2d    6d 6f 64 65 20 2e 20 22 34 2e 30 2e 30 22 29 0a  | ersion.'(ledger-mode..."4.0.0"). | 
| 1c600 |  20 20 3a 67 72 6f 75 70 20 27 6c 65 64 67 65 72    2d 72 65 70 6f 72 74 29 0a 0a 28 64 65 66 63 75  | ..:group.'ledger-report)..(defcu | 
| 1c620 |  73 74 6f 6d 20 6c 65 64 67 65 72 2d 72 65 70 6f    72 74 2d 61 66 74 65 72 2d 72 65 70 6f 72 74 2d  | stom.ledger-report-after-report- | 
| 1c640 |  68 6f 6f 6b 20 6e 69 6c 0a 20 20 22 48 6f 6f 6b    20 72 75 6e 20 61 66 74 65 72 20 60 6c 65 64 67  | hook.nil..."Hook.run.after.`ledg | 
| 1c660 |  65 72 2d 72 65 70 6f 72 74 27 20 68 61 73 20 63    72 65 61 74 65 64 20 74 68 65 20 62 75 66 66 65  | er-report'.has.created.the.buffe | 
| 1c680 |  72 20 61 6e 64 20 72 65 70 6f 72 74 2e 22 0a 20    20 3a 74 79 70 65 20 27 62 6f 6f 6c 65 61 6e 0a  | r.and.report."...:type.'boolean. | 
| 1c6a0 |  20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69    6f 6e 20 27 28 6c 65 64 67 65 72 2d 6d 6f 64 65  | ..:package-version.'(ledger-mode | 
| 1c6c0 |  20 2e 20 22 34 2e 30 2e 30 22 29 0a 20 20 3a 67    72 6f 75 70 20 27 6c 65 64 67 65 72 2d 72 65 70  | ..."4.0.0")...:group.'ledger-rep | 
| 1c6e0 |  6f 72 74 29 0a 0a 28 64 65 66 76 61 72 20 6c 65    64 67 65 72 2d 72 65 70 6f 72 74 2d 62 75 66 66  | ort)..(defvar.ledger-report-buff | 
| 1c700 |  65 72 2d 6e 61 6d 65 20 22 2a 4c 65 64 67 65 72    20 52 65 70 6f 72 74 2a 22 29 0a 0a 28 64 65 66  | er-name."*Ledger.Report*")..(def | 
| 1c720 |  76 61 72 2d 6c 6f 63 61 6c 20 6c 65 64 67 65 72    2d 72 65 70 6f 72 74 2d 6e 61 6d 65 20 6e 69 6c  | var-local.ledger-report-name.nil | 
| 1c740 |  29 0a 28 64 65 66 76 61 72 2d 6c 6f 63 61 6c 20    6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d 63 6d  | ).(defvar-local.ledger-report-cm | 
| 1c760 |  64 20 6e 69 6c 29 0a 28 64 65 66 76 61 72 2d 6c    6f 63 61 6c 20 6c 65 64 67 65 72 2d 72 65 70 6f  | d.nil).(defvar-local.ledger-repo | 
| 1c780 |  72 74 2d 73 61 76 65 64 20 6e 69 6c 29 0a 28 64    65 66 76 61 72 2d 6c 6f 63 61 6c 20 6c 65 64 67  | rt-saved.nil).(defvar-local.ledg | 
| 1c7a0 |  65 72 2d 72 65 70 6f 72 74 2d 63 75 72 72 65 6e    74 2d 6d 6f 6e 74 68 20 6e 69 6c 29 0a 28 64 65  | er-report-current-month.nil).(de | 
| 1c7c0 |  66 76 61 72 2d 6c 6f 63 61 6c 20 6c 65 64 67 65    72 2d 72 65 70 6f 72 74 2d 69 73 2d 72 65 76 65  | fvar-local.ledger-report-is-reve | 
| 1c7e0 |  72 73 65 64 20 6e 69 6c 29 0a 28 64 65 66 76 61    72 2d 6c 6f 63 61 6c 20 6c 65 64 67 65 72 2d 72  | rsed.nil).(defvar-local.ledger-r | 
| 1c800 |  65 70 6f 72 74 2d 63 75 72 73 6f 72 2d 6c 69 6e    65 2d 6e 75 6d 62 65 72 20 6e 69 6c 29 0a 28 64  | eport-cursor-line-number.nil).(d | 
| 1c820 |  65 66 76 61 72 2d 6c 6f 63 61 6c 20 6c 65 64 67    65 72 2d 72 65 70 6f 72 74 2d 6c 65 64 67 65 72  | efvar-local.ledger-report-ledger | 
| 1c840 |  2d 62 75 66 20 6e 69 6c 29 0a 28 64 65 66 76 61    72 2d 6c 6f 63 61 6c 20 6c 65 64 67 65 72 2d 6d  | -buf.nil).(defvar-local.ledger-m | 
| 1c860 |  61 73 74 65 72 2d 66 69 6c 65 20 6e 69 6c 0a 20    20 22 54 68 65 20 6d 61 73 74 65 72 20 66 69 6c  | aster-file.nil..."The.master.fil | 
| 1c880 |  65 20 66 6f 72 20 74 68 65 20 63 75 72 72 65 6e    74 20 62 75 66 66 65 72 2e 0a 53 65 65 20 64 6f  | e.for.the.current.buffer..See.do | 
| 1c8a0 |  63 75 6d 65 6e 74 61 74 69 6f 6e 20 66 6f 72 20    74 68 65 20 66 75 6e 63 74 69 6f 6e 20 60 6c 65  | cumentation.for.the.function.`le | 
| 1c8c0 |  64 67 65 72 2d 6d 61 73 74 65 72 2d 66 69 6c 65    27 22 29 0a 0a 28 64 65 66 76 61 72 20 6c 65 64  | dger-master-file'")..(defvar.led | 
| 1c8e0 |  67 65 72 2d 72 65 70 6f 72 74 2d 6e 61 6d 65 2d    70 72 6f 6d 70 74 2d 68 69 73 74 6f 72 79 20 6e  | ger-report-name-prompt-history.n | 
| 1c900 |  69 6c 29 0a 28 64 65 66 76 61 72 20 6c 65 64 67    65 72 2d 72 65 70 6f 72 74 2d 63 6d 64 2d 70 72  | il).(defvar.ledger-report-cmd-pr | 
| 1c920 |  6f 6d 70 74 2d 68 69 73 74 6f 72 79 20 6e 69 6c    29 0a 28 64 65 66 76 61 72 20 6c 65 64 67 65 72  | ompt-history.nil).(defvar.ledger | 
| 1c940 |  2d 6d 69 6e 69 62 75 66 66 65 72 2d 68 69 73 74    6f 72 79 20 6e 69 6c 29 0a 28 64 65 66 76 61 72  | -minibuffer-history.nil).(defvar | 
| 1c960 |  20 6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d 6d    6f 64 65 2d 61 62 62 72 65 76 2d 74 61 62 6c 65  | .ledger-report-mode-abbrev-table | 
| 1c980 |  29 0a 0a 28 64 65 66 75 6e 20 6c 65 64 67 65 72    2d 72 65 70 6f 72 74 2d 72 65 76 65 72 73 65 2d  | )..(defun.ledger-report-reverse- | 
| 1c9a0 |  72 65 70 6f 72 74 20 28 29 0a 20 20 22 52 65 76    65 72 73 65 20 74 68 65 20 6f 72 64 65 72 20 6f  | report.()..."Reverse.the.order.o | 
| 1c9c0 |  66 20 74 68 65 20 72 65 70 6f 72 74 2e 22 0a 20    20 28 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20  | f.the.report."...(interactive).. | 
| 1c9e0 |  20 28 6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d    72 65 76 65 72 73 65 2d 6c 69 6e 65 73 29 0a 20  | .(ledger-report-reverse-lines).. | 
| 1ca00 |  20 28 73 65 74 71 20 6c 65 64 67 65 72 2d 72 65    70 6f 72 74 2d 69 73 2d 72 65 76 65 72 73 65 64  | .(setq.ledger-report-is-reversed | 
| 1ca20 |  20 28 6e 6f 74 20 6c 65 64 67 65 72 2d 72 65 70    6f 72 74 2d 69 73 2d 72 65 76 65 72 73 65 64 29  | .(not.ledger-report-is-reversed) | 
| 1ca40 |  29 29 0a 0a 28 64 65 66 75 6e 20 6c 65 64 67 65    72 2d 72 65 70 6f 72 74 2d 72 65 76 65 72 73 65  | ))..(defun.ledger-report-reverse | 
| 1ca60 |  2d 6c 69 6e 65 73 20 28 29 0a 20 20 22 52 65 76    65 72 73 65 20 74 68 65 20 6c 69 6e 65 73 20 69  | -lines.()..."Reverse.the.lines.i | 
| 1ca80 |  6e 20 74 68 65 20 6c 65 64 67 65 72 20 72 65 70    6f 72 74 20 62 75 66 66 65 72 2e 22 0a 20 20 28  | n.the.ledger.report.buffer."...( | 
| 1caa0 |  77 69 74 68 2d 73 69 6c 65 6e 74 2d 6d 6f 64 69    66 69 63 61 74 69 6f 6e 73 0a 20 20 20 20 28 67  | with-silent-modifications.....(g | 
| 1cac0 |  6f 74 6f 2d 63 68 61 72 20 28 70 6f 69 6e 74 2d    6d 69 6e 29 29 0a 20 20 20 20 28 75 6e 6c 65 73  | oto-char.(point-min)).....(unles | 
| 1cae0 |  73 20 6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d    75 73 65 2d 68 65 61 64 65 72 2d 6c 69 6e 65 0a  | s.ledger-report-use-header-line. | 
| 1cb00 |  20 20 20 20 20 20 28 66 6f 72 77 61 72 64 2d 70    61 72 61 67 72 61 70 68 29 0a 20 20 20 20 20 20  | ......(forward-paragraph)....... | 
| 1cb20 |  28 66 6f 72 77 61 72 64 2d 6c 69 6e 65 29 29 0a    20 20 20 20 28 73 61 76 65 2d 65 78 63 75 72 73  | (forward-line)).....(save-excurs | 
| 1cb40 |  69 6f 6e 0a 20 20 20 20 20 20 28 72 65 76 65 72    73 65 2d 72 65 67 69 6f 6e 20 28 70 6f 69 6e 74  | ion.......(reverse-region.(point | 
| 1cb60 |  29 20 28 70 6f 69 6e 74 2d 6d 61 78 29 29 29 29    29 0a 0a 28 64 65 66 75 6e 20 6c 65 64 67 65 72  | ).(point-max)))))..(defun.ledger | 
| 1cb80 |  2d 72 65 70 6f 72 74 2d 6d 61 79 62 65 2d 73 68    72 69 6e 6b 2d 77 69 6e 64 6f 77 20 28 29 0a 20  | -report-maybe-shrink-window.().. | 
| 1cba0 |  20 22 53 68 72 69 6e 6b 20 77 69 6e 64 6f 77 20    69 66 20 60 6c 65 64 67 65 72 2d 72 65 70 6f 72  | ."Shrink.window.if.`ledger-repor | 
| 1cbc0 |  74 2d 72 65 73 69 7a 65 2d 77 69 6e 64 6f 77 27    20 69 73 20 6e 6f 6e 2d 6e 69 6c 2e 22 0a 20 20  | t-resize-window'.is.non-nil."... | 
| 1cbe0 |  28 77 68 65 6e 20 6c 65 64 67 65 72 2d 72 65 70    6f 72 74 2d 72 65 73 69 7a 65 2d 77 69 6e 64 6f  | (when.ledger-report-resize-windo | 
| 1cc00 |  77 0a 20 20 20 20 28 73 68 72 69 6e 6b 2d 77 69    6e 64 6f 77 2d 69 66 2d 6c 61 72 67 65 72 2d 74  | w.....(shrink-window-if-larger-t | 
| 1cc20 |  68 61 6e 2d 62 75 66 66 65 72 29 29 29 0a 0a 28    64 65 66 76 61 72 20 6c 65 64 67 65 72 2d 72 65  | han-buffer)))..(defvar.ledger-re | 
| 1cc40 |  70 6f 72 74 2d 6d 6f 64 65 2d 6d 61 70 0a 20 20    28 6c 65 74 20 28 28 6d 61 70 20 28 6d 61 6b 65  | port-mode-map...(let.((map.(make | 
| 1cc60 |  2d 73 70 61 72 73 65 2d 6b 65 79 6d 61 70 29 29    29 0a 20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65  | -sparse-keymap))).....(define-ke | 
| 1cc80 |  79 20 6d 61 70 20 28 6b 62 64 20 22 72 22 29 20    23 27 6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d  | y.map.(kbd."r").#'ledger-report- | 
| 1cca0 |  72 65 64 6f 29 0a 20 20 20 20 28 64 65 66 69 6e    65 2d 6b 65 79 20 6d 61 70 20 28 6b 62 64 20 22  | redo).....(define-key.map.(kbd." | 
| 1ccc0 |  52 22 29 20 23 27 6c 65 64 67 65 72 2d 72 65 70    6f 72 74 2d 72 65 76 65 72 73 65 2d 72 65 70 6f  | R").#'ledger-report-reverse-repo | 
| 1cce0 |  72 74 29 0a 20 20 20 20 28 64 65 66 69 6e 65 2d    6b 65 79 20 6d 61 70 20 28 6b 62 64 20 22 73 22  | rt).....(define-key.map.(kbd."s" | 
| 1cd00 |  29 20 23 27 6c 65 64 67 65 72 2d 72 65 70 6f 72    74 2d 73 61 76 65 29 0a 20 20 20 20 28 64 65 66  | ).#'ledger-report-save).....(def | 
| 1cd20 |  69 6e 65 2d 6b 65 79 20 6d 61 70 20 28 6b 62 64    20 22 53 22 29 20 23 27 6c 65 64 67 65 72 2d 72  | ine-key.map.(kbd."S").#'ledger-r | 
| 1cd40 |  65 70 6f 72 74 29 0a 20 20 20 20 28 64 65 66 69    6e 65 2d 6b 65 79 20 6d 61 70 20 28 6b 62 64 20  | eport).....(define-key.map.(kbd. | 
| 1cd60 |  22 65 22 29 20 23 27 6c 65 64 67 65 72 2d 72 65    70 6f 72 74 2d 65 64 69 74 2d 72 65 70 6f 72 74  | "e").#'ledger-report-edit-report | 
| 1cd80 |  29 0a 20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65    79 20 6d 61 70 20 28 6b 62 64 20 22 45 22 29 20  | ).....(define-key.map.(kbd."E"). | 
| 1cda0 |  23 27 6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d    65 64 69 74 2d 72 65 70 6f 72 74 73 29 0a 20 20  | #'ledger-report-edit-reports)... | 
| 1cdc0 |  20 20 28 64 65 66 69 6e 65 2d 6b 65 79 20 6d 61    70 20 28 6b 62 64 20 22 71 22 29 20 23 27 6c 65  | ..(define-key.map.(kbd."q").#'le | 
| 1cde0 |  64 67 65 72 2d 72 65 70 6f 72 74 2d 71 75 69 74    29 0a 20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65  | dger-report-quit).....(define-ke | 
| 1ce00 |  79 20 6d 61 70 20 28 6b 62 64 20 22 43 2d 63 20    43 2d 6c 20 43 2d 72 22 29 20 23 27 6c 65 64 67  | y.map.(kbd."C-c.C-l.C-r").#'ledg | 
| 1ce20 |  65 72 2d 72 65 70 6f 72 74 2d 72 65 64 6f 29 0a    20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65 79 20  | er-report-redo).....(define-key. | 
| 1ce40 |  6d 61 70 20 28 6b 62 64 20 22 43 2d 63 20 43 2d    6c 20 43 2d 53 2d 73 22 29 20 23 27 6c 65 64 67  | map.(kbd."C-c.C-l.C-S-s").#'ledg | 
| 1ce60 |  65 72 2d 72 65 70 6f 72 74 2d 73 61 76 65 29 0a    20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65 79 20  | er-report-save).....(define-key. | 
| 1ce80 |  6d 61 70 20 28 6b 62 64 20 22 43 2d 63 20 43 2d    6c 20 43 2d 65 22 29 20 23 27 6c 65 64 67 65 72  | map.(kbd."C-c.C-l.C-e").#'ledger | 
| 1cea0 |  2d 72 65 70 6f 72 74 2d 65 64 69 74 2d 72 65 70    6f 72 74 29 0a 20 20 20 20 28 64 65 66 69 6e 65  | -report-edit-report).....(define | 
| 1cec0 |  2d 6b 65 79 20 6d 61 70 20 28 6b 62 64 20 22 43    2d 63 20 43 2d 6f 20 43 2d 72 22 29 20 23 27 6c  | -key.map.(kbd."C-c.C-o.C-r").#'l | 
| 1cee0 |  65 64 67 65 72 2d 72 65 70 6f 72 74 29 0a 20 20    20 20 28 64 65 66 69 6e 65 2d 6b 65 79 20 6d 61  | edger-report).....(define-key.ma | 
| 1cf00 |  70 20 28 6b 62 64 20 22 4d 2d 70 22 29 20 23 27    6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d 70 72  | p.(kbd."M-p").#'ledger-report-pr | 
| 1cf20 |  65 76 69 6f 75 73 2d 6d 6f 6e 74 68 29 0a 20 20    20 20 28 64 65 66 69 6e 65 2d 6b 65 79 20 6d 61  | evious-month).....(define-key.ma | 
| 1cf40 |  70 20 28 6b 62 64 20 22 4d 2d 6e 22 29 20 23 27    6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d 6e 65  | p.(kbd."M-n").#'ledger-report-ne | 
| 1cf60 |  78 74 2d 6d 6f 6e 74 68 29 0a 20 20 20 20 28 64    65 66 69 6e 65 2d 6b 65 79 20 6d 61 70 20 28 6b  | xt-month).....(define-key.map.(k | 
| 1cf80 |  62 64 20 22 24 22 29 20 23 27 6c 65 64 67 65 72    2d 72 65 70 6f 72 74 2d 74 6f 67 67 6c 65 2d 64  | bd."$").#'ledger-report-toggle-d | 
| 1cfa0 |  65 66 61 75 6c 74 2d 63 6f 6d 6d 6f 64 69 74 79    29 0a 20 20 20 20 6d 61 70 29 0a 20 20 22 4b 65  | efault-commodity).....map)..."Ke | 
| 1cfc0 |  79 6d 61 70 20 66 6f 72 20 60 6c 65 64 67 65 72    2d 72 65 70 6f 72 74 2d 6d 6f 64 65 27 2e 22 29  | ymap.for.`ledger-report-mode'.") | 
| 1cfe0 |  0a 0a 28 65 61 73 79 2d 6d 65 6e 75 2d 64 65 66    69 6e 65 20 6c 65 64 67 65 72 2d 72 65 70 6f 72  | ..(easy-menu-define.ledger-repor | 
| 1d000 |  74 2d 6d 6f 64 65 2d 6d 65 6e 75 20 6c 65 64 67    65 72 2d 72 65 70 6f 72 74 2d 6d 6f 64 65 2d 6d  | t-mode-menu.ledger-report-mode-m | 
| 1d020 |  61 70 0a 20 20 22 4c 65 64 67 65 72 20 72 65 70    6f 72 74 20 6d 65 6e 75 2e 22 0a 20 20 27 28 22  | ap..."Ledger.report.menu."...'(" | 
| 1d040 |  52 65 70 6f 72 74 73 22 0a 20 20 20 20 5b 22 53    65 6c 65 63 74 20 52 65 70 6f 72 74 22 20 6c 65  | Reports".....["Select.Report".le | 
| 1d060 |  64 67 65 72 2d 72 65 70 6f 72 74 5d 0a 20 20 20    20 5b 22 53 61 76 65 20 52 65 70 6f 72 74 22 20  | dger-report].....["Save.Report". | 
| 1d080 |  6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d 73 61    76 65 5d 0a 20 20 20 20 5b 22 45 64 69 74 20 43  | ledger-report-save].....["Edit.C | 
| 1d0a0 |  75 72 72 65 6e 74 20 52 65 70 6f 72 74 22 20 6c    65 64 67 65 72 2d 72 65 70 6f 72 74 2d 65 64 69  | urrent.Report".ledger-report-edi | 
| 1d0c0 |  74 2d 72 65 70 6f 72 74 5d 0a 20 20 20 20 5b 22    45 64 69 74 20 41 6c 6c 20 52 65 70 6f 72 74 73  | t-report].....["Edit.All.Reports | 
| 1d0e0 |  22 20 6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d    65 64 69 74 2d 72 65 70 6f 72 74 73 5d 0a 20 20  | ".ledger-report-edit-reports]... | 
| 1d100 |  20 20 5b 22 52 65 2d 72 75 6e 20 52 65 70 6f 72    74 22 20 6c 65 64 67 65 72 2d 72 65 70 6f 72 74  | ..["Re-run.Report".ledger-report | 
| 1d120 |  2d 72 65 64 6f 5d 0a 20 20 20 20 22 2d 2d 2d 22    0a 20 20 20 20 5b 22 52 65 76 65 72 73 65 20 72  | -redo]....."---".....["Reverse.r | 
| 1d140 |  65 70 6f 72 74 20 6f 72 64 65 72 22 20 6c 65 64    67 65 72 2d 72 65 70 6f 72 74 2d 72 65 76 65 72  | eport.order".ledger-report-rever | 
| 1d160 |  73 65 2d 72 65 70 6f 72 74 5d 0a 20 20 20 20 22    2d 2d 2d 22 0a 20 20 20 20 5b 22 53 63 72 6f 6c  | se-report]....."---".....["Scrol | 
| 1d180 |  6c 20 55 70 22 20 73 63 72 6f 6c 6c 2d 75 70 5d    0a 20 20 20 20 5b 22 56 69 73 69 74 20 53 6f 75  | l.Up".scroll-up].....["Visit.Sou | 
| 1d1a0 |  72 63 65 22 20 6c 65 64 67 65 72 2d 72 65 70 6f    72 74 2d 76 69 73 69 74 2d 73 6f 75 72 63 65 5d  | rce".ledger-report-visit-source] | 
| 1d1c0 |  0a 20 20 20 20 5b 22 53 63 72 6f 6c 6c 20 44 6f    77 6e 22 20 73 63 72 6f 6c 6c 2d 64 6f 77 6e 5d  | .....["Scroll.Down".scroll-down] | 
| 1d1e0 |  0a 20 20 20 20 22 2d 2d 2d 22 0a 20 20 20 20 5b    22 51 75 69 74 22 20 6c 65 64 67 65 72 2d 72 65  | ....."---".....["Quit".ledger-re | 
| 1d200 |  70 6f 72 74 2d 71 75 69 74 5d 0a 20 20 20 20 29    29 0a 0a 28 64 65 66 69 6e 65 2d 64 65 72 69 76  | port-quit].....))..(define-deriv | 
| 1d220 |  65 64 2d 6d 6f 64 65 20 6c 65 64 67 65 72 2d 72    65 70 6f 72 74 2d 6d 6f 64 65 20 73 70 65 63 69  | ed-mode.ledger-report-mode.speci | 
| 1d240 |  61 6c 2d 6d 6f 64 65 20 22 4c 65 64 67 65 72 2d    52 65 70 6f 72 74 22 0a 20 20 22 41 20 6d 6f 64  | al-mode."Ledger-Report"..."A.mod | 
| 1d260 |  65 20 66 6f 72 20 76 69 65 77 69 6e 67 20 6c 65    64 67 65 72 20 72 65 70 6f 72 74 73 2e 22 0a 20  | e.for.viewing.ledger.reports.".. | 
| 1d280 |  20 28 73 65 74 71 2d 6c 6f 63 61 6c 20 72 65 76    65 72 74 2d 62 75 66 66 65 72 2d 66 75 6e 63 74  | .(setq-local.revert-buffer-funct | 
| 1d2a0 |  69 6f 6e 20 23 27 6c 65 64 67 65 72 2d 72 65 70    6f 72 74 2d 72 65 64 6f 29 0a 20 20 28 68 61 63  | ion.#'ledger-report-redo)...(hac | 
| 1d2c0 |  6b 2d 64 69 72 2d 6c 6f 63 61 6c 2d 76 61 72 69    61 62 6c 65 73 2d 6e 6f 6e 2d 66 69 6c 65 2d 62  | k-dir-local-variables-non-file-b | 
| 1d2e0 |  75 66 66 65 72 29 29 0a 0a 28 64 65 66 63 6f 6e    73 74 20 6c 65 64 67 65 72 2d 72 65 70 6f 72 74  | uffer))..(defconst.ledger-report | 
| 1d300 |  2d 2d 65 78 74 72 61 2d 61 72 67 73 2d 6d 61 72    6b 65 72 20 22 5b 5b 6c 65 64 67 65 72 2d 6d 6f  | --extra-args-marker."[[ledger-mo | 
| 1d320 |  64 65 2d 66 6c 61 67 73 5d 5d 22 29 0a 0a 28 64    65 66 75 6e 20 6c 65 64 67 65 72 2d 72 65 70 6f  | de-flags]]")..(defun.ledger-repo | 
| 1d340 |  72 74 2d 62 69 6e 61 72 79 2d 66 6f 72 6d 61 74    2d 73 70 65 63 69 66 69 65 72 20 28 29 0a 20 20  | rt-binary-format-specifier.()... | 
| 1d360 |  22 52 65 74 75 72 6e 20 74 68 65 20 70 61 74 68    20 74 6f 20 6c 65 64 67 65 72 2c 20 70 6c 75 73  | "Return.the.path.to.ledger,.plus | 
| 1d380 |  20 61 20 6d 61 72 6b 65 72 20 66 6f 72 20 65 78    74 72 61 20 61 72 67 75 6d 65 6e 74 73 2e 22 0a  | .a.marker.for.extra.arguments.". | 
| 1d3a0 |  20 20 28 6c 69 73 74 20 28 73 68 65 6c 6c 2d 71    75 6f 74 65 2d 61 72 67 75 6d 65 6e 74 20 6c 65  | ..(list.(shell-quote-argument.le | 
| 1d3c0 |  64 67 65 72 2d 62 69 6e 61 72 79 2d 70 61 74 68    29 0a 20 20 20 20 20 20 20 20 6c 65 64 67 65 72  | dger-binary-path).........ledger | 
| 1d3e0 |  2d 72 65 70 6f 72 74 2d 2d 65 78 74 72 61 2d 61    72 67 73 2d 6d 61 72 6b 65 72 29 29 0a 0a 28 64  | -report--extra-args-marker))..(d | 
| 1d400 |  65 66 75 6e 20 6c 65 64 67 65 72 2d 72 65 70 6f    72 74 2d 74 61 67 6e 61 6d 65 2d 66 6f 72 6d 61  | efun.ledger-report-tagname-forma | 
| 1d420 |  74 2d 73 70 65 63 69 66 69 65 72 20 28 29 0a 20    20 22 52 65 74 75 72 6e 20 61 20 76 61 6c 69 64  | t-specifier.()..."Return.a.valid | 
| 1d440 |  20 6d 65 74 61 2d 64 61 74 61 20 74 61 67 20 6e    61 6d 65 2e 22 0a 20 20 3b 3b 20 49 74 20 69 73  | .meta-data.tag.name."...;;.It.is | 
| 1d460 |  20 69 6e 74 65 6e 64 65 64 20 63 6f 6d 70 6c 65    74 69 6f 6e 20 73 68 6f 75 6c 64 20 62 65 20 61  | .intended.completion.should.be.a | 
| 1d480 |  76 61 69 6c 61 62 6c 65 20 6f 6e 20 65 78 69 73    74 69 6e 67 20 74 61 67 0a 20 20 3b 3b 20 6e 61  | vailable.on.existing.tag...;;.na | 
| 1d4a0 |  6d 65 73 2c 20 62 75 74 20 69 74 20 72 65 6d 61    69 6e 73 20 74 6f 20 62 65 20 69 6d 70 6c 65 6d  | mes,.but.it.remains.to.be.implem | 
| 1d4c0 |  65 6e 74 65 64 2e 0a 20 20 28 6c 65 64 67 65 72    2d 72 65 61 64 2d 73 74 72 69 6e 67 2d 77 69 74  | ented....(ledger-read-string-wit | 
| 1d4e0 |  68 2d 64 65 66 61 75 6c 74 20 22 54 61 67 20 4e    61 6d 65 22 20 6e 69 6c 29 29 0a 0a 28 64 65 66  | h-default."Tag.Name".nil))..(def | 
| 1d500 |  75 6e 20 6c 65 64 67 65 72 2d 72 65 70 6f 72 74    2d 74 61 67 76 61 6c 75 65 2d 66 6f 72 6d 61 74  | un.ledger-report-tagvalue-format | 
| 1d520 |  2d 73 70 65 63 69 66 69 65 72 20 28 29 0a 20 20    22 52 65 74 75 72 6e 20 61 20 76 61 6c 69 64 20  | -specifier.()..."Return.a.valid. | 
| 1d540 |  6d 65 74 61 2d 64 61 74 61 20 74 61 67 20 6e 61    6d 65 2e 22 0a 20 20 3b 3b 20 49 74 20 69 73 20  | meta-data.tag.name."...;;.It.is. | 
| 1d560 |  69 6e 74 65 6e 64 65 64 20 63 6f 6d 70 6c 65 74    69 6f 6e 20 73 68 6f 75 6c 64 20 62 65 20 61 76  | intended.completion.should.be.av | 
| 1d580 |  61 69 6c 61 62 6c 65 20 6f 6e 20 65 78 69 73 74    69 6e 67 20 74 61 67 0a 20 20 3b 3b 20 76 61 6c  | ailable.on.existing.tag...;;.val | 
| 1d5a0 |  75 65 73 2c 20 62 75 74 20 69 74 20 72 65 6d 61    69 6e 73 20 74 6f 20 62 65 20 69 6d 70 6c 65 6d  | ues,.but.it.remains.to.be.implem | 
| 1d5c0 |  65 6e 74 65 64 2e 0a 20 20 28 6c 65 64 67 65 72    2d 72 65 61 64 2d 73 74 72 69 6e 67 2d 77 69 74  | ented....(ledger-read-string-wit | 
| 1d5e0 |  68 2d 64 65 66 61 75 6c 74 20 22 54 61 67 20 56    61 6c 75 65 22 20 6e 69 6c 29 29 0a 0a 28 64 65  | h-default."Tag.Value".nil))..(de | 
| 1d600 |  66 75 6e 20 6c 65 64 67 65 72 2d 72 65 70 6f 72    74 2d 72 65 61 64 2d 6e 61 6d 65 20 28 29 0a 20  | fun.ledger-report-read-name.().. | 
| 1d620 |  20 22 52 65 61 64 20 74 68 65 20 6e 61 6d 65 20    6f 66 20 61 20 6c 65 64 67 65 72 20 72 65 70 6f  | ."Read.the.name.of.a.ledger.repo | 
| 1d640 |  72 74 20 74 6f 20 75 73 65 2c 20 77 69 74 68 20    63 6f 6d 70 6c 65 74 69 6f 6e 2e 0a 0a 54 68 65  | rt.to.use,.with.completion...The | 
| 1d660 |  20 65 6d 70 74 79 20 73 74 72 69 6e 67 20 61 6e    64 20 75 6e 6b 6e 6f 77 6e 20 6e 61 6d 65 73 20  | .empty.string.and.unknown.names. | 
| 1d680 |  61 72 65 20 61 6c 6c 6f 77 65 64 2e 22 0a 20 20    28 63 6f 6d 70 6c 65 74 69 6e 67 2d 72 65 61 64  | are.allowed."...(completing-read | 
| 1d6a0 |  20 22 52 65 70 6f 72 74 20 6e 61 6d 65 3a 20 22    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ."Report.name:."................ | 
| 1d6c0 |  20 20 20 20 6c 65 64 67 65 72 2d 72 65 70 6f 72    74 73 20 6e 69 6c 20 6e 69 6c 20 6e 69 6c 0a 20  | ....ledger-reports.nil.nil.nil.. | 
| 1d6e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 27 6c 65 64 67 65 72 2d 72 65 70 6f 72 74  | ..................'ledger-report | 
| 1d700 |  2d 6e 61 6d 65 2d 70 72 6f 6d 70 74 2d 68 69 73    74 6f 72 79 20 6e 69 6c 29 29 0a 0a 28 64 65 66  | -name-prompt-history.nil))..(def | 
| 1d720 |  75 6e 20 6c 65 64 67 65 72 2d 72 65 70 6f 72 74    20 28 72 65 70 6f 72 74 2d 6e 61 6d 65 20 65 64  | un.ledger-report.(report-name.ed | 
| 1d740 |  69 74 29 0a 20 20 22 52 75 6e 20 61 20 75 73 65    72 2d 73 70 65 63 69 66 69 65 64 20 72 65 70 6f  | it)..."Run.a.user-specified.repo | 
| 1d760 |  72 74 20 66 72 6f 6d 20 60 6c 65 64 67 65 72 2d    72 65 70 6f 72 74 73 27 2e 0a 0a 50 72 6f 6d 70  | rt.from.`ledger-reports'...Promp | 
| 1d780 |  74 73 20 74 68 65 20 75 73 65 72 20 66 6f 72 20    74 68 65 20 52 45 50 4f 52 54 2d 4e 41 4d 45 20  | ts.the.user.for.the.REPORT-NAME. | 
| 1d7a0 |  6f 66 20 74 68 65 20 72 65 70 6f 72 74 20 74 6f    20 72 75 6e 20 6f 72 0a 45 44 49 54 2e 20 20 49  | of.the.report.to.run.or.EDIT...I | 
| 1d7c0 |  66 20 6e 6f 20 6e 61 6d 65 20 69 73 20 65 6e 74    65 72 65 64 2c 20 74 68 65 20 75 73 65 72 20 77  | f.no.name.is.entered,.the.user.w | 
| 1d7e0 |  69 6c 6c 20 62 65 20 70 72 6f 6d 70 74 65 64 20    66 6f 72 20 61 0a 63 6f 6d 6d 61 6e 64 20 6c 69  | ill.be.prompted.for.a.command.li | 
| 1d800 |  6e 65 20 74 6f 20 72 75 6e 2e 20 20 54 68 65 20    63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 73 70 65  | ne.to.run...The.command.line.spe | 
| 1d820 |  63 69 66 69 65 64 20 6f 72 20 61 73 73 6f 63 69    61 74 65 64 0a 77 69 74 68 20 74 68 65 20 73 65  | cified.or.associated.with.the.se | 
| 1d840 |  6c 65 63 74 65 64 20 72 65 70 6f 72 74 20 6e 61    6d 65 20 69 73 20 72 75 6e 20 61 6e 64 20 74 68  | lected.report.name.is.run.and.th | 
| 1d860 |  65 20 6f 75 74 70 75 74 20 69 73 20 6d 61 64 65    0a 61 76 61 69 6c 61 62 6c 65 20 69 6e 20 61 6e  | e.output.is.made.available.in.an | 
| 1d880 |  6f 74 68 65 72 20 62 75 66 66 65 72 20 66 6f 72    20 76 69 65 77 69 6e 67 2e 20 20 49 66 20 61 20  | other.buffer.for.viewing...If.a. | 
| 1d8a0 |  70 72 65 66 69 78 20 61 72 67 75 6d 65 6e 74 20    69 73 0a 67 69 76 65 6e 20 61 6e 64 20 74 68 65  | prefix.argument.is.given.and.the | 
| 1d8c0 |  20 75 73 65 72 20 73 65 6c 65 63 74 73 20 61 20    76 61 6c 69 64 20 72 65 70 6f 72 74 20 6e 61 6d  | .user.selects.a.valid.report.nam | 
| 1d8e0 |  65 2c 20 74 68 65 20 75 73 65 72 20 69 73 0a 70    72 6f 6d 70 74 65 64 20 77 69 74 68 20 74 68 65  | e,.the.user.is.prompted.with.the | 
| 1d900 |  20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 63    6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 66 6f 72 20  | .corresponding.command.line.for. | 
| 1d920 |  65 64 69 74 69 6e 67 20 62 65 66 6f 72 65 0a 74    68 65 20 63 6f 6d 6d 61 6e 64 20 69 73 20 72 75  | editing.before.the.command.is.ru | 
| 1d940 |  6e 2e 0a 0a 54 68 65 20 6f 75 74 70 75 74 20 62    75 66 66 65 72 20 77 69 6c 6c 20 62 65 20 69 6e  | n...The.output.buffer.will.be.in | 
| 1d960 |  20 60 6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d    6d 6f 64 65 27 2c 20 77 68 69 63 68 20 64 65 66  | .`ledger-report-mode',.which.def | 
| 1d980 |  69 6e 65 73 0a 63 6f 6d 6d 61 6e 64 73 20 66 6f    72 20 73 61 76 69 6e 67 20 61 20 6e 65 77 20 6e  | ines.commands.for.saving.a.new.n | 
| 1d9a0 |  61 6d 65 64 20 72 65 70 6f 72 74 20 62 61 73 65    64 20 6f 6e 20 74 68 65 20 63 6f 6d 6d 61 6e 64  | amed.report.based.on.the.command | 
| 1d9c0 |  20 6c 69 6e 65 0a 75 73 65 64 20 74 6f 20 67 65    6e 65 72 61 74 65 20 74 68 65 20 62 75 66 66 65  | .line.used.to.generate.the.buffe | 
| 1d9e0 |  72 2c 20 6e 61 76 69 67 61 74 69 6e 67 20 74 68    65 20 62 75 66 66 65 72 2c 20 65 74 63 2e 22 0a  | r,.navigating.the.buffer,.etc.". | 
| 1da00 |  20 20 28 69 6e 74 65 72 61 63 74 69 76 65 0a 20    20 20 28 70 72 6f 67 6e 0a 20 20 20 20 20 28 77  | ..(interactive....(progn......(w | 
| 1da20 |  68 65 6e 20 28 61 6e 64 20 28 62 75 66 66 65 72    2d 6d 6f 64 69 66 69 65 64 2d 70 29 0a 20 20 20  | hen.(and.(buffer-modified-p).... | 
| 1da40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 79 2d    6f 72 2d 6e 2d 70 20 22 42 75 66 66 65 72 20 6d  | .............(y-or-n-p."Buffer.m | 
| 1da60 |  6f 64 69 66 69 65 64 2c 20 73 61 76 65 20 69 74    3f 20 22 29 29 0a 20 20 20 20 20 20 20 28 73 61  | odified,.save.it?."))........(sa | 
| 1da80 |  76 65 2d 62 75 66 66 65 72 29 29 0a 20 20 20 20    20 28 6c 65 74 20 28 28 72 6e 61 6d 65 20 28 6c  | ve-buffer))......(let.((rname.(l | 
| 1daa0 |  65 64 67 65 72 2d 72 65 70 6f 72 74 2d 72 65 61    64 2d 6e 61 6d 65 29 29 0a 20 20 20 20 20 20 20  | edger-report-read-name))........ | 
| 1dac0 |  20 20 20 20 28 65 64 69 74 20 28 6e 6f 74 20 28    6e 75 6c 6c 20 63 75 72 72 65 6e 74 2d 70 72 65  | ....(edit.(not.(null.current-pre | 
| 1dae0 |  66 69 78 2d 61 72 67 29 29 29 29 0a 20 20 20 20    20 20 20 28 6c 69 73 74 20 72 6e 61 6d 65 20 65  | fix-arg))))........(list.rname.e | 
| 1db00 |  64 69 74 29 29 29 29 0a 20 20 28 6c 65 74 2a 20    28 28 66 69 6c 65 20 28 6c 65 64 67 65 72 2d 6d  | dit))))...(let*.((file.(ledger-m | 
| 1db20 |  61 73 74 65 72 2d 66 69 6c 65 29 29 0a 20 20 20    20 20 20 20 20 20 28 62 75 66 20 28 66 69 6e 64  | aster-file))..........(buf.(find | 
| 1db40 |  2d 66 69 6c 65 2d 6e 6f 73 65 6c 65 63 74 20 66    69 6c 65 29 29 29 0a 20 20 20 20 28 77 69 74 68  | -file-noselect.file))).....(with | 
| 1db60 |  2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 0a    20 20 20 20 20 20 20 20 28 70 6f 70 2d 74 6f 2d  | -current-buffer.........(pop-to- | 
| 1db80 |  62 75 66 66 65 72 20 28 67 65 74 2d 62 75 66 66    65 72 2d 63 72 65 61 74 65 20 6c 65 64 67 65 72  | buffer.(get-buffer-create.ledger | 
| 1dba0 |  2d 72 65 70 6f 72 74 2d 62 75 66 66 65 72 2d 6e    61 6d 65 29 29 0a 20 20 20 20 20 20 28 77 69 74  | -report-buffer-name)).......(wit | 
| 1dbc0 |  68 2d 73 69 6c 65 6e 74 2d 6d 6f 64 69 66 69 63    61 74 69 6f 6e 73 0a 20 20 20 20 20 20 20 20 28  | h-silent-modifications.........( | 
| 1dbe0 |  65 72 61 73 65 2d 62 75 66 66 65 72 29 0a 20 20    20 20 20 20 20 20 28 6c 65 64 67 65 72 2d 72 65  | erase-buffer).........(ledger-re | 
| 1dc00 |  70 6f 72 74 2d 6d 6f 64 65 29 0a 20 20 20 20 20    20 20 20 28 73 65 74 71 20 6c 65 64 67 65 72 2d  | port-mode).........(setq.ledger- | 
| 1dc20 |  72 65 70 6f 72 74 2d 73 61 76 65 64 20 6e 69 6c    29 0a 20 20 20 20 20 20 20 20 28 73 65 74 71 20  | report-saved.nil).........(setq. | 
| 1dc40 |  6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d 6c 65    64 67 65 72 2d 62 75 66 20 62 75 66 29 0a 20 20  | ledger-report-ledger-buf.buf)... | 
| 1dc60 |  20 20 20 20 20 20 28 73 65 74 71 20 6c 65 64 67    65 72 2d 72 65 70 6f 72 74 2d 6e 61 6d 65 20 72  | ......(setq.ledger-report-name.r | 
| 1dc80 |  65 70 6f 72 74 2d 6e 61 6d 65 29 0a 20 20 20 20    20 20 20 20 28 73 65 74 71 20 6c 65 64 67 65 72  | eport-name).........(setq.ledger | 
| 1dca0 |  2d 72 65 70 6f 72 74 2d 69 73 2d 72 65 76 65 72    73 65 64 20 6e 69 6c 29 0a 20 20 20 20 20 20 20  | -report-is-reversed.nil)........ | 
| 1dcc0 |  20 28 73 65 74 71 20 6c 65 64 67 65 72 2d 72 65    70 6f 72 74 2d 63 75 72 72 65 6e 74 2d 6d 6f 6e  | .(setq.ledger-report-current-mon | 
| 1dce0 |  74 68 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20    28 73 65 74 71 20 6c 65 64 67 65 72 2d 6d 61 73  | th.nil).........(setq.ledger-mas | 
| 1dd00 |  74 65 72 2d 66 69 6c 65 20 66 69 6c 65 29 0a 20    20 20 20 20 20 20 20 28 6c 65 64 67 65 72 2d 64  | ter-file.file).........(ledger-d | 
| 1dd20 |  6f 2d 72 65 70 6f 72 74 20 28 6c 65 64 67 65 72    2d 72 65 70 6f 72 74 2d 63 6d 64 20 72 65 70 6f  | o-report.(ledger-report-cmd.repo | 
| 1dd40 |  72 74 2d 6e 61 6d 65 20 65 64 69 74 29 29 29 0a    20 20 20 20 20 20 28 6c 65 64 67 65 72 2d 72 65  | rt-name.edit))).......(ledger-re | 
| 1dd60 |  70 6f 72 74 2d 6d 61 79 62 65 2d 73 68 72 69 6e    6b 2d 77 69 6e 64 6f 77 29 0a 20 20 20 20 20 20  | port-maybe-shrink-window)....... | 
| 1dd80 |  28 72 75 6e 2d 68 6f 6f 6b 73 20 27 6c 65 64 67    65 72 2d 72 65 70 6f 72 74 2d 61 66 74 65 72 2d  | (run-hooks.'ledger-report-after- | 
| 1dda0 |  72 65 70 6f 72 74 2d 68 6f 6f 6b 29 0a 20 20 20    20 20 20 28 6d 65 73 73 61 67 65 20 28 73 75 62  | report-hook).......(message.(sub | 
| 1ddc0 |  73 74 69 74 75 74 65 2d 63 6f 6d 6d 61 6e 64 2d    6b 65 79 73 20 28 63 6f 6e 63 61 74 20 22 5c 5c  | stitute-command-keys.(concat."\\ | 
| 1dde0 |  5b 6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d 71    75 69 74 5d 20 74 6f 20 71 75 69 74 3b 20 22 0a  | [ledger-report-quit].to.quit;.". | 
| 1de00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 1de20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    22 5c 5c 5b 6c 65 64 67 65 72 2d 72 65 70 6f 72  | ................"\\[ledger-repor | 
| 1de40 |  74 2d 72 65 64 6f 5d 20 74 6f 20 72 65 64 6f 3b    20 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | t-redo].to.redo;.".............. | 
| 1de60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 1de80 |  20 20 20 22 5c 5c 5b 6c 65 64 67 65 72 2d 72 65    70 6f 72 74 2d 65 64 69 74 2d 72 65 70 6f 72 74  | ..."\\[ledger-report-edit-report | 
| 1dea0 |  5d 20 74 6f 20 65 64 69 74 3b 20 22 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ].to.edit;.".................... | 
| 1dec0 |  20 20 20 20 20 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  | ............................."\\ | 
| 1dee0 |  5b 6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d 73    61 76 65 5d 20 74 6f 20 73 61 76 65 3b 20 22 0a  | [ledger-report-save].to.save;.". | 
| 1df00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 1df20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    22 5c 5c 5b 73 63 72 6f 6c 6c 2d 75 70 2d 63 6f  | ................"\\[scroll-up-co | 
| 1df40 |  6d 6d 61 6e 64 5d 20 61 6e 64 20 5c 5c 5b 73 63    72 6f 6c 6c 2d 64 6f 77 6e 2d 63 6f 6d 6d 61 6e  | mmand].and.\\[scroll-down-comman | 
| 1df60 |  64 5d 20 74 6f 20 73 63 72 6f 6c 6c 22 29 29 29    29 29 29 0a 0a 28 64 65 66 75 6e 20 6c 65 64 67  | d].to.scroll"))))))..(defun.ledg | 
| 1df80 |  65 72 2d 72 65 70 6f 72 74 2d 2d 68 65 61 64 65    72 2d 66 75 6e 63 74 69 6f 6e 20 28 29 0a 20 20  | er-report--header-function.()... | 
| 1dfa0 |  22 43 6f 6d 70 75 74 65 20 74 68 65 20 73 74 72    69 6e 67 20 74 6f 20 62 65 20 75 73 65 64 20 61  | "Compute.the.string.to.be.used.a | 
| 1dfc0 |  73 20 74 68 65 20 68 65 61 64 65 72 20 69 6e 20    74 68 65 20 60 6c 65 64 67 65 72 2d 72 65 70 6f  | s.the.header.in.the.`ledger-repo | 
| 1dfe0 |  72 74 27 20 62 75 66 66 65 72 2e 22 0a 20 20 28    66 6f 72 6d 61 74 20 22 4c 65 64 67 65 72 20 52  | rt'.buffer."...(format."Ledger.R | 
| 1e000 |  65 70 6f 72 74 3a 20 25 73 20 2d 2d 20 42 75 66    66 65 72 3a 20 25 73 20 2d 2d 20 43 6f 6d 6d 61  | eport:.%s.--.Buffer:.%s.--.Comma | 
| 1e020 |  6e 64 3a 20 25 73 22 0a 20 20 20 20 20 20 20 20    20 20 28 70 72 6f 70 65 72 74 69 7a 65 20 6c 65  | nd:.%s"...........(propertize.le | 
| 1e040 |  64 67 65 72 2d 72 65 70 6f 72 74 2d 6e 61 6d 65    20 27 66 61 63 65 20 27 66 6f 6e 74 2d 6c 6f 63  | dger-report-name.'face.'font-loc | 
| 1e060 |  6b 2d 63 6f 6e 73 74 61 6e 74 2d 66 61 63 65 29    0a 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 70  | k-constant-face)...........(prop | 
| 1e080 |  65 72 74 69 7a 65 20 28 62 75 66 66 65 72 2d 6e    61 6d 65 20 6c 65 64 67 65 72 2d 72 65 70 6f 72  | ertize.(buffer-name.ledger-repor | 
| 1e0a0 |  74 2d 6c 65 64 67 65 72 2d 62 75 66 29 20 27 66    61 63 65 20 27 66 6f 6e 74 2d 6c 6f 63 6b 2d 73  | t-ledger-buf).'face.'font-lock-s | 
| 1e0c0 |  74 72 69 6e 67 2d 66 61 63 65 29 0a 20 20 20 20    20 20 20 20 20 20 28 70 72 6f 70 65 72 74 69 7a  | tring-face)...........(propertiz | 
| 1e0e0 |  65 20 6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d    63 6d 64 20 27 66 61 63 65 20 27 66 6f 6e 74 2d  | e.ledger-report-cmd.'face.'font- | 
| 1e100 |  6c 6f 63 6b 2d 63 6f 6d 6d 65 6e 74 2d 66 61 63    65 29 29 29 0a 0a 28 64 65 66 75 6e 20 6c 65 64  | lock-comment-face)))..(defun.led | 
| 1e120 |  67 65 72 2d 72 65 70 6f 72 74 2d 6e 61 6d 65 2d    65 78 69 73 74 73 20 28 6e 61 6d 65 29 0a 20 20  | ger-report-name-exists.(name)... | 
| 1e140 |  22 43 68 65 63 6b 20 74 6f 20 73 65 65 20 69 66    20 74 68 65 20 67 69 76 65 6e 20 72 65 70 6f 72  | "Check.to.see.if.the.given.repor | 
| 1e160 |  74 20 4e 41 4d 45 20 65 78 69 73 74 73 2e 0a 0a    49 66 20 65 78 69 73 74 73 2c 20 72 65 74 75 72  | t.NAME.exists...If.exists,.retur | 
| 1e180 |  6e 73 20 74 68 65 20 6f 62 6a 65 63 74 20 6e 61    6d 69 6e 67 20 74 68 65 20 72 65 70 6f 72 74 2c  | ns.the.object.naming.the.report, | 
| 1e1a0 |  20 6f 74 68 65 72 77 69 73 65 0a 72 65 74 75 72    6e 73 20 6e 69 6c 2e 22 0a 20 20 28 75 6e 6c 65  | .otherwise.returns.nil."...(unle | 
| 1e1c0 |  73 73 20 28 73 74 72 69 6e 67 2d 65 6d 70 74 79    2d 70 20 6e 61 6d 65 29 0a 20 20 20 20 28 63 61  | ss.(string-empty-p.name).....(ca | 
| 1e1e0 |  72 20 28 61 73 73 6f 63 20 6e 61 6d 65 20 6c 65    64 67 65 72 2d 72 65 70 6f 72 74 73 29 29 29 29  | r.(assoc.name.ledger-reports)))) | 
| 1e200 |  0a 0a 28 64 65 66 75 6e 20 6c 65 64 67 65 72 2d    72 65 70 6f 72 74 73 2d 61 64 64 20 28 6e 61 6d  | ..(defun.ledger-reports-add.(nam | 
| 1e220 |  65 20 63 6d 64 29 0a 20 20 22 41 64 64 20 61 20    6e 65 77 20 72 65 70 6f 72 74 20 4e 41 4d 45 20  | e.cmd)..."Add.a.new.report.NAME. | 
| 1e240 |  61 6e 64 20 43 4d 44 20 74 6f 20 60 6c 65 64 67    65 72 2d 72 65 70 6f 72 74 73 27 2e 22 0a 20 20  | and.CMD.to.`ledger-reports'."... | 
| 1e260 |  28 73 65 74 71 20 6c 65 64 67 65 72 2d 72 65 70    6f 72 74 73 20 28 63 6f 6e 73 20 28 6c 69 73 74  | (setq.ledger-reports.(cons.(list | 
| 1e280 |  20 6e 61 6d 65 20 63 6d 64 29 20 6c 65 64 67 65    72 2d 72 65 70 6f 72 74 73 29 29 29 0a 0a 28 64  | .name.cmd).ledger-reports)))..(d | 
| 1e2a0 |  65 66 75 6e 20 6c 65 64 67 65 72 2d 72 65 70 6f    72 74 73 2d 63 75 73 74 6f 6d 2d 73 61 76 65 20  | efun.ledger-reports-custom-save. | 
| 1e2c0 |  28 29 0a 20 20 22 53 61 76 65 20 74 68 65 20 60    6c 65 64 67 65 72 2d 72 65 70 6f 72 74 73 27 20  | ()..."Save.the.`ledger-reports'. | 
| 1e2e0 |  76 61 72 69 61 62 6c 65 20 75 73 69 6e 67 20 74    68 65 20 63 75 73 74 6f 6d 69 7a 65 20 66 72 61  | variable.using.the.customize.fra | 
| 1e300 |  6d 65 77 6f 72 6b 2e 22 0a 20 20 28 63 75 73 74    6f 6d 69 7a 65 2d 73 61 76 65 2d 76 61 72 69 61  | mework."...(customize-save-varia | 
| 1e320 |  62 6c 65 20 27 6c 65 64 67 65 72 2d 72 65 70 6f    72 74 73 20 6c 65 64 67 65 72 2d 72 65 70 6f 72  | ble.'ledger-reports.ledger-repor | 
| 1e340 |  74 73 29 29 0a 0a 28 64 65 66 75 6e 20 6c 65 64    67 65 72 2d 72 65 70 6f 72 74 2d 72 65 61 64 2d  | ts))..(defun.ledger-report-read- | 
| 1e360 |  63 6f 6d 6d 61 6e 64 20 28 72 65 70 6f 72 74 2d    63 6d 64 29 0a 20 20 22 52 65 61 64 20 74 68 65  | command.(report-cmd)..."Read.the | 
| 1e380 |  20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 74 6f    20 63 72 65 61 74 65 20 61 20 72 65 70 6f 72 74  | .command.line.to.create.a.report | 
| 1e3a0 |  20 66 72 6f 6d 20 52 45 50 4f 52 54 2d 43 4d 44    2e 22 0a 20 20 28 72 65 61 64 2d 66 72 6f 6d 2d  | .from.REPORT-CMD."...(read-from- | 
| 1e3c0 |  6d 69 6e 69 62 75 66 66 65 72 20 22 52 65 70 6f    72 74 20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 3a  | minibuffer."Report.command.line: | 
| 1e3e0 |  20 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28  | .".........................(if.( | 
| 1e400 |  6e 75 6c 6c 20 72 65 70 6f 72 74 2d 63 6d 64 29    20 22 6c 65 64 67 65 72 20 22 20 72 65 70 6f 72  | null.report-cmd)."ledger.".repor | 
| 1e420 |  74 2d 63 6d 64 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e  | t-cmd).........................n | 
| 1e440 |  69 6c 20 6e 69 6c 20 27 6c 65 64 67 65 72 2d 72    65 70 6f 72 74 2d 63 6d 64 2d 70 72 6f 6d 70 74  | il.nil.'ledger-report-cmd-prompt | 
| 1e460 |  2d 68 69 73 74 6f 72 79 29 29 0a 0a 28 64 65 66    75 6e 20 6c 65 64 67 65 72 2d 72 65 70 6f 72 74  | -history))..(defun.ledger-report | 
| 1e480 |  2d 6c 65 64 67 65 72 2d 66 69 6c 65 2d 66 6f 72    6d 61 74 2d 73 70 65 63 69 66 69 65 72 20 28 29  | -ledger-file-format-specifier.() | 
| 1e4a0 |  0a 20 20 22 53 75 62 73 74 69 74 75 74 65 20 74    68 65 20 66 75 6c 6c 20 70 61 74 68 20 74 6f 20  | ..."Substitute.the.full.path.to. | 
| 1e4c0 |  6d 61 73 74 65 72 20 6f 72 20 63 75 72 72 65 6e    74 20 6c 65 64 67 65 72 20 66 69 6c 65 2e 0a 0a  | master.or.current.ledger.file... | 
| 1e4e0 |  54 68 65 20 6d 61 73 74 65 72 20 66 69 6c 65 20    6e 61 6d 65 20 69 73 20 64 65 74 65 72 6d 69 6e  | The.master.file.name.is.determin | 
| 1e500 |  65 64 20 62 79 20 74 68 65 20 66 75 6e 63 74 69    6f 6e 0a 60 6c 65 64 67 65 72 2d 6d 61 73 74 65  | ed.by.the.function.`ledger-maste | 
| 1e520 |  72 2d 66 69 6c 65 27 2c 20 77 68 69 63 68 20 64    65 70 65 6e 64 73 20 6f 6e 20 74 68 65 20 76 61  | r-file',.which.depends.on.the.va | 
| 1e540 |  72 69 61 62 6c 65 20 6f 66 20 74 68 65 20 73 61    6d 65 0a 6e 61 6d 65 2e 20 20 49 66 20 69 74 20  | riable.of.the.same.name...If.it. | 
| 1e560 |  69 73 20 6e 6f 6e 2d 6e 69 6c 2c 20 69 74 20 69    73 20 75 73 65 64 2c 20 6f 74 68 65 72 77 69 73  | is.non-nil,.it.is.used,.otherwis | 
| 1e580 |  65 20 74 68 65 20 63 75 72 72 65 6e 74 0a 62 75    66 66 65 72 27 73 20 66 69 6c 65 20 69 73 20 75  | e.the.current.buffer's.file.is.u | 
| 1e5a0 |  73 65 64 2e 22 0a 20 20 28 6c 65 64 67 65 72 2d    6d 61 73 74 65 72 2d 66 69 6c 65 29 29 0a 0a 3b  | sed."...(ledger-master-file))..; | 
| 1e5c0 |  3b 20 47 65 6e 65 72 61 6c 20 68 65 6c 70 65 72    20 66 75 6e 63 74 69 6f 6e 73 0a 0a 28 64 65 66  | ;.General.helper.functions..(def | 
| 1e5e0 |  75 6e 20 6c 65 64 67 65 72 2d 6d 61 73 74 65 72    2d 66 69 6c 65 20 28 29 0a 20 20 22 52 65 74 75  | un.ledger-master-file.()..."Retu | 
| 1e600 |  72 6e 20 74 68 65 20 6d 61 73 74 65 72 20 66 69    6c 65 20 66 6f 72 20 61 20 6c 65 64 67 65 72 20  | rn.the.master.file.for.a.ledger. | 
| 1e620 |  66 69 6c 65 2e 0a 0a 54 68 65 20 6d 61 73 74 65    72 20 66 69 6c 65 20 69 73 20 65 69 74 68 65 72  | file...The.master.file.is.either | 
| 1e640 |  20 74 68 65 20 66 69 6c 65 20 66 6f 72 20 74 68    65 20 63 75 72 72 65 6e 74 20 6c 65 64 67 65 72  | .the.file.for.the.current.ledger | 
| 1e660 |  20 62 75 66 66 65 72 0a 6f 72 20 74 68 65 20 66    69 6c 65 20 73 70 65 63 69 66 69 65 64 20 62 79  | .buffer.or.the.file.specified.by | 
| 1e680 |  20 74 68 65 20 62 75 66 66 65 72 2d 6c 6f 63 61    6c 20 76 61 72 69 61 62 6c 65 0a 60 6c 65 64 67  | .the.buffer-local.variable.`ledg | 
| 1e6a0 |  65 72 2d 6d 61 73 74 65 72 2d 66 69 6c 65 27 2e    20 20 54 79 70 69 63 61 6c 6c 79 20 74 68 69 73  | er-master-file'...Typically.this | 
| 1e6c0 |  20 76 61 72 69 61 62 6c 65 20 77 6f 75 6c 64 20    62 65 20 73 65 74 20 69 6e 20 61 0a 66 69 6c 65  | .variable.would.be.set.in.a.file | 
| 1e6e0 |  20 6c 6f 63 61 6c 20 76 61 72 69 61 62 6c 65 20    63 6f 6d 6d 65 6e 74 20 62 6c 6f 63 6b 20 61 74  | .local.variable.comment.block.at | 
| 1e700 |  20 74 68 65 20 65 6e 64 20 6f 66 20 61 20 6c 65    64 67 65 72 20 66 69 6c 65 0a 77 68 69 63 68 20  | .the.end.of.a.ledger.file.which. | 
| 1e720 |  69 73 20 69 6e 63 6c 75 64 65 64 20 69 6e 20 73    6f 6d 65 20 6f 74 68 65 72 20 66 69 6c 65 2e 22  | is.included.in.some.other.file." | 
| 1e740 |  0a 20 20 28 69 66 20 6c 65 64 67 65 72 2d 6d 61    73 74 65 72 2d 66 69 6c 65 0a 20 20 20 20 20 20  | ...(if.ledger-master-file....... | 
| 1e760 |  28 65 78 70 61 6e 64 2d 66 69 6c 65 2d 6e 61 6d    65 20 6c 65 64 67 65 72 2d 6d 61 73 74 65 72 2d  | (expand-file-name.ledger-master- | 
| 1e780 |  66 69 6c 65 29 0a 20 20 20 20 28 62 75 66 66 65    72 2d 66 69 6c 65 2d 6e 61 6d 65 29 29 29 0a 0a  | file).....(buffer-file-name))).. | 
| 1e7a0 |  28 64 65 66 75 6e 20 6c 65 64 67 65 72 2d 72 65    70 6f 72 74 2d 70 61 79 65 65 2d 66 6f 72 6d 61  | (defun.ledger-report-payee-forma | 
| 1e7c0 |  74 2d 73 70 65 63 69 66 69 65 72 20 28 29 0a 20    20 22 53 75 62 73 74 69 74 75 74 65 20 61 20 70  | t-specifier.()..."Substitute.a.p | 
| 1e7e0 |  61 79 65 65 20 6e 61 6d 65 2e 0a 0a 54 68 65 20    75 73 65 72 20 69 73 20 70 72 6f 6d 70 74 65 64  | ayee.name...The.user.is.prompted | 
| 1e800 |  20 74 6f 20 65 6e 74 65 72 20 61 20 70 61 79 65    65 20 61 6e 64 20 74 68 61 74 20 69 73 20 73 75  | .to.enter.a.payee.and.that.is.su | 
| 1e820 |  62 73 74 69 74 75 74 65 64 2e 0a 49 66 20 70 6f    69 6e 74 20 69 73 20 69 6e 20 61 6e 20 78 61 63  | bstituted..If.point.is.in.an.xac | 
| 1e840 |  74 2c 20 74 68 65 20 70 61 79 65 65 20 66 6f 72    20 74 68 61 74 20 78 61 63 74 20 69 73 20 75 73  | t,.the.payee.for.that.xact.is.us | 
| 1e860 |  65 64 20 61 73 20 74 68 65 0a 64 65 66 61 75 6c    74 2e 22 0a 20 20 28 6c 65 64 67 65 72 2d 72 65  | ed.as.the.default."...(ledger-re | 
| 1e880 |  61 64 2d 70 61 79 65 65 2d 77 69 74 68 2d 70 72    6f 6d 70 74 20 22 50 61 79 65 65 22 29 29 0a 0a  | ad-payee-with-prompt."Payee")).. | 
| 1e8a0 |  28 64 65 66 75 6e 20 6c 65 64 67 65 72 2d 72 65    70 6f 72 74 2d 61 63 63 6f 75 6e 74 2d 66 6f 72  | (defun.ledger-report-account-for | 
| 1e8c0 |  6d 61 74 2d 73 70 65 63 69 66 69 65 72 20 28 29    0a 20 20 22 53 75 62 73 74 69 74 75 74 65 20 61  | mat-specifier.()..."Substitute.a | 
| 1e8e0 |  6e 20 61 63 63 6f 75 6e 74 20 6e 61 6d 65 2e 0a    0a 54 68 65 20 75 73 65 72 20 69 73 20 70 72 6f  | n.account.name...The.user.is.pro | 
| 1e900 |  6d 70 74 65 64 20 74 6f 20 65 6e 74 65 72 20 61    6e 20 61 63 63 6f 75 6e 74 20 6e 61 6d 65 2c 20  | mpted.to.enter.an.account.name,. | 
| 1e920 |  77 68 69 63 68 20 63 61 6e 20 62 65 20 61 6e 79    0a 72 65 67 75 6c 61 72 20 65 78 70 72 65 73 73  | which.can.be.any.regular.express | 
| 1e940 |  69 6f 6e 20 69 64 65 6e 74 69 66 79 69 6e 67 20    61 6e 20 61 63 63 6f 75 6e 74 2e 20 20 49 66 20  | ion.identifying.an.account...If. | 
| 1e960 |  70 6f 69 6e 74 20 69 73 20 6f 6e 20 61 6e 0a 61    63 63 6f 75 6e 74 20 70 6f 73 74 69 6e 67 20 6c  | point.is.on.an.account.posting.l | 
| 1e980 |  69 6e 65 20 66 6f 72 20 61 6e 20 78 61 63 74 2c    20 74 68 65 20 66 75 6c 6c 20 61 63 63 6f 75 6e  | ine.for.an.xact,.the.full.accoun | 
| 1e9a0 |  74 20 6e 61 6d 65 20 6f 6e 20 74 68 61 74 0a 6c    69 6e 65 20 69 73 20 74 68 65 20 64 65 66 61 75  | t.name.on.that.line.is.the.defau | 
| 1e9c0 |  6c 74 2e 22 0a 20 20 28 6c 65 64 67 65 72 2d 72    65 61 64 2d 61 63 63 6f 75 6e 74 2d 77 69 74 68  | lt."...(ledger-read-account-with | 
| 1e9e0 |  2d 70 72 6f 6d 70 74 20 22 41 63 63 6f 75 6e 74    22 29 29 0a 0a 28 64 65 66 75 6e 20 6c 65 64 67  | -prompt."Account"))..(defun.ledg | 
| 1ea00 |  65 72 2d 72 65 70 6f 72 74 2d 2d 63 75 72 72 65    6e 74 2d 6d 6f 6e 74 68 20 28 29 0a 20 20 22 52  | er-report--current-month.()..."R | 
| 1ea20 |  65 74 75 72 6e 20 63 75 72 72 65 6e 74 20 6d 6f    6e 74 68 20 61 73 20 28 59 45 41 52 20 2e 20 4d  | eturn.current.month.as.(YEAR...M | 
| 1ea40 |  4f 4e 54 48 2d 49 4e 44 45 58 29 2e 0a 0a 4d 4f    4e 54 48 2d 49 4e 44 45 58 20 72 61 6e 67 65 73  | ONTH-INDEX)...MONTH-INDEX.ranges | 
| 1ea60 |  20 66 72 6f 6d 20 31 20 28 4a 61 6e 75 61 72 79    29 20 74 6f 20 31 32 20 28 44 65 63 65 6d 62 65  | .from.1.(January).to.12.(Decembe | 
| 1ea80 |  72 29 20 61 6e 64 20 59 45 41 52 20 69 73 0a 61    20 6e 75 6d 62 65 72 2e 22 0a 20 20 28 6c 65 74  | r).and.YEAR.is.a.number."...(let | 
| 1eaa0 |  2a 20 28 28 74 69 6d 65 2d 70 61 72 74 73 20 28    64 65 63 6f 64 65 2d 74 69 6d 65 29 29 0a 20 20  | *.((time-parts.(decode-time))... | 
| 1eac0 |  20 20 20 20 20 20 20 28 79 65 61 72 20 28 6e 74    68 20 35 20 74 69 6d 65 2d 70 61 72 74 73 29 29  | .......(year.(nth.5.time-parts)) | 
| 1eae0 |  0a 20 20 20 20 20 20 20 20 20 28 6d 6f 6e 74 68    2d 69 6e 64 65 78 20 28 6e 74 68 20 34 20 74 69  | ..........(month-index.(nth.4.ti | 
| 1eb00 |  6d 65 2d 70 61 72 74 73 29 29 29 0a 20 20 20 20    28 63 6f 6e 73 20 79 65 61 72 20 6d 6f 6e 74 68  | me-parts))).....(cons.year.month | 
| 1eb20 |  2d 69 6e 64 65 78 29 29 29 0a 0a 28 64 65 66 75    6e 20 6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d  | -index)))..(defun.ledger-report- | 
| 1eb40 |  2d 6e 6f 72 6d 61 6c 69 7a 65 2d 6d 6f 6e 74 68    20 28 6d 6f 6e 74 68 29 0a 20 20 22 52 65 74 75  | -normalize-month.(month)..."Retu | 
| 1eb60 |  72 6e 20 28 59 45 41 52 20 2e 20 4e 45 57 2d 4d    4f 4e 54 48 29 20 77 68 65 72 65 20 4e 45 57 2d  | rn.(YEAR...NEW-MONTH).where.NEW- | 
| 1eb80 |  4d 4f 4e 54 48 20 69 73 20 62 65 74 77 65 65 6e    20 31 20 61 6e 64 20 31 32 2e 0a 0a 4d 4f 4e 54  | MONTH.is.between.1.and.12...MONT | 
| 1eba0 |  48 20 69 73 20 6f 66 20 74 68 65 20 66 6f 72 6d    20 28 59 45 41 52 20 2e 20 49 4e 44 45 58 29 20  | H.is.of.the.form.(YEAR...INDEX). | 
| 1ebc0 |  77 68 65 72 65 20 49 4e 44 45 58 20 69 73 20 61    6e 20 69 6e 74 65 67 65 72 2e 0a 54 68 65 20 70  | where.INDEX.is.an.integer..The.p | 
| 1ebe0 |  75 72 70 6f 73 65 20 6f 66 20 74 68 69 73 20 6d    65 74 68 6f 64 20 69 73 20 74 68 65 6e 20 74 6f  | urpose.of.this.method.is.then.to | 
| 1ec00 |  20 63 6f 6e 76 65 72 74 20 61 6e 79 20 79 65 61    72 2f 6d 6f 6e 74 68 20 70 61 69 72 0a 74 6f 20  | .convert.any.year/month.pair.to. | 
| 1ec20 |  61 20 6d 65 61 6e 69 6e 67 66 75 6c 20 64 61 74    65 2c 20 65 2e 67 2e 2c 20 66 72 6f 6d 20 28 32  | a.meaningful.date,.e.g.,.from.(2 | 
| 1ec40 |  30 31 38 20 2e 20 2d 32 29 20 74 6f 20 28 32 30    31 37 20 2e 20 31 30 29 2e 22 0a 20 20 28 6c 65  | 018...-2).to.(2017...10)."...(le | 
| 1ec60 |  74 2a 20 28 28 6d 6f 6e 74 68 2d 69 6e 64 65 78    20 28 63 64 72 20 6d 6f 6e 74 68 29 29 0a 20 20  | t*.((month-index.(cdr.month))... | 
| 1ec80 |  20 20 20 20 20 20 20 28 79 65 61 72 2d 73 68 69    66 74 20 20 28 2f 20 28 31 2d 20 6d 6f 6e 74 68  | .......(year-shift..(/.(1-.month | 
| 1eca0 |  2d 69 6e 64 65 78 29 20 31 32 29 29 29 0a 20 20    20 20 28 77 68 65 6e 20 28 3c 3d 20 6d 6f 6e 74  | -index).12))).....(when.(<=.mont | 
| 1ecc0 |  68 2d 69 6e 64 65 78 20 30 29 0a 20 20 20 20 20    20 28 73 65 74 71 20 79 65 61 72 2d 73 68 69 66  | h-index.0).......(setq.year-shif | 
| 1ece0 |  74 20 28 31 2d 20 79 65 61 72 2d 73 68 69 66 74    29 29 29 0a 20 20 20 20 28 63 6f 6e 73 20 28 2b  | t.(1-.year-shift))).....(cons.(+ | 
| 1ed00 |  20 28 63 61 72 20 6d 6f 6e 74 68 29 20 79 65 61    72 2d 73 68 69 66 74 29 0a 20 20 20 20 20 20 20  | .(car.month).year-shift)........ | 
| 1ed20 |  20 20 20 28 31 2b 20 28 6d 6f 64 20 28 31 2d 20    6d 6f 6e 74 68 2d 69 6e 64 65 78 29 20 31 32 29  | ...(1+.(mod.(1-.month-index).12) | 
| 1ed40 |  29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6c 65 64    67 65 72 2d 72 65 70 6f 72 74 2d 2d 73 68 69 66  | ))))..(defun.ledger-report--shif | 
| 1ed60 |  74 2d 6d 6f 6e 74 68 20 28 6d 6f 6e 74 68 20 73    68 69 66 74 29 0a 20 20 22 52 65 74 75 72 6e 20  | t-month.(month.shift)..."Return. | 
| 1ed80 |  28 59 45 41 52 20 2e 20 4e 45 57 2d 4d 4f 4e 54    48 29 20 77 68 65 72 65 20 4e 45 57 2d 4d 4f 4e  | (YEAR...NEW-MONTH).where.NEW-MON | 
| 1eda0 |  54 48 20 69 73 20 4d 4f 4e 54 48 2b 53 48 49 46    54 2e 0a 0a 4d 4f 4e 54 48 20 69 73 20 6f 66 20  | TH.is.MONTH+SHIFT...MONTH.is.of. | 
| 1edc0 |  74 68 65 20 66 6f 72 6d 20 28 59 45 41 52 20 2e    20 49 4e 44 45 58 29 20 77 68 65 72 65 20 49 4e  | the.form.(YEAR...INDEX).where.IN | 
| 1ede0 |  44 45 58 20 72 61 6e 67 65 73 20 66 72 6f 6d 0a    31 20 28 4a 61 6e 75 61 72 79 29 20 74 6f 20 31  | DEX.ranges.from.1.(January).to.1 | 
| 1ee00 |  32 20 28 44 65 63 65 6d 62 65 72 29 20 61 6e 64    20 59 45 41 52 20 69 73 20 61 20 6e 75 6d 62 65  | 2.(December).and.YEAR.is.a.numbe | 
| 1ee20 |  72 2e 22 0a 20 20 28 6c 65 74 2a 20 28 28 79 65    61 72 20 28 63 61 72 20 6d 6f 6e 74 68 29 29 0a  | r."...(let*.((year.(car.month)). | 
| 1ee40 |  20 20 20 20 20 20 20 20 20 28 6e 65 77 2d 6d 6f    6e 74 68 20 28 2b 20 28 63 64 72 20 6d 6f 6e 74  | .........(new-month.(+.(cdr.mont | 
| 1ee60 |  68 29 20 73 68 69 66 74 29 29 29 0a 20 20 20 20    28 6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d 2d  | h).shift))).....(ledger-report-- | 
| 1ee80 |  6e 6f 72 6d 61 6c 69 7a 65 2d 6d 6f 6e 74 68 20    28 63 6f 6e 73 20 79 65 61 72 20 6e 65 77 2d 6d  | normalize-month.(cons.year.new-m | 
| 1eea0 |  6f 6e 74 68 29 29 29 29 0a 0a 28 64 65 66 75 6e    20 6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d 6d  | onth))))..(defun.ledger-report-m | 
| 1eec0 |  6f 6e 74 68 2d 66 6f 72 6d 61 74 2d 73 70 65 63    69 66 69 65 72 20 28 29 0a 20 20 22 53 75 62 73  | onth-format-specifier.()..."Subs | 
| 1eee0 |  74 69 74 75 74 65 20 63 75 72 72 65 6e 74 20 6d    6f 6e 74 68 2e 22 0a 20 20 28 77 69 74 68 2d 63  | titute.current.month."...(with-c | 
| 1ef00 |  75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 28 6f    72 20 6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d  | urrent-buffer.(or.ledger-report- | 
| 1ef20 |  62 75 66 66 65 72 2d 6e 61 6d 65 20 28 63 75 72    72 65 6e 74 2d 62 75 66 66 65 72 29 29 0a 20 20  | buffer-name.(current-buffer))... | 
| 1ef40 |  20 20 28 6c 65 74 2a 20 28 28 6d 6f 6e 74 68 20    28 6f 72 20 6c 65 64 67 65 72 2d 72 65 70 6f 72  | ..(let*.((month.(or.ledger-repor | 
| 1ef60 |  74 2d 63 75 72 72 65 6e 74 2d 6d 6f 6e 74 68 20    28 6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d 2d  | t-current-month.(ledger-report-- | 
| 1ef80 |  63 75 72 72 65 6e 74 2d 6d 6f 6e 74 68 29 29 29    0a 20 20 20 20 20 20 20 20 20 20 20 28 79 65 61  | current-month)))............(yea | 
| 1efa0 |  72 20 28 63 61 72 20 6d 6f 6e 74 68 29 29 0a 20    20 20 20 20 20 20 20 20 20 20 28 6d 6f 6e 74 68  | r.(car.month))............(month | 
| 1efc0 |  2d 69 6e 64 65 78 20 28 63 64 72 20 6d 6f 6e 74    68 29 29 29 0a 20 20 20 20 20 20 28 66 6f 72 6d  | -index.(cdr.month))).......(form | 
| 1efe0 |  61 74 20 22 25 73 2d 25 73 22 20 79 65 61 72 20    6d 6f 6e 74 68 2d 69 6e 64 65 78 29 29 29 29 0a  | at."%s-%s".year.month-index)))). | 
| 1f000 |  0a 28 64 65 66 75 6e 20 6c 65 64 67 65 72 2d 72    65 70 6f 72 74 2d 65 78 70 61 6e 64 2d 66 6f 72  | .(defun.ledger-report-expand-for | 
| 1f020 |  6d 61 74 2d 73 70 65 63 69 66 69 65 72 73 20 28    72 65 70 6f 72 74 2d 63 6d 64 29 0a 20 20 22 45  | mat-specifiers.(report-cmd)..."E | 
| 1f040 |  78 70 61 6e 64 20 66 6f 72 6d 61 74 20 73 70 65    63 69 66 69 65 72 73 20 69 6e 20 52 45 50 4f 52  | xpand.format.specifiers.in.REPOR | 
| 1f060 |  54 2d 43 4d 44 2e 0a 0a 46 6f 72 6d 61 74 20 73    70 65 63 69 66 69 65 72 73 20 61 72 65 20 64 65  | T-CMD...Format.specifiers.are.de | 
| 1f080 |  66 69 6e 65 64 20 69 6e 20 74 68 65 0a 60 6c 65    64 67 65 72 2d 72 65 70 6f 72 74 2d 66 6f 72 6d  | fined.in.the.`ledger-report-form | 
| 1f0a0 |  61 74 2d 73 70 65 63 69 66 69 65 72 73 27 20 61    6c 69 73 74 2e 20 20 54 68 65 20 66 75 6e 63 74  | at-specifiers'.alist...The.funct | 
| 1f0c0 |  69 6f 6e 73 20 61 72 65 0a 63 61 6c 6c 65 64 20    69 6e 20 74 68 65 20 6c 65 64 67 65 72 20 62 75  | ions.are.called.in.the.ledger.bu | 
| 1f0e0 |  66 66 65 72 20 66 6f 72 20 77 68 69 63 68 20 74    68 65 20 72 65 70 6f 72 74 20 69 73 20 62 65 69  | ffer.for.which.the.report.is.bei | 
| 1f100 |  6e 67 20 72 75 6e 2e 22 0a 20 20 28 6c 65 74 20    28 28 6c 65 64 67 65 72 2d 62 75 66 20 6c 65 64  | ng.run."...(let.((ledger-buf.led | 
| 1f120 |  67 65 72 2d 72 65 70 6f 72 74 2d 6c 65 64 67 65    72 2d 62 75 66 29 29 0a 20 20 20 20 28 77 69 74  | ger-report-ledger-buf)).....(wit | 
| 1f140 |  68 2d 74 65 6d 70 2d 62 75 66 66 65 72 0a 20 20    20 20 20 20 28 73 61 76 65 2d 65 78 63 75 72 73  | h-temp-buffer.......(save-excurs | 
| 1f160 |  69 6f 6e 20 28 69 6e 73 65 72 74 20 72 65 70 6f    72 74 2d 63 6d 64 29 29 0a 20 20 20 20 20 20 28  | ion.(insert.report-cmd)).......( | 
| 1f180 |  77 68 69 6c 65 20 28 72 65 2d 73 65 61 72 63 68    2d 66 6f 72 77 61 72 64 20 22 25 28 5c 5c 28 5b  | while.(re-search-forward."%(\\([ | 
| 1f1a0 |  5e 29 5d 2a 5c 5c 29 29 22 20 6e 69 6c 20 74 29    0a 20 20 20 20 20 20 20 20 28 77 68 65 6e 2d 6c  | ^)]*\\))".nil.t).........(when-l | 
| 1f1c0 |  65 74 20 28 28 73 70 65 63 69 66 69 65 72 20 28    6d 61 74 63 68 2d 73 74 72 69 6e 67 20 31 29 29  | et.((specifier.(match-string.1)) | 
| 1f1e0 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 28 66 20 28 63 64 72 20 28 61 73 73  | ....................(f.(cdr.(ass | 
| 1f200 |  6f 63 20 73 70 65 63 69 66 69 65 72 20 6c 65 64    67 65 72 2d 72 65 70 6f 72 74 2d 66 6f 72 6d 61  | oc.specifier.ledger-report-forma | 
| 1f220 |  74 2d 73 70 65 63 69 66 69 65 72 73 29 29 29 29    0a 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 2a  | t-specifiers))))...........(let* | 
| 1f240 |  20 28 28 61 72 67 20 28 73 61 76 65 2d 6d 61 74    63 68 2d 64 61 74 61 0a 20 20 20 20 20 20 20 20  | .((arg.(save-match-data......... | 
| 1f260 |  20 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 75  | ................(with-current-bu | 
| 1f280 |  66 66 65 72 20 6c 65 64 67 65 72 2d 62 75 66 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ffer.ledger-buf................. | 
| 1f2a0 |  20 20 20 20 20 20 20 20 20 20 28 66 75 6e 63 61    6c 6c 20 66 29 29 29 29 0a 20 20 20 20 20 20 20  | ..........(funcall.f))))........ | 
| 1f2c0 |  20 20 20 20 20 20 20 20 20 20 28 71 75 6f 74 65    64 20 28 73 61 76 65 2d 6d 61 74 63 68 2d 64 61  | ..........(quoted.(save-match-da | 
| 1f2e0 |  74 61 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 69  | ta............................(i | 
| 1f300 |  66 20 28 6c 69 73 74 70 20 61 72 67 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | f.(listp.arg)................... | 
| 1f320 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 74    72 69 6e 67 2d 6a 6f 69 6e 20 61 72 67 20 22 20  | .............(string-join.arg.". | 
| 1f340 |  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 20 20 20 20 20  | ").............................. | 
| 1f360 |  28 73 68 65 6c 6c 2d 71 75 6f 74 65 2d 61 72 67    75 6d 65 6e 74 20 61 72 67 29 29 29 29 29 0a 20  | (shell-quote-argument.arg))))).. | 
| 1f380 |  20 20 20 20 20 20 20 20 20 20 20 28 72 65 70 6c    61 63 65 2d 6d 61 74 63 68 20 71 75 6f 74 65 64  | ...........(replace-match.quoted | 
| 1f3a0 |  20 27 66 69 78 65 64 63 61 73 65 20 27 6c 69 74    65 72 61 6c 29 29 29 29 0a 20 20 20 20 20 20 20  | .'fixedcase.'literal))))........ | 
| 1f3c0 |  28 62 75 66 66 65 72 2d 73 74 72 69 6e 67 29 29    29 29 0a 0a 28 64 65 66 75 6e 20 6c 65 64 67 65  | (buffer-string))))..(defun.ledge | 
| 1f3e0 |  72 2d 72 65 70 6f 72 74 2d 2d 63 6d 64 2d 6e 65    65 64 73 2d 6c 69 6e 6b 73 2d 70 20 28 63 6d 64  | r-report--cmd-needs-links-p.(cmd | 
| 1f400 |  29 0a 20 20 22 43 68 65 63 6b 20 6c 69 6e 6b 73    20 73 68 6f 75 6c 64 20 62 65 20 61 64 64 65 64  | )..."Check.links.should.be.added | 
| 1f420 |  20 74 6f 20 74 68 65 20 72 65 70 6f 72 74 20 70    72 6f 64 75 63 65 64 20 62 79 20 43 4d 44 2e 22  | .to.the.report.produced.by.CMD." | 
| 1f440 |  0a 20 20 3b 3b 20 2d 2d 73 75 62 74 6f 74 61 6c    20 72 65 70 6f 72 74 73 20 64 6f 20 6e 6f 74 20  | ...;;.--subtotal.reports.do.not. | 
| 1f460 |  70 72 6f 64 75 63 65 20 69 64 65 6e 74 69 66 69    61 62 6c 65 20 74 72 61 6e 73 61 63 74 69 6f 6e  | produce.identifiable.transaction | 
| 1f480 |  73 2c 20 73 6f 0a 20 20 3b 3b 20 64 6f 6e 27 74    20 70 72 65 70 65 6e 64 20 6c 6f 63 61 74 69 6f  | s,.so...;;.don't.prepend.locatio | 
| 1f4a0 |  6e 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 66 6f    72 20 74 68 65 6d 0a 20 20 28 61 6e 64 20 28 73  | n.information.for.them...(and.(s | 
| 1f4c0 |  74 72 69 6e 67 2d 6d 61 74 63 68 20 22 5c 5c 3c    72 65 67 5c 5c 28 69 73 74 65 72 5c 5c 29 3f 5c  | tring-match."\\<reg\\(ister\\)?\ | 
| 1f4e0 |  5c 3e 22 20 63 6d 64 29 0a 20 20 20 20 20 20 20    6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d 6c 69  | \>".cmd)........ledger-report-li | 
| 1f500 |  6e 6b 73 2d 69 6e 2d 72 65 67 69 73 74 65 72 0a    20 20 20 20 20 20 20 28 6e 6f 74 20 28 73 74 72  | nks-in-register........(not.(str | 
| 1f520 |  69 6e 67 2d 6d 61 74 63 68 20 22 2d 2d 73 75 62    74 6f 74 61 6c 22 20 63 6d 64 29 29 29 29 0a 0a  | ing-match."--subtotal".cmd)))).. | 
| 1f540 |  28 64 65 66 75 6e 20 6c 65 64 67 65 72 2d 72 65    70 6f 72 74 2d 2d 63 6f 6d 70 75 74 65 2d 65 78  | (defun.ledger-report--compute-ex | 
| 1f560 |  74 72 61 2d 61 72 67 73 20 28 72 65 70 6f 72 74    2d 63 6d 64 29 0a 20 20 22 43 6f 6d 70 75 74 65  | tra-args.(report-cmd)..."Compute | 
| 1f580 |  20 65 78 74 72 61 20 61 72 67 73 20 74 6f 20 61    64 64 20 74 6f 20 52 45 50 4f 52 54 2d 43 4d 44  | .extra.args.to.add.to.REPORT-CMD | 
| 1f5a0 |  2e 22 0a 20 20 60 28 2c 40 28 77 68 65 6e 20 28    6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d 2d 63  | ."...`(,@(when.(ledger-report--c | 
| 1f5c0 |  6d 64 2d 6e 65 65 64 73 2d 6c 69 6e 6b 73 2d 70    20 72 65 70 6f 72 74 2d 63 6d 64 29 0a 20 20 20  | md-needs-links-p.report-cmd).... | 
| 1f5e0 |  20 20 20 20 20 27 28 22 2d 2d 70 72 65 70 65 6e    64 2d 66 6f 72 6d 61 74 3d 25 28 66 69 6c 65 6e  | .....'("--prepend-format=%(filen | 
| 1f600 |  61 6d 65 29 3a 25 28 62 65 67 5f 6c 69 6e 65 29    3a 22 29 29 0a 20 20 20 20 2c 40 28 77 68 65 6e  | ame):%(beg_line):")).....,@(when | 
| 1f620 |  20 6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d 61    75 74 6f 2d 77 69 64 74 68 0a 20 20 20 20 20 20  | .ledger-report-auto-width....... | 
| 1f640 |  20 20 60 28 22 2d 2d 63 6f 6c 75 6d 6e 73 22 20    2c 28 66 6f 72 6d 61 74 20 22 25 64 22 20 28 77  | ..`("--columns".,(format."%d".(w | 
| 1f660 |  69 6e 64 6f 77 2d 6d 61 78 2d 63 68 61 72 73 2d    70 65 72 2d 6c 69 6e 65 29 29 29 29 0a 20 20 20  | indow-max-chars-per-line)))).... | 
| 1f680 |  20 2c 40 28 77 68 65 6e 20 6c 65 64 67 65 72 2d    72 65 70 6f 72 74 2d 75 73 65 2d 6e 61 74 69 76  | .,@(when.ledger-report-use-nativ | 
| 1f6a0 |  65 2d 68 69 67 68 6c 69 67 68 74 69 6e 67 0a 20    20 20 20 20 20 20 20 6c 65 64 67 65 72 2d 72 65  | e-highlighting.........ledger-re | 
| 1f6c0 |  70 6f 72 74 2d 6e 61 74 69 76 65 2d 68 69 67 68    6c 69 67 68 74 69 6e 67 2d 61 72 67 75 6d 65 6e  | port-native-highlighting-argumen | 
| 1f6e0 |  74 73 29 0a 20 20 20 20 2c 40 28 77 68 65 6e 20    6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d 75 73  | ts).....,@(when.ledger-report-us | 
| 1f700 |  65 2d 73 74 72 69 63 74 0a 20 20 20 20 20 20 20    20 27 28 22 2d 2d 73 74 72 69 63 74 22 29 29 29  | e-strict.........'("--strict"))) | 
| 1f720 |  29 0a 0a 28 64 65 66 75 6e 20 6c 65 64 67 65 72    2d 72 65 70 6f 72 74 2d 63 6d 64 20 28 72 65 70  | )..(defun.ledger-report-cmd.(rep | 
| 1f740 |  6f 72 74 2d 6e 61 6d 65 20 65 64 69 74 29 0a 20    20 22 47 65 74 20 74 68 65 20 63 6f 6d 6d 61 6e  | ort-name.edit)..."Get.the.comman | 
| 1f760 |  64 20 6c 69 6e 65 20 74 6f 20 72 75 6e 20 74 68    65 20 72 65 70 6f 72 74 20 6e 61 6d 65 20 52 45  | d.line.to.run.the.report.name.RE | 
| 1f780 |  50 4f 52 54 2d 4e 41 4d 45 2e 0a 4f 70 74 69 6f    6e 61 6c 6c 79 20 45 44 49 54 20 74 68 65 20 63  | PORT-NAME..Optionally.EDIT.the.c | 
| 1f7a0 |  6f 6d 6d 61 6e 64 2e 22 0a 20 20 28 6c 65 74 20    28 28 72 65 70 6f 72 74 2d 63 6d 64 20 28 63 61  | ommand."...(let.((report-cmd.(ca | 
| 1f7c0 |  72 20 28 63 64 72 20 28 61 73 73 6f 63 20 72 65    70 6f 72 74 2d 6e 61 6d 65 20 6c 65 64 67 65 72  | r.(cdr.(assoc.report-name.ledger | 
| 1f7e0 |  2d 72 65 70 6f 72 74 73 29 29 29 29 29 0a 20 20    20 20 3b 3b 20 6c 6f 67 69 63 20 66 6f 72 20 73  | -reports))))).....;;.logic.for.s | 
| 1f800 |  75 62 73 74 69 74 75 74 69 6f 6e 20 67 6f 65 73    20 68 65 72 65 0a 20 20 20 20 28 77 68 65 6e 20  | ubstitution.goes.here.....(when. | 
| 1f820 |  28 6f 72 20 28 6e 75 6c 6c 20 72 65 70 6f 72 74    2d 63 6d 64 29 20 65 64 69 74 29 0a 20 20 20 20  | (or.(null.report-cmd).edit)..... | 
| 1f840 |  20 20 28 73 65 74 71 20 72 65 70 6f 72 74 2d 63    6d 64 20 28 6c 65 64 67 65 72 2d 72 65 70 6f 72  | ..(setq.report-cmd.(ledger-repor | 
| 1f860 |  74 2d 72 65 61 64 2d 63 6f 6d 6d 61 6e 64 20 72    65 70 6f 72 74 2d 63 6d 64 29 29 0a 20 20 20 20  | t-read-command.report-cmd))..... | 
| 1f880 |  20 20 28 73 65 74 71 20 6c 65 64 67 65 72 2d 72    65 70 6f 72 74 2d 73 61 76 65 64 20 6e 69 6c 29  | ..(setq.ledger-report-saved.nil) | 
| 1f8a0 |  29 20 3b 3b 20 74 68 69 73 20 69 73 20 61 20 6e    65 77 20 72 65 70 6f 72 74 2c 20 6f 72 20 65 64  | ).;;.this.is.a.new.report,.or.ed | 
| 1f8c0 |  69 74 65 64 20 72 65 70 6f 72 74 0a 20 20 20 20    28 73 65 74 71 20 72 65 70 6f 72 74 2d 63 6d 64  | ited.report.....(setq.report-cmd | 
| 1f8e0 |  20 28 6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d    65 78 70 61 6e 64 2d 66 6f 72 6d 61 74 2d 73 70  | .(ledger-report-expand-format-sp | 
| 1f900 |  65 63 69 66 69 65 72 73 20 72 65 70 6f 72 74 2d    63 6d 64 29 29 0a 20 20 20 20 28 73 65 74 71 20  | ecifiers.report-cmd)).....(setq. | 
| 1f920 |  6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d 63 6d    64 20 72 65 70 6f 72 74 2d 63 6d 64 29 0a 20 20  | ledger-report-cmd.report-cmd)... | 
| 1f940 |  20 20 28 6f 72 20 28 73 74 72 69 6e 67 2d 65 6d    70 74 79 2d 70 20 72 65 70 6f 72 74 2d 6e 61 6d  | ..(or.(string-empty-p.report-nam | 
| 1f960 |  65 29 0a 20 20 20 20 20 20 20 20 28 6c 65 64 67    65 72 2d 72 65 70 6f 72 74 2d 6e 61 6d 65 2d 65  | e).........(ledger-report-name-e | 
| 1f980 |  78 69 73 74 73 20 72 65 70 6f 72 74 2d 6e 61 6d    65 29 0a 20 20 20 20 20 20 20 20 28 70 72 6f 67  | xists.report-name).........(prog | 
| 1f9a0 |  6e 0a 20 20 20 20 20 20 20 20 20 20 28 6c 65 64    67 65 72 2d 72 65 70 6f 72 74 73 2d 61 64 64 20  | n...........(ledger-reports-add. | 
| 1f9c0 |  72 65 70 6f 72 74 2d 6e 61 6d 65 20 72 65 70 6f    72 74 2d 63 6d 64 29 0a 20 20 20 20 20 20 20 20  | report-name.report-cmd)......... | 
| 1f9e0 |  20 20 28 6c 65 64 67 65 72 2d 72 65 70 6f 72 74    73 2d 63 75 73 74 6f 6d 2d 73 61 76 65 29 29 29  | ..(ledger-reports-custom-save))) | 
| 1fa00 |  0a 20 20 20 20 72 65 70 6f 72 74 2d 63 6d 64 29    29 0a 0a 28 64 65 66 69 6e 65 2d 62 75 74 74 6f  | .....report-cmd))..(define-butto | 
| 1fa20 |  6e 2d 74 79 70 65 20 27 6c 65 64 67 65 72 2d 72    65 70 6f 72 74 2d 72 65 67 69 73 74 65 72 2d 65  | n-type.'ledger-report-register-e | 
| 1fa40 |  6e 74 72 79 0a 20 20 27 66 6f 6c 6c 6f 77 2d 6c    69 6e 6b 20 74 0a 20 20 27 66 61 63 65 20 6e 69  | ntry...'follow-link.t...'face.ni | 
| 1fa60 |  6c 20 3b 3b 20 4f 74 68 65 72 77 69 73 65 20 6d    61 6b 65 2d 74 65 78 74 2d 62 75 74 74 6f 6e 20  | l.;;.Otherwise.make-text-button. | 
| 1fa80 |  72 65 70 6c 61 63 65 73 20 4c 65 64 67 65 72 27    73 20 6e 61 74 69 76 65 20 68 69 67 68 6c 69 67  | replaces.Ledger's.native.highlig | 
| 1faa0 |  68 74 69 6e 67 0a 20 20 27 61 63 74 69 6f 6e 20    28 6c 61 6d 62 64 61 20 28 5f 62 75 74 74 6f 6e  | hting...'action.(lambda.(_button | 
| 1fac0 |  29 20 28 6c 65 64 67 65 72 2d 72 65 70 6f 72 74    2d 76 69 73 69 74 2d 73 6f 75 72 63 65 29 29 29  | ).(ledger-report-visit-source))) | 
| 1fae0 |  0a 0a 28 64 65 66 75 6e 20 6c 65 64 67 65 72 2d    72 65 70 6f 72 74 2d 2d 63 68 61 6e 67 65 2d 6d  | ..(defun.ledger-report--change-m | 
| 1fb00 |  6f 6e 74 68 20 28 73 68 69 66 74 29 0a 20 20 22    52 65 62 75 69 6c 64 20 72 65 70 6f 72 74 20 77  | onth.(shift)..."Rebuild.report.w | 
| 1fb20 |  69 74 68 20 74 72 61 6e 73 61 63 74 69 6f 6e 73    20 66 72 6f 6d 20 63 75 72 72 65 6e 74 20 6d 6f  | ith.transactions.from.current.mo | 
| 1fb40 |  6e 74 68 20 2b 20 53 48 49 46 54 2e 22 0a 20 20    28 6c 65 74 2a 20 28 28 63 75 72 72 65 6e 74 2d  | nth.+.SHIFT."...(let*.((current- | 
| 1fb60 |  6d 6f 6e 74 68 20 28 6f 72 20 6c 65 64 67 65 72    2d 72 65 70 6f 72 74 2d 63 75 72 72 65 6e 74 2d  | month.(or.ledger-report-current- | 
| 1fb80 |  6d 6f 6e 74 68 20 28 6c 65 64 67 65 72 2d 72 65    70 6f 72 74 2d 2d 63 75 72 72 65 6e 74 2d 6d 6f  | month.(ledger-report--current-mo | 
| 1fba0 |  6e 74 68 29 29 29 0a 20 20 20 20 20 20 20 20 20    28 70 72 65 76 69 6f 75 73 2d 6d 6f 6e 74 68 20  | nth)))..........(previous-month. | 
| 1fbc0 |  28 6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d 2d    73 68 69 66 74 2d 6d 6f 6e 74 68 20 63 75 72 72  | (ledger-report--shift-month.curr | 
| 1fbe0 |  65 6e 74 2d 6d 6f 6e 74 68 20 73 68 69 66 74 29    29 29 0a 20 20 20 20 28 73 65 74 71 20 6c 65 64  | ent-month.shift))).....(setq.led | 
| 1fc00 |  67 65 72 2d 72 65 70 6f 72 74 2d 63 75 72 72 65    6e 74 2d 6d 6f 6e 74 68 20 70 72 65 76 69 6f 75  | ger-report-current-month.previou | 
| 1fc20 |  73 2d 6d 6f 6e 74 68 29 0a 20 20 20 20 28 6c 65    64 67 65 72 2d 72 65 70 6f 72 74 2d 63 6d 64 20  | s-month).....(ledger-report-cmd. | 
| 1fc40 |  6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d 6e 61    6d 65 20 6e 69 6c 29 0a 20 20 20 20 28 6c 65 64  | ledger-report-name.nil).....(led | 
| 1fc60 |  67 65 72 2d 72 65 70 6f 72 74 2d 72 65 64 6f 29    29 29 0a 0a 28 64 65 66 75 6e 20 6c 65 64 67 65  | ger-report-redo)))..(defun.ledge | 
| 1fc80 |  72 2d 72 65 70 6f 72 74 2d 2d 61 64 64 2d 6c 69    6e 6b 73 20 28 29 0a 20 20 22 52 65 70 6c 61 63  | r-report--add-links.()..."Replac | 
| 1fca0 |  65 20 66 69 6c 65 20 61 6e 64 20 6c 69 6e 65 20    61 6e 6e 6f 74 61 74 69 6f 6e 73 20 77 69 74 68  | e.file.and.line.annotations.with | 
| 1fcc0 |  20 62 75 74 74 6f 6e 73 2e 22 0a 20 20 28 77 68    69 6c 65 20 28 72 65 2d 73 65 61 72 63 68 2d 66  | .buttons."...(while.(re-search-f | 
| 1fce0 |  6f 72 77 61 72 64 20 22 5e 5c 5c 28 5c 5c 28 3f    3a 2f 5c 5c 7c 5b 61 2d 7a 41 2d 5a 5d 3a 5b 5c  | orward."^\\(\\(?:/\\|[a-zA-Z]:[\ | 
| 1fd00 |  5c 2f 5d 5c 5c 29 5b 5e 3a 5d 2b 5c 5c 29 3f 3a    5c 5c 28 5b 30 2d 39 5d 2b 5c 5c 29 3f 3a 22 20  | \/]\\)[^:]+\\)?:\\([0-9]+\\)?:". | 
| 1fd20 |  6e 69 6c 20 74 29 0a 20 20 20 20 28 6c 65 74 20    28 28 66 69 6c 65 20 28 6d 61 74 63 68 2d 73 74  | nil.t).....(let.((file.(match-st | 
| 1fd40 |  72 69 6e 67 20 31 29 29 0a 20 20 20 20 20 20 20    20 20 20 28 6c 69 6e 65 20 28 73 74 72 69 6e 67  | ring.1))...........(line.(string | 
| 1fd60 |  2d 74 6f 2d 6e 75 6d 62 65 72 20 28 6d 61 74 63    68 2d 73 74 72 69 6e 67 20 32 29 29 29 29 0a 20  | -to-number.(match-string.2)))).. | 
| 1fd80 |  20 20 20 20 20 28 64 65 6c 65 74 65 2d 72 65 67    69 6f 6e 20 28 6d 61 74 63 68 2d 62 65 67 69 6e  | .....(delete-region.(match-begin | 
| 1fda0 |  6e 69 6e 67 20 30 29 20 28 6d 61 74 63 68 2d 65    6e 64 20 30 29 29 0a 20 20 20 20 20 20 28 77 68  | ning.0).(match-end.0)).......(wh | 
| 1fdc0 |  65 6e 20 28 61 6e 64 20 66 69 6c 65 20 6c 69 6e    65 29 0a 20 20 20 20 20 20 20 20 28 61 64 64 2d  | en.(and.file.line).........(add- | 
| 1fde0 |  74 65 78 74 2d 70 72 6f 70 65 72 74 69 65 73 20    28 6c 69 6e 65 2d 62 65 67 69 6e 6e 69 6e 67 2d  | text-properties.(line-beginning- | 
| 1fe00 |  70 6f 73 69 74 69 6f 6e 29 20 28 6c 69 6e 65 2d    65 6e 64 2d 70 6f 73 69 74 69 6f 6e 29 0a 20 20  | position).(line-end-position)... | 
| 1fe20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 6c 69 73 74  | ...........................(list | 
| 1fe40 |  20 27 6c 65 64 67 65 72 2d 73 6f 75 72 63 65 20    28 63 6f 6e 73 20 66 69 6c 65 20 6c 69 6e 65 29  | .'ledger-source.(cons.file.line) | 
| 1fe60 |  29 29 0a 20 20 20 20 20 20 20 20 28 6d 61 6b 65    2d 74 65 78 74 2d 62 75 74 74 6f 6e 0a 20 20 20  | )).........(make-text-button.... | 
| 1fe80 |  20 20 20 20 20 20 28 6c 69 6e 65 2d 62 65 67 69    6e 6e 69 6e 67 2d 70 6f 73 69 74 69 6f 6e 29 20  | ......(line-beginning-position). | 
| 1fea0 |  28 6c 69 6e 65 2d 65 6e 64 2d 70 6f 73 69 74 69    6f 6e 29 0a 20 20 20 20 20 20 20 20 20 27 74 79  | (line-end-position)..........'ty | 
| 1fec0 |  70 65 20 27 6c 65 64 67 65 72 2d 72 65 70 6f 72    74 2d 72 65 67 69 73 74 65 72 2d 65 6e 74 72 79  | pe.'ledger-report-register-entry | 
| 1fee0 |  0a 20 20 20 20 20 20 20 20 20 27 68 65 6c 70 2d    65 63 68 6f 20 28 66 6f 72 6d 61 74 20 22 6d 6f  | ..........'help-echo.(format."mo | 
| 1ff00 |  75 73 65 2d 32 2c 20 52 45 54 3a 20 56 69 73 69    74 20 25 73 3a 25 64 22 20 66 69 6c 65 20 6c 69  | use-2,.RET:.Visit.%s:%d".file.li | 
| 1ff20 |  6e 65 29 29 0a 20 20 20 20 20 20 20 20 3b 3b 20    41 70 70 65 6e 64 69 6e 67 20 74 68 65 20 66 61  | ne)).........;;.Appending.the.fa | 
| 1ff40 |  63 65 20 70 72 65 73 65 72 76 65 73 20 4c 65 64    67 65 72 27 73 20 6e 61 74 69 76 65 20 68 69 67  | ce.preserves.Ledger's.native.hig | 
| 1ff60 |  68 6c 69 67 68 74 69 6e 67 0a 20 20 20 20 20 20    20 20 28 66 6f 6e 74 2d 6c 6f 63 6b 2d 61 70 70  | hlighting.........(font-lock-app | 
| 1ff80 |  65 6e 64 2d 74 65 78 74 2d 70 72 6f 70 65 72 74    79 20 28 6c 69 6e 65 2d 62 65 67 69 6e 6e 69 6e  | end-text-property.(line-beginnin | 
| 1ffa0 |  67 2d 70 6f 73 69 74 69 6f 6e 29 20 28 6c 69 6e    65 2d 65 6e 64 2d 70 6f 73 69 74 69 6f 6e 29 0a  | g-position).(line-end-position). | 
| 1ffc0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 1ffe0 |  20 20 20 20 20 20 20 20 27 66 61 63 65 20 27 6c    65 64 67 65 72 2d 66 6f 6e 74 2d 72 65 70 6f 72  | ........'face.'ledger-font-repor | 
| 20000 |  74 2d 63 6c 69 63 6b 61 62 6c 65 2d 66 61 63 65    29 0a 20 20 20 20 20 20 20 20 28 65 6e 64 2d 6f  | t-clickable-face).........(end-o | 
| 20020 |  66 2d 6c 69 6e 65 29 29 29 29 29 0a 0a 28 64 65    66 75 6e 20 6c 65 64 67 65 72 2d 72 65 70 6f 72  | f-line)))))..(defun.ledger-repor | 
| 20040 |  74 2d 2d 63 6f 6d 70 75 74 65 2d 68 65 61 64 65    72 2d 6c 69 6e 65 20 28 63 6d 64 29 0a 20 20 22  | t--compute-header-line.(cmd)..." | 
| 20060 |  43 61 6c 6c 20 60 6c 65 64 67 65 72 2d 72 65 70    6f 72 74 2d 68 65 61 64 65 72 2d 6c 69 6e 65 2d  | Call.`ledger-report-header-line- | 
| 20080 |  66 6e 27 20 77 69 74 68 20 60 6c 65 64 67 65 72    2d 72 65 70 6f 72 74 2d 63 6d 64 27 20 62 6f 75  | fn'.with.`ledger-report-cmd'.bou | 
| 200a0 |  6e 64 20 74 6f 20 43 4d 44 2e 22 0a 20 20 28 6c    65 74 20 28 28 6c 65 64 67 65 72 2d 72 65 70 6f  | nd.to.CMD."...(let.((ledger-repo | 
| 200c0 |  72 74 2d 63 6d 64 20 63 6d 64 29 29 0a 20 20 20    20 28 66 75 6e 63 61 6c 6c 20 6c 65 64 67 65 72  | rt-cmd.cmd)).....(funcall.ledger | 
| 200e0 |  2d 72 65 70 6f 72 74 2d 68 65 61 64 65 72 2d 6c    69 6e 65 2d 66 6e 29 29 29 0a 0a 28 64 65 66 75  | -report-header-line-fn)))..(defu | 
| 20100 |  6e 20 6c 65 64 67 65 72 2d 64 6f 2d 72 65 70 6f    72 74 20 28 63 6d 64 29 0a 20 20 22 52 75 6e 20  | n.ledger-do-report.(cmd)..."Run. | 
| 20120 |  61 20 72 65 70 6f 72 74 20 63 6f 6d 6d 61 6e 64    20 6c 69 6e 65 20 43 4d 44 2e 0a 43 4d 44 20 6d  | a.report.command.line.CMD..CMD.m | 
| 20140 |  61 79 20 63 6f 6e 74 61 69 6e 20 61 20 28 73 68    65 6c 6c 2d 71 75 6f 74 65 64 29 20 76 65 72 73  | ay.contain.a.(shell-quoted).vers | 
| 20160 |  69 6f 6e 20 6f 66 0a 60 6c 65 64 67 65 72 2d 72    65 70 6f 72 74 2d 2d 65 78 74 72 61 2d 61 72 67  | ion.of.`ledger-report--extra-arg | 
| 20180 |  73 2d 6d 61 72 6b 65 72 27 2c 20 77 68 69 63 68    20 77 69 6c 6c 20 62 65 20 72 65 70 6c 61 63 65  | s-marker',.which.will.be.replace | 
| 201a0 |  64 20 62 79 0a 61 72 67 75 6d 65 6e 74 73 20 72    65 74 75 72 6e 65 64 20 62 79 20 60 6c 65 64 67  | d.by.arguments.returned.by.`ledg | 
| 201c0 |  65 72 2d 72 65 70 6f 72 74 2d 2d 63 6f 6d 70 75    74 65 2d 65 78 74 72 61 2d 61 72 67 73 27 2e 22  | er-report--compute-extra-args'." | 
| 201e0 |  0a 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 70    6f 69 6e 74 2d 6d 69 6e 29 29 0a 20 20 28 6c 65  | ...(goto-char.(point-min))...(le | 
| 20200 |  74 2a 20 28 28 6d 61 72 6b 65 72 20 6c 65 64 67    65 72 2d 72 65 70 6f 72 74 2d 2d 65 78 74 72 61  | t*.((marker.ledger-report--extra | 
| 20220 |  2d 61 72 67 73 2d 6d 61 72 6b 65 72 29 0a 20 20    20 20 20 20 20 20 20 28 6d 61 72 6b 65 72 2d 72  | -args-marker)..........(marker-r | 
| 20240 |  65 20 28 63 6f 6e 63 61 74 20 22 20 2a 22 20 28    72 65 67 65 78 70 2d 71 75 6f 74 65 20 6d 61 72  | e.(concat.".*".(regexp-quote.mar | 
| 20260 |  6b 65 72 29 29 29 0a 20 20 20 20 20 20 20 20 20    28 61 72 67 73 20 28 6c 65 64 67 65 72 2d 72 65  | ker)))..........(args.(ledger-re | 
| 20280 |  70 6f 72 74 2d 2d 63 6f 6d 70 75 74 65 2d 65 78    74 72 61 2d 61 72 67 73 20 63 6d 64 29 29 0a 20  | port--compute-extra-args.cmd)).. | 
| 202a0 |  20 20 20 20 20 20 20 20 28 61 72 67 73 2d 73 74    72 20 28 63 6f 6e 63 61 74 20 22 20 22 20 28 6d  | ........(args-str.(concat.".".(m | 
| 202c0 |  61 70 63 6f 6e 63 61 74 20 23 27 73 68 65 6c 6c    2d 71 75 6f 74 65 2d 61 72 67 75 6d 65 6e 74 20  | apconcat.#'shell-quote-argument. | 
| 202e0 |  61 72 67 73 20 22 20 22 29 29 29 0a 20 20 20 20    20 20 20 20 20 28 63 6c 65 61 6e 2d 63 6d 64 20  | args.".")))..........(clean-cmd. | 
| 20300 |  28 72 65 70 6c 61 63 65 2d 72 65 67 65 78 70 2d    69 6e 2d 73 74 72 69 6e 67 20 6d 61 72 6b 65 72  | (replace-regexp-in-string.marker | 
| 20320 |  2d 72 65 20 22 22 20 63 6d 64 20 74 20 74 29 29    0a 20 20 20 20 20 20 20 20 20 28 72 65 61 6c 2d  | -re."".cmd.t.t))..........(real- | 
| 20340 |  63 6d 64 20 28 72 65 70 6c 61 63 65 2d 72 65 67    65 78 70 2d 69 6e 2d 73 74 72 69 6e 67 20 6d 61  | cmd.(replace-regexp-in-string.ma | 
| 20360 |  72 6b 65 72 2d 72 65 20 61 72 67 73 2d 73 74 72    20 63 6d 64 20 74 20 74 29 29 29 0a 20 20 20 20  | rker-re.args-str.cmd.t.t)))..... | 
| 20380 |  28 73 65 74 71 20 68 65 61 64 65 72 2d 6c 69 6e    65 2d 66 6f 72 6d 61 74 0a 20 20 20 20 20 20 20  | (setq.header-line-format........ | 
| 203a0 |  20 20 20 28 61 6e 64 20 6c 65 64 67 65 72 2d 72    65 70 6f 72 74 2d 75 73 65 2d 68 65 61 64 65 72  | ...(and.ledger-report-use-header | 
| 203c0 |  2d 6c 69 6e 65 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 60 28 3a 65 76 61 6c 20 28 6c 65  | -line................`(:eval.(le | 
| 203e0 |  64 67 65 72 2d 72 65 70 6f 72 74 2d 2d 63 6f 6d    70 75 74 65 2d 68 65 61 64 65 72 2d 6c 69 6e 65  | dger-report--compute-header-line | 
| 20400 |  20 2c 63 6c 65 61 6e 2d 63 6d 64 29 29 29 29 0a    20 20 20 20 28 75 6e 6c 65 73 73 20 6c 65 64 67  | .,clean-cmd)))).....(unless.ledg | 
| 20420 |  65 72 2d 72 65 70 6f 72 74 2d 75 73 65 2d 68 65    61 64 65 72 2d 6c 69 6e 65 0a 20 20 20 20 20 20  | er-report-use-header-line....... | 
| 20440 |  28 69 6e 73 65 72 74 20 28 66 6f 72 6d 61 74 20    22 52 65 70 6f 72 74 3a 20 25 73 5c 6e 22 20 6c  | (insert.(format."Report:.%s\n".l | 
| 20460 |  65 64 67 65 72 2d 72 65 70 6f 72 74 2d 6e 61 6d    65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | edger-report-name).............. | 
| 20480 |  20 28 66 6f 72 6d 61 74 20 22 43 6f 6d 6d 61 6e    64 3a 20 25 73 5c 6e 22 20 63 6c 65 61 6e 2d 63  | .(format."Command:.%s\n".clean-c | 
| 204a0 |  6d 64 29 0a 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  | md)...............(make-string.( | 
| 204c0 |  2d 20 28 77 69 6e 64 6f 77 2d 77 69 64 74 68 29    20 31 29 20 3f 3d 29 0a 20 20 20 20 20 20 20 20  | -.(window-width).1).?=)......... | 
| 204e0 |  20 20 20 20 20 20 22 5c 6e 5c 6e 22 29 29 0a 20    20 20 20 28 6c 65 74 2a 20 28 28 72 65 70 6f 72  | ......"\n\n")).....(let*.((repor | 
| 20500 |  74 20 28 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64    2d 74 6f 2d 73 74 72 69 6e 67 20 72 65 61 6c 2d  | t.(shell-command-to-string.real- | 
| 20520 |  63 6d 64 29 29 29 0a 20 20 20 20 20 20 28 77 68    65 6e 20 6c 65 64 67 65 72 2d 72 65 70 6f 72 74  | cmd))).......(when.ledger-report | 
| 20540 |  2d 75 73 65 2d 6e 61 74 69 76 65 2d 68 69 67 68    6c 69 67 68 74 69 6e 67 0a 20 20 20 20 20 20 20  | -use-native-highlighting........ | 
| 20560 |  20 28 73 65 74 71 20 72 65 70 6f 72 74 20 28 61    6e 73 69 2d 63 6f 6c 6f 72 2d 61 70 70 6c 79 20  | .(setq.report.(ansi-color-apply. | 
| 20580 |  72 65 70 6f 72 74 29 29 29 0a 20 20 20 20 20 20    28 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e 0a  | report))).......(save-excursion. | 
| 205a0 |  20 20 20 20 20 20 20 20 28 69 6e 73 65 72 74 20    72 65 70 6f 72 74 29 29 0a 20 20 20 20 20 20 28  | ........(insert.report)).......( | 
| 205c0 |  77 68 65 6e 20 28 6c 65 64 67 65 72 2d 72 65 70    6f 72 74 2d 2d 63 6d 64 2d 6e 65 65 64 73 2d 6c  | when.(ledger-report--cmd-needs-l | 
| 205e0 |  69 6e 6b 73 2d 70 20 63 6d 64 29 0a 20 20 20 20    20 20 20 20 28 73 61 76 65 2d 65 78 63 75 72 73  | inks-p.cmd).........(save-excurs | 
| 20600 |  69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 28 6c    65 64 67 65 72 2d 72 65 70 6f 72 74 2d 2d 61 64  | ion...........(ledger-report--ad | 
| 20620 |  64 2d 6c 69 6e 6b 73 29 29 29 29 29 29 0a 0a 28    64 65 66 75 6e 20 6c 65 64 67 65 72 2d 72 65 70  | d-links))))))..(defun.ledger-rep | 
| 20640 |  6f 72 74 2d 76 69 73 69 74 2d 73 6f 75 72 63 65    20 28 29 0a 20 20 22 56 69 73 69 74 20 74 68 65  | ort-visit-source.()..."Visit.the | 
| 20660 |  20 74 72 61 6e 73 61 63 74 69 6f 6e 20 75 6e 64    65 72 20 70 6f 69 6e 74 20 69 6e 20 74 68 65 20  | .transaction.under.point.in.the. | 
| 20680 |  72 65 70 6f 72 74 20 77 69 6e 64 6f 77 2e 22 0a    20 20 28 69 6e 74 65 72 61 63 74 69 76 65 29 0a  | report.window."...(interactive). | 
| 206a0 |  20 20 28 6c 65 74 2a 20 28 28 70 72 6f 70 20 28    67 65 74 2d 74 65 78 74 2d 70 72 6f 70 65 72 74  | ..(let*.((prop.(get-text-propert | 
| 206c0 |  79 20 28 70 6f 69 6e 74 29 20 27 6c 65 64 67 65    72 2d 73 6f 75 72 63 65 29 29 0a 20 20 20 20 20  | y.(point).'ledger-source))...... | 
| 206e0 |  20 20 20 20 28 66 69 6c 65 20 28 63 61 72 20 70    72 6f 70 29 29 0a 20 20 20 20 20 20 20 20 20 28  | ....(file.(car.prop))..........( | 
| 20700 |  6c 69 6e 65 20 28 63 64 72 20 70 72 6f 70 29 29    29 0a 20 20 20 20 28 77 68 65 6e 20 28 61 6e 64  | line.(cdr.prop))).....(when.(and | 
| 20720 |  20 66 69 6c 65 20 6c 69 6e 65 29 0a 20 20 20 20    20 20 28 66 69 6e 64 2d 66 69 6c 65 2d 6f 74 68  | .file.line).......(find-file-oth | 
| 20740 |  65 72 2d 77 69 6e 64 6f 77 20 66 69 6c 65 29 0a    20 20 20 20 20 20 28 77 69 64 65 6e 29 0a 20 20  | er-window.file).......(widen)... | 
| 20760 |  20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28    70 6f 69 6e 74 2d 6d 69 6e 29 29 0a 20 20 20 20  | ....(goto-char.(point-min))..... | 
| 20780 |  20 20 28 66 6f 72 77 61 72 64 2d 6c 69 6e 65 20    28 31 2d 20 6c 69 6e 65 29 29 0a 20 20 20 20 20  | ..(forward-line.(1-.line))...... | 
| 207a0 |  20 28 6c 65 64 67 65 72 2d 6e 61 76 69 67 61 74    65 2d 62 65 67 69 6e 6e 69 6e 67 2d 6f 66 2d 78  | .(ledger-navigate-beginning-of-x | 
| 207c0 |  61 63 74 29 29 29 29 0a 0a 28 64 65 66 75 6e 20    6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d 67 6f  | act))))..(defun.ledger-report-go | 
| 207e0 |  74 6f 20 28 29 0a 20 20 22 47 6f 74 6f 20 74 68    65 20 6c 65 64 67 65 72 20 72 65 70 6f 72 74 20  | to.()..."Goto.the.ledger.report. | 
| 20800 |  62 75 66 66 65 72 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  | buffer."...(interactive)...(let. | 
| 20820 |  28 28 72 62 75 66 20 28 67 65 74 2d 62 75 66 66    65 72 20 6c 65 64 67 65 72 2d 72 65 70 6f 72 74  | ((rbuf.(get-buffer.ledger-report | 
| 20840 |  2d 62 75 66 66 65 72 2d 6e 61 6d 65 29 29 29 0a    20 20 20 20 28 69 66 20 28 6e 6f 74 20 72 62 75  | -buffer-name))).....(if.(not.rbu | 
| 20860 |  66 29 0a 20 20 20 20 20 20 20 20 28 65 72 72 6f    72 20 22 54 68 65 72 65 20 69 73 20 6e 6f 20 6c  | f).........(error."There.is.no.l | 
| 20880 |  65 64 67 65 72 20 72 65 70 6f 72 74 20 62 75 66    66 65 72 22 29 29 0a 20 20 20 20 28 70 6f 70 2d  | edger.report.buffer")).....(pop- | 
| 208a0 |  74 6f 2d 62 75 66 66 65 72 20 72 62 75 66 29 0a    20 20 20 20 28 6c 65 64 67 65 72 2d 72 65 70 6f  | to-buffer.rbuf).....(ledger-repo | 
| 208c0 |  72 74 2d 6d 61 79 62 65 2d 73 68 72 69 6e 6b 2d    77 69 6e 64 6f 77 29 29 29 0a 0a 28 64 65 66 75  | rt-maybe-shrink-window)))..(defu | 
| 208e0 |  6e 20 6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d    72 65 64 6f 20 28 26 6f 70 74 69 6f 6e 61 6c 20  | n.ledger-report-redo.(&optional. | 
| 20900 |  5f 69 67 6e 6f 72 65 2d 61 75 74 6f 20 5f 6e 6f    63 6f 6e 66 69 72 6d 29 0a 20 20 22 52 65 64 6f  | _ignore-auto._noconfirm)..."Redo | 
| 20920 |  20 74 68 65 20 72 65 70 6f 72 74 20 69 6e 20 74    68 65 20 63 75 72 72 65 6e 74 20 6c 65 64 67 65  | .the.report.in.the.current.ledge | 
| 20940 |  72 20 72 65 70 6f 72 74 20 62 75 66 66 65 72 2e    0a 49 47 4e 4f 52 45 2d 41 55 54 4f 20 61 6e 64  | r.report.buffer..IGNORE-AUTO.and | 
| 20960 |  20 4e 4f 43 4f 4e 46 49 52 4d 20 61 72 65 20 66    6f 72 20 63 6f 6d 70 61 74 69 62 69 6c 69 74 79  | .NOCONFIRM.are.for.compatibility | 
| 20980 |  20 77 69 74 68 0a 60 72 65 76 65 72 74 2d 62 75    66 66 65 72 2d 66 75 6e 63 74 69 6f 6e 27 20 61  | .with.`revert-buffer-function'.a | 
| 209a0 |  6e 64 20 61 72 65 20 63 75 72 72 65 6e 74 6c 79    20 69 67 6e 6f 72 65 64 2e 22 0a 20 20 28 69 6e  | nd.are.currently.ignored."...(in | 
| 209c0 |  74 65 72 61 63 74 69 76 65 29 0a 20 20 28 75 6e    6c 65 73 73 20 28 6f 72 20 28 64 65 72 69 76 65  | teractive)...(unless.(or.(derive | 
| 209e0 |  64 2d 6d 6f 64 65 2d 70 20 27 6c 65 64 67 65 72    2d 6d 6f 64 65 29 0a 20 20 20 20 20 20 20 20 20  | d-mode-p.'ledger-mode).......... | 
| 20a00 |  20 20 20 20 20 28 64 65 72 69 76 65 64 2d 6d 6f    64 65 2d 70 20 27 6c 65 64 67 65 72 2d 72 65 70  | .....(derived-mode-p.'ledger-rep | 
| 20a20 |  6f 72 74 2d 6d 6f 64 65 29 29 0a 20 20 20 20 28    75 73 65 72 2d 65 72 72 6f 72 20 22 4e 6f 74 20  | ort-mode)).....(user-error."Not. | 
| 20a40 |  69 6e 20 61 20 6c 65 64 67 65 72 2d 6d 6f 64 65    20 6f 72 20 6c 65 64 67 65 72 2d 72 65 70 6f 72  | in.a.ledger-mode.or.ledger-repor | 
| 20a60 |  74 2d 6d 6f 64 65 20 62 75 66 66 65 72 22 29 29    0a 20 20 28 6c 65 74 20 28 28 63 75 72 2d 62 75  | t-mode.buffer"))...(let.((cur-bu | 
| 20a80 |  66 20 28 63 75 72 72 65 6e 74 2d 62 75 66 66 65    72 29 29 29 0a 20 20 20 20 28 77 68 65 6e 20 28  | f.(current-buffer))).....(when.( | 
| 20aa0 |  61 6e 64 20 6c 65 64 67 65 72 2d 72 65 70 6f 72    74 2d 61 75 74 6f 2d 72 65 66 72 65 73 68 0a 20  | and.ledger-report-auto-refresh.. | 
| 20ac0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 67    65 74 2d 62 75 66 66 65 72 20 6c 65 64 67 65 72  | ..............(get-buffer.ledger | 
| 20ae0 |  2d 72 65 70 6f 72 74 2d 62 75 66 66 65 72 2d 6e    61 6d 65 29 29 0a 20 20 20 20 20 20 28 70 6f 70  | -report-buffer-name)).......(pop | 
| 20b00 |  2d 74 6f 2d 62 75 66 66 65 72 20 28 67 65 74 2d    62 75 66 66 65 72 20 6c 65 64 67 65 72 2d 72 65  | -to-buffer.(get-buffer.ledger-re | 
| 20b20 |  70 6f 72 74 2d 62 75 66 66 65 72 2d 6e 61 6d 65    29 29 0a 20 20 20 20 20 20 28 6c 65 64 67 65 72  | port-buffer-name)).......(ledger | 
| 20b40 |  2d 72 65 70 6f 72 74 2d 6d 61 79 62 65 2d 73 68    72 69 6e 6b 2d 77 69 6e 64 6f 77 29 0a 20 20 20  | -report-maybe-shrink-window).... | 
| 20b60 |  20 20 20 28 73 65 74 71 20 6c 65 64 67 65 72 2d    72 65 70 6f 72 74 2d 63 75 72 73 6f 72 2d 6c 69  | ...(setq.ledger-report-cursor-li | 
| 20b80 |  6e 65 2d 6e 75 6d 62 65 72 20 28 6c 69 6e 65 2d    6e 75 6d 62 65 72 2d 61 74 2d 70 6f 73 29 29 0a  | ne-number.(line-number-at-pos)). | 
| 20ba0 |  20 20 20 20 20 20 28 77 69 74 68 2d 73 69 6c 65    6e 74 2d 6d 6f 64 69 66 69 63 61 74 69 6f 6e 73  | ......(with-silent-modifications | 
| 20bc0 |  0a 20 20 20 20 20 20 20 20 28 65 72 61 73 65 2d    62 75 66 66 65 72 29 0a 20 20 20 20 20 20 20 20  | .........(erase-buffer)......... | 
| 20be0 |  28 6c 65 64 67 65 72 2d 64 6f 2d 72 65 70 6f 72    74 20 6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d  | (ledger-do-report.ledger-report- | 
| 20c00 |  63 6d 64 29 0a 20 20 20 20 20 20 20 20 28 77 68    65 6e 20 6c 65 64 67 65 72 2d 72 65 70 6f 72 74  | cmd).........(when.ledger-report | 
| 20c20 |  2d 69 73 2d 72 65 76 65 72 73 65 64 0a 20 20 20    20 20 20 20 20 20 20 28 6c 65 64 67 65 72 2d 72  | -is-reversed...........(ledger-r | 
| 20c40 |  65 70 6f 72 74 2d 72 65 76 65 72 73 65 2d 6c 69    6e 65 73 29 29 0a 20 20 20 20 20 20 20 20 28 77  | eport-reverse-lines)).........(w | 
| 20c60 |  68 65 6e 20 6c 65 64 67 65 72 2d 72 65 70 6f 72    74 2d 61 75 74 6f 2d 72 65 66 72 65 73 68 2d 73  | hen.ledger-report-auto-refresh-s | 
| 20c80 |  74 69 63 6b 79 2d 63 75 72 73 6f 72 0a 20 20 20    20 20 20 20 20 20 20 28 66 6f 72 77 61 72 64 2d  | ticky-cursor...........(forward- | 
| 20ca0 |  6c 69 6e 65 20 28 2d 20 6c 65 64 67 65 72 2d 72    65 70 6f 72 74 2d 63 75 72 73 6f 72 2d 6c 69 6e  | line.(-.ledger-report-cursor-lin | 
| 20cc0 |  65 2d 6e 75 6d 62 65 72 20 35 29 29 29 29 0a 20    20 20 20 20 20 28 72 75 6e 2d 68 6f 6f 6b 73 20  | e-number.5)))).......(run-hooks. | 
| 20ce0 |  27 6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d 61    66 74 65 72 2d 72 65 70 6f 72 74 2d 68 6f 6f 6b  | 'ledger-report-after-report-hook | 
| 20d00 |  29 0a 20 20 20 20 20 20 28 70 6f 70 2d 74 6f 2d    62 75 66 66 65 72 20 63 75 72 2d 62 75 66 29 29  | ).......(pop-to-buffer.cur-buf)) | 
| 20d20 |  29 29 0a 0a 28 64 65 66 75 6e 20 6c 65 64 67 65    72 2d 72 65 70 6f 72 74 2d 71 75 69 74 20 28 29  | ))..(defun.ledger-report-quit.() | 
| 20d40 |  0a 20 20 22 51 75 69 74 20 74 68 65 20 6c 65 64    67 65 72 20 72 65 70 6f 72 74 20 62 75 66 66 65  | ..."Quit.the.ledger.report.buffe | 
| 20d60 |  72 20 61 6e 64 20 6b 69 6c 6c 20 69 74 73 20 62    75 66 66 65 72 2e 22 0a 20 20 28 69 6e 74 65 72  | r.and.kill.its.buffer."...(inter | 
| 20d80 |  61 63 74 69 76 65 29 0a 20 20 28 75 6e 6c 65 73    73 20 28 62 75 66 66 65 72 2d 6c 69 76 65 2d 70  | active)...(unless.(buffer-live-p | 
| 20da0 |  20 28 67 65 74 2d 62 75 66 66 65 72 20 6c 65 64    67 65 72 2d 72 65 70 6f 72 74 2d 62 75 66 66 65  | .(get-buffer.ledger-report-buffe | 
| 20dc0 |  72 2d 6e 61 6d 65 29 29 0a 20 20 20 20 28 75 73    65 72 2d 65 72 72 6f 72 20 22 4e 6f 20 6c 65 64  | r-name)).....(user-error."No.led | 
| 20de0 |  67 65 72 20 72 65 70 6f 72 74 20 62 75 66 66 65    72 22 29 29 0a 20 20 28 71 75 69 74 2d 77 69 6e  | ger.report.buffer"))...(quit-win | 
| 20e00 |  64 6f 77 73 2d 6f 6e 20 6c 65 64 67 65 72 2d 72    65 70 6f 72 74 2d 62 75 66 66 65 72 2d 6e 61 6d  | dows-on.ledger-report-buffer-nam | 
| 20e20 |  65 20 27 6b 69 6c 6c 29 29 0a 0a 28 64 65 66 69    6e 65 2d 6f 62 73 6f 6c 65 74 65 2d 66 75 6e 63  | e.'kill))..(define-obsolete-func | 
| 20e40 |  74 69 6f 6e 2d 61 6c 69 61 73 20 27 6c 65 64 67    65 72 2d 72 65 70 6f 72 74 2d 6b 69 6c 6c 20 23  | tion-alias.'ledger-report-kill.# | 
| 20e60 |  27 6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d 71    75 69 74 20 22 32 30 31 38 2d 30 33 2d 31 38 22  | 'ledger-report-quit."2018-03-18" | 
| 20e80 |  29 0a 0a 28 64 65 66 75 6e 20 6c 65 64 67 65 72    2d 72 65 70 6f 72 74 2d 65 64 69 74 2d 72 65 70  | )..(defun.ledger-report-edit-rep | 
| 20ea0 |  6f 72 74 73 20 28 29 0a 20 20 22 45 64 69 74 20    74 68 65 20 64 65 66 69 6e 65 64 20 6c 65 64 67  | orts.()..."Edit.the.defined.ledg | 
| 20ec0 |  65 72 20 72 65 70 6f 72 74 73 2e 22 0a 20 20 28    69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20 28  | er.reports."...(interactive)...( | 
| 20ee0 |  63 75 73 74 6f 6d 69 7a 65 2d 76 61 72 69 61 62    6c 65 20 27 6c 65 64 67 65 72 2d 72 65 70 6f 72  | customize-variable.'ledger-repor | 
| 20f00 |  74 73 29 29 0a 0a 28 64 65 66 75 6e 20 6c 65 64    67 65 72 2d 72 65 70 6f 72 74 2d 65 64 69 74 2d  | ts))..(defun.ledger-report-edit- | 
| 20f20 |  72 65 70 6f 72 74 20 28 29 0a 20 20 22 45 64 69    74 20 74 68 65 20 63 75 72 72 65 6e 74 20 72 65  | report.()..."Edit.the.current.re | 
| 20f40 |  70 6f 72 74 20 63 6f 6d 6d 61 6e 64 20 69 6e 20    74 68 65 20 6d 69 6e 69 20 62 75 66 66 65 72 20  | port.command.in.the.mini.buffer. | 
| 20f60 |  61 6e 64 20 72 65 2d 72 75 6e 20 74 68 65 20 72    65 70 6f 72 74 2e 22 0a 20 20 28 69 6e 74 65 72  | and.re-run.the.report."...(inter | 
| 20f80 |  61 63 74 69 76 65 29 0a 20 20 28 73 65 74 71 20    6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d 63 6d  | active)...(setq.ledger-report-cm | 
| 20fa0 |  64 20 28 6c 65 64 67 65 72 2d 72 65 70 6f 72 74    2d 72 65 61 64 2d 63 6f 6d 6d 61 6e 64 20 6c 65  | d.(ledger-report-read-command.le | 
| 20fc0 |  64 67 65 72 2d 72 65 70 6f 72 74 2d 63 6d 64 29    29 0a 20 20 28 6c 65 64 67 65 72 2d 72 65 70 6f  | dger-report-cmd))...(ledger-repo | 
| 20fe0 |  72 74 2d 72 65 64 6f 29 29 0a 0a 28 64 65 66 69    6e 65 2d 6f 62 73 6f 6c 65 74 65 2d 66 75 6e 63  | rt-redo))..(define-obsolete-func | 
| 21000 |  74 69 6f 6e 2d 61 6c 69 61 73 20 27 6c 65 64 67    65 72 2d 72 65 70 6f 72 74 2d 73 65 6c 65 63 74  | tion-alias.'ledger-report-select | 
| 21020 |  2d 72 65 70 6f 72 74 20 23 27 6c 65 64 67 65 72    2d 72 65 70 6f 72 74 20 22 6c 65 64 67 65 72 20  | -report.#'ledger-report."ledger. | 
| 21040 |  34 2e 30 2e 30 22 29 0a 0a 28 64 65 66 75 6e 20    6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d 72 65  | 4.0.0")..(defun.ledger-report-re | 
| 21060 |  61 64 2d 6e 65 77 2d 6e 61 6d 65 20 28 29 0a 20    20 22 52 65 61 64 20 74 68 65 20 6e 61 6d 65 20  | ad-new-name.()..."Read.the.name. | 
| 21080 |  66 6f 72 20 61 20 6e 65 77 20 72 65 70 6f 72 74    20 66 72 6f 6d 20 74 68 65 20 6d 69 6e 69 62 75  | for.a.new.report.from.the.minibu | 
| 210a0 |  66 66 65 72 2e 22 0a 20 20 28 6c 65 74 20 28 28    6e 61 6d 65 20 22 22 29 29 0a 20 20 20 20 28 77  | ffer."...(let.((name."")).....(w | 
| 210c0 |  68 69 6c 65 20 28 73 74 72 69 6e 67 2d 65 6d 70    74 79 2d 70 20 6e 61 6d 65 29 0a 20 20 20 20 20  | hile.(string-empty-p.name)...... | 
| 210e0 |  20 28 73 65 74 71 20 6e 61 6d 65 20 28 72 65 61    64 2d 66 72 6f 6d 2d 6d 69 6e 69 62 75 66 66 65  | .(setq.name.(read-from-minibuffe | 
| 21100 |  72 20 22 52 65 70 6f 72 74 20 6e 61 6d 65 3a 20    22 20 6e 69 6c 20 6e 69 6c 20 6e 69 6c 0a 20 20  | r."Report.name:.".nil.nil.nil... | 
| 21120 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 21140 |  20 20 20 20 20 27 6c 65 64 67 65 72 2d 72 65 70    6f 72 74 2d 6e 61 6d 65 2d 70 72 6f 6d 70 74 2d  | .....'ledger-report-name-prompt- | 
| 21160 |  68 69 73 74 6f 72 79 29 29 29 0a 20 20 20 20 6e    61 6d 65 29 29 0a 0a 28 64 65 66 75 6e 20 6c 65  | history))).....name))..(defun.le | 
| 21180 |  64 67 65 72 2d 72 65 70 6f 72 74 2d 73 61 76 65    20 28 29 0a 20 20 22 53 61 76 65 20 74 68 65 20  | dger-report-save.()..."Save.the. | 
| 211a0 |  63 75 72 72 65 6e 74 20 72 65 70 6f 72 74 20 63    6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 61 73 20 61  | current.report.command.line.as.a | 
| 211c0 |  20 6e 61 6d 65 64 20 72 65 70 6f 72 74 2e 22 0a    20 20 28 69 6e 74 65 72 61 63 74 69 76 65 29 0a  | .named.report."...(interactive). | 
| 211e0 |  20 20 28 6c 65 64 67 65 72 2d 72 65 70 6f 72 74    2d 67 6f 74 6f 29 0a 20 20 28 77 68 65 6e 20 28  | ..(ledger-report-goto)...(when.( | 
| 21200 |  73 74 72 69 6e 67 2d 65 6d 70 74 79 2d 70 20 6c    65 64 67 65 72 2d 72 65 70 6f 72 74 2d 6e 61 6d  | string-empty-p.ledger-report-nam | 
| 21220 |  65 29 0a 20 20 20 20 28 73 65 74 71 20 6c 65 64    67 65 72 2d 72 65 70 6f 72 74 2d 6e 61 6d 65 20  | e).....(setq.ledger-report-name. | 
| 21240 |  28 6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d 72    65 61 64 2d 6e 65 77 2d 6e 61 6d 65 29 29 29 0a  | (ledger-report-read-new-name))). | 
| 21260 |  0a 20 20 28 77 68 65 6e 2d 6c 65 74 20 28 28 65    78 69 73 74 69 6e 67 2d 6e 61 6d 65 20 28 6c 65  | ...(when-let.((existing-name.(le | 
| 21280 |  64 67 65 72 2d 72 65 70 6f 72 74 2d 6e 61 6d 65    2d 65 78 69 73 74 73 20 6c 65 64 67 65 72 2d 72  | dger-report-name-exists.ledger-r | 
| 212a0 |  65 70 6f 72 74 2d 6e 61 6d 65 29 29 29 0a 20 20    20 20 28 63 6f 6e 64 20 28 28 79 2d 6f 72 2d 6e  | eport-name))).....(cond.((y-or-n | 
| 212c0 |  2d 70 20 28 66 6f 72 6d 61 74 20 22 4f 76 65 72    77 72 69 74 65 20 65 78 69 73 74 69 6e 67 20 72  | -p.(format."Overwrite.existing.r | 
| 212e0 |  65 70 6f 72 74 20 6e 61 6d 65 64 20 27 25 73 27    3f 20 22 0a 20 20 20 20 20 20 20 20 20 20 20 20  | eport.named.'%s'?."............. | 
| 21300 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d 6e  | .................ledger-report-n | 
| 21320 |  61 6d 65 29 29 0a 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  | ame))............(if.(string-equ | 
| 21340 |  61 6c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 6c 65 64 67 65 72 2d 72 65 70 6f 72 74  | al.................ledger-report | 
| 21360 |  2d 63 6d 64 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 63 61 72 20 28 63 64 72 20 28  | -cmd.................(car.(cdr.( | 
| 21380 |  61 73 73 71 20 65 78 69 73 74 69 6e 67 2d 6e 61    6d 65 20 6c 65 64 67 65 72 2d 72 65 70 6f 72 74  | assq.existing-name.ledger-report | 
| 213a0 |  73 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 6d 65 73 73 61 67 65 20 22 4e  | s))))................(message."N | 
| 213c0 |  6f 74 68 69 6e 67 20 74 6f 20 73 61 76 65 2e 20    43 75 72 72 65 6e 74 20 63 6f 6d 6d 61 6e 64 20  | othing.to.save..Current.command. | 
| 213e0 |  69 73 20 69 64 65 6e 74 69 63 61 6c 20 74 6f 20    65 78 69 73 74 69 6e 67 20 73 61 76 65 64 20 6f  | is.identical.to.existing.saved.o | 
| 21400 |  6e 65 22 29 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 28 73 65 74 71 20 6c 65 64 67 65 72 2d 72  | ne")..............(setq.ledger-r | 
| 21420 |  65 70 6f 72 74 73 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 61 73 73 71 2d  | eports....................(assq- | 
| 21440 |  64 65 6c 65 74 65 2d 61 6c 6c 20 65 78 69 73 74    69 6e 67 2d 6e 61 6d 65 20 6c 65 64 67 65 72 2d  | delete-all.existing-name.ledger- | 
| 21460 |  72 65 70 6f 72 74 73 29 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 28 6c 65 64 67 65 72 2d 72  | reports))..............(ledger-r | 
| 21480 |  65 70 6f 72 74 73 2d 61 64 64 20 6c 65 64 67 65    72 2d 72 65 70 6f 72 74 2d 6e 61 6d 65 20 6c 65  | eports-add.ledger-report-name.le | 
| 214a0 |  64 67 65 72 2d 72 65 70 6f 72 74 2d 63 6d 64 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c  | dger-report-cmd)..............(l | 
| 214c0 |  65 64 67 65 72 2d 72 65 70 6f 72 74 73 2d 63 75    73 74 6f 6d 2d 73 61 76 65 29 29 29 0a 20 20 20  | edger-reports-custom-save))).... | 
| 214e0 |  20 20 20 20 20 20 20 28 74 0a 20 20 20 20 20 20    20 20 20 20 20 28 73 65 74 71 20 6c 65 64 67 65  | .......(t............(setq.ledge | 
| 21500 |  72 2d 72 65 70 6f 72 74 2d 6e 61 6d 65 20 28 6c    65 64 67 65 72 2d 72 65 70 6f 72 74 2d 72 65 61  | r-report-name.(ledger-report-rea | 
| 21520 |  64 2d 6e 65 77 2d 6e 61 6d 65 29 29 0a 20 20 20    20 20 20 20 20 20 20 20 28 6c 65 64 67 65 72 2d  | d-new-name))............(ledger- | 
| 21540 |  72 65 70 6f 72 74 73 2d 61 64 64 20 6c 65 64 67    65 72 2d 72 65 70 6f 72 74 2d 6e 61 6d 65 20 6c  | reports-add.ledger-report-name.l | 
| 21560 |  65 64 67 65 72 2d 72 65 70 6f 72 74 2d 63 6d 64    29 0a 20 20 20 20 20 20 20 20 20 20 20 28 6c 65  | edger-report-cmd)............(le | 
| 21580 |  64 67 65 72 2d 72 65 70 6f 72 74 73 2d 63 75 73    74 6f 6d 2d 73 61 76 65 29 29 29 29 29 0a 0a 28  | dger-reports-custom-save)))))..( | 
| 215a0 |  64 65 66 75 6e 20 6c 65 64 67 65 72 2d 72 65 70    6f 72 74 2d 70 72 65 76 69 6f 75 73 2d 6d 6f 6e  | defun.ledger-report-previous-mon | 
| 215c0 |  74 68 20 28 29 0a 20 20 22 52 65 62 75 69 6c 64    20 72 65 70 6f 72 74 20 77 69 74 68 20 74 72 61  | th.()..."Rebuild.report.with.tra | 
| 215e0 |  6e 73 61 63 74 69 6f 6e 73 20 66 72 6f 6d 20 74    68 65 20 70 72 65 76 69 6f 75 73 20 6d 6f 6e 74  | nsactions.from.the.previous.mont | 
| 21600 |  68 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69    76 65 29 0a 20 20 28 6c 65 64 67 65 72 2d 72 65  | h."...(interactive)...(ledger-re | 
| 21620 |  70 6f 72 74 2d 2d 63 68 61 6e 67 65 2d 6d 6f 6e    74 68 20 2d 31 29 29 0a 0a 28 64 65 66 75 6e 20  | port--change-month.-1))..(defun. | 
| 21640 |  6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d 6e 65    78 74 2d 6d 6f 6e 74 68 20 28 29 0a 20 20 22 52  | ledger-report-next-month.()..."R | 
| 21660 |  65 62 75 69 6c 64 20 72 65 70 6f 72 74 20 77 69    74 68 20 74 72 61 6e 73 61 63 74 69 6f 6e 73 20  | ebuild.report.with.transactions. | 
| 21680 |  66 72 6f 6d 20 74 68 65 20 6e 65 78 74 20 6d 6f    6e 74 68 2e 22 0a 20 20 28 69 6e 74 65 72 61 63  | from.the.next.month."...(interac | 
| 216a0 |  74 69 76 65 29 0a 20 20 28 6c 65 64 67 65 72 2d    72 65 70 6f 72 74 2d 2d 63 68 61 6e 67 65 2d 6d  | tive)...(ledger-report--change-m | 
| 216c0 |  6f 6e 74 68 20 31 29 29 0a 0a 28 64 65 66 75 6e    20 6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d 74  | onth.1))..(defun.ledger-report-t | 
| 216e0 |  6f 67 67 6c 65 2d 64 65 66 61 75 6c 74 2d 63 6f    6d 6d 6f 64 69 74 79 20 28 29 0a 20 20 22 54 6f  | oggle-default-commodity.()..."To | 
| 21700 |  67 67 6c 65 20 65 78 63 68 61 6e 67 65 20 6f 66    20 72 65 70 6f 72 74 65 64 20 61 6d 6f 75 6e 74  | ggle.exchange.of.reported.amount | 
| 21720 |  73 20 74 6f 20 60 6c 65 64 67 65 72 2d 72 65 63    6f 6e 63 69 6c 65 2d 64 65 66 61 75 6c 74 2d 63  | s.to.`ledger-reconcile-default-c | 
| 21740 |  6f 6d 6d 6f 64 69 74 79 27 2e 22 0a 20 20 28 69    6e 74 65 72 61 63 74 69 76 65 29 0a 20 20 28 75  | ommodity'."...(interactive)...(u | 
| 21760 |  6e 6c 65 73 73 20 28 64 65 72 69 76 65 64 2d 6d    6f 64 65 2d 70 20 27 6c 65 64 67 65 72 2d 72 65  | nless.(derived-mode-p.'ledger-re | 
| 21780 |  70 6f 72 74 2d 6d 6f 64 65 29 0a 20 20 20 20 28    75 73 65 72 2d 65 72 72 6f 72 20 22 4e 6f 74 20  | port-mode).....(user-error."Not. | 
| 217a0 |  61 20 6c 65 64 67 65 72 20 72 65 70 6f 72 74 20    62 75 66 66 65 72 22 29 29 0a 20 20 28 73 61 76  | a.ledger.report.buffer"))...(sav | 
| 217c0 |  65 2d 6d 61 74 63 68 2d 64 61 74 61 0a 20 20 20    20 28 69 66 20 28 73 74 72 69 6e 67 2d 6d 61 74  | e-match-data.....(if.(string-mat | 
| 217e0 |  63 68 0a 20 20 20 20 20 20 20 20 20 28 63 6f 6e    63 61 74 20 28 72 78 20 28 6f 72 20 22 2d 2d 65  | ch..........(concat.(rx.(or."--e | 
| 21800 |  78 63 68 61 6e 67 65 22 20 22 2d 58 22 29 20 28    31 2b 20 73 70 61 63 65 29 29 0a 20 20 20 20 20  | xchange"."-X").(1+.space))...... | 
| 21820 |  20 20 20 20 20 20 20 20 20 20 20 20 28 72 65 67    65 78 70 2d 71 75 6f 74 65 20 6c 65 64 67 65 72  | ............(regexp-quote.ledger | 
| 21840 |  2d 72 65 63 6f 6e 63 69 6c 65 2d 64 65 66 61 75    6c 74 2d 63 6f 6d 6d 6f 64 69 74 79 29 29 0a 20  | -reconcile-default-commodity)).. | 
| 21860 |  20 20 20 20 20 20 20 20 6c 65 64 67 65 72 2d 72    65 70 6f 72 74 2d 63 6d 64 29 0a 20 20 20 20 20  | ........ledger-report-cmd)...... | 
| 21880 |  20 20 20 28 73 65 74 71 20 6c 65 64 67 65 72 2d    72 65 70 6f 72 74 2d 63 6d 64 20 28 72 65 70 6c  | ...(setq.ledger-report-cmd.(repl | 
| 218a0 |  61 63 65 2d 6d 61 74 63 68 20 22 22 20 6e 69 6c    20 6e 69 6c 20 6c 65 64 67 65 72 2d 72 65 70 6f  | ace-match."".nil.nil.ledger-repo | 
| 218c0 |  72 74 2d 63 6d 64 29 29 0a 20 20 20 20 20 20 28    73 65 74 71 20 6c 65 64 67 65 72 2d 72 65 70 6f  | rt-cmd)).......(setq.ledger-repo | 
| 218e0 |  72 74 2d 63 6d 64 20 28 63 6f 6e 63 61 74 20 6c    65 64 67 65 72 2d 72 65 70 6f 72 74 2d 63 6d 64  | rt-cmd.(concat.ledger-report-cmd | 
| 21900 |  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  | ................................ | 
| 21920 |  20 20 20 20 20 20 20 22 20 2d 2d 65 78 63 68 61    6e 67 65 20 22 20 6c 65 64 67 65 72 2d 72 65 63  | .......".--exchange.".ledger-rec | 
| 21940 |  6f 6e 63 69 6c 65 2d 64 65 66 61 75 6c 74 2d 63    6f 6d 6d 6f 64 69 74 79 29 29 29 29 0a 20 20 28  | oncile-default-commodity))))...( | 
| 21960 |  6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d 72 65    64 6f 29 29 0a 0a 28 70 72 6f 76 69 64 65 20 27  | ledger-report-redo))..(provide.' | 
| 21980 |  6c 65 64 67 65 72 2d 72 65 70 6f 72 74 29 0a 0a    3b 3b 3b 20 6c 65 64 67 65 72 2d 72 65 70 6f 72  | ledger-report)..;;;.ledger-repor | 
| 219a0 |  74 2e 65 6c 20 65 6e 64 73 20 68 65 72 65 0a 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | t.el.ends.here.................. | 
| 219c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 219e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 21a00 |  6c 65 64 67 65 72 2d 6d 6f 64 65 2d 32 30 32 34    30 34 31 36 2e 34 31 36 2f 6c 65 64 67 65 72 2d  | ledger-mode-20240416.416/ledger- | 
| 21a20 |  66 6f 6e 74 69 66 79 2e 65 6c 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | fontify.el...................... | 
| 21a40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 21a60 |  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 | 
| 21a80 |  30 30 30 33 37 33 36 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 36 33 36 33 00 20 30 00 00 00  | 0003736.00000000000.016363..0... | 
| 21aa0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 21ac0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 21ae0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 21b00 |  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................... | 
| 21b20 |  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................... | 
| 21b40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 21b60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 21b80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 21ba0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 21bc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 21be0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 21c00 |  3b 3b 3b 20 6c 65 64 67 65 72 2d 66 6f 6e 74 69    66 79 2e 65 6c 20 2d 2d 2d 20 50 72 6f 76 69 64  | ;;;.ledger-fontify.el.---.Provid | 
| 21c20 |  65 20 63 75 73 74 6f 6d 20 66 6f 6e 74 69 66 69    63 61 74 69 6f 6e 20 66 6f 72 20 6c 65 64 67 65  | e.custom.fontification.for.ledge | 
| 21c40 |  72 2d 6d 6f 64 65 20 20 2d 2a 2d 20 6c 65 78 69    63 61 6c 2d 62 69 6e 64 69 6e 67 3a 20 74 3b 20  | r-mode..-*-.lexical-binding:.t;. | 
| 21c60 |  2d 2a 2d 0a 0a 0a 3b 3b 20 43 6f 70 79 72 69 67    68 74 20 28 43 29 20 32 30 31 34 20 43 72 61 69  | -*-...;;.Copyright.(C).2014.Crai | 
| 21c80 |  67 20 50 2e 20 45 61 72 6c 73 20 28 65 6e 64 65    72 77 38 38 20 61 74 20 67 6d 61 69 6c 20 64 6f  | g.P..Earls.(enderw88.at.gmail.do | 
| 21ca0 |  74 20 63 6f 6d 29 0a 0a 3b 3b 20 54 68 69 73 20    66 69 6c 65 20 69 73 20 6e 6f 74 20 70 61 72 74  | t.com)..;;.This.file.is.not.part | 
| 21cc0 |  20 6f 66 20 47 4e 55 20 45 6d 61 63 73 2e 0a 0a    3b 3b 20 54 68 69 73 20 69 73 20 66 72 65 65 20  | .of.GNU.Emacs...;;.This.is.free. | 
| 21ce0 |  73 6f 66 74 77 61 72 65 3b 20 79 6f 75 20 63 61    6e 20 72 65 64 69 73 74 72 69 62 75 74 65 20 69  | software;.you.can.redistribute.i | 
| 21d00 |  74 20 61 6e 64 2f 6f 72 20 6d 6f 64 69 66 79 20    69 74 20 75 6e 64 65 72 0a 3b 3b 20 74 68 65 20  | t.and/or.modify.it.under.;;.the. | 
| 21d20 |  74 65 72 6d 73 20 6f 66 20 74 68 65 20 47 4e 55    20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20  | terms.of.the.GNU.General.Public. | 
| 21d40 |  4c 69 63 65 6e 73 65 20 61 73 20 70 75 62 6c 69    73 68 65 64 20 62 79 20 74 68 65 20 46 72 65 65  | License.as.published.by.the.Free | 
| 21d60 |  0a 3b 3b 20 53 6f 66 74 77 61 72 65 20 46 6f 75    6e 64 61 74 69 6f 6e 3b 20 65 69 74 68 65 72 20  | .;;.Software.Foundation;.either. | 
| 21d80 |  76 65 72 73 69 6f 6e 20 32 2c 20 6f 72 20 28 61    74 20 79 6f 75 72 20 6f 70 74 69 6f 6e 29 20 61  | version.2,.or.(at.your.option).a | 
| 21da0 |  6e 79 20 6c 61 74 65 72 0a 3b 3b 20 76 65 72 73    69 6f 6e 2e 0a 3b 3b 0a 3b 3b 20 54 68 69 73 20  | ny.later.;;.version..;;.;;.This. | 
| 21dc0 |  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. | 
| 21de0 |  69 74 20 77 69 6c 6c 20 62 65 20 75 73 65 66 75    6c 2c 20 62 75 74 20 57 49 54 48 4f 55 54 0a 3b  | it.will.be.useful,.but.WITHOUT.; | 
| 21e00 |  3b 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  | ;.ANY.WARRANTY;.without.even.the | 
| 21e20 |  20 69 6d 70 6c 69 65 64 20 77 61 72 72 61 6e 74    79 20 6f 66 20 4d 45 52 43 48 41 4e 54 41 42 49  | .implied.warranty.of.MERCHANTABI | 
| 21e40 |  4c 49 54 59 20 6f 72 0a 3b 3b 20 46 49 54 4e 45    53 53 20 46 4f 52 20 41 20 50 41 52 54 49 43 55  | LITY.or.;;.FITNESS.FOR.A.PARTICU | 
| 21e60 |  4c 41 52 20 50 55 52 50 4f 53 45 2e 20 20 53 65    65 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61  | LAR.PURPOSE...See.the.GNU.Genera | 
| 21e80 |  6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65    0a 3b 3b 20 66 6f 72 20 6d 6f 72 65 20 64 65 74  | l.Public.License.;;.for.more.det | 
| 21ea0 |  61 69 6c 73 2e 0a 3b 3b 0a 3b 3b 20 59 6f 75 20    73 68 6f 75 6c 64 20 68 61 76 65 20 72 65 63 65  | ails..;;.;;.You.should.have.rece | 
| 21ec0 |  69 76 65 64 20 61 20 63 6f 70 79 20 6f 66 20 74    68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50  | ived.a.copy.of.the.GNU.General.P | 
| 21ee0 |  75 62 6c 69 63 20 4c 69 63 65 6e 73 65 0a 3b 3b    20 61 6c 6f 6e 67 20 77 69 74 68 20 47 4e 55 20  | ublic.License.;;.along.with.GNU. | 
| 21f00 |  45 6d 61 63 73 3b 20 73 65 65 20 74 68 65 20 66    69 6c 65 20 43 4f 50 59 49 4e 47 2e 20 20 49 66  | Emacs;.see.the.file.COPYING...If | 
| 21f20 |  20 6e 6f 74 2c 20 77 72 69 74 65 20 74 6f 20 74    68 65 0a 3b 3b 20 46 72 65 65 20 53 6f 66 74 77  | .not,.write.to.the.;;.Free.Softw | 
| 21f40 |  61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 2c 20    49 6e 63 2e 2c 20 35 31 20 46 72 61 6e 6b 6c 69  | are.Foundation,.Inc.,.51.Frankli | 
| 21f60 |  6e 20 53 74 72 65 65 74 2c 20 46 69 66 74 68 20    46 6c 6f 6f 72 2c 20 42 6f 73 74 6f 6e 2c 0a 3b  | n.Street,.Fifth.Floor,.Boston,.; | 
| 21f80 |  3b 20 4d 41 20 30 32 31 31 30 2d 31 33 30 31 20    55 53 41 2e 0a 0a 3b 3b 3b 20 43 6f 6d 6d 65 6e  | ;.MA.02110-1301.USA...;;;.Commen | 
| 21fa0 |  74 61 72 79 3a 0a 3b 3b 20 20 46 6f 6e 74 2d 6c    6f 63 6b 2d 6d 6f 64 65 20 64 6f 65 73 6e 27 74  | tary:.;;..Font-lock-mode.doesn't | 
| 21fc0 |  20 68 61 6e 64 6c 65 20 6d 75 6c 74 69 6c 69 6e    65 20 73 79 6e 74 61 78 20 76 65 72 79 20 77 65  | .handle.multiline.syntax.very.we | 
| 21fe0 |  6c 6c 2e 20 20 54 68 69 73 0a 3b 3b 20 20 63 6f    64 65 20 70 72 6f 76 69 64 65 73 20 66 6f 6e 74  | ll...This.;;..code.provides.font | 
| 22000 |  20 6c 6f 63 6b 20 74 68 61 74 20 69 73 20 73 65    6e 73 69 74 69 76 65 20 74 6f 20 6f 76 65 72 61  | .lock.that.is.sensitive.to.overa | 
| 22020 |  6c 6c 20 74 72 61 6e 73 61 63 74 69 6f 6e 0a 3b    3b 20 20 73 74 61 74 65 73 0a 0a 0a 3b 3b 3b 20  | ll.transaction.;;..states...;;;. | 
| 22040 |  43 6f 64 65 3a 0a 0a 28 72 65 71 75 69 72 65 20    27 6c 65 64 67 65 72 2d 6e 61 76 69 67 61 74 65  | Code:..(require.'ledger-navigate | 
| 22060 |  29 0a 28 72 65 71 75 69 72 65 20 27 6c 65 64 67    65 72 2d 72 65 67 65 78 29 0a 28 72 65 71 75 69  | ).(require.'ledger-regex).(requi | 
| 22080 |  72 65 20 27 6c 65 64 67 65 72 2d 73 74 61 74 65    29 0a 0a 3b 3b 20 54 68 65 73 65 20 61 72 65 20  | re.'ledger-state)..;;.These.are. | 
| 220a0 |  64 79 6e 61 6d 69 63 61 6c 6c 79 20 62 6f 75 6e    64 2c 20 73 65 65 20 60 66 6f 6e 74 2d 6c 6f 63  | dynamically.bound,.see.`font-loc | 
| 220c0 |  6b 2d 65 78 74 65 6e 64 2d 72 65 67 69 6f 6e 2d    66 75 6e 63 74 69 6f 6e 73 27 2e 0a 28 64 65 66  | k-extend-region-functions'..(def | 
| 220e0 |  76 61 72 20 66 6f 6e 74 2d 6c 6f 63 6b 2d 62 65    67 29 0a 28 64 65 66 76 61 72 20 66 6f 6e 74 2d  | var.font-lock-beg).(defvar.font- | 
| 22100 |  6c 6f 63 6b 2d 65 6e 64 29 0a 0a 28 64 65 66 63    75 73 74 6f 6d 20 6c 65 64 67 65 72 2d 66 6f 6e  | lock-end)..(defcustom.ledger-fon | 
| 22120 |  74 69 66 79 2d 78 61 63 74 2d 73 74 61 74 65 2d    6f 76 65 72 72 69 64 65 73 20 6e 69 6c 0a 20 20  | tify-xact-state-overrides.nil... | 
| 22140 |  22 49 66 20 74 20 74 68 65 20 68 69 67 68 6c 69    67 68 74 20 65 6e 74 69 72 65 20 78 61 63 74 20  | "If.t.the.highlight.entire.xact. | 
| 22160 |  77 69 74 68 20 73 74 61 74 65 2e 22 0a 20 20 3a    74 79 70 65 20 27 62 6f 6f 6c 65 61 6e 0a 20 20  | with.state."...:type.'boolean... | 
| 22180 |  3a 67 72 6f 75 70 20 27 6c 65 64 67 65 72 29 0a    0a 28 64 65 66 75 6e 20 6c 65 64 67 65 72 2d 66  | :group.'ledger)..(defun.ledger-f | 
| 221a0 |  6f 6e 74 69 66 79 2d 65 78 74 65 6e 64 2d 72 65    67 69 6f 6e 20 28 29 0a 20 20 22 45 78 74 65 6e  | ontify-extend-region.()..."Exten | 
| 221c0 |  64 20 66 6f 6e 74 69 66 69 63 61 74 69 6f 6e 20    72 65 67 69 6f 6e 20 74 6f 20 69 6e 63 6c 75 64  | d.fontification.region.to.includ | 
| 221e0 |  65 20 77 68 6f 6c 65 20 74 72 61 6e 73 61 63 74    69 6f 6e 73 20 6f 72 20 64 69 72 65 63 74 69 76  | e.whole.transactions.or.directiv | 
| 22200 |  65 73 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 28 6c 65 74  | es."...(save-match-data.....(let | 
| 22220 |  2a 20 28 28 6e 65 77 2d 62 65 67 20 28 6d 69 6e    20 66 6f 6e 74 2d 6c 6f 63 6b 2d 62 65 67 20 28  | *.((new-beg.(min.font-lock-beg.( | 
| 22240 |  63 61 72 20 28 6c 65 64 67 65 72 2d 6e 61 76 69    67 61 74 65 2d 66 69 6e 64 2d 65 6c 65 6d 65 6e  | car.(ledger-navigate-find-elemen | 
| 22260 |  74 2d 65 78 74 65 6e 74 73 20 66 6f 6e 74 2d 6c    6f 63 6b 2d 62 65 67 29 29 29 29 0a 20 20 20 20  | t-extents.font-lock-beg))))..... | 
| 22280 |  20 20 20 20 20 20 20 28 6e 65 77 2d 65 6e 64 20    28 6d 61 78 20 66 6f 6e 74 2d 6c 6f 63 6b 2d 65  | .......(new-end.(max.font-lock-e | 
| 222a0 |  6e 64 20 28 63 61 64 72 20 28 6c 65 64 67 65 72    2d 6e 61 76 69 67 61 74 65 2d 66 69 6e 64 2d 65  | nd.(cadr.(ledger-navigate-find-e | 
| 222c0 |  6c 65 6d 65 6e 74 2d 65 78 74 65 6e 74 73 20 66    6f 6e 74 2d 6c 6f 63 6b 2d 65 6e 64 29 29 29 29  | lement-extents.font-lock-end)))) | 
| 222e0 |  0a 20 20 20 20 20 20 20 20 20 20 20 28 63 68 61    6e 67 65 64 20 28 6f 72 20 28 2f 3d 20 6e 65 77  | ............(changed.(or.(/=.new | 
| 22300 |  2d 62 65 67 20 66 6f 6e 74 2d 6c 6f 63 6b 2d 62    65 67 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | -beg.font-lock-beg)............. | 
| 22320 |  20 20 20 20 20 20 20 20 20 20 20 20 28 2f 3d 20    6e 65 77 2d 65 6e 64 20 66 6f 6e 74 2d 6c 6f 63  | ............(/=.new-end.font-loc | 
| 22340 |  6b 2d 65 6e 64 29 29 29 29 0a 20 20 20 20 20 20    28 73 65 74 71 20 66 6f 6e 74 2d 6c 6f 63 6b 2d  | k-end)))).......(setq.font-lock- | 
| 22360 |  62 65 67 20 6e 65 77 2d 62 65 67 29 0a 20 20 20    20 20 20 28 73 65 74 71 20 66 6f 6e 74 2d 6c 6f  | beg.new-beg).......(setq.font-lo | 
| 22380 |  63 6b 2d 65 6e 64 20 6e 65 77 2d 65 6e 64 29 0a    20 20 20 20 20 20 63 68 61 6e 67 65 64 29 29 29  | ck-end.new-end).......changed))) | 
| 223a0 |  0a 0a 0a 28 70 72 6f 76 69 64 65 20 27 6c 65 64    67 65 72 2d 66 6f 6e 74 69 66 79 29 0a 0a 3b 3b  | ...(provide.'ledger-fontify)..;; | 
| 223c0 |  3b 20 6c 65 64 67 65 72 2d 66 6f 6e 74 69 66 79    2e 65 6c 20 65 6e 64 73 20 68 65 72 65 0a 00 00  | ;.ledger-fontify.el.ends.here... | 
| 223e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 22400 |  6c 65 64 67 65 72 2d 6d 6f 64 65 2d 32 30 32 34    30 34 31 36 2e 34 31 36 2f 6c 65 64 67 65 72 2d  | ledger-mode-20240416.416/ledger- | 
| 22420 |  63 6f 6e 74 65 78 74 2e 65 6c 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | context.el...................... | 
| 22440 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 22460 |  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 | 
| 22480 |  30 30 32 33 33 37 30 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 36 33 36 35 00 20 30 00 00 00  | 0023370.00000000000.016365..0... | 
| 224a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 224c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 224e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 22500 |  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................... | 
| 22520 |  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................... | 
| 22540 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 22560 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 22580 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 225a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 225c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 225e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 22600 |  3b 3b 3b 20 6c 65 64 67 65 72 2d 63 6f 6e 74 65    78 74 2e 65 6c 20 2d 2d 2d 20 48 65 6c 70 65 72  | ;;;.ledger-context.el.---.Helper | 
| 22620 |  20 63 6f 64 65 20 66 6f 72 20 75 73 65 20 77 69    74 68 20 74 68 65 20 22 6c 65 64 67 65 72 22 20  | .code.for.use.with.the."ledger". | 
| 22640 |  63 6f 6d 6d 61 6e 64 2d 6c 69 6e 65 20 74 6f 6f    6c 20 20 2d 2a 2d 20 6c 65 78 69 63 61 6c 2d 62  | command-line.tool..-*-.lexical-b | 
| 22660 |  69 6e 64 69 6e 67 3a 20 74 3b 20 2d 2a 2d 0a 0a    3b 3b 20 43 6f 70 79 72 69 67 68 74 20 28 43 29  | inding:.t;.-*-..;;.Copyright.(C) | 
| 22680 |  20 32 30 30 33 2d 32 30 31 36 20 4a 6f 68 6e 20    57 69 65 67 6c 65 79 20 28 6a 6f 68 6e 77 20 41  | .2003-2016.John.Wiegley.(johnw.A | 
| 226a0 |  54 20 67 6e 75 20 44 4f 54 20 6f 72 67 29 0a 0a    3b 3b 20 54 68 69 73 20 66 69 6c 65 20 69 73 20  | T.gnu.DOT.org)..;;.This.file.is. | 
| 226c0 |  6e 6f 74 20 70 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  | not.part.of.GNU.Emacs...;;.This. | 
| 226e0 |  69 73 20 66 72 65 65 20 73 6f 66 74 77 61 72 65    3b 20 79 6f 75 20 63 61 6e 20 72 65 64 69 73 74  | is.free.software;.you.can.redist | 
| 22700 |  72 69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72    20 6d 6f 64 69 66 79 20 69 74 20 75 6e 64 65 72  | ribute.it.and/or.modify.it.under | 
| 22720 |  0a 3b 3b 20 74 68 65 20 74 65 72 6d 73 20 6f 66    20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c  | .;;.the.terms.of.the.GNU.General | 
| 22740 |  20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20    61 73 20 70 75 62 6c 69 73 68 65 64 20 62 79 20  | .Public.License.as.published.by. | 
| 22760 |  74 68 65 20 46 72 65 65 0a 3b 3b 20 53 6f 66 74    77 61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 3b  | the.Free.;;.Software.Foundation; | 
| 22780 |  20 65 69 74 68 65 72 20 76 65 72 73 69 6f 6e 20    32 2c 20 6f 72 20 28 61 74 20 79 6f 75 72 20 6f  | .either.version.2,.or.(at.your.o | 
| 227a0 |  70 74 69 6f 6e 29 20 61 6e 79 20 6c 61 74 65 72    0a 3b 3b 20 76 65 72 73 69 6f 6e 2e 0a 3b 3b 0a  | ption).any.later.;;.version..;;. | 
| 227c0 |  3b 3b 20 54 68 69 73 20 69 73 20 64 69 73 74 72    69 62 75 74 65 64 20 69 6e 20 74 68 65 20 68 6f  | ;;.This.is.distributed.in.the.ho | 
| 227e0 |  70 65 20 74 68 61 74 20 69 74 20 77 69 6c 6c 20    62 65 20 75 73 65 66 75 6c 2c 20 62 75 74 20 57  | pe.that.it.will.be.useful,.but.W | 
| 22800 |  49 54 48 4f 55 54 0a 3b 3b 20 41 4e 59 20 57 41    52 52 41 4e 54 59 3b 20 77 69 74 68 6f 75 74 20  | ITHOUT.;;.ANY.WARRANTY;.without. | 
| 22820 |  65 76 65 6e 20 74 68 65 20 69 6d 70 6c 69 65 64    20 77 61 72 72 61 6e 74 79 20 6f 66 20 4d 45 52  | even.the.implied.warranty.of.MER | 
| 22840 |  43 48 41 4e 54 41 42 49 4c 49 54 59 20 6f 72 0a    3b 3b 20 46 49 54 4e 45 53 53 20 46 4f 52 20 41  | CHANTABILITY.or.;;.FITNESS.FOR.A | 
| 22860 |  20 50 41 52 54 49 43 55 4c 41 52 20 50 55 52 50    4f 53 45 2e 20 20 53 65 65 20 74 68 65 20 47 4e  | .PARTICULAR.PURPOSE...See.the.GN | 
| 22880 |  55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63    20 4c 69 63 65 6e 73 65 0a 3b 3b 20 66 6f 72 20  | U.General.Public.License.;;.for. | 
| 228a0 |  6d 6f 72 65 20 64 65 74 61 69 6c 73 2e 0a 3b 3b    0a 3b 3b 20 59 6f 75 20 73 68 6f 75 6c 64 20 68  | more.details..;;.;;.You.should.h | 
| 228c0 |  61 76 65 20 72 65 63 65 69 76 65 64 20 61 20 63    6f 70 79 20 6f 66 20 74 68 65 20 47 4e 55 20 47  | ave.received.a.copy.of.the.GNU.G | 
| 228e0 |  65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69    63 65 6e 73 65 0a 3b 3b 20 61 6c 6f 6e 67 20 77  | eneral.Public.License.;;.along.w | 
| 22900 |  69 74 68 20 47 4e 55 20 45 6d 61 63 73 3b 20 73    65 65 20 74 68 65 20 66 69 6c 65 20 43 4f 50 59  | ith.GNU.Emacs;.see.the.file.COPY | 
| 22920 |  49 4e 47 2e 20 20 49 66 20 6e 6f 74 2c 20 77 72    69 74 65 20 74 6f 20 74 68 65 0a 3b 3b 20 46 72  | ING...If.not,.write.to.the.;;.Fr | 
| 22940 |  65 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e    64 61 74 69 6f 6e 2c 20 49 6e 63 2e 2c 20 35 31  | ee.Software.Foundation,.Inc.,.51 | 
| 22960 |  20 46 72 61 6e 6b 6c 69 6e 20 53 74 72 65 65 74    2c 20 46 69 66 74 68 20 46 6c 6f 6f 72 2c 20 42  | .Franklin.Street,.Fifth.Floor,.B | 
| 22980 |  6f 73 74 6f 6e 2c 0a 3b 3b 20 4d 41 20 30 32 31    31 30 2d 31 33 30 31 20 55 53 41 2e 0a 0a 0a 3b  | oston,.;;.MA.02110-1301.USA....; | 
| 229a0 |  3b 3b 20 43 6f 6d 6d 65 6e 74 61 72 79 3a 0a 3b    3b 20 20 50 72 6f 76 69 64 65 20 66 61 63 69 6c  | ;;.Commentary:.;;..Provide.facil | 
| 229c0 |  69 74 69 65 73 20 66 6f 72 20 72 65 66 6c 65 63    74 69 6f 6e 20 69 6e 20 6c 65 64 67 65 72 20 62  | ities.for.reflection.in.ledger.b | 
| 229e0 |  75 66 66 65 72 73 0a 0a 3b 3b 3b 20 43 6f 64 65    3a 0a 0a 28 72 65 71 75 69 72 65 20 27 6c 65 64  | uffers..;;;.Code:..(require.'led | 
| 22a00 |  67 65 72 2d 72 65 67 65 78 29 0a 0a 3b 3b 20 6c    65 64 67 65 72 2d 2a 2d 73 74 72 69 6e 67 20 63  | ger-regex)..;;.ledger-*-string.c | 
| 22a20 |  6f 6e 73 74 61 6e 74 73 20 61 72 65 20 61 73 73    65 6d 62 6c 65 64 20 69 6e 20 74 68 65 0a 3b 3b  | onstants.are.assembled.in.the.;; | 
| 22a40 |  20 60 6c 65 64 67 65 72 2d 73 69 6e 67 6c 65 2d    6c 69 6e 65 2d 63 6f 6e 66 69 67 27 20 6d 61 63  | .`ledger-single-line-config'.mac | 
| 22a60 |  72 6f 20 74 6f 20 66 6f 72 6d 20 74 68 65 20 72    65 67 65 78 20 61 6e 64 20 6c 69 73 74 20 6f 66  | ro.to.form.the.regex.and.list.of | 
| 22a80 |  0a 3b 3b 20 65 6c 65 6d 65 6e 74 73 0a 28 64 65    66 63 6f 6e 73 74 20 6c 65 64 67 65 72 2d 69 6e  | .;;.elements.(defconst.ledger-in | 
| 22aa0 |  64 65 6e 74 2d 73 74 72 69 6e 67 20 22 5c 5c 28    5e 5b 20 5c 74 5d 2b 5c 5c 29 22 29 0a 28 64 65  | dent-string."\\(^[.\t]+\\)").(de | 
| 22ac0 |  66 63 6f 6e 73 74 20 6c 65 64 67 65 72 2d 73 74    61 74 75 73 2d 73 74 72 69 6e 67 20 22 5c 5c 28  | fconst.ledger-status-string."\\( | 
| 22ae0 |  2a 5c 5c 7c 21 5c 5c 29 3f 22 29 0a 28 64 65 66    63 6f 6e 73 74 20 6c 65 64 67 65 72 2d 61 63 63  | *\\|!\\)?").(defconst.ledger-acc | 
| 22b00 |  6f 75 6e 74 2d 73 74 72 69 6e 67 20 22 5b 5c 5c    5b 28 5d 3f 5c 5c 28 2e 2a 3f 5c 5c 29 5b 5d 29  | ount-string."[\\[(]?\\(.*?\\)[]) | 
| 22b20 |  5d 3f 22 29 0a 28 64 65 66 63 6f 6e 73 74 20 6c    65 64 67 65 72 2d 73 65 70 61 72 61 74 6f 72 2d  | ]?").(defconst.ledger-separator- | 
| 22b40 |  73 74 72 69 6e 67 20 22 5c 5c 28 5c 5c 73 2d 5c    5c 73 2d 2b 5c 5c 29 22 29 0a 28 64 65 66 63 6f  | string."\\(\\s-\\s-+\\)").(defco | 
| 22b60 |  6e 73 74 20 6c 65 64 67 65 72 2d 61 6d 6f 75 6e    74 2d 73 74 72 69 6e 67 20 6c 65 64 67 65 72 2d  | nst.ledger-amount-string.ledger- | 
| 22b80 |  61 6d 6f 75 6e 74 2d 72 65 67 65 78 70 29 0a 28    64 65 66 63 6f 6e 73 74 20 6c 65 64 67 65 72 2d  | amount-regexp).(defconst.ledger- | 
| 22ba0 |  63 6f 6d 6d 6f 64 69 74 69 7a 65 64 2d 61 6d 6f    75 6e 74 2d 73 74 72 69 6e 67 20 6c 65 64 67 65  | commoditized-amount-string.ledge | 
| 22bc0 |  72 2d 63 6f 6d 6d 6f 64 69 74 69 7a 65 64 2d 61    6d 6f 75 6e 74 2d 72 65 67 65 78 70 29 0a 28 64  | r-commoditized-amount-regexp).(d | 
| 22be0 |  65 66 63 6f 6e 73 74 20 6c 65 64 67 65 72 2d 63    6f 73 74 2d 73 74 72 69 6e 67 20 6c 65 64 67 65  | efconst.ledger-cost-string.ledge | 
| 22c00 |  72 2d 63 6f 73 74 2d 72 65 67 65 78 70 29 0a 28    64 65 66 63 6f 6e 73 74 20 6c 65 64 67 65 72 2d  | r-cost-regexp).(defconst.ledger- | 
| 22c20 |  62 61 6c 61 6e 63 65 2d 61 73 73 65 72 74 69 6f    6e 2d 73 74 72 69 6e 67 20 6c 65 64 67 65 72 2d  | balance-assertion-string.ledger- | 
| 22c40 |  62 61 6c 61 6e 63 65 2d 61 73 73 65 72 74 69 6f    6e 2d 72 65 67 65 78 70 29 0a 28 64 65 66 63 6f  | balance-assertion-regexp).(defco | 
| 22c60 |  6e 73 74 20 6c 65 64 67 65 72 2d 63 6f 6d 6d 65    6e 74 2d 73 74 72 69 6e 67 20 22 5c 5c 28 3f 3a  | nst.ledger-comment-string."\\(?: | 
| 22c80 |  5b 20 5c 74 5d 2a 5c 6e 5c 5c 29 3f 5b 20 5c 74    5d 2a 3b 5b 20 5c 74 5d 2a 5c 5c 28 2e 2a 3f 5c  | [.\t]*\n\\)?[.\t]*;[.\t]*\\(.*?\ | 
| 22ca0 |  5c 29 22 29 0a 28 64 65 66 63 6f 6e 73 74 20 6c    65 64 67 65 72 2d 6e 69 6c 2d 73 74 72 69 6e 67  | \)").(defconst.ledger-nil-string | 
| 22cc0 |  20 22 5c 5c 28 5b 20 5c 74 5d 2b 5c 5c 29 22 29    0a 28 64 65 66 63 6f 6e 73 74 20 6c 65 64 67 65  | ."\\([.\t]+\\)").(defconst.ledge | 
| 22ce0 |  72 2d 64 61 74 65 2d 73 74 72 69 6e 67 20 22 5e    5c 5c 28 5b 30 2d 39 5d 5c 5c 7b 34 5c 5c 7d 5b  | r-date-string."^\\([0-9]\\{4\\}[ | 
| 22d00 |  2f 2d 5d 5b 30 31 5d 3f 5b 30 2d 39 5d 5b 2f 2d    5d 5b 30 31 32 33 5d 3f 5b 30 2d 39 5d 5c 5c 29  | /-][01]?[0-9][/-][0123]?[0-9]\\) | 
| 22d20 |  5c 5c 28 3f 3a 3d 5b 30 2d 39 5d 5c 5c 7b 34 5c    5c 7d 5b 2f 2d 5d 5b 30 31 5d 3f 5b 30 2d 39 5d  | \\(?:=[0-9]\\{4\\}[/-][01]?[0-9] | 
| 22d40 |  5b 2f 2d 5d 5b 30 31 32 33 5d 3f 5b 30 2d 39 5d    5c 5c 29 3f 22 29 0a 28 64 65 66 63 6f 6e 73 74  | [/-][0123]?[0-9]\\)?").(defconst | 
| 22d60 |  20 6c 65 64 67 65 72 2d 63 6f 64 65 2d 73 74 72    69 6e 67 20 22 5c 5c 28 28 2e 2a 29 5c 5c 29 3f  | .ledger-code-string."\\((.*)\\)? | 
| 22d80 |  22 29 0a 28 64 65 66 63 6f 6e 73 74 20 6c 65 64    67 65 72 2d 70 61 79 65 65 2d 73 74 72 69 6e 67  | ").(defconst.ledger-payee-string | 
| 22da0 |  20 22 5c 5c 28 2e 2a 5b 5e 5b 3a 73 70 61 63 65    3a 5d 5c 6e 5d 5c 5c 29 22 29 0a 0a 0a 28 64 65  | ."\\(.*[^[:space:]\n]\\)")...(de | 
| 22dc0 |  66 75 6e 20 6c 65 64 67 65 72 2d 67 65 74 2d 72    65 67 65 78 2d 73 74 72 20 28 6e 61 6d 65 29 0a  | fun.ledger-get-regex-str.(name). | 
| 22de0 |  20 20 22 47 65 74 20 74 68 65 20 6c 65 64 67 65    72 20 72 65 67 65 78 20 6f 66 20 74 79 70 65 20  | .."Get.the.ledger.regex.of.type. | 
| 22e00 |  4e 41 4d 45 2e 22 0a 20 20 28 73 79 6d 62 6f 6c    2d 76 61 6c 75 65 20 28 69 6e 74 65 72 6e 20 28  | NAME."...(symbol-value.(intern.( | 
| 22e20 |  63 6f 6e 63 61 74 20 22 6c 65 64 67 65 72 2d 22    20 28 73 79 6d 62 6f 6c 2d 6e 61 6d 65 20 6e 61  | concat."ledger-".(symbol-name.na | 
| 22e40 |  6d 65 29 20 22 2d 73 74 72 69 6e 67 22 29 29 29    29 0a 0a 28 64 65 66 75 6e 20 6c 65 64 67 65 72  | me)."-string"))))..(defun.ledger | 
| 22e60 |  2d 6c 69 6e 65 2d 72 65 67 65 78 20 28 65 6c 65    6d 65 6e 74 73 29 0a 20 20 22 47 65 74 20 61 20  | -line-regex.(elements)..."Get.a. | 
| 22e80 |  72 65 67 65 78 20 74 6f 20 6d 61 74 63 68 20 45    4c 45 4d 45 4e 54 53 20 6f 6e 20 61 20 73 69 6e  | regex.to.match.ELEMENTS.on.a.sin | 
| 22ea0 |  67 6c 65 20 6c 69 6e 65 2e 22 0a 20 20 28 63 6f    6e 63 61 74 20 28 61 70 70 6c 79 20 27 63 6f 6e  | gle.line."...(concat.(apply.'con | 
| 22ec0 |  63 61 74 20 28 6d 61 70 63 61 72 20 27 6c 65 64    67 65 72 2d 67 65 74 2d 72 65 67 65 78 2d 73 74  | cat.(mapcar.'ledger-get-regex-st | 
| 22ee0 |  72 20 65 6c 65 6d 65 6e 74 73 29 29 20 22 5b 20    5c 74 5d 2a 24 22 29 29 0a 0a 28 64 65 66 6d 61  | r.elements))."[.\t]*$"))..(defma | 
| 22f00 |  63 72 6f 20 6c 65 64 67 65 72 2d 73 69 6e 67 6c    65 2d 6c 69 6e 65 2d 63 6f 6e 66 69 67 20 28 26  | cro.ledger-single-line-config.(& | 
| 22f20 |  72 65 73 74 20 65 6c 65 6d 65 6e 74 73 29 0a 20    20 22 54 61 6b 65 20 45 4c 45 4d 45 4e 54 53 20  | rest.elements)..."Take.ELEMENTS. | 
| 22f40 |  61 6e 64 20 72 65 74 75 72 6e 20 72 65 67 65 78    20 61 6e 64 20 65 6c 65 6d 65 6e 74 20 6c 69 73  | and.return.regex.and.element.lis | 
| 22f60 |  74 20 66 6f 72 20 75 73 65 20 69 6e 20 63 6f 6e    74 65 78 74 2d 61 74 2d 70 6f 69 6e 74 2e 22 0a  | t.for.use.in.context-at-point.". | 
| 22f80 |  20 20 60 28 6c 69 73 74 20 28 6c 65 64 67 65 72    2d 6c 69 6e 65 2d 72 65 67 65 78 20 28 71 75 6f  | ..`(list.(ledger-line-regex.(quo | 
| 22fa0 |  74 65 20 2c 65 6c 65 6d 65 6e 74 73 29 29 20 28    71 75 6f 74 65 20 2c 65 6c 65 6d 65 6e 74 73 29  | te.,elements)).(quote.,elements) | 
| 22fc0 |  29 29 0a 0a 28 64 65 66 63 6f 6e 73 74 20 6c 65    64 67 65 72 2d 6c 69 6e 65 2d 63 6f 6e 66 69 67  | ))..(defconst.ledger-line-config | 
| 22fe0 |  0a 20 20 28 6c 69 73 74 20 28 6c 69 73 74 20 27    78 61 63 74 20 28 6c 69 73 74 20 28 6c 65 64 67  | ...(list.(list.'xact.(list.(ledg | 
| 23000 |  65 72 2d 73 69 6e 67 6c 65 2d 6c 69 6e 65 2d 63    6f 6e 66 69 67 20 64 61 74 65 20 6e 69 6c 20 73  | er-single-line-config.date.nil.s | 
| 23020 |  74 61 74 75 73 20 6e 69 6c 20 63 6f 64 65 20 6e    69 6c 20 70 61 79 65 65 20 63 6f 6d 6d 65 6e 74  | tatus.nil.code.nil.payee.comment | 
| 23040 |  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 6c 65 64  | )...........................(led | 
| 23060 |  67 65 72 2d 73 69 6e 67 6c 65 2d 6c 69 6e 65 2d    63 6f 6e 66 69 67 20 64 61 74 65 20 6e 69 6c 20  | ger-single-line-config.date.nil. | 
| 23080 |  73 74 61 74 75 73 20 6e 69 6c 20 63 6f 64 65 20    6e 69 6c 20 70 61 79 65 65 29 0a 20 20 20 20 20  | status.nil.code.nil.payee)...... | 
| 230a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 6c 65 64 67 65 72 2d 73 69 6e  | .....................(ledger-sin | 
| 230c0 |  67 6c 65 2d 6c 69 6e 65 2d 63 6f 6e 66 69 67 20    64 61 74 65 20 6e 69 6c 20 73 74 61 74 75 73 20  | gle-line-config.date.nil.status. | 
| 230e0 |  6e 69 6c 20 70 61 79 65 65 20 63 6f 6d 6d 65 6e    74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | nil.payee.comment).............. | 
| 23100 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65    64 67 65 72 2d 73 69 6e 67 6c 65 2d 6c 69 6e 65  | .............(ledger-single-line | 
| 23120 |  2d 63 6f 6e 66 69 67 20 64 61 74 65 20 6e 69 6c    20 73 74 61 74 75 73 20 6e 69 6c 20 70 61 79 65  | -config.date.nil.status.nil.paye | 
| 23140 |  65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65  | e)...........................(le | 
| 23160 |  64 67 65 72 2d 73 69 6e 67 6c 65 2d 6c 69 6e 65    2d 63 6f 6e 66 69 67 20 64 61 74 65 20 6e 69 6c  | dger-single-line-config.date.nil | 
| 23180 |  20 63 6f 64 65 20 6e 69 6c 20 70 61 79 65 65 20    63 6f 6d 6d 65 6e 74 29 0a 20 20 20 20 20 20 20  | .code.nil.payee.comment)........ | 
| 231a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 6c 65 64 67 65 72 2d 73 69 6e 67 6c  | ...................(ledger-singl | 
| 231c0 |  65 2d 6c 69 6e 65 2d 63 6f 6e 66 69 67 20 64 61    74 65 20 6e 69 6c 20 63 6f 64 65 20 6e 69 6c 20  | e-line-config.date.nil.code.nil. | 
| 231e0 |  70 61 79 65 65 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | payee).......................... | 
| 23200 |  20 28 6c 65 64 67 65 72 2d 73 69 6e 67 6c 65 2d    6c 69 6e 65 2d 63 6f 6e 66 69 67 20 64 61 74 65  | .(ledger-single-line-config.date | 
| 23220 |  20 6e 69 6c 20 70 61 79 65 65 20 63 6f 6d 6d 65    6e 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | .nil.payee.comment)............. | 
| 23240 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c    65 64 67 65 72 2d 73 69 6e 67 6c 65 2d 6c 69 6e  | ..............(ledger-single-lin | 
| 23260 |  65 2d 63 6f 6e 66 69 67 20 64 61 74 65 20 6e 69    6c 20 70 61 79 65 65 29 29 29 0a 20 20 20 20 20  | e-config.date.nil.payee)))...... | 
| 23280 |  20 20 20 28 6c 69 73 74 20 27 61 63 63 74 2d 74    72 61 6e 73 61 63 74 69 6f 6e 20 28 6c 69 73 74  | ...(list.'acct-transaction.(list | 
| 232a0 |  20 28 6c 65 64 67 65 72 2d 73 69 6e 67 6c 65 2d    6c 69 6e 65 2d 63 6f 6e 66 69 67 20 69 6e 64 65  | .(ledger-single-line-config.inde | 
| 232c0 |  6e 74 20 63 6f 6d 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  | nt.comment)..................... | 
| 232e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 6c 65 64 67 65 72 2d 73 69 6e 67 6c 65  | ..................(ledger-single | 
| 23300 |  2d 6c 69 6e 65 2d 63 6f 6e 66 69 67 20 69 6e 64    65 6e 74 20 73 74 61 74 75 73 20 6e 69 6c 20 61  | -line-config.indent.status.nil.a | 
| 23320 |  63 63 6f 75 6e 74 20 73 65 70 61 72 61 74 6f 72    20 63 6f 6d 6d 6f 64 69 74 69 7a 65 64 2d 61 6d  | ccount.separator.commoditized-am | 
| 23340 |  6f 75 6e 74 20 6e 69 6c 20 63 6f 73 74 20 6e 69    6c 20 62 61 6c 61 6e 63 65 2d 61 73 73 65 72 74  | ount.nil.cost.nil.balance-assert | 
| 23360 |  69 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ion)............................ | 
| 23380 |  20 20 20 20 20 20 20 20 20 20 20 28 6c 65 64 67    65 72 2d 73 69 6e 67 6c 65 2d 6c 69 6e 65 2d 63  | ...........(ledger-single-line-c | 
| 233a0 |  6f 6e 66 69 67 20 69 6e 64 65 6e 74 20 73 74 61    74 75 73 20 6e 69 6c 20 61 63 63 6f 75 6e 74 20  | onfig.indent.status.nil.account. | 
| 233c0 |  73 65 70 61 72 61 74 6f 72 20 63 6f 6d 6d 6f 64    69 74 69 7a 65 64 2d 61 6d 6f 75 6e 74 20 6e 69  | separator.commoditized-amount.ni | 
| 233e0 |  6c 20 62 61 6c 61 6e 63 65 2d 61 73 73 65 72 74    69 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20  | l.balance-assertion)............ | 
| 23400 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 6c 65 64 67  | ...........................(ledg | 
| 23420 |  65 72 2d 73 69 6e 67 6c 65 2d 6c 69 6e 65 2d 63    6f 6e 66 69 67 20 69 6e 64 65 6e 74 20 73 74 61  | er-single-line-config.indent.sta | 
| 23440 |  74 75 73 20 6e 69 6c 20 61 63 63 6f 75 6e 74 20    73 65 70 61 72 61 74 6f 72 20 63 6f 6d 6d 6f 64  | tus.nil.account.separator.commod | 
| 23460 |  69 74 69 7a 65 64 2d 61 6d 6f 75 6e 74 20 6e 69    6c 20 63 6f 73 74 20 63 6f 6d 6d 65 6e 74 29 0a  | itized-amount.nil.cost.comment). | 
| 23480 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 234a0 |  20 20 20 20 20 20 28 6c 65 64 67 65 72 2d 73 69    6e 67 6c 65 2d 6c 69 6e 65 2d 63 6f 6e 66 69 67  | ......(ledger-single-line-config | 
| 234c0 |  20 69 6e 64 65 6e 74 20 73 74 61 74 75 73 20 6e    69 6c 20 61 63 63 6f 75 6e 74 20 73 65 70 61 72  | .indent.status.nil.account.separ | 
| 234e0 |  61 74 6f 72 20 63 6f 6d 6d 6f 64 69 74 69 7a 65    64 2d 61 6d 6f 75 6e 74 20 6e 69 6c 20 63 6f 73  | ator.commoditized-amount.nil.cos | 
| 23500 |  74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | t).............................. | 
| 23520 |  20 20 20 20 20 20 20 20 20 28 6c 65 64 67 65 72    2d 73 69 6e 67 6c 65 2d 6c 69 6e 65 2d 63 6f 6e  | .........(ledger-single-line-con | 
| 23540 |  66 69 67 20 69 6e 64 65 6e 74 20 73 74 61 74 75    73 20 6e 69 6c 20 61 63 63 6f 75 6e 74 20 73 65  | fig.indent.status.nil.account.se | 
| 23560 |  70 61 72 61 74 6f 72 20 63 6f 6d 6d 6f 64 69 74    69 7a 65 64 2d 61 6d 6f 75 6e 74 20 63 6f 6d 6d  | parator.commoditized-amount.comm | 
| 23580 |  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 20 20 20 20  | ent)............................ | 
| 235a0 |  20 20 20 20 20 20 20 20 20 20 20 28 6c 65 64 67    65 72 2d 73 69 6e 67 6c 65 2d 6c 69 6e 65 2d 63  | ...........(ledger-single-line-c | 
| 235c0 |  6f 6e 66 69 67 20 69 6e 64 65 6e 74 20 73 74 61    74 75 73 20 6e 69 6c 20 61 63 63 6f 75 6e 74 20  | onfig.indent.status.nil.account. | 
| 235e0 |  73 65 70 61 72 61 74 6f 72 20 63 6f 6d 6d 6f 64    69 74 69 7a 65 64 2d 61 6d 6f 75 6e 74 29 0a 20  | separator.commoditized-amount).. | 
| 23600 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 23620 |  20 20 20 20 20 28 6c 65 64 67 65 72 2d 73 69 6e    67 6c 65 2d 6c 69 6e 65 2d 63 6f 6e 66 69 67 20  | .....(ledger-single-line-config. | 
| 23640 |  69 6e 64 65 6e 74 20 73 74 61 74 75 73 20 6e 69    6c 20 61 63 63 6f 75 6e 74 20 73 65 70 61 72 61  | indent.status.nil.account.separa | 
| 23660 |  74 6f 72 20 61 6d 6f 75 6e 74 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | tor.amount)..................... | 
| 23680 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 6c 65 64 67 65 72 2d 73 69 6e 67 6c 65  | ..................(ledger-single | 
| 236a0 |  2d 6c 69 6e 65 2d 63 6f 6e 66 69 67 20 69 6e 64    65 6e 74 20 73 74 61 74 75 73 20 6e 69 6c 20 61  | -line-config.indent.status.nil.a | 
| 236c0 |  63 63 6f 75 6e 74 20 63 6f 6d 6d 65 6e 74 29 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ccount.comment)................. | 
| 236e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 6c 65 64 67 65 72 2d 73 69  | ......................(ledger-si | 
| 23700 |  6e 67 6c 65 2d 6c 69 6e 65 2d 63 6f 6e 66 69 67    20 69 6e 64 65 6e 74 20 73 74 61 74 75 73 20 6e  | ngle-line-config.indent.status.n | 
| 23720 |  69 6c 20 61 63 63 6f 75 6e 74 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | il.account)..................... | 
| 23740 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 6c 65 64 67 65 72 2d 73 69 6e 67 6c 65  | ..................(ledger-single | 
| 23760 |  2d 6c 69 6e 65 2d 63 6f 6e 66 69 67 20 69 6e 64    65 6e 74 20 61 63 63 6f 75 6e 74 20 73 65 70 61  | -line-config.indent.account.sepa | 
| 23780 |  72 61 74 6f 72 20 63 6f 6d 6d 6f 64 69 74 69 7a    65 64 2d 61 6d 6f 75 6e 74 20 63 6f 6d 6d 65 6e  | rator.commoditized-amount.commen | 
| 237a0 |  74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | t).............................. | 
| 237c0 |  20 20 20 20 20 20 20 20 20 28 6c 65 64 67 65 72    2d 73 69 6e 67 6c 65 2d 6c 69 6e 65 2d 63 6f 6e  | .........(ledger-single-line-con | 
| 237e0 |  66 69 67 20 69 6e 64 65 6e 74 20 61 63 63 6f 75    6e 74 20 73 65 70 61 72 61 74 6f 72 20 63 6f 6d  | fig.indent.account.separator.com | 
| 23800 |  6d 6f 64 69 74 69 7a 65 64 2d 61 6d 6f 75 6e 74    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | moditized-amount)............... | 
| 23820 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 28 6c 65 64 67 65 72 2d  | ........................(ledger- | 
| 23840 |  73 69 6e 67 6c 65 2d 6c 69 6e 65 2d 63 6f 6e 66    69 67 20 69 6e 64 65 6e 74 20 61 63 63 6f 75 6e  | single-line-config.indent.accoun | 
| 23860 |  74 20 73 65 70 61 72 61 74 6f 72 20 61 6d 6f 75    6e 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | t.separator.amount)............. | 
| 23880 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 6c 65 64 67 65  | ..........................(ledge | 
| 238a0 |  72 2d 73 69 6e 67 6c 65 2d 6c 69 6e 65 2d 63 6f    6e 66 69 67 20 69 6e 64 65 6e 74 20 61 63 63 6f  | r-single-line-config.indent.acco | 
| 238c0 |  75 6e 74 20 63 6f 6d 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  | unt.comment).................... | 
| 238e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 6c 65 64 67 65 72 2d 73 69 6e 67 6c  | ...................(ledger-singl | 
| 23900 |  65 2d 6c 69 6e 65 2d 63 6f 6e 66 69 67 20 69 6e    64 65 6e 74 20 61 63 63 6f 75 6e 74 29 29 29 29  | e-line-config.indent.account)))) | 
| 23920 |  29 0a 0a 28 64 65 66 75 6e 20 6c 65 64 67 65 72    2d 65 78 74 72 61 63 74 2d 63 6f 6e 74 65 78 74  | )..(defun.ledger-extract-context | 
| 23940 |  2d 69 6e 66 6f 20 28 6c 69 6e 65 2d 74 79 70 65    20 70 6f 73 29 0a 20 20 22 47 65 74 20 63 6f 6e  | -info.(line-type.pos)..."Get.con | 
| 23960 |  74 65 78 74 20 69 6e 66 6f 20 66 6f 72 20 63 75    72 72 65 6e 74 20 6c 69 6e 65 20 77 69 74 68 20  | text.info.for.current.line.with. | 
| 23980 |  4c 49 4e 45 2d 54 59 50 45 2e 0a 0a 41 73 73 75    6d 65 73 20 70 6f 69 6e 74 20 69 73 20 61 74 20  | LINE-TYPE...Assumes.point.is.at. | 
| 239a0 |  62 65 67 69 6e 6e 69 6e 67 20 6f 66 20 6c 69 6e    65 2c 20 61 6e 64 20 74 68 65 20 50 4f 53 20 61  | beginning.of.line,.and.the.POS.a | 
| 239c0 |  72 67 75 6d 65 6e 74 20 73 70 65 63 69 66 69 65    73 0a 77 68 65 72 65 20 74 68 65 20 5c 22 75 73  | rgument.specifies.where.the.\"us | 
| 239e0 |  65 72 73 5c 22 20 70 6f 69 6e 74 20 77 61 73 2e    22 0a 20 20 28 6c 65 74 20 28 28 6c 69 6e 66 6f  | ers\".point.was."...(let.((linfo | 
| 23a00 |  20 28 61 73 73 6f 63 20 6c 69 6e 65 2d 74 79 70    65 20 6c 65 64 67 65 72 2d 6c 69 6e 65 2d 63 6f  | .(assoc.line-type.ledger-line-co | 
| 23a20 |  6e 66 69 67 29 29 0a 20 20 20 20 20 20 20 20 66    6f 75 6e 64 20 66 69 65 6c 64 20 66 69 65 6c 64  | nfig)).........found.field.field | 
| 23a40 |  73 29 0a 20 20 20 20 28 64 6f 6c 69 73 74 20 28    72 65 2d 69 6e 66 6f 20 28 6e 74 68 20 31 20 6c  | s).....(dolist.(re-info.(nth.1.l | 
| 23a60 |  69 6e 66 6f 29 29 0a 20 20 20 20 20 20 28 6c 65    74 20 28 28 72 65 20 28 6e 74 68 20 30 20 72 65  | info)).......(let.((re.(nth.0.re | 
| 23a80 |  2d 69 6e 66 6f 29 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 28 6e 61 6d 65 73 20 28 6e 74 68 20  | -info)).............(names.(nth. | 
| 23aa0 |  31 20 72 65 2d 69 6e 66 6f 29 29 29 0a 20 20 20    20 20 20 20 20 28 75 6e 6c 65 73 73 20 66 6f 75  | 1.re-info))).........(unless.fou | 
| 23ac0 |  6e 64 0a 20 20 20 20 20 20 20 20 20 20 28 77 68    65 6e 20 28 6c 6f 6f 6b 69 6e 67 2d 61 74 20 72  | nd...........(when.(looking-at.r | 
| 23ae0 |  65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28    73 65 74 71 20 66 6f 75 6e 64 20 74 29 0a 20 20  | e).............(setq.found.t)... | 
| 23b00 |  20 20 20 20 20 20 20 20 20 20 28 64 6f 74 69 6d    65 73 20 28 69 20 28 6c 65 6e 67 74 68 20 6e 61  | ..........(dotimes.(i.(length.na | 
| 23b20 |  6d 65 73 29 29 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 28 77 68 65 6e 20 28 6e 74 68 20 69  | mes))...............(when.(nth.i | 
| 23b40 |  20 6e 61 6d 65 73 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 28 73 65 74 71 20 66 69  | .names).................(setq.fi | 
| 23b60 |  65 6c 64 73 20 28 61 70 70 65 6e 64 20 66 69 65    6c 64 73 0a 20 20 20 20 20 20 20 20 20 20 20 20  | elds.(append.fields............. | 
| 23b80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 28 6c 69 73 74 0a 20  | .........................(list.. | 
| 23ba0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 23bc0 |  20 20 20 20 20 28 6c 69 73 74 20 28 6e 74 68 20    69 20 6e 61 6d 65 73 29 0a 20 20 20 20 20 20 20  | .....(list.(nth.i.names)........ | 
| 23be0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 23c00 |  20 20 20 20 20 28 6d 61 74 63 68 2d 73 74 72 69    6e 67 2d 6e 6f 2d 70 72 6f 70 65 72 74 69 65 73  | .....(match-string-no-properties | 
| 23c20 |  20 28 31 2b 20 69 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  | .(1+.i))........................ | 
| 23c40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 6d 61 74 63 68 2d 62 65 67 69  | .....................(match-begi | 
| 23c60 |  6e 6e 69 6e 67 20 28 31 2b 20 69 29 29 29 29 29    29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | nning.(1+.i))))))))............. | 
| 23c80 |  28 64 6f 6c 69 73 74 20 28 66 20 66 69 65 6c 64    73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | (dolist.(f.fields).............. | 
| 23ca0 |  20 28 61 6e 64 20 28 6e 74 68 20 31 20 66 29 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .(and.(nth.1.f)................. | 
| 23cc0 |  20 20 20 28 3e 3d 20 70 6f 73 20 28 6e 74 68 20    32 20 66 29 29 0a 20 20 20 20 20 20 20 20 20 20  | ...(>=.pos.(nth.2.f))........... | 
| 23ce0 |  20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 66    69 65 6c 64 20 28 6e 74 68 20 30 20 66 29 29 29  | .........(setq.field.(nth.0.f))) | 
| 23d00 |  29 29 29 29 29 0a 20 20 20 20 28 6c 69 73 74 20    6c 69 6e 65 2d 74 79 70 65 20 66 69 65 6c 64 20  | ))))).....(list.line-type.field. | 
| 23d20 |  66 69 65 6c 64 73 29 29 29 0a 0a 28 64 65 66 75    6e 20 6c 65 64 67 65 72 2d 74 68 69 6e 67 2d 61  | fields)))..(defun.ledger-thing-a | 
| 23d40 |  74 2d 70 6f 69 6e 74 20 28 29 0a 20 20 22 44 65    73 63 72 69 62 65 20 74 68 69 6e 67 20 61 74 20  | t-point.()..."Describe.thing.at. | 
| 23d60 |  70 6f 69 6e 74 2e 20 20 52 65 74 75 72 6e 20 5c    5c 3d 27 74 72 61 6e 73 61 63 74 69 6f 6e 2c 20  | point...Return.\\='transaction,. | 
| 23d80 |  5c 5c 3d 27 70 6f 73 74 69 6e 67 2c 20 5c 5c 3d    27 64 61 79 2c 20 6f 72 20 6e 69 6c 2e 0a 0a 4c  | \\='posting,.\\='day,.or.nil...L | 
| 23da0 |  65 61 76 65 20 70 6f 69 6e 74 20 61 74 20 74 68    65 20 62 65 67 69 6e 6e 69 6e 67 20 6f 66 20 74  | eave.point.at.the.beginning.of.t | 
| 23dc0 |  68 65 20 74 68 69 6e 67 20 61 74 20 70 6f 69 6e    74 2c 20 6f 74 68 65 72 77 69 73 65 20 64 6f 20  | he.thing.at.point,.otherwise.do. | 
| 23de0 |  6e 6f 74 20 6d 6f 76 65 20 70 6f 69 6e 74 2e 22    0a 20 20 28 6c 65 74 20 28 28 68 65 72 65 20 28  | not.move.point."...(let.((here.( | 
| 23e00 |  70 6f 69 6e 74 29 29 29 0a 20 20 20 20 28 67 6f    74 6f 2d 63 68 61 72 20 28 6c 69 6e 65 2d 62 65  | point))).....(goto-char.(line-be | 
| 23e20 |  67 69 6e 6e 69 6e 67 2d 70 6f 73 69 74 69 6f 6e    29 29 0a 20 20 20 20 28 63 6f 6e 64 20 28 28 6c  | ginning-position)).....(cond.((l | 
| 23e40 |  6f 6f 6b 69 6e 67 2d 61 74 20 22 5e 5c 5c 28 3f    3a 5b 7e 3d 5d 5b 20 5c 74 5d 5c 5c 7c 5b 30 2d  | ooking-at."^\\(?:[~=][.\t]\\|[0- | 
| 23e60 |  39 2f 2e 3d 2d 5d 2b 5c 5c 28 5c 5c 73 2d 2b 5c    5c 2a 5c 5c 29 3f 5c 5c 28 5c 5c 73 2d 2b 28 2e  | 9/.=-]+\\(\\s-+\\*\\)?\\(\\s-+(. | 
| 23e80 |  2b 3f 29 5c 5c 29 3f 5c 5c 73 2d 2b 5c 5c 29 22    29 0a 20 20 20 20 20 20 20 20 20 20 20 28 67 6f  | +?)\\)?\\s-+\\)")............(go | 
| 23ea0 |  74 6f 2d 63 68 61 72 20 28 6d 61 74 63 68 2d 65    6e 64 20 30 29 29 0a 20 20 20 20 20 20 20 20 20  | to-char.(match-end.0)).......... | 
| 23ec0 |  20 20 27 74 72 61 6e 73 61 63 74 69 6f 6e 29 0a    20 20 20 20 20 20 20 20 20 20 28 28 6c 6f 6f 6b  | ..'transaction)...........((look | 
| 23ee0 |  69 6e 67 2d 61 74 20 22 5e 5c 5c 73 2d 2b 5c 5c    28 5b 2a 21 5d 5c 5c 73 2d 2b 5c 5c 29 3f 5b 5b  | ing-at."^\\s-+\\([*!]\\s-+\\)?[[ | 
| 23f00 |  28 5d 3f 5c 5c 28 5b 5e 5c 5c 73 2d 5d 5c 5c 29    22 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 67  | (]?\\([^\\s-]\\)")............(g | 
| 23f20 |  6f 74 6f 2d 63 68 61 72 20 28 6d 61 74 63 68 2d    62 65 67 69 6e 6e 69 6e 67 20 32 29 29 0a 20 20  | oto-char.(match-beginning.2))... | 
| 23f40 |  20 20 20 20 20 20 20 20 20 27 70 6f 73 74 69 6e    67 29 0a 20 20 20 20 20 20 20 20 20 20 28 28 6c  | .........'posting)...........((l | 
| 23f60 |  6f 6f 6b 69 6e 67 2d 61 74 20 22 5e 5c 5c 28 73    75 6e 5c 5c 7c 6d 6f 6e 5c 5c 7c 74 75 65 5c 5c  | ooking-at."^\\(sun\\|mon\\|tue\\ | 
| 23f80 |  7c 77 65 64 5c 5c 7c 74 68 75 5c 5c 7c 66 72 69    5c 5c 7c 73 61 74 5c 5c 29 5c 5c 73 2d 2b 22 29  | |wed\\|thu\\|fri\\|sat\\)\\s-+") | 
| 23fa0 |  0a 20 20 20 20 20 20 20 20 20 20 20 28 67 6f 74    6f 2d 63 68 61 72 20 28 6d 61 74 63 68 2d 65 6e  | ............(goto-char.(match-en | 
| 23fc0 |  64 20 30 29 29 0a 20 20 20 20 20 20 20 20 20 20    20 27 64 61 79 29 0a 20 20 20 20 20 20 20 20 20  | d.0))............'day).......... | 
| 23fe0 |  20 28 74 0a 20 20 20 20 20 20 20 20 20 20 20 28    69 67 6e 6f 72 65 20 28 67 6f 74 6f 2d 63 68 61  | .(t............(ignore.(goto-cha | 
| 24000 |  72 20 68 65 72 65 29 29 29 29 29 29 0a 0a 28 64    65 66 75 6e 20 6c 65 64 67 65 72 2d 63 6f 6e 74  | r.here))))))..(defun.ledger-cont | 
| 24020 |  65 78 74 2d 61 74 2d 70 6f 69 6e 74 20 28 29 0a    20 20 22 52 65 74 75 72 6e 20 61 20 6c 69 73 74  | ext-at-point.()..."Return.a.list | 
| 24040 |  20 64 65 73 63 72 69 62 69 6e 67 20 74 68 65 20    63 6f 6e 74 65 78 74 20 61 72 6f 75 6e 64 20 70  | .describing.the.context.around.p | 
| 24060 |  6f 69 6e 74 2e 0a 0a 54 68 65 20 63 6f 6e 74 65    6e 74 73 20 6f 66 20 74 68 65 20 6c 69 73 74 20  | oint...The.contents.of.the.list. | 
| 24080 |  61 72 65 20 74 68 65 20 6c 69 6e 65 20 74 79 70    65 2c 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 74  | are.the.line.type,.the.name.of.t | 
| 240a0 |  68 65 20 66 69 65 6c 64 0a 63 6f 6e 74 61 69 6e    69 6e 67 20 70 6f 69 6e 74 2c 20 61 6e 64 20 66  | he.field.containing.point,.and.f | 
| 240c0 |  6f 72 20 73 65 6c 65 63 74 65 64 20 6c 69 6e 65    20 74 79 70 65 73 2c 20 74 68 65 20 63 6f 6e 74  | or.selected.line.types,.the.cont | 
| 240e0 |  65 6e 74 20 6f 66 0a 74 68 65 20 66 69 65 6c 64    73 20 69 6e 20 74 68 65 20 6c 69 6e 65 20 69 6e  | ent.of.the.fields.in.the.line.in | 
| 24100 |  20 61 20 61 73 73 6f 63 69 61 74 69 6f 6e 20 6c    69 73 74 2e 22 0a 20 20 28 6c 65 74 20 28 28 70  | .a.association.list."...(let.((p | 
| 24120 |  6f 73 20 28 70 6f 69 6e 74 29 29 29 0a 20 20 20    20 28 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e  | os.(point))).....(save-excursion | 
| 24140 |  0a 20 20 20 20 20 20 28 62 65 67 69 6e 6e 69 6e    67 2d 6f 66 2d 6c 69 6e 65 29 0a 20 20 20 20 20  | .......(beginning-of-line)...... | 
| 24160 |  20 28 6c 65 74 20 28 28 66 69 72 73 74 2d 63 68    61 72 20 28 63 68 61 72 2d 61 66 74 65 72 29 29  | .(let.((first-char.(char-after)) | 
| 24180 |  29 0a 20 20 20 20 20 20 20 20 28 63 6f 6e 64 20    28 28 65 71 75 61 6c 20 28 70 6f 69 6e 74 29 20  | ).........(cond.((equal.(point). | 
| 241a0 |  28 6c 69 6e 65 2d 65 6e 64 2d 70 6f 73 69 74 69    6f 6e 29 29 0a 20 20 20 20 20 20 20 20 20 20 20  | (line-end-position))............ | 
| 241c0 |  20 20 20 20 27 28 65 6d 70 74 79 2d 6c 69 6e 65    20 6e 69 6c 20 6e 69 6c 29 29 0a 20 20 20 20 20  | ....'(empty-line.nil.nil))...... | 
| 241e0 |  20 20 20 20 20 20 20 20 20 28 28 6d 65 6d 71 20    66 69 72 73 74 2d 63 68 61 72 20 27 28 3f 5c 20  | .........((memq.first-char.'(?\. | 
| 24200 |  3f 5c 74 29 29 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 6c 65 64 67 65 72 2d 65 78 74  | ?\t))................(ledger-ext | 
| 24220 |  72 61 63 74 2d 63 6f 6e 74 65 78 74 2d 69 6e 66    6f 20 27 61 63 63 74 2d 74 72 61 6e 73 61 63 74  | ract-context-info.'acct-transact | 
| 24240 |  69 6f 6e 20 70 6f 73 29 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 28 28 6d 65 6d 71 20 66  | ion.pos))...............((memq.f | 
| 24260 |  69 72 73 74 2d 63 68 61 72 20 27 28 3f 30 20 3f    31 20 3f 32 20 3f 33 20 3f 34 20 3f 35 20 3f 36  | irst-char.'(?0.?1.?2.?3.?4.?5.?6 | 
| 24280 |  20 3f 37 20 3f 38 20 3f 39 29 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 6c 65 64 67  | .?7.?8.?9))................(ledg | 
| 242a0 |  65 72 2d 65 78 74 72 61 63 74 2d 63 6f 6e 74 65    78 74 2d 69 6e 66 6f 20 27 78 61 63 74 20 70 6f  | er-extract-context-info.'xact.po | 
| 242c0 |  73 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 28 65 71 75 61 6c 20 66 69 72 73 74 2d  | s))...............((equal.first- | 
| 242e0 |  63 68 61 72 20 3f 5c 3d 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 27 28 61 75 74 6f 6d  | char.?\=)................'(autom | 
| 24300 |  61 74 65 64 2d 78 61 63 74 20 6e 69 6c 20 6e 69    6c 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | ated-xact.nil.nil))............. | 
| 24320 |  20 20 28 28 65 71 75 61 6c 20 66 69 72 73 74 2d    63 68 61 72 20 3f 5c 7e 29 0a 20 20 20 20 20 20  | ..((equal.first-char.?\~)....... | 
| 24340 |  20 20 20 20 20 20 20 20 20 27 28 70 65 72 69 6f    64 2d 78 61 63 74 20 6e 69 6c 20 6e 69 6c 29 29  | .........'(period-xact.nil.nil)) | 
| 24360 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    28 65 71 75 61 6c 20 66 69 72 73 74 2d 63 68 61  | ...............((equal.first-cha | 
| 24380 |  72 20 3f 5c 21 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 27 28 63 6f 6d 6d 61 6e 64 2d  | r.?\!)................'(command- | 
| 243a0 |  64 69 72 65 63 74 69 76 65 29 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 28 65 71 75 61  | directive))...............((equa | 
| 243c0 |  6c 20 66 69 72 73 74 2d 63 68 61 72 20 3f 5c 3b    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | l.first-char.?\;)............... | 
| 243e0 |  20 27 28 63 6f 6d 6d 65 6e 74 20 6e 69 6c 20 6e    69 6c 29 29 0a 20 20 20 20 20 20 20 20 20 20 20  | .'(comment.nil.nil))............ | 
| 24400 |  20 20 20 28 28 65 71 75 61 6c 20 66 69 72 73 74    2d 63 68 61 72 20 3f 59 29 0a 20 20 20 20 20 20  | ...((equal.first-char.?Y)....... | 
| 24420 |  20 20 20 20 20 20 20 20 20 27 28 64 65 66 61 75    6c 74 2d 79 65 61 72 20 6e 69 6c 20 6e 69 6c 29  | .........'(default-year.nil.nil) | 
| 24440 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 28 65 71 75 61 6c 20 66 69 72 73 74 2d 63 68  | )...............((equal.first-ch | 
| 24460 |  61 72 20 3f 50 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 27 28 63 6f 6d 6d 6f 64 69 74  | ar.?P)................'(commodit | 
| 24480 |  79 2d 70 72 69 63 65 20 6e 69 6c 20 6e 69 6c 29    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | y-price.nil.nil))............... | 
| 244a0 |  28 28 65 71 75 61 6c 20 66 69 72 73 74 2d 63 68    61 72 20 3f 4e 29 0a 20 20 20 20 20 20 20 20 20  | ((equal.first-char.?N).......... | 
| 244c0 |  20 20 20 20 20 20 27 28 70 72 69 63 65 2d 69 67    6e 6f 72 65 64 2d 63 6f 6d 6d 6f 64 69 74 79 20  | ......'(price-ignored-commodity. | 
| 244e0 |  6e 69 6c 20 6e 69 6c 29 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 28 28 65 71 75 61 6c 20  | nil.nil))...............((equal. | 
| 24500 |  66 69 72 73 74 2d 63 68 61 72 20 3f 44 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 28  | first-char.?D)................'( | 
| 24520 |  64 65 66 61 75 6c 74 2d 63 6f 6d 6d 6f 64 69 74    79 20 6e 69 6c 20 6e 69 6c 29 29 0a 20 20 20 20  | default-commodity.nil.nil))..... | 
| 24540 |  20 20 20 20 20 20 20 20 20 20 28 28 65 71 75 61    6c 20 66 69 72 73 74 2d 63 68 61 72 20 3f 43 29  | ..........((equal.first-char.?C) | 
| 24560 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    27 28 63 6f 6d 6d 6f 64 69 74 79 2d 63 6f 6e 76  | ................'(commodity-conv | 
| 24580 |  65 72 73 69 6f 6e 20 6e 69 6c 20 6e 69 6c 29 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28  | ersion.nil.nil))...............( | 
| 245a0 |  28 65 71 75 61 6c 20 66 69 72 73 74 2d 63 68 61    72 20 3f 69 29 0a 20 20 20 20 20 20 20 20 20 20  | (equal.first-char.?i)........... | 
| 245c0 |  20 20 20 20 20 27 28 74 69 6d 65 63 6c 6f 63 6b    2d 69 20 6e 69 6c 20 6e 69 6c 29 29 0a 20 20 20  | .....'(timeclock-i.nil.nil)).... | 
| 245e0 |  20 20 20 20 20 20 20 20 20 20 20 28 28 65 71 75    61 6c 20 66 69 72 73 74 2d 63 68 61 72 20 3f 6f  | ...........((equal.first-char.?o | 
| 24600 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 27 28 74 69 6d 65 63 6c 6f 63 6b 2d 6f 20 6e  | )................'(timeclock-o.n | 
| 24620 |  69 6c 20 6e 69 6c 29 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 28 28 65 71 75 61 6c 20 66  | il.nil))...............((equal.f | 
| 24640 |  69 72 73 74 2d 63 68 61 72 20 3f 62 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 27 28 74  | irst-char.?b)................'(t | 
| 24660 |  69 6d 65 63 6c 6f 63 6b 2d 62 20 6e 69 6c 20 6e    69 6c 29 29 0a 20 20 20 20 20 20 20 20 20 20 20  | imeclock-b.nil.nil))............ | 
| 24680 |  20 20 20 28 28 65 71 75 61 6c 20 66 69 72 73 74    2d 63 68 61 72 20 3f 68 29 0a 20 20 20 20 20 20  | ...((equal.first-char.?h)....... | 
| 246a0 |  20 20 20 20 20 20 20 20 20 27 28 74 69 6d 65 63    6c 6f 63 6b 2d 68 20 20 6e 69 6c 20 6e 69 6c 29  | .........'(timeclock-h..nil.nil) | 
| 246c0 |  29 0a 20 20 20 20 20 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  | )...............(t.............. | 
| 246e0 |  20 20 27 28 75 6e 6b 6e 6f 77 6e 20 6e 69 6c 20    6e 69 6c 29 29 29 29 29 29 29 0a 0a 28 64 65 66  | ..'(unknown.nil.nil)))))))..(def | 
| 24700 |  75 6e 20 6c 65 64 67 65 72 2d 63 6f 6e 74 65 78    74 2d 6f 74 68 65 72 2d 6c 69 6e 65 20 28 6f 66  | un.ledger-context-other-line.(of | 
| 24720 |  66 73 65 74 29 0a 20 20 22 52 65 74 75 72 6e 20    61 20 6c 69 73 74 20 64 65 73 63 72 69 62 69 6e  | fset)..."Return.a.list.describin | 
| 24740 |  67 20 63 6f 6e 74 65 78 74 20 6f 66 20 6c 69 6e    65 20 4f 46 46 53 45 54 20 66 72 6f 6d 20 65 78  | g.context.of.line.OFFSET.from.ex | 
| 24760 |  69 73 74 69 6e 67 20 70 6f 73 69 74 69 6f 6e 2e    0a 0a 4f 66 66 73 65 74 20 63 61 6e 20 62 65 20  | isting.position...Offset.can.be. | 
| 24780 |  70 6f 73 69 74 69 76 65 20 6f 72 20 6e 65 67 61    74 69 76 65 2e 20 20 49 66 20 72 75 6e 20 6f 75  | positive.or.negative...If.run.ou | 
| 247a0 |  74 20 6f 66 20 62 75 66 66 65 72 20 62 65 66 6f    72 65 20 72 65 61 63 68 69 6e 67 0a 73 70 65 63  | t.of.buffer.before.reaching.spec | 
| 247c0 |  69 66 69 65 64 20 6c 69 6e 65 2c 20 72 65 74 75    72 6e 73 20 6e 69 6c 2e 22 0a 20 20 28 73 61 76  | ified.line,.returns.nil."...(sav | 
| 247e0 |  65 2d 65 78 63 75 72 73 69 6f 6e 0a 20 20 20 20    28 6c 65 74 20 28 28 6c 65 66 74 20 28 66 6f 72  | e-excursion.....(let.((left.(for | 
| 24800 |  77 61 72 64 2d 6c 69 6e 65 20 6f 66 66 73 65 74    29 29 29 0a 20 20 20 20 20 20 28 69 66 20 28 6e  | ward-line.offset))).......(if.(n | 
| 24820 |  6f 74 20 28 65 71 75 61 6c 20 6c 65 66 74 20 30    29 29 0a 20 20 20 20 20 20 20 20 20 20 6e 69 6c  | ot.(equal.left.0))...........nil | 
| 24840 |  0a 20 20 20 20 20 20 20 20 28 6c 65 64 67 65 72    2d 63 6f 6e 74 65 78 74 2d 61 74 2d 70 6f 69 6e  | .........(ledger-context-at-poin | 
| 24860 |  74 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6c    65 64 67 65 72 2d 63 6f 6e 74 65 78 74 2d 6c 69  | t)))))..(defun.ledger-context-li | 
| 24880 |  6e 65 2d 74 79 70 65 20 28 63 6f 6e 74 65 78 74    2d 69 6e 66 6f 29 0a 20 20 28 6e 74 68 20 30 20  | ne-type.(context-info)...(nth.0. | 
| 248a0 |  63 6f 6e 74 65 78 74 2d 69 6e 66 6f 29 29 0a 0a    28 64 65 66 75 6e 20 6c 65 64 67 65 72 2d 63 6f  | context-info))..(defun.ledger-co | 
| 248c0 |  6e 74 65 78 74 2d 63 75 72 72 65 6e 74 2d 66 69    65 6c 64 20 28 63 6f 6e 74 65 78 74 2d 69 6e 66  | ntext-current-field.(context-inf | 
| 248e0 |  6f 29 0a 20 20 28 6e 74 68 20 31 20 63 6f 6e 74    65 78 74 2d 69 6e 66 6f 29 29 0a 0a 28 64 65 66  | o)...(nth.1.context-info))..(def | 
| 24900 |  75 6e 20 6c 65 64 67 65 72 2d 63 6f 6e 74 65 78    74 2d 66 69 65 6c 64 2d 69 6e 66 6f 20 28 63 6f  | un.ledger-context-field-info.(co | 
| 24920 |  6e 74 65 78 74 2d 69 6e 66 6f 20 66 69 65 6c 64    2d 6e 61 6d 65 29 0a 20 20 28 61 73 73 6f 63 20  | ntext-info.field-name)...(assoc. | 
| 24940 |  66 69 65 6c 64 2d 6e 61 6d 65 20 28 6e 74 68 20    32 20 63 6f 6e 74 65 78 74 2d 69 6e 66 6f 29 29  | field-name.(nth.2.context-info)) | 
| 24960 |  29 0a 0a 28 64 65 66 75 6e 20 6c 65 64 67 65 72    2d 63 6f 6e 74 65 78 74 2d 66 69 65 6c 64 2d 70  | )..(defun.ledger-context-field-p | 
| 24980 |  72 65 73 65 6e 74 2d 70 20 28 63 6f 6e 74 65 78    74 2d 69 6e 66 6f 20 66 69 65 6c 64 2d 6e 61 6d  | resent-p.(context-info.field-nam | 
| 249a0 |  65 29 0a 20 20 28 6e 6f 74 20 28 6e 75 6c 6c 20    28 6c 65 64 67 65 72 2d 63 6f 6e 74 65 78 74 2d  | e)...(not.(null.(ledger-context- | 
| 249c0 |  66 69 65 6c 64 2d 69 6e 66 6f 20 63 6f 6e 74 65    78 74 2d 69 6e 66 6f 20 66 69 65 6c 64 2d 6e 61  | field-info.context-info.field-na | 
| 249e0 |  6d 65 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6c    65 64 67 65 72 2d 63 6f 6e 74 65 78 74 2d 66 69  | me))))..(defun.ledger-context-fi | 
| 24a00 |  65 6c 64 2d 76 61 6c 75 65 20 28 63 6f 6e 74 65    78 74 2d 69 6e 66 6f 20 66 69 65 6c 64 2d 6e 61  | eld-value.(context-info.field-na | 
| 24a20 |  6d 65 29 0a 20 20 28 6e 74 68 20 31 20 28 6c 65    64 67 65 72 2d 63 6f 6e 74 65 78 74 2d 66 69 65  | me)...(nth.1.(ledger-context-fie | 
| 24a40 |  6c 64 2d 69 6e 66 6f 20 63 6f 6e 74 65 78 74 2d    69 6e 66 6f 20 66 69 65 6c 64 2d 6e 61 6d 65 29  | ld-info.context-info.field-name) | 
| 24a60 |  29 29 0a 0a 28 64 65 66 75 6e 20 6c 65 64 67 65    72 2d 63 6f 6e 74 65 78 74 2d 66 69 65 6c 64 2d  | ))..(defun.ledger-context-field- | 
| 24a80 |  70 6f 73 69 74 69 6f 6e 20 28 63 6f 6e 74 65 78    74 2d 69 6e 66 6f 20 66 69 65 6c 64 2d 6e 61 6d  | position.(context-info.field-nam | 
| 24aa0 |  65 29 0a 20 20 28 6e 74 68 20 32 20 28 6c 65 64    67 65 72 2d 63 6f 6e 74 65 78 74 2d 66 69 65 6c  | e)...(nth.2.(ledger-context-fiel | 
| 24ac0 |  64 2d 69 6e 66 6f 20 63 6f 6e 74 65 78 74 2d 69    6e 66 6f 20 66 69 65 6c 64 2d 6e 61 6d 65 29 29  | d-info.context-info.field-name)) | 
| 24ae0 |  29 0a 0a 28 64 65 66 75 6e 20 6c 65 64 67 65 72    2d 63 6f 6e 74 65 78 74 2d 66 69 65 6c 64 2d 65  | )..(defun.ledger-context-field-e | 
| 24b00 |  6e 64 2d 70 6f 73 69 74 69 6f 6e 20 28 63 6f 6e    74 65 78 74 2d 69 6e 66 6f 20 66 69 65 6c 64 2d  | nd-position.(context-info.field- | 
| 24b20 |  6e 61 6d 65 29 0a 20 20 28 2b 20 28 6c 65 64 67    65 72 2d 63 6f 6e 74 65 78 74 2d 66 69 65 6c 64  | name)...(+.(ledger-context-field | 
| 24b40 |  2d 70 6f 73 69 74 69 6f 6e 20 63 6f 6e 74 65 78    74 2d 69 6e 66 6f 20 66 69 65 6c 64 2d 6e 61 6d  | -position.context-info.field-nam | 
| 24b60 |  65 29 0a 20 20 20 20 20 28 6c 65 6e 67 74 68 20    28 6c 65 64 67 65 72 2d 63 6f 6e 74 65 78 74 2d  | e)......(length.(ledger-context- | 
| 24b80 |  66 69 65 6c 64 2d 76 61 6c 75 65 20 63 6f 6e 74    65 78 74 2d 69 6e 66 6f 20 66 69 65 6c 64 2d 6e  | field-value.context-info.field-n | 
| 24ba0 |  61 6d 65 29 29 29 29 0a 0a 28 64 65 66 75 6e 20    6c 65 64 67 65 72 2d 63 6f 6e 74 65 78 74 2d 67  | ame))))..(defun.ledger-context-g | 
| 24bc0 |  6f 74 6f 2d 66 69 65 6c 64 2d 73 74 61 72 74 20    28 63 6f 6e 74 65 78 74 2d 69 6e 66 6f 20 66 69  | oto-field-start.(context-info.fi | 
| 24be0 |  65 6c 64 2d 6e 61 6d 65 29 0a 20 20 28 67 6f 74    6f 2d 63 68 61 72 20 28 6c 65 64 67 65 72 2d 63  | eld-name)...(goto-char.(ledger-c | 
| 24c00 |  6f 6e 74 65 78 74 2d 66 69 65 6c 64 2d 70 6f 73    69 74 69 6f 6e 20 63 6f 6e 74 65 78 74 2d 69 6e  | ontext-field-position.context-in | 
| 24c20 |  66 6f 20 66 69 65 6c 64 2d 6e 61 6d 65 29 29 29    0a 0a 28 64 65 66 75 6e 20 6c 65 64 67 65 72 2d  | fo.field-name)))..(defun.ledger- | 
| 24c40 |  63 6f 6e 74 65 78 74 2d 67 6f 74 6f 2d 66 69 65    6c 64 2d 65 6e 64 20 28 63 6f 6e 74 65 78 74 2d  | context-goto-field-end.(context- | 
| 24c60 |  69 6e 66 6f 20 66 69 65 6c 64 2d 6e 61 6d 65 29    0a 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 6c  | info.field-name)...(goto-char.(l | 
| 24c80 |  65 64 67 65 72 2d 63 6f 6e 74 65 78 74 2d 66 69    65 6c 64 2d 65 6e 64 2d 70 6f 73 69 74 69 6f 6e  | edger-context-field-end-position | 
| 24ca0 |  20 63 6f 6e 74 65 78 74 2d 69 6e 66 6f 20 66 69    65 6c 64 2d 6e 61 6d 65 29 29 29 0a 0a 28 70 72  | .context-info.field-name)))..(pr | 
| 24cc0 |  6f 76 69 64 65 20 27 6c 65 64 67 65 72 2d 63 6f    6e 74 65 78 74 29 0a 0a 3b 3b 3b 20 6c 65 64 67  | ovide.'ledger-context)..;;;.ledg | 
| 24ce0 |  65 72 2d 63 6f 6e 74 65 78 74 2e 65 6c 20 65 6e    64 73 20 68 65 72 65 0a 00 00 00 00 00 00 00 00  | er-context.el.ends.here......... | 
| 24d00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 24d20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 24d40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 24d60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 24d80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 24da0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 24dc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 24de0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 24e00 |  6c 65 64 67 65 72 2d 6d 6f 64 65 2d 32 30 32 34    30 34 31 36 2e 34 31 36 2f 6c 65 64 67 65 72 2d  | ledger-mode-20240416.416/ledger- | 
| 24e20 |  74 65 73 74 2e 65 6c 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | test.el......................... | 
| 24e40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 24e60 |  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 | 
| 24e80 |  30 30 31 31 34 36 35 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 35 36 36 32 00 20 30 00 00 00  | 0011465.00000000000.015662..0... | 
| 24ea0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 24ec0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 24ee0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 24f00 |  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................... | 
| 24f20 |  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................... | 
| 24f40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 24f60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 24f80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 24fa0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 24fc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 24fe0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 25000 |  3b 3b 3b 20 6c 65 64 67 65 72 2d 74 65 73 74 2e    65 6c 20 2d 2d 2d 20 48 65 6c 70 65 72 20 63 6f  | ;;;.ledger-test.el.---.Helper.co | 
| 25020 |  64 65 20 66 6f 72 20 75 73 65 20 77 69 74 68 20    74 68 65 20 22 6c 65 64 67 65 72 22 20 63 6f 6d  | de.for.use.with.the."ledger".com | 
| 25040 |  6d 61 6e 64 2d 6c 69 6e 65 20 74 6f 6f 6c 20 20    2d 2a 2d 20 6c 65 78 69 63 61 6c 2d 62 69 6e 64  | mand-line.tool..-*-.lexical-bind | 
| 25060 |  69 6e 67 3a 20 74 20 2d 2a 2d 0a 0a 3b 3b 20 43    6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 30  | ing:.t.-*-..;;.Copyright.(C).200 | 
| 25080 |  33 2d 32 30 31 36 20 4a 6f 68 6e 20 57 69 65 67    6c 65 79 20 28 6a 6f 68 6e 77 20 41 54 20 67 6e  | 3-2016.John.Wiegley.(johnw.AT.gn | 
| 250a0 |  75 20 44 4f 54 20 6f 72 67 29 0a 0a 3b 3b 20 54    68 69 73 20 66 69 6c 65 20 69 73 20 6e 6f 74 20  | u.DOT.org)..;;.This.file.is.not. | 
| 250c0 |  70 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 69 73 20 66  | part.of.GNU.Emacs...;;.This.is.f | 
| 250e0 |  72 65 65 20 73 6f 66 74 77 61 72 65 3b 20 79 6f    75 20 63 61 6e 20 72 65 64 69 73 74 72 69 62 75  | ree.software;.you.can.redistribu | 
| 25100 |  74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d 6f 64    69 66 79 20 69 74 20 75 6e 64 65 72 0a 3b 3b 20  | te.it.and/or.modify.it.under.;;. | 
| 25120 |  74 68 65 20 74 65 72 6d 73 20 6f 66 20 74 68 65    20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62  | the.terms.of.the.GNU.General.Pub | 
| 25140 |  6c 69 63 20 4c 69 63 65 6e 73 65 20 61 73 20 70    75 62 6c 69 73 68 65 64 20 62 79 20 74 68 65 20  | lic.License.as.published.by.the. | 
| 25160 |  46 72 65 65 0a 3b 3b 20 53 6f 66 74 77 61 72 65    20 46 6f 75 6e 64 61 74 69 6f 6e 3b 20 65 69 74  | Free.;;.Software.Foundation;.eit | 
| 25180 |  68 65 72 20 76 65 72 73 69 6f 6e 20 32 2c 20 6f    72 20 28 61 74 20 79 6f 75 72 20 6f 70 74 69 6f  | her.version.2,.or.(at.your.optio | 
| 251a0 |  6e 29 20 61 6e 79 20 6c 61 74 65 72 0a 3b 3b 20    76 65 72 73 69 6f 6e 2e 0a 3b 3b 0a 3b 3b 20 54  | n).any.later.;;.version..;;.;;.T | 
| 251c0 |  68 69 73 20 69 73 20 64 69 73 74 72 69 62 75 74    65 64 20 69 6e 20 74 68 65 20 68 6f 70 65 20 74  | his.is.distributed.in.the.hope.t | 
| 251e0 |  68 61 74 20 69 74 20 77 69 6c 6c 20 62 65 20 75    73 65 66 75 6c 2c 20 62 75 74 20 57 49 54 48 4f  | hat.it.will.be.useful,.but.WITHO | 
| 25200 |  55 54 0a 3b 3b 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  | UT.;;.ANY.WARRANTY;.without.even | 
| 25220 |  20 74 68 65 20 69 6d 70 6c 69 65 64 20 77 61 72    72 61 6e 74 79 20 6f 66 20 4d 45 52 43 48 41 4e  | .the.implied.warranty.of.MERCHAN | 
| 25240 |  54 41 42 49 4c 49 54 59 20 6f 72 0a 3b 3b 20 46    49 54 4e 45 53 53 20 46 4f 52 20 41 20 50 41 52  | TABILITY.or.;;.FITNESS.FOR.A.PAR | 
| 25260 |  54 49 43 55 4c 41 52 20 50 55 52 50 4f 53 45 2e    20 20 53 65 65 20 74 68 65 20 47 4e 55 20 47 65  | TICULAR.PURPOSE...See.the.GNU.Ge | 
| 25280 |  6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63    65 6e 73 65 0a 3b 3b 20 66 6f 72 20 6d 6f 72 65  | neral.Public.License.;;.for.more | 
| 252a0 |  20 64 65 74 61 69 6c 73 2e 0a 3b 3b 0a 3b 3b 20    59 6f 75 20 73 68 6f 75 6c 64 20 68 61 76 65 20  | .details..;;.;;.You.should.have. | 
| 252c0 |  72 65 63 65 69 76 65 64 20 61 20 63 6f 70 79 20    6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72  | received.a.copy.of.the.GNU.Gener | 
| 252e0 |  61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65 6e 73    65 0a 3b 3b 20 61 6c 6f 6e 67 20 77 69 74 68 20  | al.Public.License.;;.along.with. | 
| 25300 |  47 4e 55 20 45 6d 61 63 73 3b 20 73 65 65 20 74    68 65 20 66 69 6c 65 20 43 4f 50 59 49 4e 47 2e  | GNU.Emacs;.see.the.file.COPYING. | 
| 25320 |  20 20 49 66 20 6e 6f 74 2c 20 77 72 69 74 65 20    74 6f 20 74 68 65 0a 3b 3b 20 46 72 65 65 20 53  | ..If.not,.write.to.the.;;.Free.S | 
| 25340 |  6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61 74 69    6f 6e 2c 20 49 6e 63 2e 2c 20 35 31 20 46 72 61  | oftware.Foundation,.Inc.,.51.Fra | 
| 25360 |  6e 6b 6c 69 6e 20 53 74 72 65 65 74 2c 20 46 69    66 74 68 20 46 6c 6f 6f 72 2c 20 42 6f 73 74 6f  | nklin.Street,.Fifth.Floor,.Bosto | 
| 25380 |  6e 2c 0a 3b 3b 20 4d 41 20 30 32 31 31 30 2d 31    33 30 31 20 55 53 41 2e 0a 0a 3b 3b 3b 20 43 6f  | n,.;;.MA.02110-1301.USA...;;;.Co | 
| 253a0 |  6d 6d 65 6e 74 61 72 79 3a 0a 0a 3b 3b 3b 20 43    6f 64 65 3a 0a 0a 28 64 65 63 6c 61 72 65 2d 66  | mmentary:..;;;.Code:..(declare-f | 
| 253c0 |  75 6e 63 74 69 6f 6e 20 6c 65 64 67 65 72 2d 6d    6f 64 65 20 22 6c 65 64 67 65 72 2d 6d 6f 64 65  | unction.ledger-mode."ledger-mode | 
| 253e0 |  22 29 20 3b 20 54 4f 44 4f 3a 20 66 69 78 20 74    68 69 73 20 63 79 63 6c 69 63 20 64 65 70 65 6e  | ").;.TODO:.fix.this.cyclic.depen | 
| 25400 |  64 65 6e 63 79 0a 28 72 65 71 75 69 72 65 20 27    6f 72 67 29 0a 28 72 65 71 75 69 72 65 20 27 6f  | dency.(require.'org).(require.'o | 
| 25420 |  75 74 6c 69 6e 65 29 0a 0a 28 64 65 66 67 72 6f    75 70 20 6c 65 64 67 65 72 2d 74 65 73 74 20 6e  | utline)..(defgroup.ledger-test.n | 
| 25440 |  69 6c 0a 20 20 22 44 65 66 69 6e 69 74 69 6f 6e    73 20 66 6f 72 20 74 68 65 20 4c 65 64 67 65 72  | il..."Definitions.for.the.Ledger | 
| 25460 |  20 74 65 73 74 69 6e 67 20 66 72 61 6d 65 77 6f    72 6b 22 0a 20 20 3a 67 72 6f 75 70 20 27 6c 65  | .testing.framework"...:group.'le | 
| 25480 |  64 67 65 72 29 0a 0a 28 64 65 66 63 75 73 74 6f    6d 20 6c 65 64 67 65 72 2d 73 6f 75 72 63 65 2d  | dger)..(defcustom.ledger-source- | 
| 254a0 |  64 69 72 65 63 74 6f 72 79 20 22 7e 2f 6c 65 64    67 65 72 2f 22 0a 20 20 22 44 69 72 65 63 74 6f  | directory."~/ledger/"..."Directo | 
| 254c0 |  72 79 20 77 68 65 72 65 20 74 68 65 20 4c 65 64    67 65 72 20 73 6f 75 72 63 65 73 20 61 72 65 20  | ry.where.the.Ledger.sources.are. | 
| 254e0 |  6c 6f 63 61 74 65 64 2e 22 0a 20 20 3a 74 79 70    65 20 27 64 69 72 65 63 74 6f 72 79 0a 20 20 3a  | located."...:type.'directory...: | 
| 25500 |  67 72 6f 75 70 20 27 6c 65 64 67 65 72 2d 74 65    73 74 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20  | group.'ledger-test)..(defcustom. | 
| 25520 |  6c 65 64 67 65 72 2d 74 65 73 74 2d 62 69 6e 61    72 79 20 22 2f 50 72 6f 64 75 63 74 73 2f 6c 65  | ledger-test-binary."/Products/le | 
| 25540 |  64 67 65 72 2f 64 65 62 75 67 2f 6c 65 64 67 65    72 22 0a 20 20 22 44 69 72 65 63 74 6f 72 79 20  | dger/debug/ledger"..."Directory. | 
| 25560 |  77 68 65 72 65 20 74 68 65 20 4c 65 64 67 65 72    20 64 65 62 75 67 20 62 69 6e 61 72 79 20 69 73  | where.the.Ledger.debug.binary.is | 
| 25580 |  20 6c 6f 63 61 74 65 64 2e 22 0a 20 20 3a 74 79    70 65 20 27 66 69 6c 65 0a 20 20 3a 67 72 6f 75  | .located."...:type.'file...:grou | 
| 255a0 |  70 20 27 6c 65 64 67 65 72 2d 74 65 73 74 29 0a    0a 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b  | p.'ledger-test)..;;;;;;;;;;;;;;; | 
| 255c0 |  3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b    3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b  | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | 
| 255e0 |  3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b    3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 3b 0a  | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;. | 
| 25600 |  0a 28 64 65 66 75 6e 20 6c 65 64 67 65 72 2d 63    72 65 61 74 65 2d 74 65 73 74 20 28 29 0a 20 20  | .(defun.ledger-create-test.()... | 
| 25620 |  22 43 72 65 61 74 65 20 61 20 72 65 67 72 65 73    73 69 6f 6e 20 74 65 73 74 2e 22 0a 20 20 28 69  | "Create.a.regression.test."...(i | 
| 25640 |  6e 74 65 72 61 63 74 69 76 65 29 0a 20 20 28 73    61 76 65 2d 72 65 73 74 72 69 63 74 69 6f 6e 0a  | nteractive)...(save-restriction. | 
| 25660 |  20 20 20 20 28 6f 72 67 2d 6e 61 72 72 6f 77 2d    74 6f 2d 73 75 62 74 72 65 65 29 0a 20 20 20 20  | ....(org-narrow-to-subtree)..... | 
| 25680 |  28 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e 0a    20 20 20 20 20 20 28 6c 65 74 20 28 74 65 78 74  | (save-excursion.......(let.(text | 
| 256a0 |  20 62 65 67 29 0a 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 2d  | .beg).........(goto-char.(point- | 
| 256c0 |  6d 69 6e 29 29 0a 20 20 20 20 20 20 20 20 28 66    6f 72 77 61 72 64 2d 6c 69 6e 65 20 31 29 0a 20  | min)).........(forward-line.1).. | 
| 256e0 |  20 20 20 20 20 20 20 28 73 65 74 71 20 62 65 67    20 28 70 6f 69 6e 74 29 29 0a 20 20 20 20 20 20  | .......(setq.beg.(point))....... | 
| 25700 |  20 20 28 73 65 61 72 63 68 2d 66 6f 72 77 61 72    64 20 22 3a 50 52 4f 50 45 52 54 49 45 53 3a 22  | ..(search-forward.":PROPERTIES:" | 
| 25720 |  29 0a 20 20 20 20 20 20 20 20 28 67 6f 74 6f 2d    63 68 61 72 20 28 6c 69 6e 65 2d 62 65 67 69 6e  | ).........(goto-char.(line-begin | 
| 25740 |  6e 69 6e 67 2d 70 6f 73 69 74 69 6f 6e 29 29 0a    20 20 20 20 20 20 20 20 28 73 65 74 71 20 74 65  | ning-position)).........(setq.te | 
| 25760 |  78 74 20 28 62 75 66 66 65 72 2d 73 75 62 73 74    72 69 6e 67 2d 6e 6f 2d 70 72 6f 70 65 72 74 69  | xt.(buffer-substring-no-properti | 
| 25780 |  65 73 20 62 65 67 20 28 70 6f 69 6e 74 29 29 29    0a 20 20 20 20 20 20 20 20 28 67 6f 74 6f 2d 63  | es.beg.(point))).........(goto-c | 
| 257a0 |  68 61 72 20 28 70 6f 69 6e 74 2d 6d 69 6e 29 29    0a 20 20 20 20 20 20 20 20 28 72 65 2d 73 65 61  | har.(point-min)).........(re-sea | 
| 257c0 |  72 63 68 2d 66 6f 72 77 61 72 64 20 22 3a 49 44    3a 5c 5c 73 2d 2b 5c 5c 28 5b 5e 2d 5d 2b 5c 5c  | rch-forward.":ID:\\s-+\\([^-]+\\ | 
| 257e0 |  29 22 29 0a 20 20 20 20 20 20 20 20 28 66 69 6e    64 2d 66 69 6c 65 2d 6f 74 68 65 72 2d 77 69 6e  | )").........(find-file-other-win | 
| 25800 |  64 6f 77 0a 20 20 20 20 20 20 20 20 20 28 66 6f    72 6d 61 74 20 22 7e 2f 73 72 63 2f 6c 65 64 67  | dow..........(format."~/src/ledg | 
| 25820 |  65 72 2f 74 65 73 74 2f 72 65 67 72 65 73 73 2f    25 73 2e 74 65 73 74 22 20 28 6d 61 74 63 68 2d  | er/test/regress/%s.test".(match- | 
| 25840 |  73 74 72 69 6e 67 20 31 29 29 29 0a 20 20 20 20    20 20 20 20 28 73 69 74 2d 66 6f 72 20 30 29 0a  | string.1))).........(sit-for.0). | 
| 25860 |  20 20 20 20 20 20 20 20 28 69 6e 73 65 72 74 20    74 65 78 74 29 0a 20 20 20 20 20 20 20 20 28 67  | ........(insert.text).........(g | 
| 25880 |  6f 74 6f 2d 63 68 61 72 20 28 70 6f 69 6e 74 2d    6d 69 6e 29 29 0a 20 20 20 20 20 20 20 20 28 77  | oto-char.(point-min)).........(w | 
| 258a0 |  68 69 6c 65 20 28 6e 6f 74 20 28 65 6f 62 70 29    29 0a 20 20 20 20 20 20 20 20 20 20 28 67 6f 74  | hile.(not.(eobp))...........(got | 
| 258c0 |  6f 2d 63 68 61 72 20 28 6c 69 6e 65 2d 62 65 67    69 6e 6e 69 6e 67 2d 70 6f 73 69 74 69 6f 6e 29  | o-char.(line-beginning-position) | 
| 258e0 |  29 0a 20 20 20 20 20 20 20 20 20 20 28 64 65 6c    65 74 65 2d 63 68 61 72 20 33 29 0a 20 20 20 20  | )...........(delete-char.3)..... | 
| 25900 |  20 20 20 20 20 20 28 66 6f 72 77 61 72 64 2d 6c    69 6e 65 20 31 29 29 29 29 29 29 0a 0a 28 64 65  | ......(forward-line.1))))))..(de | 
| 25920 |  66 75 6e 20 6c 65 64 67 65 72 2d 74 65 73 74 2d    6f 72 67 2d 6e 61 72 72 6f 77 2d 74 6f 2d 65 6e  | fun.ledger-test-org-narrow-to-en | 
| 25940 |  74 72 79 20 28 29 0a 20 20 28 6f 75 74 6c 69 6e    65 2d 62 61 63 6b 2d 74 6f 2d 68 65 61 64 69 6e  | try.()...(outline-back-to-headin | 
| 25960 |  67 29 0a 20 20 28 6e 61 72 72 6f 77 2d 74 6f 2d    72 65 67 69 6f 6e 20 28 70 6f 69 6e 74 29 20 28  | g)...(narrow-to-region.(point).( | 
| 25980 |  70 72 6f 67 6e 20 28 6f 75 74 6c 69 6e 65 2d 6e    65 78 74 2d 68 65 61 64 69 6e 67 29 20 28 70 6f  | progn.(outline-next-heading).(po | 
| 259a0 |  69 6e 74 29 29 29 0a 20 20 28 67 6f 74 6f 2d 63    68 61 72 20 28 70 6f 69 6e 74 2d 6d 69 6e 29 29  | int)))...(goto-char.(point-min)) | 
| 259c0 |  29 0a 0a 28 64 65 66 75 6e 20 6c 65 64 67 65 72    2d 74 65 73 74 2d 63 72 65 61 74 65 20 28 29 0a  | )..(defun.ledger-test-create.(). | 
| 259e0 |  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 75 75 69 64 20 28 6f  | ..(interactive)...(let.((uuid.(o | 
| 25a00 |  72 67 2d 65 6e 74 72 79 2d 67 65 74 20 28 70 6f    69 6e 74 29 20 22 49 44 22 29 29 29 0a 20 20 20  | rg-entry-get.(point)."ID"))).... | 
| 25a20 |  20 28 77 68 65 6e 20 28 73 74 72 69 6e 67 2d 6d    61 74 63 68 20 22 5c 5c 60 5c 5c 28 5b 5e 2d 5d  | .(when.(string-match."\\`\\([^-] | 
| 25a40 |  2b 5c 5c 29 2d 22 20 75 75 69 64 29 0a 20 20 20    20 20 20 28 6c 65 74 20 28 28 70 72 65 66 69 78  | +\\)-".uuid).......(let.((prefix | 
| 25a60 |  20 28 6d 61 74 63 68 2d 73 74 72 69 6e 67 20 31    20 75 75 69 64 29 29 0a 20 20 20 20 20 20 20 20  | .(match-string.1.uuid))......... | 
| 25a80 |  20 20 20 20 69 6e 70 75 74 20 6f 75 74 70 75 74    29 0a 20 20 20 20 20 20 20 20 28 73 61 76 65 2d  | ....input.output).........(save- | 
| 25aa0 |  72 65 73 74 72 69 63 74 69 6f 6e 0a 20 20 20 20    20 20 20 20 20 20 28 6c 65 64 67 65 72 2d 74 65  | restriction...........(ledger-te | 
| 25ac0 |  73 74 2d 6f 72 67 2d 6e 61 72 72 6f 77 2d 74 6f    2d 65 6e 74 72 79 29 0a 20 20 20 20 20 20 20 20  | st-org-narrow-to-entry)......... | 
| 25ae0 |  20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 70 6f    69 6e 74 2d 6d 69 6e 29 29 0a 20 20 20 20 20 20  | ..(goto-char.(point-min))....... | 
| 25b00 |  20 20 20 20 28 77 68 69 6c 65 20 28 72 65 2d 73    65 61 72 63 68 2d 66 6f 72 77 61 72 64 20 22 23  | ....(while.(re-search-forward."# | 
| 25b20 |  5c 5c 2b 62 65 67 69 6e 5f 73 72 63 20 6c 65 64    67 65 72 22 20 6e 69 6c 20 74 29 0a 20 20 20 20  | \\+begin_src.ledger".nil.t)..... | 
| 25b40 |  20 20 20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68    61 72 20 28 6d 61 74 63 68 2d 65 6e 64 20 30 29  | ........(goto-char.(match-end.0) | 
| 25b60 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 66    6f 72 77 61 72 64 2d 6c 69 6e 65 20 31 29 0a 20  | ).............(forward-line.1).. | 
| 25b80 |  20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20    28 28 62 65 67 20 28 70 6f 69 6e 74 29 29 29 0a  | ...........(let.((beg.(point))). | 
| 25ba0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 72    65 2d 73 65 61 72 63 68 2d 66 6f 72 77 61 72 64  | ..............(re-search-forward | 
| 25bc0 |  20 22 23 5c 5c 2b 65 6e 64 5f 73 72 63 22 29 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73  | ."#\\+end_src")...............(s | 
| 25be0 |  65 74 71 20 69 6e 70 75 74 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63  | etq.input.....................(c | 
| 25c00 |  6f 6e 63 61 74 20 28 6f 72 20 69 6e 70 75 74 20    22 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | oncat.(or.input."")............. | 
| 25c20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 62 75 66 66 65 72 2d 73 75 62 73 74 72 69 6e  | ................(buffer-substrin | 
| 25c40 |  67 20 62 65 67 20 28 6d 61 74 63 68 2d 62 65 67    69 6e 6e 69 6e 67 20 30 29 29 29 29 29 29 0a 20  | g.beg.(match-beginning.0)))))).. | 
| 25c60 |  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 2d 6d 69 6e 29 29  | .........(goto-char.(point-min)) | 
| 25c80 |  0a 20 20 20 20 20 20 20 20 20 20 28 77 68 69 6c    65 20 28 72 65 2d 73 65 61 72 63 68 2d 66 6f 72  | ...........(while.(re-search-for | 
| 25ca0 |  77 61 72 64 20 22 3a 4f 55 54 50 55 54 3a 22 20    6e 69 6c 20 74 29 0a 20 20 20 20 20 20 20 20 20  | ward.":OUTPUT:".nil.t).......... | 
| 25cc0 |  20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 6d    61 74 63 68 2d 65 6e 64 20 30 29 29 0a 20 20 20  | ...(goto-char.(match-end.0)).... | 
| 25ce0 |  20 20 20 20 20 20 20 20 20 28 66 6f 72 77 61 72    64 2d 6c 69 6e 65 20 31 29 0a 20 20 20 20 20 20  | .........(forward-line.1)....... | 
| 25d00 |  20 20 20 20 20 20 28 6c 65 74 20 28 28 62 65 67    20 28 70 6f 69 6e 74 29 29 29 0a 20 20 20 20 20  | ......(let.((beg.(point)))...... | 
| 25d20 |  20 20 20 20 20 20 20 20 20 28 72 65 2d 73 65 61    72 63 68 2d 66 6f 72 77 61 72 64 20 22 3a 45 4e  | .........(re-search-forward.":EN | 
| 25d40 |  44 3a 22 29 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 73 65 74 71 20 6f 75 74 70 75 74 0a  | D:")...............(setq.output. | 
| 25d60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 28 63 6f 6e 63 61 74 20 28 6f 72 20  | ....................(concat.(or. | 
| 25d80 |  6f 75 74 70 75 74 20 22 22 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | output."")...................... | 
| 25da0 |  20 20 20 20 20 20 20 28 62 75 66 66 65 72 2d 73    75 62 73 74 72 69 6e 67 20 62 65 67 20 28 6d 61  | .......(buffer-substring.beg.(ma | 
| 25dc0 |  74 63 68 2d 62 65 67 69 6e 6e 69 6e 67 20 30 29    29 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 28  | tch-beginning.0))))))).........( | 
| 25de0 |  66 69 6e 64 2d 66 69 6c 65 2d 6f 74 68 65 72 2d    77 69 6e 64 6f 77 0a 20 20 20 20 20 20 20 20 20  | find-file-other-window.......... | 
| 25e00 |  28 65 78 70 61 6e 64 2d 66 69 6c 65 2d 6e 61 6d    65 20 28 63 6f 6e 63 61 74 20 70 72 65 66 69 78  | (expand-file-name.(concat.prefix | 
| 25e20 |  20 22 2e 74 65 73 74 22 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .".test")....................... | 
| 25e40 |  20 20 20 20 20 28 65 78 70 61 6e 64 2d 66 69 6c    65 2d 6e 61 6d 65 20 22 74 65 73 74 2f 72 65 67  | .....(expand-file-name."test/reg | 
| 25e60 |  72 65 73 73 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  | ress"........................... | 
| 25e80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 6c 65 64 67 65 72 2d 73 6f 75 72 63 65  | ...................ledger-source | 
| 25ea0 |  2d 64 69 72 65 63 74 6f 72 79 29 29 29 0a 20 20    20 20 20 20 20 20 28 6c 65 64 67 65 72 2d 6d 6f  | -directory))).........(ledger-mo | 
| 25ec0 |  64 65 29 0a 20 20 20 20 20 20 20 20 28 69 66 20    69 6e 70 75 74 0a 20 20 20 20 20 20 20 20 20 20  | de).........(if.input........... | 
| 25ee0 |  20 20 28 69 6e 73 65 72 74 20 69 6e 70 75 74 29    0a 20 20 20 20 20 20 20 20 20 20 28 69 6e 73 65  | ..(insert.input)...........(inse | 
| 25f00 |  72 74 20 22 32 30 31 32 2d 30 33 2d 31 37 20 50    61 79 65 65 5c 6e 22 29 0a 20 20 20 20 20 20 20  | rt."2012-03-17.Payee\n")........ | 
| 25f20 |  20 20 20 28 69 6e 73 65 72 74 20 22 20 20 20 20    45 78 70 65 6e 73 65 73 3a 46 6f 6f 64 20 20 20  | ...(insert."....Expenses:Food... | 
| 25f40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 24 32 30    5c 6e 22 29 0a 20 20 20 20 20 20 20 20 20 20 28  | .............$20\n")...........( | 
| 25f60 |  69 6e 73 65 72 74 20 22 20 20 20 20 41 73 73 65    74 73 3a 43 61 73 68 5c 6e 22 29 29 0a 20 20 20  | insert."....Assets:Cash\n")).... | 
| 25f80 |  20 20 20 20 20 28 69 6e 73 65 72 74 20 22 5c 6e    74 65 73 74 20 72 65 67 5c 6e 22 29 0a 20 20 20  | .....(insert."\ntest.reg\n").... | 
| 25fa0 |  20 20 20 20 20 28 69 66 20 6f 75 74 70 75 74 0a    20 20 20 20 20 20 20 20 20 20 20 20 28 69 6e 73  | .....(if.output.............(ins | 
| 25fc0 |  65 72 74 20 6f 75 74 70 75 74 29 29 0a 20 20 20    20 20 20 20 20 28 69 6e 73 65 72 74 20 22 65 6e  | ert.output)).........(insert."en | 
| 25fe0 |  64 20 74 65 73 74 5c 6e 22 29 29 29 29 29 0a 0a    28 64 65 66 75 6e 20 6c 65 64 67 65 72 2d 74 65  | d.test\n")))))..(defun.ledger-te | 
| 26000 |  73 74 2d 72 75 6e 20 28 29 0a 20 20 28 69 6e 74    65 72 61 63 74 69 76 65 29 0a 20 20 28 73 61 76  | st-run.()...(interactive)...(sav | 
| 26020 |  65 2d 65 78 63 75 72 73 69 6f 6e 0a 20 20 20 20    28 67 6f 74 6f 2d 63 68 61 72 20 28 70 6f 69 6e  | e-excursion.....(goto-char.(poin | 
| 26040 |  74 2d 6d 69 6e 29 29 0a 20 20 20 20 28 77 68 65    6e 20 28 72 65 2d 73 65 61 72 63 68 2d 66 6f 72  | t-min)).....(when.(re-search-for | 
| 26060 |  77 61 72 64 20 22 5e 74 65 73 74 20 5c 5c 28 2e    2b 3f 5c 5c 29 5c 5c 28 20 2d 3e 2e 2a 5c 5c 29  | ward."^test.\\(.+?\\)\\(.->.*\\) | 
| 26080 |  3f 24 22 20 6e 69 6c 20 74 29 0a 20 20 20 20 20    20 28 6c 65 74 20 28 28 63 6f 6d 6d 61 6e 64 20  | ?$".nil.t).......(let.((command. | 
| 260a0 |  28 65 78 70 61 6e 64 2d 66 69 6c 65 2d 6e 61 6d    65 20 6c 65 64 67 65 72 2d 74 65 73 74 2d 62 69  | (expand-file-name.ledger-test-bi | 
| 260c0 |  6e 61 72 79 29 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 28 61 72 67 73 20 28 66 6f 72 6d 61 74  | nary)).............(args.(format | 
| 260e0 |  20 22 2d 2d 61 72 67 73 2d 6f 6e 6c 79 20 2d 2d    63 6f 6c 75 6d 6e 73 3d 38 30 20 2d 2d 6e 6f 2d  | ."--args-only.--columns=80.--no- | 
| 26100 |  63 6f 6c 6f 72 20 2d 66 20 5c 22 25 73 5c 22 20    25 73 22 0a 20 20 20 20 20 20 20 20 20 20 20 20  | color.-f.\"%s\".%s"............. | 
| 26120 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 75    66 66 65 72 2d 66 69 6c 65 2d 6e 61 6d 65 20 28  | ..............buffer-file-name.( | 
| 26140 |  6d 61 74 63 68 2d 73 74 72 69 6e 67 20 31 29 29    29 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 71  | match-string.1)))).........(setq | 
| 26160 |  20 61 72 67 73 20 28 72 65 70 6c 61 63 65 2d 72    65 67 65 78 70 2d 69 6e 2d 73 74 72 69 6e 67 20  | .args.(replace-regexp-in-string. | 
| 26180 |  22 5c 5c 24 73 6f 75 72 63 65 70 61 74 68 22 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | "\\$sourcepath"................. | 
| 261a0 |  20 20 20 20 20 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 65 64  | .............................led | 
| 261c0 |  67 65 72 2d 73 6f 75 72 63 65 2d 64 69 72 65 63    74 6f 72 79 20 61 72 67 73 29 29 0a 20 20 20 20  | ger-source-directory.args))..... | 
| 261e0 |  20 20 20 20 28 6b 69 6c 6c 2d 6e 65 77 20 61 72    67 73 29 0a 20 20 20 20 20 20 20 20 28 6d 65 73  | ....(kill-new.args).........(mes | 
| 26200 |  73 61 67 65 20 22 54 65 73 74 69 6e 67 3a 20 6c    65 64 67 65 72 20 25 73 22 20 61 72 67 73 29 0a  | sage."Testing:.ledger.%s".args). | 
| 26220 |  20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 70    72 65 76 2d 64 69 72 65 63 74 6f 72 79 20 64 65  | ........(let.((prev-directory.de | 
| 26240 |  66 61 75 6c 74 2d 64 69 72 65 63 74 6f 72 79 29    29 0a 20 20 20 20 20 20 20 20 20 20 28 63 64 20  | fault-directory))...........(cd. | 
| 26260 |  6c 65 64 67 65 72 2d 73 6f 75 72 63 65 2d 64 69    72 65 63 74 6f 72 79 29 0a 20 20 20 20 20 20 20  | ledger-source-directory)........ | 
| 26280 |  20 20 20 28 75 6e 77 69 6e 64 2d 70 72 6f 74 65    63 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | ...(unwind-protect.............. | 
| 262a0 |  20 28 61 73 79 6e 63 2d 73 68 65 6c 6c 2d 63 6f    6d 6d 61 6e 64 20 28 66 6f 72 6d 61 74 20 22 5c  | .(async-shell-command.(format."\ | 
| 262c0 |  22 25 73 5c 22 20 25 73 22 20 63 6f 6d 6d 61 6e    64 20 61 72 67 73 29 29 0a 20 20 20 20 20 20 20  | "%s\".%s".command.args))........ | 
| 262e0 |  20 20 20 20 20 28 63 64 20 70 72 65 76 2d 64 69    72 65 63 74 6f 72 79 29 29 29 29 29 29 29 0a 0a  | .....(cd.prev-directory))))))).. | 
| 26300 |  28 70 72 6f 76 69 64 65 20 27 6c 65 64 67 65 72    2d 74 65 73 74 29 0a 0a 3b 3b 3b 20 6c 65 64 67  | (provide.'ledger-test)..;;;.ledg | 
| 26320 |  65 72 2d 74 65 73 74 2e 65 6c 20 65 6e 64 73 20    68 65 72 65 0a 00 00 00 00 00 00 00 00 00 00 00  | er-test.el.ends.here............ | 
| 26340 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 26360 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 26380 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 263a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 263c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 263e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 26400 |  6c 65 64 67 65 72 2d 6d 6f 64 65 2d 32 30 32 34    30 34 31 36 2e 34 31 36 2f 6c 65 64 67 65 72 2d  | ledger-mode-20240416.416/ledger- | 
| 26420 |  63 6f 6d 70 6c 65 74 65 2e 65 6c 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | complete.el..................... | 
| 26440 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 26460 |  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 | 
| 26480 |  30 30 33 35 37 37 32 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 36 35 32 32 00 20 30 00 00 00  | 0035772.00000000000.016522..0... | 
| 264a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 264c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 264e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 26500 |  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................... | 
| 26520 |  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................... | 
| 26540 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 26560 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 26580 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 265a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 265c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 265e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 26600 |  3b 3b 3b 20 6c 65 64 67 65 72 2d 63 6f 6d 70 6c    65 74 65 2e 65 6c 20 2d 2d 2d 20 48 65 6c 70 65  | ;;;.ledger-complete.el.---.Helpe | 
| 26620 |  72 20 63 6f 64 65 20 66 6f 72 20 75 73 65 20 77    69 74 68 20 74 68 65 20 22 6c 65 64 67 65 72 22  | r.code.for.use.with.the."ledger" | 
| 26640 |  20 63 6f 6d 6d 61 6e 64 2d 6c 69 6e 65 20 74 6f    6f 6c 20 20 2d 2a 2d 20 6c 65 78 69 63 61 6c 2d  | .command-line.tool..-*-.lexical- | 
| 26660 |  62 69 6e 64 69 6e 67 3a 20 74 3b 20 2d 2a 2d 0a    0a 3b 3b 20 43 6f 70 79 72 69 67 68 74 20 28 43  | binding:.t;.-*-..;;.Copyright.(C | 
| 26680 |  29 20 32 30 30 33 2d 32 30 31 36 20 4a 6f 68 6e    20 57 69 65 67 6c 65 79 20 28 6a 6f 68 6e 77 20  | ).2003-2016.John.Wiegley.(johnw. | 
| 266a0 |  41 54 20 67 6e 75 20 44 4f 54 20 6f 72 67 29 0a    0a 3b 3b 20 54 68 69 73 20 66 69 6c 65 20 69 73  | AT.gnu.DOT.org)..;;.This.file.is | 
| 266c0 |  20 6e 6f 74 20 70 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  | .not.part.of.GNU.Emacs...;;.This | 
| 266e0 |  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 69 73  | .is.free.software;.you.can.redis | 
| 26700 |  74 72 69 62 75 74 65 20 69 74 20 61 6e 64 2f 6f    72 20 6d 6f 64 69 66 79 20 69 74 20 75 6e 64 65  | tribute.it.and/or.modify.it.unde | 
| 26720 |  72 0a 3b 3b 20 74 68 65 20 74 65 72 6d 73 20 6f    66 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72 61  | r.;;.the.terms.of.the.GNU.Genera | 
| 26740 |  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 62 79  | l.Public.License.as.published.by | 
| 26760 |  20 74 68 65 20 46 72 65 65 0a 3b 3b 20 53 6f 66    74 77 61 72 65 20 46 6f 75 6e 64 61 74 69 6f 6e  | .the.Free.;;.Software.Foundation | 
| 26780 |  3b 20 65 69 74 68 65 72 20 76 65 72 73 69 6f 6e    20 32 2c 20 6f 72 20 28 61 74 20 79 6f 75 72 20  | ;.either.version.2,.or.(at.your. | 
| 267a0 |  6f 70 74 69 6f 6e 29 20 61 6e 79 20 6c 61 74 65    72 0a 3b 3b 20 76 65 72 73 69 6f 6e 2e 0a 3b 3b  | option).any.later.;;.version..;; | 
| 267c0 |  0a 3b 3b 20 54 68 69 73 20 69 73 20 64 69 73 74    72 69 62 75 74 65 64 20 69 6e 20 74 68 65 20 68  | .;;.This.is.distributed.in.the.h | 
| 267e0 |  6f 70 65 20 74 68 61 74 20 69 74 20 77 69 6c 6c    20 62 65 20 75 73 65 66 75 6c 2c 20 62 75 74 20  | ope.that.it.will.be.useful,.but. | 
| 26800 |  57 49 54 48 4f 55 54 0a 3b 3b 20 41 4e 59 20 57    41 52 52 41 4e 54 59 3b 20 77 69 74 68 6f 75 74  | WITHOUT.;;.ANY.WARRANTY;.without | 
| 26820 |  20 65 76 65 6e 20 74 68 65 20 69 6d 70 6c 69 65    64 20 77 61 72 72 61 6e 74 79 20 6f 66 20 4d 45  | .even.the.implied.warranty.of.ME | 
| 26840 |  52 43 48 41 4e 54 41 42 49 4c 49 54 59 20 6f 72    0a 3b 3b 20 46 49 54 4e 45 53 53 20 46 4f 52 20  | RCHANTABILITY.or.;;.FITNESS.FOR. | 
| 26860 |  41 20 50 41 52 54 49 43 55 4c 41 52 20 50 55 52    50 4f 53 45 2e 20 20 53 65 65 20 74 68 65 20 47  | A.PARTICULAR.PURPOSE...See.the.G | 
| 26880 |  4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69    63 20 4c 69 63 65 6e 73 65 0a 3b 3b 20 66 6f 72  | NU.General.Public.License.;;.for | 
| 268a0 |  20 6d 6f 72 65 20 64 65 74 61 69 6c 73 2e 0a 3b    3b 0a 3b 3b 20 59 6f 75 20 73 68 6f 75 6c 64 20  | .more.details..;;.;;.You.should. | 
| 268c0 |  68 61 76 65 20 72 65 63 65 69 76 65 64 20 61 20    63 6f 70 79 20 6f 66 20 74 68 65 20 47 4e 55 20  | have.received.a.copy.of.the.GNU. | 
| 268e0 |  47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c    69 63 65 6e 73 65 0a 3b 3b 20 61 6c 6f 6e 67 20  | General.Public.License.;;.along. | 
| 26900 |  77 69 74 68 20 47 4e 55 20 45 6d 61 63 73 3b 20    73 65 65 20 74 68 65 20 66 69 6c 65 20 43 4f 50  | with.GNU.Emacs;.see.the.file.COP | 
| 26920 |  59 49 4e 47 2e 20 20 49 66 20 6e 6f 74 2c 20 77    72 69 74 65 20 74 6f 20 74 68 65 0a 3b 3b 20 46  | YING...If.not,.write.to.the.;;.F | 
| 26940 |  72 65 65 20 53 6f 66 74 77 61 72 65 20 46 6f 75    6e 64 61 74 69 6f 6e 2c 20 49 6e 63 2e 2c 20 35  | ree.Software.Foundation,.Inc.,.5 | 
| 26960 |  31 20 46 72 61 6e 6b 6c 69 6e 20 53 74 72 65 65    74 2c 20 46 69 66 74 68 20 46 6c 6f 6f 72 2c 20  | 1.Franklin.Street,.Fifth.Floor,. | 
| 26980 |  42 6f 73 74 6f 6e 2c 0a 3b 3b 20 4d 41 20 30 32    31 31 30 2d 31 33 30 31 20 55 53 41 2e 0a 0a 3b  | Boston,.;;.MA.02110-1301.USA...; | 
| 269a0 |  3b 3b 20 43 6f 6d 6d 65 6e 74 61 72 79 3a 0a 3b    3b 20 46 75 6e 63 74 69 6f 6e 73 20 70 72 6f 76  | ;;.Commentary:.;;.Functions.prov | 
| 269c0 |  69 64 69 6e 67 20 70 61 79 65 65 20 61 6e 64 20    61 63 63 6f 75 6e 74 20 61 75 74 6f 20 63 6f 6d  | iding.payee.and.account.auto.com | 
| 269e0 |  70 6c 65 74 65 2e 0a 0a 28 72 65 71 75 69 72 65    20 27 63 6c 2d 6c 69 62 29 0a 28 65 76 61 6c 2d  | plete...(require.'cl-lib).(eval- | 
| 26a00 |  77 68 65 6e 2d 63 6f 6d 70 69 6c 65 0a 20 20 28    72 65 71 75 69 72 65 20 27 73 75 62 72 2d 78 29  | when-compile...(require.'subr-x) | 
| 26a20 |  29 0a 0a 3b 3b 20 49 6e 2d 70 6c 61 63 65 20 63    6f 6d 70 6c 65 74 69 6f 6e 20 73 75 70 70 6f 72  | )..;;.In-place.completion.suppor | 
| 26a40 |  74 0a 0a 3b 3b 3b 20 43 6f 64 65 3a 0a 28 72 65    71 75 69 72 65 20 27 6c 65 64 67 65 72 2d 63 6f  | t..;;;.Code:.(require.'ledger-co | 
| 26a60 |  6e 74 65 78 74 29 0a 28 72 65 71 75 69 72 65 20    27 6c 65 64 67 65 72 2d 78 61 63 74 29 0a 28 72  | ntext).(require.'ledger-xact).(r | 
| 26a80 |  65 71 75 69 72 65 20 27 6c 65 64 67 65 72 2d 73    63 68 65 64 75 6c 65 29 0a 0a 28 64 65 66 63 75  | equire.'ledger-schedule)..(defcu | 
| 26aa0 |  73 74 6f 6d 20 6c 65 64 67 65 72 2d 61 63 63 6f    75 6e 74 73 2d 66 69 6c 65 20 6e 69 6c 0a 20 20  | stom.ledger-accounts-file.nil... | 
| 26ac0 |  22 54 68 65 20 70 61 74 68 20 74 6f 20 61 6e 20    6f 70 74 69 6f 6e 61 6c 20 66 69 6c 65 20 69 6e  | "The.path.to.an.optional.file.in | 
| 26ae0 |  20 77 68 69 63 68 20 61 6c 6c 20 61 63 63 6f 75    6e 74 73 20 61 72 65 20 75 73 65 64 20 6f 72 20  | .which.all.accounts.are.used.or. | 
| 26b00 |  64 65 63 6c 61 72 65 64 2e 0a 54 68 69 73 20 66    69 6c 65 20 77 69 6c 6c 20 74 68 65 6e 20 62 65  | declared..This.file.will.then.be | 
| 26b20 |  20 75 73 65 64 20 61 73 20 61 20 73 6f 75 72 63    65 20 66 6f 72 20 61 63 63 6f 75 6e 74 20 6e 61  | .used.as.a.source.for.account.na | 
| 26b40 |  6d 65 0a 63 6f 6d 70 6c 65 74 69 6f 6e 73 20 69    6e 73 74 65 61 64 20 6f 66 20 74 68 65 20 63 75  | me.completions.instead.of.the.cu | 
| 26b60 |  72 72 65 6e 74 20 66 69 6c 65 2e 0a 53 65 65 20    6c 65 64 67 65 72 27 73 20 5c 22 61 63 63 6f 75  | rrent.file..See.ledger's.\"accou | 
| 26b80 |  6e 74 5c 22 20 64 69 72 65 63 74 69 76 65 2e 22    0a 20 20 3a 74 79 70 65 20 27 28 63 68 6f 69 63  | nt\".directive."...:type.'(choic | 
| 26ba0 |  65 20 28 63 6f 6e 73 74 20 3a 74 61 67 20 22 55    73 65 20 63 75 72 72 65 6e 74 20 62 75 66 66 65  | e.(const.:tag."Use.current.buffe | 
| 26bc0 |  72 20 66 6f 72 20 63 6f 6d 70 6c 65 74 69 6f 6e    22 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 20  | r.for.completion".nil).......... | 
| 26be0 |  20 20 20 20 20 20 20 20 66 69 6c 65 29 0a 20 20    3a 67 72 6f 75 70 20 27 6c 65 64 67 65 72 0a 20  | ........file)...:group.'ledger.. | 
| 26c00 |  20 3a 73 61 66 65 20 23 27 73 74 72 69 6e 67 2d    6f 72 2d 6e 75 6c 6c 2d 70 29 0a 0a 28 64 65 66  | .:safe.#'string-or-null-p)..(def | 
| 26c20 |  63 75 73 74 6f 6d 20 6c 65 64 67 65 72 2d 70 61    79 65 65 73 2d 66 69 6c 65 20 6e 69 6c 0a 20 20  | custom.ledger-payees-file.nil... | 
| 26c40 |  22 54 68 65 20 70 61 74 68 20 74 6f 20 61 6e 20    6f 70 74 69 6f 6e 61 6c 20 66 69 6c 65 20 69 6e  | "The.path.to.an.optional.file.in | 
| 26c60 |  20 77 68 69 63 68 20 61 6c 6c 20 70 61 79 65 65    73 20 61 72 65 20 75 73 65 64 20 6f 72 20 64 65  | .which.all.payees.are.used.or.de | 
| 26c80 |  63 6c 61 72 65 64 2e 0a 54 68 69 73 20 66 69 6c    65 20 77 69 6c 6c 20 74 68 65 6e 20 62 65 20 75  | clared..This.file.will.then.be.u | 
| 26ca0 |  73 65 64 20 61 73 20 61 20 73 6f 75 72 63 65 20    66 6f 72 20 70 61 79 65 65 20 6e 61 6d 65 0a 63  | sed.as.a.source.for.payee.name.c | 
| 26cc0 |  6f 6d 70 6c 65 74 69 6f 6e 73 20 69 6e 73 74 65    61 64 20 6f 66 20 74 68 65 20 63 75 72 72 65 6e  | ompletions.instead.of.the.curren | 
| 26ce0 |  74 20 66 69 6c 65 2e 0a 53 65 65 20 6c 65 64 67    65 72 27 73 20 5c 22 70 61 79 65 65 5c 22 20 64  | t.file..See.ledger's.\"payee\".d | 
| 26d00 |  69 72 65 63 74 69 76 65 2e 22 0a 20 20 3a 74 79    70 65 20 27 28 63 68 6f 69 63 65 20 28 63 6f 6e  | irective."...:type.'(choice.(con | 
| 26d20 |  73 74 20 3a 74 61 67 20 22 55 73 65 20 63 75 72    72 65 6e 74 20 62 75 66 66 65 72 20 66 6f 72 20  | st.:tag."Use.current.buffer.for. | 
| 26d40 |  63 6f 6d 70 6c 65 74 69 6f 6e 22 20 6e 69 6c 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | completion".nil)................ | 
| 26d60 |  20 20 66 69 6c 65 29 0a 20 20 3a 67 72 6f 75 70    20 27 6c 65 64 67 65 72 0a 20 20 3a 73 61 66 65  | ..file)...:group.'ledger...:safe | 
| 26d80 |  20 23 27 73 74 72 69 6e 67 2d 6f 72 2d 6e 75 6c    6c 2d 70 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d  | .#'string-or-null-p)..(defcustom | 
| 26da0 |  20 6c 65 64 67 65 72 2d 61 63 63 6f 75 6e 74 73    2d 65 78 63 6c 75 64 65 2d 66 75 6e 63 74 69 6f  | .ledger-accounts-exclude-functio | 
| 26dc0 |  6e 20 6e 69 6c 0a 20 20 22 46 75 6e 63 74 69 6f    6e 20 74 6f 20 65 78 63 6c 75 64 65 20 61 63 63  | n.nil..."Function.to.exclude.acc | 
| 26de0 |  6f 75 6e 74 73 20 66 72 6f 6d 20 63 6f 6d 70 6c    65 74 69 6f 6e 2e 0a 53 68 6f 75 6c 64 20 62 65  | ounts.from.completion..Should.be | 
| 26e00 |  20 61 20 70 72 65 64 69 63 61 74 65 20 66 75 6e    63 74 69 6f 6e 20 74 68 61 74 20 61 63 63 65 70  | .a.predicate.function.that.accep | 
| 26e20 |  74 73 20 6f 6e 65 20 61 72 67 75 6d 65 6e 74 2c    20 61 6e 0a 65 6c 65 6d 65 6e 74 20 6f 66 20 60  | ts.one.argument,.an.element.of.` | 
| 26e40 |  6c 65 64 67 65 72 2d 61 63 63 6f 75 6e 74 73 2d    6c 69 73 74 2d 69 6e 2d 62 75 66 66 65 72 27 2e  | ledger-accounts-list-in-buffer'. | 
| 26e60 |  22 0a 20 20 3a 74 79 70 65 20 27 28 63 68 6f 69    63 65 20 28 63 6f 6e 73 74 20 3a 74 61 67 20 22  | "...:type.'(choice.(const.:tag." | 
| 26e80 |  44 6f 20 6e 6f 74 20 65 78 63 6c 75 64 65 20 61    6e 79 20 61 63 63 6f 75 6e 74 73 20 66 72 6f 6d  | Do.not.exclude.any.accounts.from | 
| 26ea0 |  20 63 6f 6d 70 6c 65 74 69 6f 6e 22 20 6e 69 6c    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .completion".nil)............... | 
| 26ec0 |  20 20 20 66 75 6e 63 74 69 6f 6e 29 0a 20 20 3a    67 72 6f 75 70 20 27 6c 65 64 67 65 72 0a 20 20  | ...function)...:group.'ledger... | 
| 26ee0 |  3a 70 61 63 6b 61 67 65 2d 76 65 72 73 69 6f 6e    20 27 28 6c 65 64 67 65 72 2d 6d 6f 64 65 20 2e  | :package-version.'(ledger-mode.. | 
| 26f00 |  20 22 32 30 31 39 2d 30 38 2d 31 34 22 29 29 0a    0a 28 64 65 66 63 75 73 74 6f 6d 20 6c 65 64 67  | ."2019-08-14"))..(defcustom.ledg | 
| 26f20 |  65 72 2d 63 6f 6d 70 6c 65 74 65 2d 69 6e 2d 73    74 65 70 73 20 6e 69 6c 0a 20 20 22 57 68 65 6e  | er-complete-in-steps.nil..."When | 
| 26f40 |  20 6e 6f 6e 2d 6e 69 6c 2c 20 60 6c 65 64 67 65    72 2d 63 6f 6d 70 6c 65 74 65 2d 61 74 2d 70 6f  | .non-nil,.`ledger-complete-at-po | 
| 26f60 |  69 6e 74 27 20 63 6f 6d 70 6c 65 74 65 73 20 61    63 63 6f 75 6e 74 20 6e 61 6d 65 73 20 69 6e 20  | int'.completes.account.names.in. | 
| 26f80 |  73 74 65 70 73 2e 0a 49 66 20 6e 69 6c 2c 20 66    75 6c 6c 20 61 63 63 6f 75 6e 74 20 6e 61 6d 65  | steps..If.nil,.full.account.name | 
| 26fa0 |  73 20 61 72 65 20 6f 66 66 65 72 65 64 20 66 6f    72 20 63 6f 6d 70 6c 65 74 69 6f 6e 2e 22 0a 20  | s.are.offered.for.completion.".. | 
| 26fc0 |  20 3a 74 79 70 65 20 27 62 6f 6f 6c 65 61 6e 0a    20 20 3a 67 72 6f 75 70 20 27 6c 65 64 67 65 72  | .:type.'boolean...:group.'ledger | 
| 26fe0 |  0a 20 20 3a 70 61 63 6b 61 67 65 2d 76 65 72 73    69 6f 6e 20 27 28 6c 65 64 67 65 72 2d 6d 6f 64  | ...:package-version.'(ledger-mod | 
| 27000 |  65 20 2e 20 22 34 2e 30 2e 30 22 29 29 0a 0a 28    64 65 66 75 6e 20 6c 65 64 67 65 72 2d 70 61 79  | e..."4.0.0"))..(defun.ledger-pay | 
| 27020 |  65 65 73 2d 69 6e 2d 62 75 66 66 65 72 20 28 29    0a 20 20 22 53 63 61 6e 20 62 75 66 66 65 72 20  | ees-in-buffer.()..."Scan.buffer. | 
| 27040 |  61 6e 64 20 72 65 74 75 72 6e 20 6c 69 73 74 20    6f 66 20 61 6c 6c 20 70 61 79 65 65 73 2e 22 0a  | and.return.list.of.all.payees.". | 
| 27060 |  20 20 28 6c 65 74 20 28 28 6f 72 69 67 69 6e 20    28 70 6f 69 6e 74 29 29 0a 20 20 20 20 20 20 20  | ..(let.((origin.(point))........ | 
| 27080 |  20 70 61 79 65 65 73 2d 6c 69 73 74 29 0a 20 20    20 20 28 73 61 76 65 2d 65 78 63 75 72 73 69 6f  | .payees-list).....(save-excursio | 
| 270a0 |  6e 0a 20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68    61 72 20 28 70 6f 69 6e 74 2d 6d 69 6e 29 29 0a  | n.......(goto-char.(point-min)). | 
| 270c0 |  20 20 20 20 20 20 28 77 68 69 6c 65 20 28 72 65    2d 73 65 61 72 63 68 2d 66 6f 72 77 61 72 64 20  | ......(while.(re-search-forward. | 
| 270e0 |  6c 65 64 67 65 72 2d 70 61 79 65 65 2d 6e 61 6d    65 2d 6f 72 2d 64 69 72 65 63 74 69 76 65 2d 72  | ledger-payee-name-or-directive-r | 
| 27100 |  65 67 65 78 20 6e 69 6c 20 74 29 0a 20 20 20 20    20 20 20 20 28 75 6e 6c 65 73 73 20 28 61 6e 64  | egex.nil.t).........(unless.(and | 
| 27120 |  20 28 3e 3d 20 6f 72 69 67 69 6e 20 28 6d 61 74    63 68 2d 62 65 67 69 6e 6e 69 6e 67 20 30 29 29  | .(>=.origin.(match-beginning.0)) | 
| 27140 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 3c 20 6f 72 69 67 69 6e 20  | ......................(<.origin. | 
| 27160 |  28 6d 61 74 63 68 2d 65 6e 64 20 30 29 29 29 0a    20 20 20 20 20 20 20 20 20 20 28 70 75 73 68 20  | (match-end.0)))...........(push. | 
| 27180 |  28 6f 72 20 28 6d 61 74 63 68 2d 73 74 72 69 6e    67 2d 6e 6f 2d 70 72 6f 70 65 72 74 69 65 73 20  | (or.(match-string-no-properties. | 
| 271a0 |  31 29 20 28 6d 61 74 63 68 2d 73 74 72 69 6e 67    2d 6e 6f 2d 70 72 6f 70 65 72 74 69 65 73 20 32  | 1).(match-string-no-properties.2 | 
| 271c0 |  29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 70 61 79 65 65 73 2d 6c 69 73 74 29 29  | )).................payees-list)) | 
| 271e0 |  29 29 0a 20 20 20 20 3b 3b 20 74 6f 20 74 68 65    20 6c 69 73 74 0a 20 20 20 20 28 73 6f 72 74 20  | )).....;;.to.the.list.....(sort. | 
| 27200 |  28 64 65 6c 65 74 65 2d 64 75 70 73 20 70 61 79    65 65 73 2d 6c 69 73 74 29 20 23 27 73 74 72 69  | (delete-dups.payees-list).#'stri | 
| 27220 |  6e 67 2d 6c 65 73 73 70 29 29 29 0a 0a 28 64 65    66 75 6e 20 6c 65 64 67 65 72 2d 70 61 79 65 65  | ng-lessp)))..(defun.ledger-payee | 
| 27240 |  73 2d 6c 69 73 74 20 28 29 0a 20 20 22 52 65 74    75 72 6e 20 61 20 6c 69 73 74 20 6f 66 20 61 6c  | s-list.()..."Return.a.list.of.al | 
| 27260 |  6c 20 6b 6e 6f 77 6e 20 61 63 63 6f 75 6e 74 20    6e 61 6d 65 73 20 61 73 20 73 74 72 69 6e 67 73  | l.known.account.names.as.strings | 
| 27280 |  2e 0a 4c 6f 6f 6b 73 20 69 6e 20 60 6c 65 64 67    65 72 2d 70 61 79 65 65 73 2d 66 69 6c 65 27 20  | ..Looks.in.`ledger-payees-file'. | 
| 272a0 |  69 66 20 73 65 74 2c 20 6f 74 68 65 72 77 69 73    65 20 74 68 65 20 63 75 72 72 65 6e 74 20 62 75  | if.set,.otherwise.the.current.bu | 
| 272c0 |  66 66 65 72 2e 22 0a 20 20 28 69 66 20 6c 65 64    67 65 72 2d 70 61 79 65 65 73 2d 66 69 6c 65 0a  | ffer."...(if.ledger-payees-file. | 
| 272e0 |  20 20 20 20 20 20 28 6c 65 74 20 28 28 66 20 6c    65 64 67 65 72 2d 70 61 79 65 65 73 2d 66 69 6c  | ......(let.((f.ledger-payees-fil | 
| 27300 |  65 29 29 0a 20 20 20 20 20 20 20 20 28 77 69 74    68 2d 74 65 6d 70 2d 62 75 66 66 65 72 0a 20 20  | e)).........(with-temp-buffer... | 
| 27320 |  20 20 20 20 20 20 20 20 28 69 6e 73 65 72 74 2d    66 69 6c 65 2d 63 6f 6e 74 65 6e 74 73 20 66 29  | ........(insert-file-contents.f) | 
| 27340 |  0a 20 20 20 20 20 20 20 20 20 20 28 6c 65 64 67    65 72 2d 70 61 79 65 65 73 2d 69 6e 2d 62 75 66  | ...........(ledger-payees-in-buf | 
| 27360 |  66 65 72 29 29 29 0a 20 20 20 20 28 6c 65 64 67    65 72 2d 70 61 79 65 65 73 2d 69 6e 2d 62 75 66  | fer))).....(ledger-payees-in-buf | 
| 27380 |  66 65 72 29 29 29 0a 0a 28 64 65 66 75 6e 20 6c    65 64 67 65 72 2d 61 63 63 6f 75 6e 74 73 2d 69  | fer)))..(defun.ledger-accounts-i | 
| 273a0 |  6e 2d 62 75 66 66 65 72 20 28 29 0a 20 20 22 52    65 74 75 72 6e 20 61 6e 20 61 6c 69 73 74 20 6f  | n-buffer.()..."Return.an.alist.o | 
| 273c0 |  66 20 61 63 63 6f 75 6e 74 73 20 69 6e 20 74 68    65 20 63 75 72 72 65 6e 74 20 62 75 66 66 65 72  | f.accounts.in.the.current.buffer | 
| 273e0 |  2e 0a 54 68 65 20 60 63 61 72 27 20 6f 66 20 65    61 63 68 20 65 6c 65 6d 65 6e 74 20 69 73 20 74  | ..The.`car'.of.each.element.is.t | 
| 27400 |  68 65 20 61 63 63 6f 75 6e 74 20 6e 61 6d 65 20    61 6e 64 20 74 68 65 20 60 63 64 72 27 20 69 73  | he.account.name.and.the.`cdr'.is | 
| 27420 |  20 61 6e 0a 61 6c 69 73 74 20 77 68 65 72 65 20    74 68 65 20 6b 65 79 20 69 73 20 61 20 73 75 62  | .an.alist.where.the.key.is.a.sub | 
| 27440 |  64 69 72 65 63 74 69 76 65 20 73 75 63 68 20 61    73 20 5c 22 61 73 73 65 72 74 5c 22 20 61 6e 64  | directive.such.as.\"assert\".and | 
| 27460 |  20 74 68 65 0a 76 61 6c 75 65 20 28 69 66 20 61    6e 79 29 20 69 73 20 74 68 65 20 61 73 73 6f 63  | .the.value.(if.any).is.the.assoc | 
| 27480 |  69 61 74 65 64 20 64 61 74 61 2e 20 20 49 6e 20    6f 74 68 65 72 20 77 6f 72 64 73 2c 20 69 66 20  | iated.data...In.other.words,.if. | 
| 274a0 |  79 6f 75 27 76 65 0a 64 65 63 6c 61 72 65 64 20    61 6e 20 61 63 63 6f 75 6e 74 20 6c 69 6b 65 20  | you've.declared.an.account.like. | 
| 274c0 |  73 6f 3a 0a 0a 61 63 63 6f 75 6e 74 20 41 73 73    65 74 73 3a 43 68 65 63 6b 69 6e 67 0a 20 20 20  | so:..account.Assets:Checking.... | 
| 274e0 |  20 61 73 73 65 72 74 20 63 6f 6d 6d 6f 64 69 74    79 20 3d 3d 20 5c 22 24 5c 22 0a 20 20 20 20 64  | .assert.commodity.==.\"$\".....d | 
| 27500 |  65 66 61 75 6c 74 0a 0a 54 68 65 6e 20 6f 6e 65    20 6f 66 20 74 68 65 20 65 6c 65 6d 65 6e 74 73  | efault..Then.one.of.the.elements | 
| 27520 |  20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 72    65 74 75 72 6e 73 20 77 69 6c 6c 20 62 65 0a 5c  | .this.function.returns.will.be.\ | 
| 27540 |  28 5c 22 41 73 73 65 74 73 3a 43 68 65 63 6b 69    6e 67 5c 22 0a 20 20 28 5c 22 64 65 66 61 75 6c  | (\"Assets:Checking\"...(\"defaul | 
| 27560 |  74 5c 22 29 0a 20 20 28 5c 22 61 73 73 65 72 74    5c 22 20 2e 20 5c 22 63 6f 6d 6d 6f 64 69 74 79  | t\")...(\"assert\"...\"commodity | 
| 27580 |  20 3d 3d 20 5c 22 24 5c 22 5c 22 29 29 22 0a 20    20 28 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e  | .==.\"$\"\"))"...(save-excursion | 
| 275a0 |  0a 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20    28 70 6f 69 6e 74 2d 6d 69 6e 29 29 0a 20 20 20  | .....(goto-char.(point-min)).... | 
| 275c0 |  20 28 6c 65 74 20 28 61 63 63 6f 75 6e 74 2d 6c    69 73 74 0a 20 20 20 20 20 20 20 20 20 20 28 73  | .(let.(account-list...........(s | 
| 275e0 |  65 65 6e 20 28 6d 61 6b 65 2d 68 61 73 68 2d 74    61 62 6c 65 20 3a 74 65 73 74 20 23 27 65 71 75  | een.(make-hash-table.:test.#'equ | 
| 27600 |  61 6c 20 3a 73 69 7a 65 20 31 29 29 29 0a 20 20    20 20 20 20 3b 3b 20 46 69 72 73 74 2c 20 63 6f  | al.:size.1))).......;;.First,.co | 
| 27620 |  6e 73 69 64 65 72 20 61 63 63 6f 75 6e 74 73 20    64 65 63 6c 61 72 65 64 20 77 69 74 68 20 22 61  | nsider.accounts.declared.with."a | 
| 27640 |  63 63 6f 75 6e 74 22 20 64 69 72 65 63 74 69 76    65 73 2c 20 77 68 69 63 68 20 6d 61 79 20 6f 72  | ccount".directives,.which.may.or | 
| 27660 |  0a 20 20 20 20 20 20 3b 3b 20 6d 61 79 20 6e 6f    74 20 68 61 76 65 20 61 73 73 6f 63 69 61 74 65  | .......;;.may.not.have.associate | 
| 27680 |  64 20 64 61 74 61 2e 20 54 68 65 20 64 61 74 61    20 69 73 20 6f 6e 20 74 68 65 20 66 6f 6c 6c 6f  | d.data..The.data.is.on.the.follo | 
| 276a0 |  77 69 6e 67 20 6c 69 6e 65 73 20 75 70 20 74 6f    20 61 0a 20 20 20 20 20 20 3b 3b 20 6c 69 6e 65  | wing.lines.up.to.a.......;;.line | 
| 276c0 |  20 6e 6f 74 20 73 74 61 72 74 69 6e 67 20 77 69    74 68 20 77 68 69 74 65 73 70 61 63 65 2e 0a 20  | .not.starting.with.whitespace... | 
| 276e0 |  20 20 20 20 20 28 77 68 69 6c 65 20 28 72 65 2d    73 65 61 72 63 68 2d 66 6f 72 77 61 72 64 20 6c  | .....(while.(re-search-forward.l | 
| 27700 |  65 64 67 65 72 2d 61 63 63 6f 75 6e 74 2d 64 69    72 65 63 74 69 76 65 2d 72 65 67 65 78 20 6e 69  | edger-account-directive-regex.ni | 
| 27720 |  6c 20 74 29 0a 20 20 20 20 20 20 20 20 28 6c 65    74 20 28 28 61 63 63 6f 75 6e 74 20 28 6d 61 74  | l.t).........(let.((account.(mat | 
| 27740 |  63 68 2d 73 74 72 69 6e 67 2d 6e 6f 2d 70 72 6f    70 65 72 74 69 65 73 20 31 29 29 0a 20 20 20 20  | ch-string-no-properties.1))..... | 
| 27760 |  20 20 20 20 20 20 20 20 20 20 28 6c 69 6e 65 73    20 28 62 75 66 66 65 72 2d 73 75 62 73 74 72 69  | ..........(lines.(buffer-substri | 
| 27780 |  6e 67 2d 6e 6f 2d 70 72 6f 70 65 72 74 69 65 73    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ng-no-properties................ | 
| 277a0 |  20 20 20 20 20 20 20 28 70 6f 69 6e 74 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .......(point).................. | 
| 277c0 |  20 20 20 20 20 28 70 72 6f 67 6e 20 28 6c 65 64    67 65 72 2d 6e 61 76 69 67 61 74 65 2d 6e 65 78  | .....(progn.(ledger-navigate-nex | 
| 277e0 |  74 2d 78 61 63 74 2d 6f 72 2d 64 69 72 65 63 74    69 76 65 29 0a 20 20 20 20 20 20 20 20 20 20 20  | t-xact-or-directive)............ | 
| 27800 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 70 6f 69 6e 74 29 29 29 29 0a 20 20 20  | ..................(point)))).... | 
| 27820 |  20 20 20 20 20 20 20 20 20 20 20 64 61 74 61 29    0a 20 20 20 20 20 20 20 20 20 20 28 64 6f 6c 69  | ...........data)...........(doli | 
| 27840 |  73 74 20 28 64 20 28 73 70 6c 69 74 2d 73 74 72    69 6e 67 20 6c 69 6e 65 73 20 22 5c 6e 22 29 29  | st.(d.(split-string.lines."\n")) | 
| 27860 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65    74 71 20 64 20 28 73 74 72 69 6e 67 2d 74 72 69  | .............(setq.d.(string-tri | 
| 27880 |  6d 20 64 29 29 0a 20 20 20 20 20 20 20 20 20 20    20 20 28 75 6e 6c 65 73 73 20 28 73 74 72 69 6e  | m.d)).............(unless.(strin | 
| 278a0 |  67 3d 20 64 20 22 22 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 28 69 66 20 28 73 74 72 69  | g=.d."")...............(if.(stri | 
| 278c0 |  6e 67 2d 6d 61 74 63 68 20 22 20 22 20 64 29 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ng-match.".".d)................. | 
| 278e0 |  20 20 28 70 75 73 68 20 28 63 6f 6e 73 20 28 73    75 62 73 74 72 69 6e 67 20 64 20 30 20 28 6d 61  | ..(push.(cons.(substring.d.0.(ma | 
| 27900 |  74 63 68 2d 62 65 67 69 6e 6e 69 6e 67 20 30 29    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | tch-beginning.0))............... | 
| 27920 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 73 75 62 73 74 72 69 6e 67 20 64 20 28 6d 61  | ................(substring.d.(ma | 
| 27940 |  74 63 68 2d 65 6e 64 20 30 29 20 6e 69 6c 29 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | tch-end.0).nil))................ | 
| 27960 |  20 20 20 20 20 20 20 20 20 64 61 74 61 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28  | .........data).................( | 
| 27980 |  70 75 73 68 20 28 63 6f 6e 73 20 64 20 6e 69 6c    29 20 64 61 74 61 29 29 29 29 0a 20 20 20 20 20  | push.(cons.d.nil).data))))...... | 
| 279a0 |  20 20 20 20 20 28 70 75 73 68 20 28 63 6f 6e 73    20 61 63 63 6f 75 6e 74 20 64 61 74 61 29 20 61  | .....(push.(cons.account.data).a | 
| 279c0 |  63 63 6f 75 6e 74 2d 6c 69 73 74 29 0a 20 20 20    20 20 20 20 20 20 20 28 70 75 74 68 61 73 68 20  | ccount-list)...........(puthash. | 
| 279e0 |  61 63 63 6f 75 6e 74 20 74 20 73 65 65 6e 29 29    29 0a 20 20 20 20 20 20 3b 3b 20 4e 65 78 74 2c  | account.t.seen))).......;;.Next, | 
| 27a00 |  20 67 61 74 68 65 72 20 61 6c 6c 20 61 63 63 6f    75 6e 74 73 20 64 65 63 6c 61 72 65 64 20 69 6e  | .gather.all.accounts.declared.in | 
| 27a20 |  20 70 6f 73 74 69 6e 67 73 0a 20 20 20 20 20 20    28 75 6e 6c 65 73 73 0a 20 20 20 20 20 20 20 20  | .postings.......(unless......... | 
| 27a40 |  20 20 3b 3b 20 46 49 58 4d 45 3a 20 50 65 6f 70    6c 65 20 77 68 6f 20 68 61 76 65 20 73 65 74 20  | ..;;.FIXME:.People.who.have.set. | 
| 27a60 |  60 6c 65 64 67 65 72 2d 66 6c 79 6d 61 6b 65 2d    62 65 2d 70 65 64 61 6e 74 69 63 27 20 74 6f 20  | `ledger-flymake-be-pedantic'.to. | 
| 27a80 |  6e 6f 6e 2d 6e 69 6c 0a 20 20 20 20 20 20 20 20    20 20 3b 3b 20 70 72 6f 62 61 62 6c 79 20 64 6f  | non-nil...........;;.probably.do | 
| 27aa0 |  6e 27 74 20 77 61 6e 74 20 61 63 63 6f 75 6e 74    73 20 66 72 6f 6d 20 70 6f 73 74 69 6e 67 73 2c  | n't.want.accounts.from.postings, | 
| 27ac0 |  20 6a 75 73 74 20 74 68 6f 73 65 20 64 65 63 6c    61 72 65 64 0a 20 20 20 20 20 20 20 20 20 20 3b  | .just.those.declared...........; | 
| 27ae0 |  3b 20 77 69 74 68 20 64 69 72 65 63 74 69 76 65    73 2e 20 20 42 75 74 20 74 68 65 20 6e 61 6d 65  | ;.with.directives...But.the.name | 
| 27b00 |  20 69 73 20 61 20 6c 69 74 74 6c 65 20 6d 69 73    6c 65 61 64 69 6e 67 2e 20 20 53 68 6f 75 6c 64  | .is.a.little.misleading...Should | 
| 27b20 |  20 77 65 0a 20 20 20 20 20 20 20 20 20 20 3b 3b    20 6d 61 6b 65 20 61 20 6c 65 64 67 65 72 2d 6d  | .we...........;;.make.a.ledger-m | 
| 27b40 |  6f 64 65 2d 62 65 2d 70 65 64 61 6e 74 69 63 20    61 6e 64 20 75 73 65 20 74 68 61 74 20 69 6e 73  | ode-be-pedantic.and.use.that.ins | 
| 27b60 |  74 65 61 64 3f 0a 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  | tead?...........(bound-and-true- | 
| 27b80 |  70 20 6c 65 64 67 65 72 2d 66 6c 79 6d 61 6b 65    2d 62 65 2d 70 65 64 61 6e 74 69 63 29 0a 20 20  | p.ledger-flymake-be-pedantic)... | 
| 27ba0 |  20 20 20 20 20 20 28 6c 65 64 67 65 72 2d 78 61    63 74 2d 69 74 65 72 61 74 65 2d 74 72 61 6e 73  | ......(ledger-xact-iterate-trans | 
| 27bc0 |  61 63 74 69 6f 6e 73 0a 20 20 20 20 20 20 20 20    20 28 6c 61 6d 62 64 61 20 28 5f 70 6f 73 20 5f  | actions..........(lambda.(_pos._ | 
| 27be0 |  64 61 74 65 20 5f 73 74 61 74 65 20 5f 70 61 79    65 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 28  | date._state._payee)............( | 
| 27c00 |  6c 65 74 20 28 28 65 6e 64 20 28 73 61 76 65 2d    65 78 63 75 72 73 69 6f 6e 20 28 6c 65 64 67 65  | let.((end.(save-excursion.(ledge | 
| 27c20 |  72 2d 6e 61 76 69 67 61 74 65 2d 65 6e 64 2d 6f    66 2d 78 61 63 74 29 29 29 29 0a 20 20 20 20 20  | r-navigate-end-of-xact))))...... | 
| 27c40 |  20 20 20 20 20 20 20 20 28 66 6f 72 77 61 72 64    2d 6c 69 6e 65 29 0a 20 20 20 20 20 20 20 20 20  | ........(forward-line).......... | 
| 27c60 |  20 20 20 20 28 77 68 69 6c 65 20 28 72 65 2d 73    65 61 72 63 68 2d 66 6f 72 77 61 72 64 20 6c 65  | ....(while.(re-search-forward.le | 
| 27c80 |  64 67 65 72 2d 61 63 63 6f 75 6e 74 2d 61 6e 79    2d 73 74 61 74 75 73 2d 72 65 67 65 78 20 65 6e  | dger-account-any-status-regex.en | 
| 27ca0 |  64 20 74 29 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 28 6c 65 74 20 28 28 61 63 63 6f 75  | d.t)................(let.((accou | 
| 27cc0 |  6e 74 20 28 6d 61 74 63 68 2d 73 74 72 69 6e 67    2d 6e 6f 2d 70 72 6f 70 65 72 74 69 65 73 20 31  | nt.(match-string-no-properties.1 | 
| 27ce0 |  29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 75 6e 6c 65 73 73 20 28 67 65  | )))..................(unless.(ge | 
| 27d00 |  74 68 61 73 68 20 61 63 63 6f 75 6e 74 20 73 65    65 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | thash.account.seen)............. | 
| 27d20 |  20 20 20 20 20 20 20 28 70 75 74 68 61 73 68 20    61 63 63 6f 75 6e 74 20 74 20 73 65 65 6e 29 0a  | .......(puthash.account.t.seen). | 
| 27d40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 70 75 73 68 20 28 63 6f 6e 73 20 61  | ...................(push.(cons.a | 
| 27d60 |  63 63 6f 75 6e 74 20 6e 69 6c 29 20 61 63 63 6f    75 6e 74 2d 6c 69 73 74 29 29 29 29 29 29 29 29  | ccount.nil).account-list)))))))) | 
| 27d80 |  0a 20 20 20 20 20 20 28 73 6f 72 74 20 61 63 63    6f 75 6e 74 2d 6c 69 73 74 20 28 6c 61 6d 62 64  | .......(sort.account-list.(lambd | 
| 27da0 |  61 20 28 61 20 62 29 20 28 73 74 72 69 6e 67 2d    6c 65 73 73 70 20 28 63 61 72 20 61 29 20 28 63  | a.(a.b).(string-lessp.(car.a).(c | 
| 27dc0 |  61 72 20 62 29 29 29 29 29 29 29 0a 0a 28 64 65    66 75 6e 20 6c 65 64 67 65 72 2d 61 63 63 6f 75  | ar.b)))))))..(defun.ledger-accou | 
| 27de0 |  6e 74 73 2d 6c 69 73 74 2d 69 6e 2d 62 75 66 66    65 72 20 28 29 0a 20 20 22 52 65 74 75 72 6e 20  | nts-list-in-buffer.()..."Return. | 
| 27e00 |  61 20 6c 69 73 74 20 6f 66 20 61 6c 6c 20 6b 6e    6f 77 6e 20 61 63 63 6f 75 6e 74 20 6e 61 6d 65  | a.list.of.all.known.account.name | 
| 27e20 |  73 20 69 6e 20 74 68 65 20 63 75 72 72 65 6e 74    20 62 75 66 66 65 72 20 61 73 20 73 74 72 69 6e  | s.in.the.current.buffer.as.strin | 
| 27e40 |  67 73 2e 0a 43 6f 6e 73 69 64 65 72 73 20 62 6f    74 68 20 61 63 63 6f 75 6e 74 73 20 6c 69 73 74  | gs..Considers.both.accounts.list | 
| 27e60 |  65 64 20 69 6e 20 70 6f 73 74 69 6e 67 73 20 61    6e 64 20 74 68 6f 73 65 20 64 65 63 6c 61 72 65  | ed.in.postings.and.those.declare | 
| 27e80 |  64 0a 77 69 74 68 20 5c 22 61 63 63 6f 75 6e 74    5c 22 20 64 69 72 65 63 74 69 76 65 73 2e 22 0a  | d.with.\"account\".directives.". | 
| 27ea0 |  20 20 28 6c 65 74 20 28 28 61 63 63 6f 75 6e 74    73 20 28 6c 65 64 67 65 72 2d 61 63 63 6f 75 6e  | ..(let.((accounts.(ledger-accoun | 
| 27ec0 |  74 73 2d 69 6e 2d 62 75 66 66 65 72 29 29 29 0a    20 20 20 20 28 77 68 65 6e 20 6c 65 64 67 65 72  | ts-in-buffer))).....(when.ledger | 
| 27ee0 |  2d 61 63 63 6f 75 6e 74 73 2d 65 78 63 6c 75 64    65 2d 66 75 6e 63 74 69 6f 6e 0a 20 20 20 20 20  | -accounts-exclude-function...... | 
| 27f00 |  20 28 73 65 74 71 20 61 63 63 6f 75 6e 74 73 20    28 63 6c 2d 72 65 6d 6f 76 65 2d 69 66 20 6c 65  | .(setq.accounts.(cl-remove-if.le | 
| 27f20 |  64 67 65 72 2d 61 63 63 6f 75 6e 74 73 2d 65 78    63 6c 75 64 65 2d 66 75 6e 63 74 69 6f 6e 20 61  | dger-accounts-exclude-function.a | 
| 27f40 |  63 63 6f 75 6e 74 73 29 29 29 0a 20 20 20 20 28    6d 61 70 63 61 72 20 23 27 63 61 72 20 61 63 63  | ccounts))).....(mapcar.#'car.acc | 
| 27f60 |  6f 75 6e 74 73 29 29 29 0a 0a 28 64 65 66 75 6e    20 6c 65 64 67 65 72 2d 61 63 63 6f 75 6e 74 73  | ounts)))..(defun.ledger-accounts | 
| 27f80 |  2d 6c 69 73 74 20 28 29 0a 20 20 22 52 65 74 75    72 6e 20 61 20 6c 69 73 74 20 6f 66 20 61 6c 6c  | -list.()..."Return.a.list.of.all | 
| 27fa0 |  20 6b 6e 6f 77 6e 20 61 63 63 6f 75 6e 74 20 6e    61 6d 65 73 20 61 73 20 73 74 72 69 6e 67 73 2e  | .known.account.names.as.strings. | 
| 27fc0 |  0a 4c 6f 6f 6b 73 20 69 6e 20 60 6c 65 64 67 65    72 2d 61 63 63 6f 75 6e 74 73 2d 66 69 6c 65 27  | .Looks.in.`ledger-accounts-file' | 
| 27fe0 |  20 69 66 20 73 65 74 2c 20 6f 74 68 65 72 77 69    73 65 20 74 68 65 20 63 75 72 72 65 6e 74 20 62  | .if.set,.otherwise.the.current.b | 
| 28000 |  75 66 66 65 72 2e 22 0a 20 20 28 69 66 20 6c 65    64 67 65 72 2d 61 63 63 6f 75 6e 74 73 2d 66 69  | uffer."...(if.ledger-accounts-fi | 
| 28020 |  6c 65 0a 20 20 20 20 20 20 28 6c 65 74 20 28 28    66 20 6c 65 64 67 65 72 2d 61 63 63 6f 75 6e 74  | le.......(let.((f.ledger-account | 
| 28040 |  73 2d 66 69 6c 65 29 29 0a 20 20 20 20 20 20 20    20 28 77 69 74 68 2d 74 65 6d 70 2d 62 75 66 66  | s-file)).........(with-temp-buff | 
| 28060 |  65 72 0a 20 20 20 20 20 20 20 20 20 20 28 69 6e    73 65 72 74 2d 66 69 6c 65 2d 63 6f 6e 74 65 6e  | er...........(insert-file-conten | 
| 28080 |  74 73 20 66 29 0a 20 20 20 20 20 20 20 20 20 20    28 6c 65 64 67 65 72 2d 61 63 63 6f 75 6e 74 73  | ts.f)...........(ledger-accounts | 
| 280a0 |  2d 6c 69 73 74 2d 69 6e 2d 62 75 66 66 65 72 29    29 29 0a 20 20 20 20 28 6c 65 64 67 65 72 2d 61  | -list-in-buffer))).....(ledger-a | 
| 280c0 |  63 63 6f 75 6e 74 73 2d 6c 69 73 74 2d 69 6e 2d    62 75 66 66 65 72 29 29 29 0a 0a 28 64 65 66 75  | ccounts-list-in-buffer)))..(defu | 
| 280e0 |  6e 20 6c 65 64 67 65 72 2d 61 63 63 6f 75 6e 74    73 2d 74 72 65 65 20 28 29 0a 20 20 22 52 65 74  | n.ledger-accounts-tree.()..."Ret | 
| 28100 |  75 72 6e 20 61 20 74 72 65 65 20 6f 66 20 61 6c    6c 20 61 63 63 6f 75 6e 74 73 20 69 6e 20 74 68  | urn.a.tree.of.all.accounts.in.th | 
| 28120 |  65 20 62 75 66 66 65 72 2e 0a 0a 45 61 63 68 20    6e 6f 64 65 20 69 6e 20 74 68 65 20 74 72 65 65  | e.buffer...Each.node.in.the.tree | 
| 28140 |  20 69 73 20 61 20 6c 69 73 74 20 28 74 20 2e 20    43 48 49 4c 44 52 45 4e 29 2c 20 77 68 65 72 65  | .is.a.list.(t...CHILDREN),.where | 
| 28160 |  20 43 48 49 4c 44 52 45 4e 20 69 73 0a 61 6e 20    61 6c 69 73 74 20 28 41 43 43 4f 55 4e 54 2d 45  | .CHILDREN.is.an.alist.(ACCOUNT-E | 
| 28180 |  4c 45 4d 45 4e 54 20 2e 20 4e 4f 44 45 29 2e 22    0a 20 20 28 6c 65 74 20 28 28 61 63 63 6f 75 6e  | LEMENT...NODE)."...(let.((accoun | 
| 281a0 |  74 2d 74 72 65 65 20 28 6c 69 73 74 20 74 29 29    29 0a 20 20 20 20 28 64 6f 6c 69 73 74 20 28 61  | t-tree.(list.t))).....(dolist.(a | 
| 281c0 |  63 63 6f 75 6e 74 20 28 6c 65 64 67 65 72 2d 61    63 63 6f 75 6e 74 73 2d 6c 69 73 74 29 20 61 63  | ccount.(ledger-accounts-list).ac | 
| 281e0 |  63 6f 75 6e 74 2d 74 72 65 65 29 0a 20 20 20 20    20 20 28 6c 65 74 20 28 28 72 6f 6f 74 20 61 63  | count-tree).......(let.((root.ac | 
| 28200 |  63 6f 75 6e 74 2d 74 72 65 65 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 28 61 63 63 6f 75 6e 74  | count-tree).............(account | 
| 28220 |  2d 65 6c 65 6d 65 6e 74 73 20 28 73 70 6c 69 74    2d 73 74 72 69 6e 67 20 61 63 63 6f 75 6e 74 20  | -elements.(split-string.account. | 
| 28240 |  22 3a 22 29 29 29 0a 20 20 20 20 20 20 20 20 28    64 6f 6c 69 73 74 20 28 65 6c 65 6d 65 6e 74 20  | ":"))).........(dolist.(element. | 
| 28260 |  61 63 63 6f 75 6e 74 2d 65 6c 65 6d 65 6e 74 73    29 0a 20 20 20 20 20 20 20 20 20 20 28 6c 65 74  | account-elements)...........(let | 
| 28280 |  20 28 28 6e 6f 64 65 20 28 61 73 73 6f 63 20 65    6c 65 6d 65 6e 74 20 72 6f 6f 74 29 29 29 0a 20  | .((node.(assoc.element.root))).. | 
| 282a0 |  20 20 20 20 20 20 20 20 20 20 20 28 75 6e 6c 65    73 73 20 6e 6f 64 65 0a 20 20 20 20 20 20 20 20  | ...........(unless.node......... | 
| 282c0 |  20 20 20 20 20 20 28 73 65 74 71 20 6e 6f 64 65    20 28 63 6f 6e 73 20 65 6c 65 6d 65 6e 74 20 28  | ......(setq.node.(cons.element.( | 
| 282e0 |  6c 69 73 74 20 74 29 29 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 28 6e 63 6f 6e 63 20 72  | list.t)))...............(nconc.r | 
| 28300 |  6f 6f 74 20 28 6c 69 73 74 20 6e 6f 64 65 29 29    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 73  | oot.(list.node))).............(s | 
| 28320 |  65 74 71 20 72 6f 6f 74 20 28 63 64 72 20 6e 6f    64 65 29 29 29 29 29 29 29 29 0a 0a 28 64 65 66  | etq.root.(cdr.node))))))))..(def | 
| 28340 |  75 6e 20 6c 65 64 67 65 72 2d 63 6f 6d 70 6c 65    74 65 2d 61 63 63 6f 75 6e 74 2d 6e 65 78 74 2d  | un.ledger-complete-account-next- | 
| 28360 |  73 74 65 70 73 20 28 29 0a 20 20 22 52 65 74 75    72 6e 20 61 20 6c 69 73 74 20 6f 66 20 6e 65 78  | steps.()..."Return.a.list.of.nex | 
| 28380 |  74 20 73 74 65 70 73 20 66 6f 72 20 74 68 65 20    61 63 63 6f 75 6e 74 20 70 72 65 66 69 78 20 61  | t.steps.for.the.account.prefix.a | 
| 283a0 |  74 20 70 6f 69 6e 74 2e 22 0a 20 20 3b 3b 20 46    49 58 4d 45 3a 20 54 68 69 73 20 66 75 6e 63 74  | t.point."...;;.FIXME:.This.funct | 
| 283c0 |  69 6f 6e 20 69 73 20 63 61 6c 6c 65 64 20 66 72    6f 6d 20 60 6c 65 64 67 65 72 2d 63 6f 6d 70 6c  | ion.is.called.from.`ledger-compl | 
| 283e0 |  65 74 65 2d 61 74 2d 70 6f 69 6e 74 27 20 77 68    69 63 68 0a 20 20 3b 3b 20 61 6c 72 65 61 64 79  | ete-at-point'.which...;;.already | 
| 28400 |  20 6b 6e 6f 77 73 20 74 68 65 20 62 6f 75 6e 64    73 20 6f 66 20 74 68 65 20 61 63 63 6f 75 6e 74  | .knows.the.bounds.of.the.account | 
| 28420 |  20 6e 61 6d 65 20 74 6f 20 63 6f 6d 70 6c 65 74    65 2e 20 20 43 6f 6d 70 75 74 69 6e 67 20 69 74  | .name.to.complete...Computing.it | 
| 28440 |  0a 20 20 3b 3b 20 61 67 61 69 6e 20 68 65 72 65    20 69 73 20 77 61 73 74 65 66 75 6c 2e 0a 20 20  | ...;;.again.here.is.wasteful.... | 
| 28460 |  28 6c 65 74 2a 20 28 28 63 75 72 72 65 6e 74 20    28 62 75 66 66 65 72 2d 73 75 62 73 74 72 69 6e  | (let*.((current.(buffer-substrin | 
| 28480 |  67 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 73 61 76 65 2d 65 78 63 75 72  | g....................(save-excur | 
| 284a0 |  73 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 75 6e 6c 65 73  | sion......................(unles | 
| 284c0 |  73 20 28 65 71 20 27 70 6f 73 74 69 6e 67 20 28    6c 65 64 67 65 72 2d 74 68 69 6e 67 2d 61 74 2d  | s.(eq.'posting.(ledger-thing-at- | 
| 284e0 |  70 6f 69 6e 74 29 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28  | point))........................( | 
| 28500 |  65 72 72 6f 72 20 22 4e 6f 74 20 6f 6e 20 61 20    70 6f 73 74 69 6e 67 20 6c 69 6e 65 22 29 29 0a  | error."Not.on.a.posting.line")). | 
| 28520 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 70 6f 69 6e 74 29 29 0a 20 20  | .....................(point))... | 
| 28540 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 70 6f 69 6e 74 29 29 29 0a 20 20 20 20 20  | .................(point)))...... | 
| 28560 |  20 20 20 20 28 65 6c 65 6d 65 6e 74 73 20 28 61    6e 64 20 63 75 72 72 65 6e 74 20 28 73 70 6c 69  | ....(elements.(and.current.(spli | 
| 28580 |  74 2d 73 74 72 69 6e 67 20 63 75 72 72 65 6e 74    20 22 3a 22 29 29 29 0a 20 20 20 20 20 20 20 20  | t-string.current.":")))......... | 
| 285a0 |  20 28 72 6f 6f 74 20 28 6c 65 64 67 65 72 2d 61    63 63 6f 75 6e 74 73 2d 74 72 65 65 29 29 0a 20  | .(root.(ledger-accounts-tree)).. | 
| 285c0 |  20 20 20 20 20 20 20 20 28 70 72 65 66 69 78 20    6e 69 6c 29 29 0a 20 20 20 20 28 77 68 69 6c 65  | ........(prefix.nil)).....(while | 
| 285e0 |  20 28 63 64 72 20 65 6c 65 6d 65 6e 74 73 29 0a    20 20 20 20 20 20 28 6c 65 74 20 28 28 78 61 63  | .(cdr.elements).......(let.((xac | 
| 28600 |  74 20 28 61 73 73 6f 63 20 28 63 61 72 20 65 6c    65 6d 65 6e 74 73 29 20 72 6f 6f 74 29 29 29 0a  | t.(assoc.(car.elements).root))). | 
| 28620 |  20 20 20 20 20 20 20 20 28 69 66 20 78 61 63 74    0a 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65  | ........(if.xact.............(se | 
| 28640 |  74 71 20 70 72 65 66 69 78 20 28 63 6f 6e 63 61    74 20 70 72 65 66 69 78 20 28 61 6e 64 20 70 72  | tq.prefix.(concat.prefix.(and.pr | 
| 28660 |  65 66 69 78 20 22 3a 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  | efix.":")....................... | 
| 28680 |  20 20 20 20 20 20 20 20 20 20 20 28 63 61 72 20    65 6c 65 6d 65 6e 74 73 29 29 0a 20 20 20 20 20  | ...........(car.elements))...... | 
| 286a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 6f    74 20 28 63 64 72 20 78 61 63 74 29 29 0a 20 20  | .............root.(cdr.xact))... | 
| 286c0 |  20 20 20 20 20 20 20 20 28 73 65 74 71 20 72 6f    6f 74 20 6e 69 6c 20 65 6c 65 6d 65 6e 74 73 20  | ........(setq.root.nil.elements. | 
| 286e0 |  6e 69 6c 29 29 29 0a 20 20 20 20 20 20 28 73 65    74 71 20 65 6c 65 6d 65 6e 74 73 20 28 63 64 72  | nil))).......(setq.elements.(cdr | 
| 28700 |  20 65 6c 65 6d 65 6e 74 73 29 29 29 0a 20 20 20    20 28 73 65 74 71 20 72 6f 6f 74 20 28 64 65 6c  | .elements))).....(setq.root.(del | 
| 28720 |  65 74 65 20 28 6c 69 73 74 20 28 63 61 72 20 65    6c 65 6d 65 6e 74 73 29 20 74 29 20 72 6f 6f 74  | ete.(list.(car.elements).t).root | 
| 28740 |  29 29 0a 20 20 20 20 28 61 6e 64 20 72 6f 6f 74    0a 20 20 20 20 20 20 20 20 20 28 73 6f 72 74 0a  | )).....(and.root..........(sort. | 
| 28760 |  20 20 20 20 20 20 20 20 20 20 28 6d 61 70 63 61    72 20 28 66 75 6e 63 74 69 6f 6e 0a 20 20 20 20  | ..........(mapcar.(function..... | 
| 28780 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    6c 61 6d 62 64 61 20 28 78 29 0a 20 20 20 20 20  | ...............(lambda.(x)...... | 
| 287a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 6c 65 74 20 28 28 74 65 72 6d 20 28 69 66 20  | ................(let.((term.(if. | 
| 287c0 |  70 72 65 66 69 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  | prefix.......................... | 
| 287e0 |  20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e    63 61 74 20 70 72 65 66 69 78 20 22 3a 22 20 28  | ............(concat.prefix.":".( | 
| 28800 |  63 61 72 20 78 29 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | car.x))......................... | 
| 28820 |  20 20 20 20 20 20 20 20 20 20 20 28 63 61 72 20    78 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20  | ...........(car.x))))........... | 
| 28840 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66    20 28 3e 20 28 6c 65 6e 67 74 68 20 28 63 64 72  | .............(if.(>.(length.(cdr | 
| 28860 |  20 78 29 29 20 31 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .x)).1)......................... | 
| 28880 |  20 20 20 28 63 6f 6e 63 61 74 20 74 65 72 6d 20    22 3a 22 29 0a 20 20 20 20 20 20 20 20 20 20 20  | ...(concat.term.":")............ | 
| 288a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 65    72 6d 29 29 29 29 0a 20 20 20 20 20 20 20 20 20  | ..............term)))).......... | 
| 288c0 |  20 20 20 20 20 20 20 20 20 28 63 64 72 20 72 6f    6f 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 27  | .........(cdr.root))...........' | 
| 288e0 |  73 74 72 69 6e 67 2d 6c 65 73 73 70 29 29 29 29    0a 0a 28 64 65 66 75 6e 20 6c 65 64 67 65 72 2d  | string-lessp))))..(defun.ledger- | 
| 28900 |  63 6f 6d 70 6c 65 74 65 2d 64 61 74 65 20 28 6d    6f 6e 74 68 2d 73 74 72 69 6e 67 20 64 61 79 2d  | complete-date.(month-string.day- | 
| 28920 |  73 74 72 69 6e 67 29 0a 20 20 22 43 6f 6d 70 6c    65 74 65 20 61 20 64 61 74 65 2e 22 0a 20 20 28  | string)..."Complete.a.date."...( | 
| 28940 |  6c 65 74 2a 0a 20 20 20 20 20 20 28 28 6e 6f 77    20 28 63 75 72 72 65 6e 74 2d 74 69 6d 65 29 29  | let*.......((now.(current-time)) | 
| 28960 |  0a 20 20 20 20 20 20 20 28 64 65 63 6f 64 65 64    20 28 64 65 63 6f 64 65 2d 74 69 6d 65 20 6e 6f  | ........(decoded.(decode-time.no | 
| 28980 |  77 29 29 0a 20 20 20 20 20 20 20 28 74 68 69 73    2d 6d 6f 6e 74 68 20 28 6e 74 68 20 34 20 64 65  | w))........(this-month.(nth.4.de | 
| 289a0 |  63 6f 64 65 64 29 29 0a 20 20 20 20 20 20 20 28    74 68 69 73 2d 79 65 61 72 20 28 6e 74 68 20 35  | coded))........(this-year.(nth.5 | 
| 289c0 |  20 64 65 63 6f 64 65 64 29 29 0a 20 20 20 20 20    20 20 28 6c 61 73 74 2d 6d 6f 6e 74 68 20 28 69  | .decoded))........(last-month.(i | 
| 289e0 |  66 20 28 3e 20 74 68 69 73 2d 6d 6f 6e 74 68 20    31 29 20 28 31 2d 20 74 68 69 73 2d 6d 6f 6e 74  | f.(>.this-month.1).(1-.this-mont | 
| 28a00 |  68 29 20 31 32 29 29 0a 20 20 20 20 20 20 20 28    6c 61 73 74 2d 79 65 61 72 20 28 31 2d 20 74 68  | h).12))........(last-year.(1-.th | 
| 28a20 |  69 73 2d 79 65 61 72 29 29 0a 20 20 20 20 20 20    20 28 6c 61 73 74 2d 6d 6f 6e 74 68 2d 79 65 61  | is-year))........(last-month-yea | 
| 28a40 |  72 20 28 69 66 20 28 3e 20 74 68 69 73 2d 6d 6f    6e 74 68 20 31 29 20 74 68 69 73 2d 79 65 61 72  | r.(if.(>.this-month.1).this-year | 
| 28a60 |  20 6c 61 73 74 2d 79 65 61 72 29 29 0a 20 20 20    20 20 20 20 28 6d 6f 6e 74 68 20 28 61 6e 64 20  | .last-year))........(month.(and. | 
| 28a80 |  6d 6f 6e 74 68 2d 73 74 72 69 6e 67 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | month-string.................... | 
| 28aa0 |  28 73 74 72 69 6e 67 2d 74 6f 2d 6e 75 6d 62 65    72 20 6d 6f 6e 74 68 2d 73 74 72 69 6e 67 29 29  | (string-to-number.month-string)) | 
| 28ac0 |  29 0a 20 20 20 20 20 20 20 28 64 61 79 20 28 73    74 72 69 6e 67 2d 74 6f 2d 6e 75 6d 62 65 72 20  | )........(day.(string-to-number. | 
| 28ae0 |  64 61 79 2d 73 74 72 69 6e 67 29 29 0a 20 20 20    20 20 20 20 28 64 61 74 65 73 20 28 6c 69 73 74  | day-string))........(dates.(list | 
| 28b00 |  20 28 65 6e 63 6f 64 65 2d 74 69 6d 65 20 30 20    30 20 30 20 64 61 79 20 28 6f 72 20 6d 6f 6e 74  | .(encode-time.0.0.0.day.(or.mont | 
| 28b20 |  68 20 74 68 69 73 2d 6d 6f 6e 74 68 29 20 74 68    69 73 2d 79 65 61 72 29 0a 20 20 20 20 20 20 20  | h.this-month).this-year)........ | 
| 28b40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66    20 6d 6f 6e 74 68 0a 20 20 20 20 20 20 20 20 20  | .............(if.month.......... | 
| 28b60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    65 6e 63 6f 64 65 2d 74 69 6d 65 20 30 20 30 20  | ...............(encode-time.0.0. | 
| 28b80 |  30 20 64 61 79 20 6d 6f 6e 74 68 20 6c 61 73 74    2d 79 65 61 72 29 0a 20 20 20 20 20 20 20 20 20  | 0.day.month.last-year).......... | 
| 28ba0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 6e    63 6f 64 65 2d 74 69 6d 65 20 30 20 30 20 30 20  | .............(encode-time.0.0.0. | 
| 28bc0 |  64 61 79 20 6c 61 73 74 2d 6d 6f 6e 74 68 20 6c    61 73 74 2d 6d 6f 6e 74 68 2d 79 65 61 72 29 29  | day.last-month.last-month-year)) | 
| 28be0 |  29 29 29 0a 20 20 20 20 28 6c 61 6d 62 64 61 20    28 5f 73 74 72 69 6e 67 20 5f 70 72 65 64 69 63  | ))).....(lambda.(_string._predic | 
| 28c00 |  61 74 65 20 5f 61 6c 6c 29 0a 20 20 20 20 20 20    28 63 6f 6e 63 61 74 20 28 6c 65 64 67 65 72 2d  | ate._all).......(concat.(ledger- | 
| 28c20 |  66 6f 72 6d 61 74 2d 64 61 74 65 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 63 6c 2d 66  | format-date................(cl-f | 
| 28c40 |  69 6e 64 2d 69 66 20 28 6c 61 6d 62 64 61 20 28    64 61 74 65 29 20 28 6e 6f 74 20 28 74 69 6d 65  | ind-if.(lambda.(date).(not.(time | 
| 28c60 |  2d 6c 65 73 73 2d 70 20 6e 6f 77 20 64 61 74 65    29 29 29 20 64 61 74 65 73 29 29 0a 20 20 20 20  | -less-p.now.date))).dates))..... | 
| 28c80 |  20 20 20 20 20 20 20 20 20 20 28 61 6e 64 20 28    3d 20 28 70 6f 69 6e 74 29 20 28 6c 69 6e 65 2d  | ..........(and.(=.(point).(line- | 
| 28ca0 |  65 6e 64 2d 70 6f 73 69 74 69 6f 6e 29 29 20 22    20 22 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20  | end-position)).".")))))..(defun. | 
| 28cc0 |  6c 65 64 67 65 72 2d 63 6f 6d 70 6c 65 74 65 2d    65 66 66 65 63 74 69 76 65 2d 64 61 74 65 0a 20  | ledger-complete-effective-date.. | 
| 28ce0 |  20 20 20 28 74 78 2d 79 65 61 72 2d 73 74 72 69    6e 67 20 74 78 2d 6d 6f 6e 74 68 2d 73 74 72 69  | ...(tx-year-string.tx-month-stri | 
| 28d00 |  6e 67 20 74 78 2d 64 61 79 2d 73 74 72 69 6e 67    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ng.tx-day-string................ | 
| 28d20 |  20 20 20 20 20 6d 6f 6e 74 68 2d 73 74 72 69 6e    67 20 64 61 79 2d 73 74 72 69 6e 67 29 0a 20 20  | .....month-string.day-string)... | 
| 28d40 |  22 43 6f 6d 70 6c 65 74 65 20 61 6e 20 65 66 66    65 63 74 69 76 65 20 64 61 74 65 2e 22 0a 20 20  | "Complete.an.effective.date."... | 
| 28d60 |  28 6c 65 74 2a 0a 20 20 20 20 20 20 28 28 74 78    2d 79 65 61 72 20 28 73 74 72 69 6e 67 2d 74 6f  | (let*.......((tx-year.(string-to | 
| 28d80 |  2d 6e 75 6d 62 65 72 20 74 78 2d 79 65 61 72 2d    73 74 72 69 6e 67 29 29 0a 20 20 20 20 20 20 20  | -number.tx-year-string))........ | 
| 28da0 |  28 74 78 2d 6d 6f 6e 74 68 20 28 73 74 72 69 6e    67 2d 74 6f 2d 6e 75 6d 62 65 72 20 74 78 2d 6d  | (tx-month.(string-to-number.tx-m | 
| 28dc0 |  6f 6e 74 68 2d 73 74 72 69 6e 67 29 29 0a 20 20    20 20 20 20 20 28 74 78 2d 64 61 79 20 28 73 74  | onth-string))........(tx-day.(st | 
| 28de0 |  72 69 6e 67 2d 74 6f 2d 6e 75 6d 62 65 72 20 74    78 2d 64 61 79 2d 73 74 72 69 6e 67 29 29 0a 20  | ring-to-number.tx-day-string)).. | 
| 28e00 |  20 20 20 20 20 20 28 74 78 2d 64 61 74 65 20 28    65 6e 63 6f 64 65 2d 74 69 6d 65 20 30 20 30 20  | ......(tx-date.(encode-time.0.0. | 
| 28e20 |  30 20 74 78 2d 64 61 79 20 74 78 2d 6d 6f 6e 74    68 20 74 78 2d 79 65 61 72 29 29 0a 20 20 20 20  | 0.tx-day.tx-month.tx-year))..... | 
| 28e40 |  20 20 20 28 6e 65 78 74 2d 6d 6f 6e 74 68 20 28    69 66 20 28 3c 20 74 78 2d 6d 6f 6e 74 68 20 31  | ...(next-month.(if.(<.tx-month.1 | 
| 28e60 |  32 29 20 28 31 2b 20 74 78 2d 6d 6f 6e 74 68 29    20 31 29 29 0a 20 20 20 20 20 20 20 28 6e 65 78  | 2).(1+.tx-month).1))........(nex | 
| 28e80 |  74 2d 79 65 61 72 20 28 31 2b 20 74 78 2d 79 65    61 72 29 29 0a 20 20 20 20 20 20 20 28 6e 65 78  | t-year.(1+.tx-year))........(nex | 
| 28ea0 |  74 2d 6d 6f 6e 74 68 2d 79 65 61 72 20 28 69 66    20 28 3c 20 74 78 2d 6d 6f 6e 74 68 20 31 32 29  | t-month-year.(if.(<.tx-month.12) | 
| 28ec0 |  20 74 78 2d 79 65 61 72 20 6e 65 78 74 2d 79 65    61 72 29 29 0a 20 20 20 20 20 20 20 28 6d 6f 6e  | .tx-year.next-year))........(mon | 
| 28ee0 |  74 68 20 28 61 6e 64 20 6d 6f 6e 74 68 2d 73 74    72 69 6e 67 0a 20 20 20 20 20 20 20 20 20 20 20  | th.(and.month-string............ | 
| 28f00 |  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 20 6d 6f 6e 74 68 2d  | ........(string-to-number.month- | 
| 28f20 |  73 74 72 69 6e 67 29 29 29 0a 20 20 20 20 20 20    20 28 64 61 79 20 28 73 74 72 69 6e 67 2d 74 6f  | string)))........(day.(string-to | 
| 28f40 |  2d 6e 75 6d 62 65 72 20 64 61 79 2d 73 74 72 69    6e 67 29 29 0a 20 20 20 20 20 20 20 28 64 61 74  | -number.day-string))........(dat | 
| 28f60 |  65 73 20 28 6c 69 73 74 20 28 65 6e 63 6f 64 65    2d 74 69 6d 65 20 30 20 30 20 30 20 64 61 79 20  | es.(list.(encode-time.0.0.0.day. | 
| 28f80 |  28 6f 72 20 6d 6f 6e 74 68 20 74 78 2d 6d 6f 6e    74 68 29 20 74 78 2d 79 65 61 72 29 0a 20 20 20  | (or.month.tx-month).tx-year).... | 
| 28fa0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 69 66 20 6d 6f 6e 74 68 0a 20 20 20 20 20  | .................(if.month...... | 
| 28fc0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 65 6e 63 6f 64 65 2d 74 69 6d 65 20  | ...................(encode-time. | 
| 28fe0 |  30 20 30 20 30 20 64 61 79 20 6d 6f 6e 74 68 20    6e 65 78 74 2d 79 65 61 72 29 0a 20 20 20 20 20  | 0.0.0.day.month.next-year)...... | 
| 29000 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 65 6e 63 6f 64 65 2d 74 69 6d 65 20 30 20  | .................(encode-time.0. | 
| 29020 |  30 20 30 20 64 61 79 20 6e 65 78 74 2d 6d 6f 6e    74 68 20 6e 65 78 74 2d 6d 6f 6e 74 68 2d 79 65  | 0.0.day.next-month.next-month-ye | 
| 29040 |  61 72 29 29 29 29 29 0a 20 20 20 20 28 6c 61 6d    62 64 61 20 28 5f 73 74 72 69 6e 67 20 5f 70 72  | ar))))).....(lambda.(_string._pr | 
| 29060 |  65 64 69 63 61 74 65 20 5f 61 6c 6c 29 0a 20 20    20 20 20 20 28 63 6f 6e 63 61 74 20 28 6c 65 64  | edicate._all).......(concat.(led | 
| 29080 |  67 65 72 2d 66 6f 72 6d 61 74 2d 64 61 74 65 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28  | ger-format-date................( | 
| 290a0 |  63 6c 2d 66 69 6e 64 2d 69 66 20 28 6c 61 6d 62    64 61 20 28 64 61 74 65 29 20 28 6e 6f 74 20 28  | cl-find-if.(lambda.(date).(not.( | 
| 290c0 |  74 69 6d 65 2d 6c 65 73 73 2d 70 20 64 61 74 65    20 74 78 2d 64 61 74 65 29 29 29 20 64 61 74 65  | time-less-p.date.tx-date))).date | 
| 290e0 |  73 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 61 6e 64 20 28 3d 20 28 70 6f 69 6e 74  | s))...............(and.(=.(point | 
| 29100 |  29 20 28 6c 69 6e 65 2d 65 6e 64 2d 70 6f 73 69    74 69 6f 6e 29 29 20 22 20 22 29 29 29 29 29 0a  | ).(line-end-position))."."))))). | 
| 29120 |  0a 28 64 65 66 75 6e 20 6c 65 64 67 65 72 2d 63    6f 6d 70 6c 65 74 65 2d 61 74 2d 70 6f 69 6e 74  | .(defun.ledger-complete-at-point | 
| 29140 |  20 28 29 0a 20 20 22 44 6f 20 61 70 70 72 6f 70    72 69 61 74 65 20 63 6f 6d 70 6c 65 74 69 6f 6e  | .()..."Do.appropriate.completion | 
| 29160 |  20 66 6f 72 20 74 68 65 20 74 68 69 6e 67 20 61    74 20 70 6f 69 6e 74 2e 22 0a 20 20 28 6c 65 74  | .for.the.thing.at.point."...(let | 
| 29180 |  20 28 28 65 6e 64 20 28 70 6f 69 6e 74 29 29 0a    20 20 20 20 20 20 20 20 73 74 61 72 74 20 63 6f  | .((end.(point)).........start.co | 
| 291a0 |  6c 6c 65 63 74 69 6f 6e 0a 20 20 20 20 20 20 20    20 72 65 61 6c 69 67 6e 2d 61 66 74 65 72 0a 20  | llection.........realign-after.. | 
| 291c0 |  20 20 20 20 20 20 20 64 65 6c 65 74 65 2d 73 75    66 66 69 78 29 0a 20 20 20 20 28 63 6f 6e 64 20  | .......delete-suffix).....(cond. | 
| 291e0 |  28 3b 3b 20 44 61 74 65 0a 20 20 20 20 20 20 20    20 20 20 20 28 6c 6f 6f 6b 69 6e 67 2d 62 61 63  | (;;.Date............(looking-bac | 
| 29200 |  6b 20 28 63 6f 6e 63 61 74 20 22 5e 22 20 6c 65    64 67 65 72 2d 69 6e 63 6f 6d 70 6c 65 74 65 2d  | k.(concat."^".ledger-incomplete- | 
| 29220 |  64 61 74 65 2d 72 65 67 65 78 70 29 20 28 6c 69    6e 65 2d 62 65 67 69 6e 6e 69 6e 67 2d 70 6f 73  | date-regexp).(line-beginning-pos | 
| 29240 |  69 74 69 6f 6e 29 29 0a 20 20 20 20 20 20 20 20    20 20 20 28 73 65 74 71 20 63 6f 6c 6c 65 63 74  | ition))............(setq.collect | 
| 29260 |  69 6f 6e 20 28 6c 65 64 67 65 72 2d 63 6f 6d 70    6c 65 74 65 2d 64 61 74 65 20 28 6d 61 74 63 68  | ion.(ledger-complete-date.(match | 
| 29280 |  2d 73 74 72 69 6e 67 20 31 29 20 28 6d 61 74 63    68 2d 73 74 72 69 6e 67 20 32 29 29 0a 20 20 20  | -string.1).(match-string.2)).... | 
| 292a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 74    61 72 74 20 28 6d 61 74 63 68 2d 62 65 67 69 6e  | ..............start.(match-begin | 
| 292c0 |  6e 69 6e 67 20 30 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 64 65 6c 65 74 65 2d  | ning.0)..................delete- | 
| 292e0 |  73 75 66 66 69 78 20 28 73 61 76 65 2d 6d 61 74    63 68 2d 64 61 74 61 0a 20 20 20 20 20 20 20 20  | suffix.(save-match-data......... | 
| 29300 |  20 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 65 6e 20 28  | .........................(when.( | 
| 29320 |  6c 6f 6f 6b 69 6e 67 2d 61 74 20 28 72 78 20 28    6f 6e 65 2d 6f 72 2d 6d 6f 72 65 20 28 6f 72 20  | looking-at.(rx.(one-or-more.(or. | 
| 29340 |  64 69 67 69 74 20 28 61 6e 79 20 3f 2f 20 3f 2d    29 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20  | digit.(any.?/.?-)))))........... | 
| 29360 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 28 6c 65 6e 67 74 68  | .........................(length | 
| 29380 |  20 28 6d 61 74 63 68 2d 73 74 72 69 6e 67 20 30    29 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 20  | .(match-string.0)))))).......... | 
| 293a0 |  20 28 3b 3b 20 45 66 66 65 63 74 69 76 65 20 64    61 74 65 73 0a 20 20 20 20 20 20 20 20 20 20 20  | .(;;.Effective.dates............ | 
| 293c0 |  28 6c 6f 6f 6b 69 6e 67 2d 62 61 63 6b 20 28 63    6f 6e 63 61 74 20 22 5e 22 20 6c 65 64 67 65 72  | (looking-back.(concat."^".ledger | 
| 293e0 |  2d 69 73 6f 2d 64 61 74 65 2d 72 65 67 65 78 70    20 22 3d 22 20 6c 65 64 67 65 72 2d 69 6e 63 6f  | -iso-date-regexp."=".ledger-inco | 
| 29400 |  6d 70 6c 65 74 65 2d 64 61 74 65 2d 72 65 67 65    78 70 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | mplete-date-regexp)............. | 
| 29420 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69    6e 65 2d 62 65 67 69 6e 6e 69 6e 67 2d 70 6f 73  | .............(line-beginning-pos | 
| 29440 |  69 74 69 6f 6e 29 29 0a 20 20 20 20 20 20 20 20    20 20 20 28 73 65 74 71 20 73 74 61 72 74 20 28  | ition))............(setq.start.( | 
| 29460 |  6c 69 6e 65 2d 62 65 67 69 6e 6e 69 6e 67 2d 70    6f 73 69 74 69 6f 6e 29 29 0a 20 20 20 20 20 20  | line-beginning-position))....... | 
| 29480 |  20 20 20 20 20 28 73 65 74 71 20 63 6f 6c 6c 65    63 74 69 6f 6e 20 28 6c 65 64 67 65 72 2d 63 6f  | .....(setq.collection.(ledger-co | 
| 294a0 |  6d 70 6c 65 74 65 2d 65 66 66 65 63 74 69 76 65    2d 64 61 74 65 0a 20 20 20 20 20 20 20 20 20 20  | mplete-effective-date........... | 
| 294c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 6d 61 74 63 68 2d 73 74 72 69 6e 67  | ...................(match-string | 
| 294e0 |  20 32 29 20 28 6d 61 74 63 68 2d 73 74 72 69 6e    67 20 33 29 20 28 6d 61 74 63 68 2d 73 74 72 69  | .2).(match-string.3).(match-stri | 
| 29500 |  6e 67 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 20 20 20 20  | ng.4)........................... | 
| 29520 |  20 20 20 28 6d 61 74 63 68 2d 73 74 72 69 6e 67    20 35 29 20 28 6d 61 74 63 68 2d 73 74 72 69 6e  | ...(match-string.5).(match-strin | 
| 29540 |  67 20 36 29 29 29 29 0a 20 20 20 20 20 20 20 20    20 20 28 3b 3b 20 50 61 79 65 65 73 0a 20 20 20  | g.6))))...........(;;.Payees.... | 
| 29560 |  20 20 20 20 20 20 20 20 28 65 71 20 27 74 72 61    6e 73 61 63 74 69 6f 6e 0a 20 20 20 20 20 20 20  | ........(eq.'transaction........ | 
| 29580 |  20 20 20 20 20 20 20 20 28 73 61 76 65 2d 65 78    63 75 72 73 69 6f 6e 0a 20 20 20 20 20 20 20 20  | ........(save-excursion......... | 
| 295a0 |  20 20 20 20 20 20 20 20 20 28 70 72 6f 67 31 20    28 6c 65 64 67 65 72 2d 74 68 69 6e 67 2d 61 74  | .........(prog1.(ledger-thing-at | 
| 295c0 |  2d 70 6f 69 6e 74 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71  | -point)....................(setq | 
| 295e0 |  20 73 74 61 72 74 20 28 70 6f 69 6e 74 29 29 29    29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 73  | .start.(point)))))............(s | 
| 29600 |  65 74 71 20 63 6f 6c 6c 65 63 74 69 6f 6e 20 23    27 6c 65 64 67 65 72 2d 70 61 79 65 65 73 2d 6c  | etq.collection.#'ledger-payees-l | 
| 29620 |  69 73 74 29 29 0a 20 20 20 20 20 20 20 20 20 20    28 3b 3b 20 41 63 63 6f 75 6e 74 73 0a 20 20 20  | ist))...........(;;.Accounts.... | 
| 29640 |  20 20 20 20 20 20 20 20 28 73 61 76 65 2d 65 78    63 75 72 73 69 6f 6e 0a 20 20 20 20 20 20 20 20  | ........(save-excursion......... | 
| 29660 |  20 20 20 20 20 28 62 61 63 6b 2d 74 6f 2d 69 6e    64 65 6e 74 61 74 69 6f 6e 29 0a 20 20 20 20 20  | .....(back-to-indentation)...... | 
| 29680 |  20 20 20 20 20 20 20 20 28 73 6b 69 70 2d 63 68    61 72 73 2d 66 6f 72 77 61 72 64 20 22 28 5b 22  | ........(skip-chars-forward."([" | 
| 296a0 |  29 20 3b 3b 20 66 6f 72 20 76 69 72 74 75 61 6c    20 61 63 63 6f 75 6e 74 73 0a 20 20 20 20 20 20  | ).;;.for.virtual.accounts....... | 
| 296c0 |  20 20 20 20 20 20 20 28 73 65 74 71 20 73 74 61    72 74 20 28 70 6f 69 6e 74 29 29 29 0a 20 20 20  | .......(setq.start.(point))).... | 
| 296e0 |  20 20 20 20 20 20 20 20 28 73 65 74 71 20 64 65    6c 65 74 65 2d 73 75 66 66 69 78 20 28 73 61 76  | ........(setq.delete-suffix.(sav | 
| 29700 |  65 2d 65 78 63 75 72 73 69 6f 6e 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | e-excursion..................... | 
| 29720 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 68    65 6e 20 28 73 65 61 72 63 68 2d 66 6f 72 77 61  | .............(when.(search-forwa | 
| 29740 |  72 64 2d 72 65 67 65 78 70 20 28 72 78 20 28 6f    72 20 65 6f 6c 20 28 6f 72 20 3f 5c 74 20 28 72  | rd-regexp.(rx.(or.eol.(or.?\t.(r | 
| 29760 |  65 70 65 61 74 20 32 20 73 70 61 63 65 29 29 29    29 20 28 6c 69 6e 65 2d 65 6e 64 2d 70 6f 73 69  | epeat.2.space)))).(line-end-posi | 
| 29780 |  74 69 6f 6e 29 20 74 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | tion).t)........................ | 
| 297a0 |  20 20 20 20 20 20 20 20 20 20 20 20 28 2d 20 28    6d 61 74 63 68 2d 62 65 67 69 6e 6e 69 6e 67 20  | ............(-.(match-beginning. | 
| 297c0 |  30 29 20 65 6e 64 29 29 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 72 65 61 6c 69  | 0).end)))..................reali | 
| 297e0 |  67 6e 2d 61 66 74 65 72 20 74 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 63 6f 6c 6c  | gn-after.t..................coll | 
| 29800 |  65 63 74 69 6f 6e 20 28 69 66 20 6c 65 64 67 65    72 2d 63 6f 6d 70 6c 65 74 65 2d 69 6e 2d 73 74  | ection.(if.ledger-complete-in-st | 
| 29820 |  65 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 20  | eps............................. | 
| 29840 |  20 20 20 20 23 27 6c 65 64 67 65 72 2d 63 6f 6d    70 6c 65 74 65 2d 61 63 63 6f 75 6e 74 2d 6e 65  | ....#'ledger-complete-account-ne | 
| 29860 |  78 74 2d 73 74 65 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  | xt-steps........................ | 
| 29880 |  20 20 20 20 20 20 20 23 27 6c 65 64 67 65 72 2d    61 63 63 6f 75 6e 74 73 2d 6c 69 73 74 29 29 29  | .......#'ledger-accounts-list))) | 
| 298a0 |  29 0a 20 20 20 20 28 77 68 65 6e 20 63 6f 6c 6c    65 63 74 69 6f 6e 0a 20 20 20 20 20 20 28 6c 65  | ).....(when.collection.......(le | 
| 298c0 |  74 20 28 28 70 72 65 66 69 78 20 28 62 75 66 66    65 72 2d 73 75 62 73 74 72 69 6e 67 2d 6e 6f 2d  | t.((prefix.(buffer-substring-no- | 
| 298e0 |  70 72 6f 70 65 72 74 69 65 73 20 73 74 61 72 74    20 65 6e 64 29 29 29 0a 20 20 20 20 20 20 20 20  | properties.start.end)))......... | 
| 29900 |  28 6c 69 73 74 20 73 74 61 72 74 20 65 6e 64 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69  | (list.start.end...............(i | 
| 29920 |  66 20 28 66 75 6e 63 74 69 6f 6e 70 20 63 6f 6c    6c 65 63 74 69 6f 6e 29 0a 20 20 20 20 20 20 20  | f.(functionp.collection)........ | 
| 29940 |  20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6d 70    6c 65 74 69 6f 6e 2d 74 61 62 6c 65 2d 77 69 74  | ...........(completion-table-wit | 
| 29960 |  68 2d 63 61 63 68 65 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62  | h-cache....................(lamb | 
| 29980 |  64 61 20 28 5f 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 28 63 6c 2d  | da.(_)......................(cl- | 
| 299a0 |  72 65 6d 6f 76 65 2d 69 66 20 28 61 70 70 6c 79    2d 70 61 72 74 69 61 6c 6c 79 20 27 73 74 72 69  | remove-if.(apply-partially.'stri | 
| 299c0 |  6e 67 3d 20 70 72 65 66 69 78 29 20 28 66 75 6e    63 61 6c 6c 20 63 6f 6c 6c 65 63 74 69 6f 6e 29  | ng=.prefix).(funcall.collection) | 
| 299e0 |  29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 63 6f 6c 6c 65 63 74 69 6f 6e 29 0a  | ))).................collection). | 
| 29a00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 65    78 69 74 2d 66 75 6e 63 74 69 6f 6e 20 28 6c 61  | ..............:exit-function.(la | 
| 29a20 |  6d 62 64 61 20 28 26 72 65 73 74 20 5f 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | mbda.(&rest._).................. | 
| 29a40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77    68 65 6e 20 64 65 6c 65 74 65 2d 73 75 66 66 69  | ..............(when.delete-suffi | 
| 29a60 |  78 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | x............................... | 
| 29a80 |  20 20 20 28 64 65 6c 65 74 65 2d 63 68 61 72 20    64 65 6c 65 74 65 2d 73 75 66 66 69 78 29 29 0a  | ...(delete-char.delete-suffix)). | 
| 29aa0 |  20 20 20 20 20 20 20 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  | ...............................( | 
| 29ac0 |  77 68 65 6e 20 28 61 6e 64 20 72 65 61 6c 69 67    6e 2d 61 66 74 65 72 20 6c 65 64 67 65 72 2d 70  | when.(and.realign-after.ledger-p | 
| 29ae0 |  6f 73 74 2d 61 75 74 6f 2d 61 6c 69 67 6e 29 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ost-auto-align)................. | 
| 29b00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 6c 65 64 67 65 72 2d 70 6f 73 74 2d 61 6c  | .................(ledger-post-al | 
| 29b20 |  69 67 6e 2d 70 6f 73 74 69 6e 67 73 20 28 6c 69    6e 65 2d 62 65 67 69 6e 6e 69 6e 67 2d 70 6f 73  | ign-postings.(line-beginning-pos | 
| 29b40 |  69 74 69 6f 6e 29 20 28 6c 69 6e 65 2d 65 6e 64    2d 70 6f 73 69 74 69 6f 6e 29 29 29 29 29 29 29  | ition).(line-end-position))))))) | 
| 29b60 |  29 29 0a 0a 28 64 65 66 75 6e 20 6c 65 64 67 65    72 2d 74 72 69 6d 2d 74 72 61 69 6c 69 6e 67 2d  | ))..(defun.ledger-trim-trailing- | 
| 29b80 |  77 68 69 74 65 73 70 61 63 65 20 28 73 74 72 29    0a 20 20 28 72 65 70 6c 61 63 65 2d 72 65 67 65  | whitespace.(str)...(replace-rege | 
| 29ba0 |  78 70 2d 69 6e 2d 73 74 72 69 6e 67 20 22 5b 20    5c 74 5d 2a 24 22 20 22 22 20 73 74 72 29 29 0a  | xp-in-string."[.\t]*$"."".str)). | 
| 29bc0 |  0a 28 64 65 66 75 6e 20 6c 65 64 67 65 72 2d 66    75 6c 6c 79 2d 63 6f 6d 70 6c 65 74 65 2d 78 61  | .(defun.ledger-fully-complete-xa | 
| 29be0 |  63 74 20 28 29 0a 20 20 22 43 6f 6d 70 6c 65 74    65 73 20 61 20 74 72 61 6e 73 61 63 74 69 6f 6e  | ct.()..."Completes.a.transaction | 
| 29c00 |  20 69 66 20 74 68 65 72 65 20 69 73 20 61 6e 6f    74 68 65 72 20 6d 61 74 63 68 69 6e 67 20 70 61  | .if.there.is.another.matching.pa | 
| 29c20 |  79 65 65 20 69 6e 20 74 68 65 20 62 75 66 66 65    72 2e 0a 0a 49 6e 74 65 72 61 63 74 69 76 65 6c  | yee.in.the.buffer...Interactivel | 
| 29c40 |  79 2c 20 69 66 20 70 6f 69 6e 74 20 69 73 20 61    66 74 65 72 20 61 20 70 61 79 65 65 2c 20 63 6f  | y,.if.point.is.after.a.payee,.co | 
| 29c60 |  6d 70 6c 65 74 65 20 74 68 65 0a 74 72 61 6e 73    61 63 74 69 6f 6e 20 77 69 74 68 20 74 68 65 20  | mplete.the.transaction.with.the. | 
| 29c80 |  64 65 74 61 69 6c 73 20 66 72 6f 6d 20 74 68 65    20 6c 61 73 74 20 74 72 61 6e 73 61 63 74 69 6f  | details.from.the.last.transactio | 
| 29ca0 |  6e 20 74 6f 20 74 68 61 74 0a 70 61 79 65 65 2e    22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65  | n.to.that.payee."...(interactive | 
| 29cc0 |  29 0a 20 20 28 6c 65 74 2a 20 28 28 6e 61 6d 65    20 28 6c 65 64 67 65 72 2d 74 72 69 6d 2d 74 72  | )...(let*.((name.(ledger-trim-tr | 
| 29ce0 |  61 69 6c 69 6e 67 2d 77 68 69 74 65 73 70 61 63    65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ailing-whitespace............... | 
| 29d00 |  20 20 28 62 75 66 66 65 72 2d 73 75 62 73 74 72    69 6e 67 0a 20 20 20 20 20 20 20 20 20 20 20 20  | ..(buffer-substring............. | 
| 29d20 |  20 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 20 20 20  | .....(save-excursion............ | 
| 29d40 |  20 20 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20    28 65 71 20 28 6c 65 64 67 65 72 2d 74 68 69 6e  | ........(unless.(eq.(ledger-thin | 
| 29d60 |  67 2d 61 74 2d 70 6f 69 6e 74 29 20 27 74 72 61    6e 73 61 63 74 69 6f 6e 29 0a 20 20 20 20 20 20  | g-at-point).'transaction)....... | 
| 29d80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    75 73 65 72 2d 65 72 72 6f 72 20 22 43 61 6e 6e  | ...............(user-error."Cann | 
| 29da0 |  6f 74 20 66 75 6c 6c 79 20 63 6f 6d 70 6c 65 74    65 20 78 61 63 74 20 68 65 72 65 22 29 29 0a 20  | ot.fully.complete.xact.here")).. | 
| 29dc0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 70 6f 69 6e 74 29 29 0a 20 20 20 20 20  | ..................(point))...... | 
| 29de0 |  20 20 20 20 20 20 20 20 20 20 20 20 28 70 6f 69    6e 74 29 29 29 29 0a 20 20 20 20 20 20 20 20 20  | ............(point)))).......... | 
| 29e00 |  28 72 65 73 74 2d 6f 66 2d 6e 61 6d 65 20 6e 61    6d 65 29 0a 20 20 20 20 20 20 20 20 20 78 61 63  | (rest-of-name.name)..........xac | 
| 29e20 |  74 73 29 0a 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 28 77  | ts).....(save-excursion.......(w | 
| 29e40 |  68 65 6e 20 28 65 71 20 27 74 72 61 6e 73 61 63    74 69 6f 6e 20 28 6c 65 64 67 65 72 2d 74 68 69  | hen.(eq.'transaction.(ledger-thi | 
| 29e60 |  6e 67 2d 61 74 2d 70 6f 69 6e 74 29 29 0a 20 20    20 20 20 20 20 20 28 64 65 6c 65 74 65 2d 72 65  | ng-at-point)).........(delete-re | 
| 29e80 |  67 69 6f 6e 20 28 70 6f 69 6e 74 29 20 28 2b 20    28 6c 65 6e 67 74 68 20 6e 61 6d 65 29 20 28 70  | gion.(point).(+.(length.name).(p | 
| 29ea0 |  6f 69 6e 74 29 29 29 0a 20 20 20 20 20 20 20 20    3b 3b 20 53 65 61 72 63 68 20 62 61 63 6b 77 61  | oint))).........;;.Search.backwa | 
| 29ec0 |  72 64 20 66 6f 72 20 61 20 6d 61 74 63 68 69 6e    67 20 70 61 79 65 65 0a 20 20 20 20 20 20 20 20  | rd.for.a.matching.payee......... | 
| 29ee0 |  28 77 68 65 6e 20 28 72 65 2d 73 65 61 72 63 68    2d 62 61 63 6b 77 61 72 64 0a 20 20 20 20 20 20  | (when.(re-search-backward....... | 
| 29f00 |  20 20 20 20 20 20 20 20 20 28 63 6f 6e 63 61 74    20 22 5e 5b 30 2d 39 2f 2e 3d 2d 5d 2b 5c 5c 28  | .........(concat."^[0-9/.=-]+\\( | 
| 29f20 |  5c 5c 73 2d 2b 5c 5c 2a 5c 5c 29 3f 5c 5c 28 5c    5c 73 2d 2b 28 2e 2a 3f 29 5c 5c 29 3f 5c 5c 73  | \\s-+\\*\\)?\\(\\s-+(.*?)\\)?\\s | 
| 29f40 |  2d 2b 5c 5c 28 2e 2a 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  | -+\\(.*"........................ | 
| 29f60 |  28 72 65 67 65 78 70 2d 71 75 6f 74 65 20 6e 61    6d 65 29 20 22 2e 2a 5c 5c 29 22 29 0a 20 20 20  | (regexp-quote.name).".*\\)").... | 
| 29f80 |  20 20 20 20 20 20 20 20 20 20 20 20 6e 69 6c 20    74 29 0a 20 20 20 20 20 20 20 20 20 20 28 73 65  | ............nil.t)...........(se | 
| 29fa0 |  74 71 20 72 65 73 74 2d 6f 66 2d 6e 61 6d 65 20    28 6d 61 74 63 68 2d 73 74 72 69 6e 67 20 33 29  | tq.rest-of-name.(match-string.3) | 
| 29fc0 |  29 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 53    74 61 72 74 20 63 6f 70 79 69 6e 67 20 74 68 65  | )...........;;.Start.copying.the | 
| 29fe0 |  20 70 6f 73 74 69 6e 67 73 0a 20 20 20 20 20 20    20 20 20 20 28 66 6f 72 77 61 72 64 2d 6c 69 6e  | .postings...........(forward-lin | 
| 2a000 |  65 29 0a 20 20 20 20 20 20 20 20 20 20 28 73 65    74 71 20 78 61 63 74 73 20 28 62 75 66 66 65 72  | e)...........(setq.xacts.(buffer | 
| 2a020 |  2d 73 75 62 73 74 72 69 6e 67 2d 6e 6f 2d 70 72    6f 70 65 72 74 69 65 73 20 28 70 6f 69 6e 74 29  | -substring-no-properties.(point) | 
| 2a040 |  20 28 6c 65 64 67 65 72 2d 6e 61 76 69 67 61 74    65 2d 65 6e 64 2d 6f 66 2d 78 61 63 74 29 29 29  | .(ledger-navigate-end-of-xact))) | 
| 2a060 |  29 29 29 0a 20 20 20 20 3b 3b 20 49 6e 73 65 72    74 20 72 65 73 74 2d 6f 66 2d 6e 61 6d 65 20 61  | ))).....;;.Insert.rest-of-name.a | 
| 2a080 |  6e 64 20 74 68 65 20 70 6f 73 74 69 6e 67 73 0a    20 20 20 20 28 73 61 76 65 2d 65 78 63 75 72 73  | nd.the.postings.....(save-excurs | 
| 2a0a0 |  69 6f 6e 0a 20 20 20 20 20 20 28 69 6e 73 65 72    74 20 72 65 73 74 2d 6f 66 2d 6e 61 6d 65 20 3f  | ion.......(insert.rest-of-name.? | 
| 2a0c0 |  5c 6e 29 0a 20 20 20 20 20 20 28 69 6e 73 65 72    74 20 78 61 63 74 73 29 0a 20 20 20 20 20 20 28  | \n).......(insert.xacts).......( | 
| 2a0e0 |  75 6e 6c 65 73 73 20 28 6c 6f 6f 6b 69 6e 67 2d    61 74 2d 70 20 22 5c 6e 5c 6e 22 29 0a 20 20 20  | unless.(looking-at-p."\n\n").... | 
| 2a100 |  20 20 20 20 20 28 69 6e 73 65 72 74 20 22 5c 6e    22 29 29 29 0a 20 20 20 20 28 66 6f 72 77 61 72  | .....(insert."\n"))).....(forwar | 
| 2a120 |  64 2d 6c 69 6e 65 29 0a 20 20 20 20 28 65 6e 64    2d 6f 66 2d 6c 69 6e 65 29 0a 20 20 20 20 3b 3b  | d-line).....(end-of-line).....;; | 
| 2a140 |  20 4d 6f 76 65 20 74 6f 20 61 6d 6f 75 6e 74 20    6f 6e 20 66 69 72 73 74 20 70 6f 73 74 69 6e 67  | .Move.to.amount.on.first.posting | 
| 2a160 |  20 6c 69 6e 65 0a 20 20 20 20 28 77 68 65 6e 20    28 72 65 2d 73 65 61 72 63 68 2d 62 61 63 6b 77  | .line.....(when.(re-search-backw | 
| 2a180 |  61 72 64 20 22 5c 74 5c 5c 7c 20 5b 20 5c 74 5d    22 20 6e 69 6c 20 74 29 0a 20 20 20 20 20 20 28  | ard."\t\\|.[.\t]".nil.t).......( | 
| 2a1a0 |  67 6f 74 6f 2d 63 68 61 72 20 28 6d 61 74 63 68    2d 65 6e 64 20 30 29 29 29 29 29 0a 0a 28 70 72  | goto-char.(match-end.0)))))..(pr | 
| 2a1c0 |  6f 76 69 64 65 20 27 6c 65 64 67 65 72 2d 63 6f    6d 70 6c 65 74 65 29 0a 0a 3b 3b 3b 20 6c 65 64  | ovide.'ledger-complete)..;;;.led | 
| 2a1e0 |  67 65 72 2d 63 6f 6d 70 6c 65 74 65 2e 65 6c 20    65 6e 64 73 20 68 65 72 65 0a 00 00 00 00 00 00  | ger-complete.el.ends.here....... | 
| 2a200 |  6c 65 64 67 65 72 2d 6d 6f 64 65 2d 32 30 32 34    30 34 31 36 2e 34 31 36 2f 6c 65 64 67 65 72 2d  | ledger-mode-20240416.416/ledger- | 
| 2a220 |  6d 6f 64 65 2e 69 6e 66 6f 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | mode.info....................... | 
| 2a240 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 2a260 |  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 | 
| 2a280 |  30 32 30 36 35 31 32 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 36 31 36 31 00 20 30 00 00 00  | 0206512.00000000000.016161..0... | 
| 2a2a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 2a2c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 2a2e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 2a300 |  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................... | 
| 2a320 |  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................... | 
| 2a340 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 2a360 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 2a380 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 2a3a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 2a3c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 2a3e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 2a400 |  54 68 69 73 20 69 73 20 6c 65 64 67 65 72 2d 6d    6f 64 65 2e 69 6e 66 6f 2c 20 70 72 6f 64 75 63  | This.is.ledger-mode.info,.produc | 
| 2a420 |  65 64 20 62 79 20 6d 61 6b 65 69 6e 66 6f 20 76    65 72 73 69 6f 6e 20 36 2e 37 20 66 72 6f 6d 0a  | ed.by.makeinfo.version.6.7.from. | 
| 2a440 |  6c 65 64 67 65 72 2d 6d 6f 64 65 2e 74 65 78 69    2e 0a 0a 43 6f 70 79 72 69 67 68 74 20 c2 a9 20  | ledger-mode.texi...Copyright.... | 
| 2a460 |  32 30 31 33 2c 20 43 72 61 69 67 20 45 61 72 6c    73 2e 20 20 41 6c 6c 20 72 69 67 68 74 73 20 72  | 2013,.Craig.Earls...All.rights.r | 
| 2a480 |  65 73 65 72 76 65 64 2e 0a 0a 20 20 20 52 65 64    69 73 74 72 69 62 75 74 69 6f 6e 20 61 6e 64 20  | eserved......Redistribution.and. | 
| 2a4a0 |  75 73 65 20 69 6e 20 73 6f 75 72 63 65 20 61 6e    64 20 62 69 6e 61 72 79 20 66 6f 72 6d 73 2c 20  | use.in.source.and.binary.forms,. | 
| 2a4c0 |  77 69 74 68 20 6f 72 20 77 69 74 68 6f 75 74 0a    6d 6f 64 69 66 69 63 61 74 69 6f 6e 2c 20 61 72  | with.or.without.modification,.ar | 
| 2a4e0 |  65 20 70 65 72 6d 69 74 74 65 64 20 70 72 6f 76    69 64 65 64 20 74 68 61 74 20 74 68 65 20 66 6f  | e.permitted.provided.that.the.fo | 
| 2a500 |  6c 6c 6f 77 69 6e 67 20 63 6f 6e 64 69 74 69 6f    6e 73 20 61 72 65 0a 6d 65 74 3a 0a 0a 20 20 20  | llowing.conditions.are.met:..... | 
| 2a520 |  e2 80 a2 20 52 65 64 69 73 74 72 69 62 75 74 69    6f 6e 73 20 6f 66 20 73 6f 75 72 63 65 20 63 6f  | ....Redistributions.of.source.co | 
| 2a540 |  64 65 20 6d 75 73 74 20 72 65 74 61 69 6e 20 74    68 65 20 61 62 6f 76 65 20 63 6f 70 79 72 69 67  | de.must.retain.the.above.copyrig | 
| 2a560 |  68 74 0a 20 20 20 20 20 6e 6f 74 69 63 65 2c 20    74 68 69 73 20 6c 69 73 74 20 6f 66 20 63 6f 6e  | ht......notice,.this.list.of.con | 
| 2a580 |  64 69 74 69 6f 6e 73 20 61 6e 64 20 74 68 65 20    66 6f 6c 6c 6f 77 69 6e 67 20 64 69 73 63 6c 61  | ditions.and.the.following.discla | 
| 2a5a0 |  69 6d 65 72 2e 0a 0a 20 20 20 e2 80 a2 20 52 65    64 69 73 74 72 69 62 75 74 69 6f 6e 73 20 69 6e  | imer..........Redistributions.in | 
| 2a5c0 |  20 62 69 6e 61 72 79 20 66 6f 72 6d 20 6d 75 73    74 20 72 65 70 72 6f 64 75 63 65 20 74 68 65 20  | .binary.form.must.reproduce.the. | 
| 2a5e0 |  61 62 6f 76 65 20 63 6f 70 79 72 69 67 68 74 0a    20 20 20 20 20 6e 6f 74 69 63 65 2c 20 74 68 69  | above.copyright......notice,.thi | 
| 2a600 |  73 20 6c 69 73 74 20 6f 66 20 63 6f 6e 64 69 74    69 6f 6e 73 20 61 6e 64 20 74 68 65 20 66 6f 6c  | s.list.of.conditions.and.the.fol | 
| 2a620 |  6c 6f 77 69 6e 67 20 64 69 73 63 6c 61 69 6d 65    72 20 69 6e 20 74 68 65 0a 20 20 20 20 20 64 6f  | lowing.disclaimer.in.the......do | 
| 2a640 |  63 75 6d 65 6e 74 61 74 69 6f 6e 20 61 6e 64 2f    6f 72 20 6f 74 68 65 72 20 6d 61 74 65 72 69 61  | cumentation.and/or.other.materia | 
| 2a660 |  6c 73 20 70 72 6f 76 69 64 65 64 20 77 69 74 68    20 74 68 65 0a 20 20 20 20 20 64 69 73 74 72 69  | ls.provided.with.the......distri | 
| 2a680 |  62 75 74 69 6f 6e 2e 0a 0a 20 20 20 e2 80 a2 20    4e 65 69 74 68 65 72 20 74 68 65 20 6e 61 6d 65  | bution..........Neither.the.name | 
| 2a6a0 |  20 6f 66 20 4e 65 77 20 41 72 74 69 73 61 6e 73    20 4c 4c 43 20 6e 6f 72 20 74 68 65 20 6e 61 6d  | .of.New.Artisans.LLC.nor.the.nam | 
| 2a6c0 |  65 73 20 6f 66 20 69 74 73 0a 20 20 20 20 20 63    6f 6e 74 72 69 62 75 74 6f 72 73 20 6d 61 79 20  | es.of.its......contributors.may. | 
| 2a6e0 |  62 65 20 75 73 65 64 20 74 6f 20 65 6e 64 6f 72    73 65 20 6f 72 20 70 72 6f 6d 6f 74 65 20 70 72  | be.used.to.endorse.or.promote.pr | 
| 2a700 |  6f 64 75 63 74 73 20 64 65 72 69 76 65 64 0a 20    20 20 20 20 66 72 6f 6d 20 74 68 69 73 20 73 6f  | oducts.derived......from.this.so | 
| 2a720 |  66 74 77 61 72 65 20 77 69 74 68 6f 75 74 20 73    70 65 63 69 66 69 63 20 70 72 69 6f 72 20 77 72  | ftware.without.specific.prior.wr | 
| 2a740 |  69 74 74 65 6e 20 70 65 72 6d 69 73 73 69 6f 6e    2e 0a 0a 20 20 20 54 48 49 53 20 53 4f 46 54 57  | itten.permission......THIS.SOFTW | 
| 2a760 |  41 52 45 20 49 53 20 50 52 4f 56 49 44 45 44 20    42 59 20 54 48 45 20 43 4f 50 59 52 49 47 48 54  | ARE.IS.PROVIDED.BY.THE.COPYRIGHT | 
| 2a780 |  20 48 4f 4c 44 45 52 53 20 41 4e 44 20 43 4f 4e    54 52 49 42 55 54 4f 52 53 0a e2 80 9c 41 53 20  | .HOLDERS.AND.CONTRIBUTORS....AS. | 
| 2a7a0 |  49 53 e2 80 9d 20 41 4e 44 20 41 4e 59 20 45 58    50 52 45 53 53 20 4f 52 20 49 4d 50 4c 49 45 44  | IS....AND.ANY.EXPRESS.OR.IMPLIED | 
| 2a7c0 |  20 57 41 52 52 41 4e 54 49 45 53 2c 20 49 4e 43    4c 55 44 49 4e 47 2c 20 42 55 54 20 4e 4f 54 0a  | .WARRANTIES,.INCLUDING,.BUT.NOT. | 
| 2a7e0 |  4c 49 4d 49 54 45 44 20 54 4f 2c 20 54 48 45 20    49 4d 50 4c 49 45 44 20 57 41 52 52 41 4e 54 49  | LIMITED.TO,.THE.IMPLIED.WARRANTI | 
| 2a800 |  45 53 20 4f 46 20 4d 45 52 43 48 41 4e 54 41 42    49 4c 49 54 59 20 41 4e 44 20 46 49 54 4e 45 53  | ES.OF.MERCHANTABILITY.AND.FITNES | 
| 2a820 |  53 20 46 4f 52 20 41 0a 50 41 52 54 49 43 55 4c    41 52 20 50 55 52 50 4f 53 45 20 41 52 45 20 44  | S.FOR.A.PARTICULAR.PURPOSE.ARE.D | 
| 2a840 |  49 53 43 4c 41 49 4d 45 44 2e 20 49 4e 20 4e 4f    20 45 56 45 4e 54 20 53 48 41 4c 4c 20 54 48 45  | ISCLAIMED..IN.NO.EVENT.SHALL.THE | 
| 2a860 |  20 43 4f 50 59 52 49 47 48 54 20 4f 57 4e 45 52    0a 4f 52 20 43 4f 4e 54 52 49 42 55 54 4f 52 53  | .COPYRIGHT.OWNER.OR.CONTRIBUTORS | 
| 2a880 |  20 42 45 20 4c 49 41 42 4c 45 20 46 4f 52 20 41    4e 59 20 44 49 52 45 43 54 2c 20 49 4e 44 49 52  | .BE.LIABLE.FOR.ANY.DIRECT,.INDIR | 
| 2a8a0 |  45 43 54 2c 20 49 4e 43 49 44 45 4e 54 41 4c 2c    20 53 50 45 43 49 41 4c 2c 0a 45 58 45 4d 50 4c  | ECT,.INCIDENTAL,.SPECIAL,.EXEMPL | 
| 2a8c0 |  41 52 59 2c 20 4f 52 20 43 4f 4e 53 45 51 55 45    4e 54 49 41 4c 20 44 41 4d 41 47 45 53 20 28 49  | ARY,.OR.CONSEQUENTIAL.DAMAGES.(I | 
| 2a8e0 |  4e 43 4c 55 44 49 4e 47 2c 20 42 55 54 20 4e 4f    54 20 4c 49 4d 49 54 45 44 20 54 4f 2c 0a 50 52  | NCLUDING,.BUT.NOT.LIMITED.TO,.PR | 
| 2a900 |  4f 43 55 52 45 4d 45 4e 54 20 4f 46 20 53 55 42    53 54 49 54 55 54 45 20 47 4f 4f 44 53 20 4f 52  | OCUREMENT.OF.SUBSTITUTE.GOODS.OR | 
| 2a920 |  20 53 45 52 56 49 43 45 53 3b 20 4c 4f 53 53 20    4f 46 20 55 53 45 2c 20 44 41 54 41 2c 20 4f 52  | .SERVICES;.LOSS.OF.USE,.DATA,.OR | 
| 2a940 |  0a 50 52 4f 46 49 54 53 3b 20 4f 52 20 42 55 53    49 4e 45 53 53 20 49 4e 54 45 52 52 55 50 54 49  | .PROFITS;.OR.BUSINESS.INTERRUPTI | 
| 2a960 |  4f 4e 29 20 48 4f 57 45 56 45 52 20 43 41 55 53    45 44 20 41 4e 44 20 4f 4e 20 41 4e 59 20 54 48  | ON).HOWEVER.CAUSED.AND.ON.ANY.TH | 
| 2a980 |  45 4f 52 59 20 4f 46 0a 4c 49 41 42 49 4c 49 54    59 2c 20 57 48 45 54 48 45 52 20 49 4e 20 43 4f  | EORY.OF.LIABILITY,.WHETHER.IN.CO | 
| 2a9a0 |  4e 54 52 41 43 54 2c 20 53 54 52 49 43 54 20 4c    49 41 42 49 4c 49 54 59 2c 20 4f 52 20 54 4f 52  | NTRACT,.STRICT.LIABILITY,.OR.TOR | 
| 2a9c0 |  54 20 28 49 4e 43 4c 55 44 49 4e 47 0a 4e 45 47    4c 49 47 45 4e 43 45 20 4f 52 20 4f 54 48 45 52  | T.(INCLUDING.NEGLIGENCE.OR.OTHER | 
| 2a9e0 |  57 49 53 45 29 20 41 52 49 53 49 4e 47 20 49 4e    20 41 4e 59 20 57 41 59 20 4f 55 54 20 4f 46 20  | WISE).ARISING.IN.ANY.WAY.OUT.OF. | 
| 2aa00 |  54 48 45 20 55 53 45 20 4f 46 20 54 48 49 53 0a    53 4f 46 54 57 41 52 45 2c 20 45 56 45 4e 20 49  | THE.USE.OF.THIS.SOFTWARE,.EVEN.I | 
| 2aa20 |  46 20 41 44 56 49 53 45 44 20 4f 46 20 54 48 45    20 50 4f 53 53 49 42 49 4c 49 54 59 20 4f 46 20  | F.ADVISED.OF.THE.POSSIBILITY.OF. | 
| 2aa40 |  53 55 43 48 20 44 41 4d 41 47 45 2e 0a 0a 49 4e    46 4f 2d 44 49 52 2d 53 45 43 54 49 4f 4e 20 45  | SUCH.DAMAGE...INFO-DIR-SECTION.E | 
| 2aa60 |  6d 61 63 73 0a 53 54 41 52 54 2d 49 4e 46 4f 2d    44 49 52 2d 45 4e 54 52 59 0a 2a 20 4c 65 64 67  | macs.START-INFO-DIR-ENTRY.*.Ledg | 
| 2aa80 |  65 72 20 4d 6f 64 65 3a 20 28 6c 65 64 67 65 72    2d 6d 6f 64 65 29 2e 20 20 20 20 20 20 20 20 20  | er.Mode:.(ledger-mode).......... | 
| 2aaa0 |  20 20 43 6f 6d 6d 61 6e 64 2d 4c 69 6e 65 20 41    63 63 6f 75 6e 74 69 6e 67 0a 45 4e 44 2d 49 4e  | ..Command-Line.Accounting.END-IN | 
| 2aac0 |  46 4f 2d 44 49 52 2d 45 4e 54 52 59 0a 0a 1f 0a    46 69 6c 65 3a 20 6c 65 64 67 65 72 2d 6d 6f 64  | FO-DIR-ENTRY....File:.ledger-mod | 
| 2aae0 |  65 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 54    6f 70 2c 20 20 4e 65 78 74 3a 20 49 6e 74 72 6f  | e.info,..Node:.Top,..Next:.Intro | 
| 2ab00 |  64 75 63 74 69 6f 6e 20 74 6f 20 4c 65 64 67 65    72 2d 6d 6f 64 65 2c 20 20 50 72 65 76 3a 20 28  | duction.to.Ledger-mode,..Prev:.( | 
| 2ab20 |  64 69 72 29 2c 20 20 55 70 3a 20 28 64 69 72 29    0a 0a 4f 76 65 72 76 69 65 77 0a 2a 2a 2a 2a 2a  | dir),..Up:.(dir)..Overview.***** | 
| 2ab40 |  2a 2a 2a 0a 0a 4c 65 64 67 65 72 20 69 73 20 61    20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 61 63  | ***..Ledger.is.a.command.line.ac | 
| 2ab60 |  63 6f 75 6e 74 69 6e 67 20 74 6f 6f 6c 20 74 68    61 74 20 70 72 6f 76 69 64 65 73 20 64 6f 75 62  | counting.tool.that.provides.doub | 
| 2ab80 |  6c 65 2d 65 6e 74 72 79 0a 61 63 63 6f 75 6e 74    69 6e 67 20 62 61 73 65 64 20 6f 6e 20 61 20 74  | le-entry.accounting.based.on.a.t | 
| 2aba0 |  65 78 74 20 6a 6f 75 72 6e 61 6c 2e 20 20 49 74    20 70 72 6f 76 69 64 65 73 20 6e 6f 20 62 65 6c  | ext.journal...It.provides.no.bel | 
| 2abc0 |  6c 73 20 6f 72 20 77 68 69 73 74 6c 65 73 2c 0a    61 6e 64 20 72 65 74 75 72 6e 73 20 74 68 65 20  | ls.or.whistles,.and.returns.the. | 
| 2abe0 |  75 73 65 72 20 74 6f 20 74 68 65 20 64 61 79 73    20 62 65 66 6f 72 65 20 75 73 65 72 20 69 6e 74  | user.to.the.days.before.user.int | 
| 2ac00 |  65 72 66 61 63 65 73 20 77 65 72 65 20 65 76 65    6e 20 61 0a 74 77 69 6e 6b 6c 69 6e 67 20 69 6e  | erfaces.were.even.a.twinkling.in | 
| 2ac20 |  20 74 68 65 69 72 20 66 61 74 68 65 72 e2 80 99    73 20 43 52 54 2e 0a 0a 20 20 20 4c 65 64 67 65  | .their.father...s.CRT......Ledge | 
| 2ac40 |  72 2d 6d 6f 64 65 20 61 73 73 69 73 74 73 20 79    6f 75 20 69 6e 20 6d 61 69 6e 74 61 69 6e 69 6e  | r-mode.assists.you.in.maintainin | 
| 2ac60 |  67 20 69 6e 70 75 74 20 66 69 6c 65 73 20 66 6f    72 20 4c 65 64 67 65 72 2c 0a 72 75 6e 6e 69 6e  | g.input.files.for.Ledger,.runnin | 
| 2ac80 |  67 20 72 65 70 6f 72 74 73 20 61 6e 64 20 6d 75    63 68 20 6d 6f 72 65 2e 2e 2e 0a 0a 2a 20 4d 65  | g.reports.and.much.more.....*.Me | 
| 2aca0 |  6e 75 3a 0a 0a 2a 20 49 6e 74 72 6f 64 75 63 74    69 6f 6e 20 74 6f 20 4c 65 64 67 65 72 2d 6d 6f  | nu:..*.Introduction.to.Ledger-mo | 
| 2acc0 |  64 65 3a 3a 0a 2a 20 54 68 65 20 4c 65 64 67 65    72 20 42 75 66 66 65 72 3a 3a 0a 2a 20 54 68 65  | de::.*.The.Ledger.Buffer::.*.The | 
| 2ace0 |  20 52 65 63 6f 6e 63 69 6c 65 20 42 75 66 66 65    72 3a 3a 0a 2a 20 54 68 65 20 52 65 70 6f 72 74  | .Reconcile.Buffer::.*.The.Report | 
| 2ad00 |  20 42 75 66 66 65 72 3a 3a 0a 2a 20 53 63 68 65    64 75 6c 69 6e 67 20 54 72 61 6e 73 61 63 74 69  | .Buffer::.*.Scheduling.Transacti | 
| 2ad20 |  6f 6e 73 3a 3a 0a 2a 20 43 75 73 74 6f 6d 69 7a    69 6e 67 20 4c 65 64 67 65 72 2d 6d 6f 64 65 3a  | ons::.*.Customizing.Ledger-mode: | 
| 2ad40 |  3a 0a 2a 20 47 65 6e 65 72 61 74 69 6e 67 20 4c    65 64 67 65 72 20 52 65 67 72 65 73 73 69 6f 6e  | :.*.Generating.Ledger.Regression | 
| 2ad60 |  20 54 65 73 74 73 3a 3a 0a 2a 20 45 6d 62 65 64    64 69 6e 67 20 45 78 61 6d 70 6c 65 20 72 65 73  | .Tests::.*.Embedding.Example.res | 
| 2ad80 |  75 6c 74 73 20 69 6e 20 4c 65 64 67 65 72 20 44    6f 63 75 6d 65 6e 74 61 74 69 6f 6e 3a 3a 0a 2a  | ults.in.Ledger.Documentation::.* | 
| 2ada0 |  20 48 61 63 6b 69 6e 67 20 4c 65 64 67 65 72 2d    6d 6f 64 65 3a 3a 0a 2a 20 43 6f 6e 63 65 70 74  | .Hacking.Ledger-mode::.*.Concept | 
| 2adc0 |  20 49 6e 64 65 78 3a 3a 0a 2a 20 43 6f 6d 6d 61    6e 64 20 26 20 56 61 72 69 61 62 6c 65 20 49 6e  | .Index::.*.Command.&.Variable.In | 
| 2ade0 |  64 65 78 3a 3a 0a 2a 20 4b 65 79 73 74 72 6f 6b    65 20 49 6e 64 65 78 3a 3a 0a 0a 1f 0a 46 69 6c  | dex::.*.Keystroke.Index::....Fil | 
| 2ae00 |  65 3a 20 6c 65 64 67 65 72 2d 6d 6f 64 65 2e 69    6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 49 6e 74 72  | e:.ledger-mode.info,..Node:.Intr | 
| 2ae20 |  6f 64 75 63 74 69 6f 6e 20 74 6f 20 4c 65 64 67    65 72 2d 6d 6f 64 65 2c 20 20 4e 65 78 74 3a 20  | oduction.to.Ledger-mode,..Next:. | 
| 2ae40 |  54 68 65 20 4c 65 64 67 65 72 20 42 75 66 66 65    72 2c 20 20 50 72 65 76 3a 20 54 6f 70 2c 20 20  | The.Ledger.Buffer,..Prev:.Top,.. | 
| 2ae60 |  55 70 3a 20 54 6f 70 0a 0a 31 20 49 6e 74 72 6f    64 75 63 74 69 6f 6e 20 74 6f 20 4c 65 64 67 65  | Up:.Top..1.Introduction.to.Ledge | 
| 2ae80 |  72 2d 6d 6f 64 65 0a 2a 2a 2a 2a 2a 2a 2a 2a 2a    2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  | r-mode.************************* | 
| 2aea0 |  2a 2a 2a 2a 0a 0a 2a 20 4d 65 6e 75 3a 0a 0a 2a    20 51 75 69 63 6b 20 49 6e 73 74 61 6c 6c 61 74  | ****..*.Menu:..*.Quick.Installat | 
| 2aec0 |  69 6f 6e 3a 3a 0a 2a 20 4d 65 6e 75 73 3a 3a 0a    2a 20 51 75 69 63 6b 20 44 65 6d 6f 3a 3a 0a 0a  | ion::.*.Menus::.*.Quick.Demo::.. | 
| 2aee0 |  1f 0a 46 69 6c 65 3a 20 6c 65 64 67 65 72 2d 6d    6f 64 65 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a  | ..File:.ledger-mode.info,..Node: | 
| 2af00 |  20 51 75 69 63 6b 20 49 6e 73 74 61 6c 6c 61 74    69 6f 6e 2c 20 20 4e 65 78 74 3a 20 4d 65 6e 75  | .Quick.Installation,..Next:.Menu | 
| 2af20 |  73 2c 20 20 50 72 65 76 3a 20 49 6e 74 72 6f 64    75 63 74 69 6f 6e 20 74 6f 20 4c 65 64 67 65 72  | s,..Prev:.Introduction.to.Ledger | 
| 2af40 |  2d 6d 6f 64 65 2c 20 20 55 70 3a 20 49 6e 74 72    6f 64 75 63 74 69 6f 6e 20 74 6f 20 4c 65 64 67  | -mode,..Up:.Introduction.to.Ledg | 
| 2af60 |  65 72 2d 6d 6f 64 65 0a 0a 31 2e 31 20 51 75 69    63 6b 20 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 0a  | er-mode..1.1.Quick.Installation. | 
| 2af80 |  3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d    3d 3d 3d 3d 3d 3d 0a 0a 54 68 65 20 45 6d 61 63  | ======================..The.Emac | 
| 2afa0 |  73 20 6c 69 73 70 20 73 6f 75 72 63 65 20 66 6f    72 20 4c 65 64 67 65 72 2d 6d 6f 64 65 20 69 73  | s.lisp.source.for.Ledger-mode.is | 
| 2afc0 |  20 69 6e 63 6c 75 64 65 64 20 77 69 74 68 20 74    68 65 20 73 6f 75 72 63 65 0a 64 69 73 74 72 69  | .included.with.the.source.distri | 
| 2afe0 |  62 75 74 69 6f 6e 20 6f 66 20 4c 65 64 67 65 72    2e 20 20 49 74 20 69 73 20 65 6e 74 69 72 65 6c  | bution.of.Ledger...It.is.entirel | 
| 2b000 |  79 20 69 6e 63 6c 75 64 65 64 20 69 6e 20 74 68    65 20 e2 80 98 6c 69 73 70 e2 80 99 0a 73 75 62  | y.included.in.the....lisp....sub | 
| 2b020 |  64 69 72 65 63 74 6f 72 79 2e 20 20 54 6f 20 75    73 65 20 4c 65 64 67 65 72 2d 6d 6f 64 65 2c 20  | directory...To.use.Ledger-mode,. | 
| 2b040 |  69 6e 63 6c 75 64 65 20 74 68 65 20 66 6f 6c 6c    6f 77 69 6e 67 20 69 6e 20 79 6f 75 72 20 45 6d  | include.the.following.in.your.Em | 
| 2b060 |  61 63 73 0a 69 6e 69 74 69 61 6c 69 7a 61 74 69    6f 6e 20 66 69 6c 65 20 28 e2 80 98 7e 2f 2e 65  | acs.initialization.file.(...~/.e | 
| 2b080 |  6d 61 63 73 e2 80 99 2c 20 e2 80 98 7e 2f 2e 65    6d 61 63 73 2e 64 2f 69 6e 69 74 2e 65 6c e2 80  | macs...,....~/.emacs.d/init.el.. | 
| 2b0a0 |  99 2c 20 6f 72 0a e2 80 98 7e 2f 2e 41 71 75 61    6d 61 63 73 2f 50 72 65 66 65 72 65 6e 63 65 73  | .,.or....~/.Aquamacs/Preferences | 
| 2b0c0 |  2e 65 6c e2 80 99 29 2e 0a 0a 20 20 20 20 20 28    61 75 74 6f 6c 6f 61 64 20 27 6c 65 64 67 65 72  | .el...)........(autoload.'ledger | 
| 2b0e0 |  2d 6d 6f 64 65 20 22 6c 65 64 67 65 72 2d 6d 6f    64 65 22 20 22 41 20 6d 61 6a 6f 72 20 6d 6f 64  | -mode."ledger-mode"."A.major.mod | 
| 2b100 |  65 20 66 6f 72 20 4c 65 64 67 65 72 22 20 74 29    0a 20 20 20 20 20 28 61 64 64 2d 74 6f 2d 6c 69  | e.for.Ledger".t)......(add-to-li | 
| 2b120 |  73 74 20 27 6c 6f 61 64 2d 70 61 74 68 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | st.'load-path................... | 
| 2b140 |  28 65 78 70 61 6e 64 2d 66 69 6c 65 2d 6e 61 6d    65 20 22 2f 70 61 74 68 2f 74 6f 2f 6c 65 64 67  | (expand-file-name."/path/to/ledg | 
| 2b160 |  65 72 2f 73 6f 75 72 63 65 2f 6c 69 73 70 2f 22    29 29 0a 20 20 20 20 20 28 61 64 64 2d 74 6f 2d  | er/source/lisp/"))......(add-to- | 
| 2b180 |  6c 69 73 74 20 27 61 75 74 6f 2d 6d 6f 64 65 2d    61 6c 69 73 74 20 27 28 22 5c 5c 2e 6c 65 64 67  | list.'auto-mode-alist.'("\\.ledg | 
| 2b1a0 |  65 72 24 22 20 2e 20 6c 65 64 67 65 72 2d 6d 6f    64 65 29 29 0a 0a 20 20 20 54 68 69 73 20 73 65  | er$"...ledger-mode)).....This.se | 
| 2b1c0 |  74 73 20 75 70 20 45 6d 61 63 73 20 74 6f 20 61    75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 72 65 63  | ts.up.Emacs.to.automatically.rec | 
| 2b1e0 |  6f 67 6e 69 7a 65 20 66 69 6c 65 73 20 74 68 61    74 20 65 6e 64 20 77 69 74 68 0a e2 80 98 2e 6c  | ognize.files.that.end.with.....l | 
| 2b200 |  65 64 67 65 72 e2 80 99 20 61 6e 64 20 73 74 61    72 74 20 4c 65 64 67 65 72 2d 6d 6f 64 65 2e 20  | edger....and.start.Ledger-mode.. | 
| 2b220 |  20 4e 6f 74 68 69 6e 67 20 65 6c 73 65 20 73 68    6f 75 6c 64 20 62 65 20 72 65 71 75 69 72 65 64  | .Nothing.else.should.be.required | 
| 2b240 |  20 61 73 0a 6c 6f 6e 67 20 61 73 20 74 68 65 20    6c 65 64 67 65 72 20 63 6f 6d 6d 61 6e 64 20 6c  | .as.long.as.the.ledger.command.l | 
| 2b260 |  69 6e 65 20 75 74 69 6c 69 74 79 20 69 73 20 70    72 6f 70 65 72 6c 79 20 69 6e 73 74 61 6c 6c 65  | ine.utility.is.properly.installe | 
| 2b280 |  64 2e 0a 0a 1f 0a 46 69 6c 65 3a 20 6c 65 64 67    65 72 2d 6d 6f 64 65 2e 69 6e 66 6f 2c 20 20 4e  | d.....File:.ledger-mode.info,..N | 
| 2b2a0 |  6f 64 65 3a 20 4d 65 6e 75 73 2c 20 20 4e 65 78    74 3a 20 51 75 69 63 6b 20 44 65 6d 6f 2c 20 20  | ode:.Menus,..Next:.Quick.Demo,.. | 
| 2b2c0 |  50 72 65 76 3a 20 51 75 69 63 6b 20 49 6e 73 74    61 6c 6c 61 74 69 6f 6e 2c 20 20 55 70 3a 20 49  | Prev:.Quick.Installation,..Up:.I | 
| 2b2e0 |  6e 74 72 6f 64 75 63 74 69 6f 6e 20 74 6f 20 4c    65 64 67 65 72 2d 6d 6f 64 65 0a 0a 31 2e 32 20  | ntroduction.to.Ledger-mode..1.2. | 
| 2b300 |  4d 65 6e 75 73 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a    0a 54 68 65 20 76 61 73 74 20 6d 61 6a 6f 72 69  | Menus.=========..The.vast.majori | 
| 2b320 |  74 79 20 6f 66 20 4c 65 64 67 65 72 2d 6d 6f 64    65 20 66 75 6e 63 74 69 6f 6e 61 6c 69 74 79 20  | ty.of.Ledger-mode.functionality. | 
| 2b340 |  69 73 20 61 76 61 69 6c 61 62 6c 65 20 66 72 6f    6d 20 74 68 65 0a 45 6d 61 63 73 20 6d 65 6e 75  | is.available.from.the.Emacs.menu | 
| 2b360 |  20 73 79 73 74 65 6d 2e 20 20 54 68 65 20 6b 65    79 73 74 72 6f 6b 65 73 20 61 72 65 20 73 68 6f  | .system...The.keystrokes.are.sho | 
| 2b380 |  77 6e 20 69 6e 20 74 68 65 20 6d 65 6e 75 20 74    6f 20 68 65 6c 70 20 79 6f 75 0a 6c 65 61 72 6e  | wn.in.the.menu.to.help.you.learn | 
| 2b3a0 |  20 74 68 65 20 66 61 73 74 65 72 20 6b 65 79 62    6f 61 72 64 20 6d 65 74 68 6f 64 73 2e 0a 0a 1f  | .the.faster.keyboard.methods.... | 
| 2b3c0 |  0a 46 69 6c 65 3a 20 6c 65 64 67 65 72 2d 6d 6f    64 65 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20  | .File:.ledger-mode.info,..Node:. | 
| 2b3e0 |  51 75 69 63 6b 20 44 65 6d 6f 2c 20 20 50 72 65    76 3a 20 4d 65 6e 75 73 2c 20 20 55 70 3a 20 49  | Quick.Demo,..Prev:.Menus,..Up:.I | 
| 2b400 |  6e 74 72 6f 64 75 63 74 69 6f 6e 20 74 6f 20 4c    65 64 67 65 72 2d 6d 6f 64 65 0a 0a 31 2e 33 20  | ntroduction.to.Ledger-mode..1.3. | 
| 2b420 |  51 75 69 63 6b 20 44 65 6d 6f 0a 3d 3d 3d 3d 3d    3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 0a 4c 6f 61 64 20  | Quick.Demo.==============..Load. | 
| 2b440 |  74 68 65 20 64 65 6d 6f 20 66 69 6c 65 20 e2 80    98 64 65 6d 6f 2e 6c 65 64 67 65 72 e2 80 99 20  | the.demo.file....demo.ledger.... | 
| 2b460 |  66 72 6f 6d 20 74 68 65 20 4c 65 64 67 65 72 20    73 6f 75 72 63 65 20 e2 80 98 74 65 73 74 2f 69  | from.the.Ledger.source....test/i | 
| 2b480 |  6e 70 75 74 e2 80 99 0a 64 69 72 65 63 74 6f 72    79 2e 20 20 54 68 65 20 6c 65 64 67 65 72 20 77  | nput....directory...The.ledger.w | 
| 2b4a0 |  69 6c 6c 20 62 65 20 6c 6f 61 64 65 64 20 61 6e    64 20 66 6f 6e 74 20 68 69 67 68 6c 69 67 68 74  | ill.be.loaded.and.font.highlight | 
| 2b4c0 |  65 64 2e 20 20 41 74 20 74 68 69 73 0a 70 6f 69    6e 74 20 79 6f 75 20 63 6f 75 6c 64 20 6d 61 6e  | ed...At.this.point.you.could.man | 
| 2b4e0 |  75 61 6c 6c 79 20 65 64 69 74 20 74 72 61 6e 73    61 63 74 69 6f 6e 73 20 61 6e 64 20 72 75 6e 20  | ually.edit.transactions.and.run. | 
| 2b500 |  4c 65 64 67 65 72 20 66 72 6f 6d 20 61 0a 63 6f    6e 76 65 6e 69 65 6e 74 20 63 6f 6d 6d 61 6e 64  | Ledger.from.a.convenient.command | 
| 2b520 |  20 6c 69 6e 65 2e 0a 0a 2a 20 4d 65 6e 75 3a 0a    0a 2a 20 51 75 69 63 6b 20 41 64 64 3a 3a 0a 2a  | .line...*.Menu:..*.Quick.Add::.* | 
| 2b540 |  20 52 65 63 6f 6e 63 69 6c 69 61 74 69 6f 6e 3a    3a 0a 2a 20 52 65 70 6f 72 74 73 3a 3a 0a 2a 20  | .Reconciliation::.*.Reports::.*. | 
| 2b560 |  4e 61 72 72 6f 77 69 6e 67 3a 3a 0a 0a 1f 0a 46    69 6c 65 3a 20 6c 65 64 67 65 72 2d 6d 6f 64 65  | Narrowing::....File:.ledger-mode | 
| 2b580 |  2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 51 75    69 63 6b 20 41 64 64 2c 20 20 4e 65 78 74 3a 20  | .info,..Node:.Quick.Add,..Next:. | 
| 2b5a0 |  52 65 63 6f 6e 63 69 6c 69 61 74 69 6f 6e 2c 20    20 50 72 65 76 3a 20 51 75 69 63 6b 20 44 65 6d  | Reconciliation,..Prev:.Quick.Dem | 
| 2b5c0 |  6f 2c 20 20 55 70 3a 20 51 75 69 63 6b 20 44 65    6d 6f 0a 0a 31 2e 33 2e 31 20 51 75 69 63 6b 20  | o,..Up:.Quick.Demo..1.3.1.Quick. | 
| 2b5e0 |  41 64 64 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 0a 0a 41 73 20 73 69 6d 70 6c 65 20 61  | Add.---------------..As.simple.a | 
| 2b600 |  73 20 74 68 65 20 4c 65 64 67 65 72 20 74 72 61    6e 73 61 63 74 69 6f 6e 20 66 6f 72 6d 61 74 20  | s.the.Ledger.transaction.format. | 
| 2b620 |  69 73 2c 20 69 74 20 63 61 6e 20 73 74 69 6c 6c    20 62 65 20 64 61 75 6e 74 69 6e 67 0a 74 6f 20  | is,.it.can.still.be.daunting.to. | 
| 2b640 |  61 64 64 20 6d 61 6e 79 20 74 72 61 6e 73 61 63    74 69 6f 6e 73 20 6d 61 6e 75 61 6c 6c 79 2e 20  | add.many.transactions.manually.. | 
| 2b660 |  20 4c 65 64 67 65 72 20 70 72 6f 76 69 64 65 73    20 74 77 6f 20 77 61 79 73 20 74 6f 20 61 64 64  | .Ledger.provides.two.ways.to.add | 
| 2b680 |  0a 74 72 61 6e 73 61 63 74 69 6f 6e 73 20 77 69    74 68 20 6d 69 6e 69 6d 61 6c 20 74 79 70 69 6e  | .transactions.with.minimal.typin | 
| 2b6a0 |  67 2e 20 20 42 6f 74 68 20 61 72 65 20 62 61 73    65 64 20 6f 6e 20 74 68 65 20 69 64 65 61 20 74  | g...Both.are.based.on.the.idea.t | 
| 2b6c0 |  68 61 74 20 6d 6f 73 74 0a 74 72 61 6e 73 61 63    74 69 6f 6e 73 20 61 72 65 20 72 65 70 65 74 69  | hat.most.transactions.are.repeti | 
| 2b6e0 |  74 69 6f 6e 73 20 6f 66 20 65 61 72 6c 69 65 72    20 74 72 61 6e 73 61 63 74 69 6f 6e 73 2e 0a 0a  | tions.of.earlier.transactions... | 
| 2b700 |  20 20 20 49 6e 20 74 68 65 20 e2 80 98 64 65 6d    6f 2e 6c 65 64 67 65 72 e2 80 99 20 62 75 66 66  | ...In.the....demo.ledger....buff | 
| 2b720 |  65 72 20 65 6e 74 65 72 20 61 20 64 61 74 65 20    75 73 69 6e 67 20 74 68 65 20 63 6f 72 72 65 63  | er.enter.a.date.using.the.correc | 
| 2b740 |  74 20 66 6f 72 6d 61 74 2e 0a 54 68 65 6e 20 74    79 70 65 20 74 68 65 20 66 69 72 73 74 20 66 65  | t.format..Then.type.the.first.fe | 
| 2b760 |  77 20 63 68 61 72 61 63 74 65 72 73 20 6f 66 20    61 6e 6f 74 68 65 72 20 70 61 79 65 65 20 69 6e  | w.characters.of.another.payee.in | 
| 2b780 |  20 74 68 65 20 e2 80 98 64 65 6d 6f 2e 6c 65 64    67 65 72 e2 80 99 0a 62 75 66 66 65 72 2e 20 20  | .the....demo.ledger....buffer... | 
| 2b7a0 |  54 79 70 65 20 e2 80 98 43 2d 63 20 54 41 42 e2    80 99 2e 20 20 4c 65 64 67 65 72 2d 6d 6f 64 65  | Type....C-c.TAB......Ledger-mode | 
| 2b7c0 |  20 77 69 6c 6c 20 73 65 61 72 63 68 20 66 6f 72    20 61 20 50 61 79 65 65 20 74 68 61 74 20 68 61  | .will.search.for.a.Payee.that.ha | 
| 2b7e0 |  73 0a 74 68 65 20 73 61 6d 65 20 62 65 67 69 6e    6e 69 6e 67 20 61 6e 64 20 63 6f 70 79 20 74 68  | s.the.same.beginning.and.copy.th | 
| 2b800 |  65 20 72 65 73 74 20 6f 66 20 74 68 65 20 74 72    61 6e 73 61 63 74 69 6f 6e 20 74 6f 20 79 6f 75  | e.rest.of.the.transaction.to.you | 
| 2b820 |  20 6e 65 77 0a 65 6e 74 72 79 2e 0a 0a 20 20 20    41 64 64 69 74 69 6f 6e 61 6c 6c 79 20 79 6f 75  | .new.entry......Additionally.you | 
| 2b840 |  20 63 61 6e 20 75 73 65 20 74 68 65 20 6c 65 64    67 65 72 20 e2 80 98 78 61 63 74 e2 80 99 20 63  | .can.use.the.ledger....xact....c | 
| 2b860 |  6f 6d 6d 61 6e 64 2c 20 62 79 20 65 69 74 68 65    72 20 74 79 70 69 6e 67 0a e2 80 98 43 2d 63 20  | ommand,.by.either.typing....C-c. | 
| 2b880 |  43 2d 61 e2 80 99 20 6f 72 20 75 73 69 6e 67 20    e2 80 98 41 64 64 20 54 72 61 6e 73 61 63 74 69  | C-a....or.using....Add.Transacti | 
| 2b8a0 |  6f 6e e2 80 99 20 6d 65 6e 75 20 65 6e 74 72 79    2e 20 20 54 68 65 6e 20 74 79 70 69 6e 67 20 61  | on....menu.entry...Then.typing.a | 
| 2b8c0 |  20 63 6c 6f 73 65 0a 6d 61 74 63 68 20 74 6f 20    74 68 65 20 70 61 79 65 65 2e 20 20 4c 65 64 67  | .close.match.to.the.payee...Ledg | 
| 2b8e0 |  65 72 2d 6d 6f 64 65 20 77 69 6c 6c 20 63 61 6c    6c 20 e2 80 98 6c 65 64 67 65 72 20 78 61 63 74  | er-mode.will.call....ledger.xact | 
| 2b900 |  e2 80 99 20 77 69 74 68 20 74 68 65 20 64 61 74    61 0a 79 6f 75 20 65 6e 74 65 72 20 61 6e 64 20  | ....with.the.data.you.enter.and. | 
| 2b920 |  70 6c 61 63 65 20 74 68 65 20 74 72 61 6e 73 61    63 74 69 6f 6e 20 69 6e 20 74 68 65 20 70 72 6f  | place.the.transaction.in.the.pro | 
| 2b940 |  70 65 72 20 63 68 72 6f 6e 6f 6c 6f 67 69 63 61    6c 20 70 6c 61 63 65 20 69 6e 0a 74 68 65 20 6c  | per.chronological.place.in.the.l | 
| 2b960 |  65 64 67 65 72 2e 20 20 54 68 65 20 64 61 74 65    20 66 6f 72 6d 61 74 20 63 61 6e 20 62 65 20 63  | edger...The.date.format.can.be.c | 
| 2b980 |  68 61 6e 67 65 64 20 62 79 20 6d 6f 64 69 66 79    69 6e 67 0a e2 80 98 6c 65 64 67 65 72 2d 64 65  | hanged.by.modifying....ledger-de | 
| 2b9a0 |  66 61 75 6c 74 2d 64 61 74 65 2d 66 6f 72 6d 61    74 e2 80 99 2e 0a 0a 1f 0a 46 69 6c 65 3a 20 6c  | fault-date-format........File:.l | 
| 2b9c0 |  65 64 67 65 72 2d 6d 6f 64 65 2e 69 6e 66 6f 2c    20 20 4e 6f 64 65 3a 20 52 65 63 6f 6e 63 69 6c  | edger-mode.info,..Node:.Reconcil | 
| 2b9e0 |  69 61 74 69 6f 6e 2c 20 20 4e 65 78 74 3a 20 52    65 70 6f 72 74 73 2c 20 20 50 72 65 76 3a 20 51  | iation,..Next:.Reports,..Prev:.Q | 
| 2ba00 |  75 69 63 6b 20 41 64 64 2c 20 20 55 70 3a 20 51    75 69 63 6b 20 44 65 6d 6f 0a 0a 31 2e 33 2e 32  | uick.Add,..Up:.Quick.Demo..1.3.2 | 
| 2ba20 |  20 52 65 63 6f 6e 63 69 6c 69 61 74 69 6f 6e 0a    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  | .Reconciliation.---------------- | 
| 2ba40 |  2d 2d 2d 2d 0a 0a 54 68 65 20 62 69 67 67 65 73    74 20 74 61 73 6b 20 6f 66 20 6d 61 69 6e 74 61  | ----..The.biggest.task.of.mainta | 
| 2ba60 |  69 6e 69 6e 67 20 61 20 6c 65 64 67 65 72 20 69    73 20 65 6e 73 75 72 69 6e 67 20 74 68 61 74 20  | ining.a.ledger.is.ensuring.that. | 
| 2ba80 |  69 74 20 6d 61 74 63 68 65 73 20 74 68 65 0a 6f    75 74 73 69 64 65 20 77 6f 72 6c 64 2e 20 20 54  | it.matches.the.outside.world...T | 
| 2baa0 |  68 69 73 20 70 72 6f 63 65 73 73 20 69 73 20 63    61 6c 6c 65 64 20 72 65 63 6f 6e 63 69 6c 69 61  | his.process.is.called.reconcilia | 
| 2bac0 |  74 69 6f 6e 20 28 2a 6e 6f 74 65 20 42 61 73 69    63 73 20 6f 66 0a 52 65 63 6f 6e 63 69 6c 69 61  | tion.(*note.Basics.of.Reconcilia | 
| 2bae0 |  74 69 6f 6e 3a 3a 29 20 61 6e 64 20 63 61 6e 20    62 65 20 71 75 69 74 65 20 6f 6e 65 72 6f 75 73  | tion::).and.can.be.quite.onerous | 
| 2bb00 |  2e 20 20 4c 65 64 67 65 72 2d 6d 6f 64 65 20 61    74 74 65 6d 70 74 73 20 74 6f 0a 6d 61 6b 65 20  | ...Ledger-mode.attempts.to.make. | 
| 2bb20 |  69 74 20 61 73 20 70 61 69 6e 6c 65 73 73 20 61    73 20 70 6f 73 73 69 62 6c 65 2e 0a 0a 20 20 20  | it.as.painless.as.possible...... | 
| 2bb40 |  49 6e 20 74 68 65 20 e2 80 98 64 65 6d 6f 2e 6c    65 64 67 65 72 e2 80 99 20 62 75 66 66 65 72 20  | In.the....demo.ledger....buffer. | 
| 2bb60 |  74 79 70 65 20 e2 80 98 43 2d 63 20 43 2d 72 e2    80 99 2e 20 20 49 66 20 63 75 72 73 6f 72 20 69  | type....C-c.C-r......If.cursor.i | 
| 2bb80 |  73 20 6f 6e 20 61 6e 0a 61 63 63 6f 75 6e 74 2c    20 4c 65 64 67 65 72 2d 6d 6f 64 65 20 77 69 6c  | s.on.an.account,.Ledger-mode.wil | 
| 2bba0 |  6c 20 70 72 6f 70 6f 73 65 20 74 68 69 73 20 61    63 63 6f 75 6e 74 2c 20 6f 72 20 69 6e 20 74 68  | l.propose.this.account,.or.in.th | 
| 2bbc0 |  65 20 4d 69 6e 69 62 75 66 66 65 72 2c 0a 77 69    6c 6c 20 70 72 6f 6d 70 74 20 66 6f 72 20 61 6e  | e.Minibuffer,.will.prompt.for.an | 
| 2bbe0 |  20 61 63 63 6f 75 6e 74 20 74 6f 20 72 65 63 6f    6e 63 69 6c 65 2e 20 20 48 69 74 20 e2 80 98 52  | .account.to.reconcile...Hit....R | 
| 2bc00 |  45 54 e2 80 99 20 69 66 20 79 6f 75 20 61 72 65    20 68 61 70 70 79 0a 77 69 74 68 20 70 72 6f 70  | ET....if.you.are.happy.with.prop | 
| 2bc20 |  6f 73 65 64 20 61 63 63 6f 75 6e 74 2c 20 6f 72    20 65 6e 74 65 72 20 e2 80 98 43 68 65 63 6b 69  | osed.account,.or.enter....Checki | 
| 2bc40 |  6e 67 e2 80 99 20 61 73 20 65 78 61 6d 70 6c 65    2e 20 20 45 6d 61 63 73 20 77 69 6c 6c 20 74 68  | ng....as.example...Emacs.will.th | 
| 2bc60 |  65 6e 0a 70 72 6f 6d 70 74 20 66 6f 72 20 61 20    74 61 72 67 65 74 20 76 61 6c 75 65 2e 20 20 54  | en.prompt.for.a.target.value...T | 
| 2bc80 |  68 65 20 74 61 72 67 65 74 20 76 61 6c 75 65 20    69 73 20 74 68 65 20 61 6d 6f 75 6e 74 20 79 6f  | he.target.value.is.the.amount.yo | 
| 2bca0 |  75 20 77 61 6e 74 20 74 68 65 0a 63 6c 65 61 72    65 64 20 74 72 61 6e 73 61 63 74 69 6f 6e 73 20  | u.want.the.cleared.transactions. | 
| 2bcc0 |  69 6e 20 74 68 65 20 62 75 66 66 65 72 20 74 6f    20 74 6f 74 61 6c 2e 20 20 4e 6f 72 6d 61 6c 6c  | in.the.buffer.to.total...Normall | 
| 2bce0 |  79 20 74 68 69 73 20 77 6f 75 6c 64 20 62 65 20    74 68 65 0a 65 6e 64 69 6e 67 20 76 61 6c 75 65  | y.this.would.be.the.ending.value | 
| 2bd00 |  20 66 72 6f 6d 20 79 6f 75 72 20 62 61 6e 6b 20    73 74 61 74 65 6d 65 6e 74 2c 20 6f 72 20 74 68  | .from.your.bank.statement,.or.th | 
| 2bd20 |  65 20 6c 61 74 65 73 74 20 76 61 6c 75 65 20 69    6e 20 79 6f 75 72 0a 6f 6e 2d 6c 69 6e 65 20 74  | e.latest.value.in.your.on-line.t | 
| 2bd40 |  72 61 6e 73 61 63 74 69 6f 6e 20 73 75 6d 6d 61    72 79 2e 20 20 45 6e 74 65 72 20 e2 80 98 31 37  | ransaction.summary...Enter....17 | 
| 2bd60 |  31 30 e2 80 99 2e 20 20 4e 6f 74 65 20 74 68 61    74 20 4c 65 64 67 65 72 2d 6d 6f 64 65 0a 61 73  | 10......Note.that.Ledger-mode.as | 
| 2bd80 |  73 75 6d 65 73 20 79 6f 75 20 61 72 65 20 75 73    69 6e 67 20 e2 80 98 24 e2 80 99 20 28 55 53 44  | sumes.you.are.using....$....(USD | 
| 2bda0 |  29 20 61 73 20 79 6f 75 72 20 64 65 66 61 75 6c    74 20 63 6f 6d 6d 6f 64 69 74 79 2c 20 74 68 69  | ).as.your.default.commodity,.thi | 
| 2bdc0 |  73 20 63 61 6e 20 62 65 0a 65 61 73 69 6c 79 20    63 68 61 6e 67 65 64 20 69 6e 20 74 68 65 20 63  | s.can.be.easily.changed.in.the.c | 
| 2bde0 |  75 73 74 6f 6d 69 7a 61 74 69 6f 6e 20 76 61 72    69 61 62 6c 65 73 2e 20 20 2a 4e 6f 74 65 20 4c  | ustomization.variables...*Note.L | 
| 2be00 |  65 64 67 65 72 2d 6d 6f 64 65 0a 43 75 73 74 6f    6d 69 7a 61 74 69 6f 6e 3a 3a 2e 0a 0a 20 20 20  | edger-mode.Customization::...... | 
| 2be20 |  59 6f 75 20 6e 6f 77 20 73 65 65 20 61 20 6c 69    73 74 20 6f 66 20 75 6e 63 6c 65 61 72 65 64 20  | You.now.see.a.list.of.uncleared. | 
| 2be40 |  74 72 61 6e 73 61 63 74 69 6f 6e 73 20 69 6e 20    61 20 62 75 66 66 65 72 20 62 65 6c 6f 77 20 74  | transactions.in.a.buffer.below.t | 
| 2be60 |  68 65 0a e2 80 98 64 65 6d 6f 2e 6c 65 64 67 65    72 e2 80 99 20 62 75 66 66 65 72 2e 20 20 54 6f  | he....demo.ledger....buffer...To | 
| 2be80 |  75 63 68 69 6e 67 20 74 68 65 20 e2 80 98 53 50    43 e2 80 99 20 62 61 72 20 77 69 6c 6c 20 6d 61  | uching.the....SPC....bar.will.ma | 
| 2bea0 |  72 6b 20 61 20 74 72 61 6e 73 61 63 74 69 6f 6e    20 61 73 0a 70 65 6e 64 69 6e 67 20 61 6e 64 20  | rk.a.transaction.as.pending.and. | 
| 2bec0 |  64 69 73 70 6c 61 79 20 74 68 65 20 63 75 72 72    65 6e 74 20 63 6c 65 61 72 65 64 20 28 61 6e 64  | display.the.current.cleared.(and | 
| 2bee0 |  20 70 65 6e 64 69 6e 67 29 20 62 61 6c 61 6e 63    65 2c 20 61 6c 6f 6e 67 0a 77 69 74 68 20 74 68  | .pending).balance,.along.with.th | 
| 2bf00 |  65 20 64 69 66 66 65 72 65 6e 63 65 20 72 65 6d    61 69 6e 69 6e 67 20 74 6f 20 6d 65 65 74 20 79  | e.difference.remaining.to.meet.y | 
| 2bf20 |  6f 75 72 20 74 61 72 67 65 74 2e 20 20 43 6c 65    61 72 20 74 68 65 20 66 69 72 73 74 0a 74 68 72  | our.target...Clear.the.first.thr | 
| 2bf40 |  65 65 20 74 72 61 6e 73 61 63 74 69 6f 6e 73 2c    20 61 6e 64 20 79 6f 75 20 77 69 6c 6c 20 73 65  | ee.transactions,.and.you.will.se | 
| 2bf60 |  65 20 74 68 65 20 64 69 66 66 65 72 65 6e 63 65    20 74 6f 20 74 61 72 67 65 74 20 72 65 61 63 68  | e.the.difference.to.target.reach | 
| 2bf80 |  0a e2 80 98 24 30 e2 80 99 2e 20 20 45 6e 64 20    74 68 65 20 72 65 63 6f 6e 63 69 6c 69 61 74 69  | ....$0......End.the.reconciliati | 
| 2bfa0 |  6f 6e 20 62 79 20 74 79 70 69 6e 67 20 e2 80 98    43 2d 63 20 43 2d 63 e2 80 99 2e 20 20 54 68 69  | on.by.typing....C-c.C-c......Thi | 
| 2bfc0 |  73 20 73 61 76 65 73 20 74 68 65 0a e2 80 98 64    65 6d 6f 2e 6c 65 64 67 65 72 e2 80 99 20 62 75  | s.saves.the....demo.ledger....bu | 
| 2bfe0 |  66 66 65 72 20 61 6e 64 20 6d 61 72 6b 73 20 74    68 65 20 74 72 61 6e 73 61 63 74 69 6f 6e 73 20  | ffer.and.marks.the.transactions. | 
| 2c000 |  61 6e 64 20 66 69 6e 61 6c 6c 79 20 63 6c 65 61    72 65 64 2e 0a 54 79 70 65 20 e2 80 98 71 e2 80  | and.finally.cleared..Type....q.. | 
| 2c020 |  99 20 74 6f 20 63 6c 6f 73 65 20 6f 75 74 20 74    68 65 20 72 65 63 6f 6e 63 69 6c 69 61 74 69 6f  | ..to.close.out.the.reconciliatio | 
| 2c040 |  6e 20 62 75 66 66 65 72 2e 0a 0a 1f 0a 46 69 6c    65 3a 20 6c 65 64 67 65 72 2d 6d 6f 64 65 2e 69  | n.buffer.....File:.ledger-mode.i | 
| 2c060 |  6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 52 65 70 6f    72 74 73 2c 20 20 4e 65 78 74 3a 20 4e 61 72 72  | nfo,..Node:.Reports,..Next:.Narr | 
| 2c080 |  6f 77 69 6e 67 2c 20 20 50 72 65 76 3a 20 52 65    63 6f 6e 63 69 6c 69 61 74 69 6f 6e 2c 20 20 55  | owing,..Prev:.Reconciliation,..U | 
| 2c0a0 |  70 3a 20 51 75 69 63 6b 20 44 65 6d 6f 0a 0a 31    2e 33 2e 33 20 52 65 70 6f 72 74 73 0a 2d 2d 2d  | p:.Quick.Demo..1.3.3.Reports.--- | 
| 2c0c0 |  2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 54 68 65 20    72 65 61 6c 20 70 6f 77 65 72 20 6f 66 20 4c 65  | ----------..The.real.power.of.Le | 
| 2c0e0 |  64 67 65 72 20 69 73 20 69 6e 20 69 74 73 20 72    65 70 6f 72 74 69 6e 67 20 63 61 70 61 62 69 6c  | dger.is.in.its.reporting.capabil | 
| 2c100 |  69 74 69 65 73 2e 20 20 52 65 70 6f 72 74 73 20    63 61 6e 0a 62 65 20 72 75 6e 20 61 6e 64 20 64  | ities...Reports.can.be.run.and.d | 
| 2c120 |  69 73 70 6c 61 79 65 64 20 69 6e 20 61 20 73 65    70 61 72 61 74 65 20 45 6d 61 63 73 20 62 75 66  | isplayed.in.a.separate.Emacs.buf | 
| 2c140 |  66 65 72 2e 20 20 49 6e 20 74 68 65 20 e2 80 98    64 65 6d 6f 2e 6c 65 64 67 65 72 e2 80 99 0a 62  | fer...In.the....demo.ledger....b | 
| 2c160 |  75 66 66 65 72 2c 20 74 79 70 65 20 e2 80 98 43    2d 63 20 43 2d 6f 20 43 2d 72 e2 80 99 2e 20 20  | uffer,.type....C-c.C-o.C-r...... | 
| 2c180 |  49 6e 20 74 68 65 20 4d 69 6e 69 62 75 66 66 65    72 20 45 6d 61 63 73 20 77 69 6c 6c 20 70 72 6f  | In.the.Minibuffer.Emacs.will.pro | 
| 2c1a0 |  6d 70 74 20 66 6f 72 20 61 0a 72 65 70 6f 72 74    20 6e 61 6d 65 2e 20 20 54 68 65 72 65 20 61 72  | mpt.for.a.report.name...There.ar | 
| 2c1c0 |  65 20 61 20 66 65 77 20 62 75 69 6c 74 2d 69 6e    20 72 65 70 6f 72 74 73 2c 20 61 6e 64 20 79 6f  | e.a.few.built-in.reports,.and.yo | 
| 2c1e0 |  75 20 63 61 6e 20 61 64 64 20 61 6e 79 0a 72 65    70 6f 72 74 20 79 6f 75 20 6e 65 65 64 20 2a 4e  | u.can.add.any.report.you.need.*N | 
| 2c200 |  6f 74 65 20 41 64 64 69 6e 67 20 61 6e 64 20 45    64 69 74 69 6e 67 20 52 65 70 6f 72 74 73 3a 3a  | ote.Adding.and.Editing.Reports:: | 
| 2c220 |  2e 0a 0a 20 20 20 49 6e 20 74 68 65 20 4d 69 6e    69 62 75 66 66 65 72 20 74 79 70 65 20 e2 80 98  | ......In.the.Minibuffer.type.... | 
| 2c240 |  61 63 63 6f 75 6e 74 e2 80 99 2e 20 20 57 68 65    6e 20 70 72 6f 6d 70 74 65 64 20 66 6f 72 20 61  | account......When.prompted.for.a | 
| 2c260 |  6e 20 61 63 63 6f 75 6e 74 20 74 79 70 65 0a e2    80 98 63 68 65 63 6b 69 6e 67 e2 80 99 2e 20 20  | n.account.type....checking...... | 
| 2c280 |  49 6e 20 61 20 62 75 66 66 65 72 20 6e 61 6d 65    64 20 e2 80 98 2a 4c 65 64 67 65 72 20 52 65 70  | In.a.buffer.named....*Ledger.Rep | 
| 2c2a0 |  6f 72 74 2a e2 80 99 2c 20 79 6f 75 20 77 69 6c    6c 20 73 65 65 20 61 20 4c 65 64 67 65 72 0a 72  | ort*...,.you.will.see.a.Ledger.r | 
| 2c2c0 |  65 67 69 73 74 65 72 20 72 65 70 6f 72 74 2e 20    20 59 6f 75 20 63 61 6e 20 6d 6f 76 65 20 61 72  | egister.report...You.can.move.ar | 
| 2c2e0 |  6f 75 6e 64 20 74 68 65 20 62 75 66 66 65 72 2c    20 77 69 74 68 20 74 68 65 20 70 6f 69 6e 74 20  | ound.the.buffer,.with.the.point. | 
| 2c300 |  6f 6e 20 61 0a 74 72 61 6e 73 61 63 74 69 6f 6e    2c 20 74 79 70 65 20 e2 80 98 52 45 54 e2 80 99  | on.a.transaction,.type....RET... | 
| 2c320 |  2e 20 20 4c 65 64 67 65 72 2d 6d 6f 64 65 20 77    69 6c 6c 20 74 61 6b 65 20 79 6f 75 20 64 69 72  | ...Ledger-mode.will.take.you.dir | 
| 2c340 |  65 63 74 6c 79 20 74 6f 20 74 68 61 74 0a 74 72    61 6e 73 61 63 74 69 6f 6e 20 69 6e 20 74 68 65  | ectly.to.that.transaction.in.the | 
| 2c360 |  20 e2 80 98 64 65 6d 6f 2e 6c 65 64 67 65 72 e2    80 99 20 62 75 66 66 65 72 2e 0a 0a 20 20 20 41  | ....demo.ledger....buffer......A | 
| 2c380 |  6e 6f 74 68 65 72 20 62 75 69 6c 74 2d 69 6e 20    72 65 70 6f 72 74 20 69 73 20 74 68 65 20 62 61  | nother.built-in.report.is.the.ba | 
| 2c3a0 |  6c 61 6e 63 65 20 72 65 70 6f 72 74 2e 20 20 49    6e 20 74 68 65 20 e2 80 98 64 65 6d 6f 2e 6c 65  | lance.report...In.the....demo.le | 
| 2c3c0 |  64 67 65 72 e2 80 99 0a 62 75 66 66 65 72 2c 20    74 79 70 65 20 e2 80 98 43 2d 63 20 43 2d 6f 20  | dger....buffer,.type....C-c.C-o. | 
| 2c3e0 |  43 2d 72 e2 80 99 2e 20 20 57 68 65 6e 20 70 72    6f 6d 70 74 65 64 20 66 6f 72 20 61 20 72 65 70  | C-r......When.prompted.for.a.rep | 
| 2c400 |  6f 72 74 20 74 6f 20 72 75 6e 2c 20 74 79 70 65    0a e2 80 98 62 61 6c e2 80 99 2c 20 61 6e 64 20  | ort.to.run,.type....bal...,.and. | 
| 2c420 |  61 20 62 61 6c 61 6e 63 65 20 72 65 70 6f 72 74    20 6f 66 20 61 6c 6c 20 61 63 63 6f 75 6e 74 73  | a.balance.report.of.all.accounts | 
| 2c440 |  20 77 69 6c 6c 20 62 65 20 73 68 6f 77 6e 2e 0a    0a 1f 0a 46 69 6c 65 3a 20 6c 65 64 67 65 72 2d  | .will.be.shown.....File:.ledger- | 
| 2c460 |  6d 6f 64 65 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65    3a 20 4e 61 72 72 6f 77 69 6e 67 2c 20 20 50 72  | mode.info,..Node:.Narrowing,..Pr | 
| 2c480 |  65 76 3a 20 52 65 70 6f 72 74 73 2c 20 20 55 70    3a 20 51 75 69 63 6b 20 44 65 6d 6f 0a 0a 31 2e  | ev:.Reports,..Up:.Quick.Demo..1. | 
| 2c4a0 |  33 2e 34 20 4e 61 72 72 6f 77 69 6e 67 0a 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 41  | 3.4.Narrowing.---------------..A | 
| 2c4c0 |  20 6c 65 64 67 65 72 20 66 69 6c 65 20 63 61 6e    20 67 65 74 20 76 65 72 79 20 6c 61 72 67 65 2e  | .ledger.file.can.get.very.large. | 
| 2c4e0 |  20 20 49 74 20 63 61 6e 20 62 65 20 68 65 6c 70    66 75 6c 20 74 6f 20 63 6f 6c 6c 61 70 73 65 20  | ..It.can.be.helpful.to.collapse. | 
| 2c500 |  74 68 65 0a 62 75 66 66 65 72 20 74 6f 20 64 69    73 70 6c 61 79 20 6f 6e 6c 79 20 74 68 65 20 74  | the.buffer.to.display.only.the.t | 
| 2c520 |  72 61 6e 73 61 63 74 69 6f 6e 73 20 79 6f 75 20    61 72 65 20 69 6e 74 65 72 65 73 74 65 64 20 69  | ransactions.you.are.interested.i | 
| 2c540 |  6e 2e 0a 4c 65 64 67 65 72 2d 6d 6f 64 65 20 63    6f 70 69 65 73 20 74 68 65 20 e2 80 98 6f 63 63  | n..Ledger-mode.copies.the....occ | 
| 2c560 |  75 72 e2 80 99 20 6d 6f 64 65 20 66 75 6e 63 74    69 6f 6e 61 6c 69 74 79 2e 20 20 54 79 70 69 6e  | ur....mode.functionality...Typin | 
| 2c580 |  67 20 e2 80 98 43 2d 63 20 43 2d 66 e2 80 99 20    61 6e 64 0a 65 6e 74 65 72 69 6e 67 20 61 6e 79  | g....C-c.C-f....and.entering.any | 
| 2c5a0 |  20 72 65 67 65 78 20 69 6e 20 74 68 65 20 4d 69    6e 69 62 75 66 66 65 72 20 77 69 6c 6c 20 73 68  | .regex.in.the.Minibuffer.will.sh | 
| 2c5c0 |  6f 77 20 6f 6e 6c 79 20 74 72 61 6e 73 61 63 74    69 6f 6e 73 20 74 68 61 74 0a 6d 61 74 63 68 20  | ow.only.transactions.that.match. | 
| 2c5e0 |  74 68 65 20 72 65 67 65 78 2e 20 20 54 68 65 20    72 65 67 65 78 20 63 61 6e 20 62 65 20 6f 6e 20  | the.regex...The.regex.can.be.on. | 
| 2c600 |  61 6e 79 20 66 69 65 6c 64 2c 20 6f 72 20 61 6d    6f 75 6e 74 2e 20 20 55 73 65 20 e2 80 98 43 2d  | any.field,.or.amount...Use....C- | 
| 2c620 |  63 0a 43 2d 67 e2 80 99 20 61 66 74 65 72 20 65    64 69 74 69 6e 67 20 74 72 61 6e 73 61 63 74 69  | c.C-g....after.editing.transacti | 
| 2c640 |  6f 6e 73 20 74 6f 20 72 65 2d 61 70 70 6c 79 20    74 68 65 20 63 75 72 72 65 6e 74 20 72 65 67 65  | ons.to.re-apply.the.current.rege | 
| 2c660 |  78 2e 20 20 43 61 6e 63 65 6c 0a 74 68 65 20 6e    61 72 72 6f 77 69 6e 67 20 62 79 20 74 79 70 69  | x...Cancel.the.narrowing.by.typi | 
| 2c680 |  6e 67 20 e2 80 98 43 2d 63 20 43 2d 66 e2 80 99    20 61 67 61 69 6e 2e 0a 0a 1f 0a 46 69 6c 65 3a  | ng....C-c.C-f....again.....File: | 
| 2c6a0 |  20 6c 65 64 67 65 72 2d 6d 6f 64 65 2e 69 6e 66    6f 2c 20 20 4e 6f 64 65 3a 20 54 68 65 20 4c 65  | .ledger-mode.info,..Node:.The.Le | 
| 2c6c0 |  64 67 65 72 20 42 75 66 66 65 72 2c 20 20 4e 65    78 74 3a 20 54 68 65 20 52 65 63 6f 6e 63 69 6c  | dger.Buffer,..Next:.The.Reconcil | 
| 2c6e0 |  65 20 42 75 66 66 65 72 2c 20 20 50 72 65 76 3a    20 49 6e 74 72 6f 64 75 63 74 69 6f 6e 20 74 6f  | e.Buffer,..Prev:.Introduction.to | 
| 2c700 |  20 4c 65 64 67 65 72 2d 6d 6f 64 65 2c 20 20 55    70 3a 20 54 6f 70 0a 0a 32 20 54 68 65 20 4c 65  | .Ledger-mode,..Up:.Top..2.The.Le | 
| 2c720 |  64 67 65 72 20 42 75 66 66 65 72 0a 2a 2a 2a 2a    2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 0a  | dger.Buffer.*******************. | 
| 2c740 |  0a 2a 20 4d 65 6e 75 3a 0a 0a 2a 20 4e 61 76 69    67 61 74 69 6e 67 20 54 72 61 6e 73 61 63 74 69  | .*.Menu:..*.Navigating.Transacti | 
| 2c760 |  6f 6e 73 3a 3a 0a 2a 20 41 64 64 69 6e 67 20 54    72 61 6e 73 61 63 74 69 6f 6e 73 3a 3a 0a 2a 20  | ons::.*.Adding.Transactions::.*. | 
| 2c780 |  43 6f 70 79 69 6e 67 20 54 72 61 6e 73 61 63 74    69 6f 6e 73 3a 3a 0a 2a 20 45 64 69 74 69 6e 67  | Copying.Transactions::.*.Editing | 
| 2c7a0 |  20 41 6d 6f 75 6e 74 73 3a 3a 0a 2a 20 4d 61 72    6b 69 6e 67 20 54 72 61 6e 73 61 63 74 69 6f 6e  | .Amounts::.*.Marking.Transaction | 
| 2c7c0 |  73 3a 3a 0a 2a 20 46 6f 72 6d 61 74 74 69 6e 67    20 54 72 61 6e 73 61 63 74 69 6f 6e 73 3a 3a 0a  | s::.*.Formatting.Transactions::. | 
| 2c7e0 |  2a 20 44 65 6c 65 74 69 6e 67 20 54 72 61 6e 73    61 63 74 69 6f 6e 73 3a 3a 0a 2a 20 53 6f 72 74  | *.Deleting.Transactions::.*.Sort | 
| 2c800 |  69 6e 67 20 54 72 61 6e 73 61 63 74 69 6f 6e 73    3a 3a 0a 2a 20 4e 61 72 72 6f 77 69 6e 67 20 54  | ing.Transactions::.*.Narrowing.T | 
| 2c820 |  72 61 6e 73 61 63 74 69 6f 6e 73 3a 3a 0a 0a 1f    0a 46 69 6c 65 3a 20 6c 65 64 67 65 72 2d 6d 6f  | ransactions::....File:.ledger-mo | 
| 2c840 |  64 65 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20    4e 61 76 69 67 61 74 69 6e 67 20 54 72 61 6e 73  | de.info,..Node:.Navigating.Trans | 
| 2c860 |  61 63 74 69 6f 6e 73 2c 20 20 4e 65 78 74 3a 20    41 64 64 69 6e 67 20 54 72 61 6e 73 61 63 74 69  | actions,..Next:.Adding.Transacti | 
| 2c880 |  6f 6e 73 2c 20 20 50 72 65 76 3a 20 54 68 65 20    4c 65 64 67 65 72 20 42 75 66 66 65 72 2c 20 20  | ons,..Prev:.The.Ledger.Buffer,.. | 
| 2c8a0 |  55 70 3a 20 54 68 65 20 4c 65 64 67 65 72 20 42    75 66 66 65 72 0a 0a 32 2e 31 20 4e 61 76 69 67  | Up:.The.Ledger.Buffer..2.1.Navig | 
| 2c8c0 |  61 74 69 6e 67 20 54 72 61 6e 73 61 63 74 69 6f    6e 73 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  | ating.Transactions.============= | 
| 2c8e0 |  3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 0a    49 6e 20 61 64 64 69 74 69 6f 6e 20 74 6f 20 74  | ==============..In.addition.to.t | 
| 2c900 |  68 65 20 75 73 75 61 6c 20 45 6d 61 63 73 20 6e    61 76 69 67 61 74 69 6f 6e 20 63 6f 6d 6d 61 6e  | he.usual.Emacs.navigation.comman | 
| 2c920 |  64 73 2c 20 6c 65 64 67 65 72 2d 6d 6f 64 65 20    6f 66 66 65 72 73 0a 73 65 76 65 72 61 6c 20 61  | ds,.ledger-mode.offers.several.a | 
| 2c940 |  64 64 69 74 69 6f 6e 61 6c 20 63 6f 6d 6d 61 6e    64 73 20 74 6f 20 65 61 73 65 20 6e 61 76 69 67  | dditional.commands.to.ease.navig | 
| 2c960 |  61 74 69 6f 6e 2e 20 20 e2 80 98 4d 2d 6e e2 80    99 20 61 6e 64 20 e2 80 98 4d 2d 70 e2 80 99 0a  | ation......M-n....and....M-p.... | 
| 2c980 |  6e 61 76 69 67 61 74 65 20 62 65 74 77 65 65 6e    20 6e 65 78 74 20 61 6e 64 20 70 72 65 76 69 6f  | navigate.between.next.and.previo | 
| 2c9a0 |  75 73 20 78 61 63 74 73 20 6f 72 20 64 69 72 65    63 74 69 76 65 73 2e 0a 0a 20 20 20 41 64 64 69  | us.xacts.or.directives......Addi | 
| 2c9c0 |  74 69 6f 6e 61 6c 6c 79 2c 20 e2 80 98 4d 2d 78    20 6c 65 64 67 65 72 2d 6e 61 76 69 67 61 74 65  | tionally,....M-x.ledger-navigate | 
| 2c9e0 |  2d 6e 65 78 74 2d 75 6e 63 6c 65 61 72 65 64 e2    80 99 20 61 6e 64 20 e2 80 98 4d 2d 78 0a 6c 65  | -next-uncleared....and....M-x.le | 
| 2ca00 |  64 67 65 72 2d 6e 61 76 69 67 61 74 65 2d 70 72    65 76 69 6f 75 73 2d 75 6e 63 6c 65 61 72 65 64  | dger-navigate-previous-uncleared | 
| 2ca20 |  e2 80 99 20 6e 61 76 69 67 61 74 65 20 74 6f 20    74 68 65 20 6e 65 78 74 20 61 6e 64 20 70 72 65  | ....navigate.to.the.next.and.pre | 
| 2ca40 |  76 69 6f 75 73 0a 75 6e 63 6c 65 61 72 65 64 20    74 72 61 6e 73 61 63 74 69 6f 6e 73 2e 0a 0a 1f  | vious.uncleared.transactions.... | 
| 2ca60 |  0a 46 69 6c 65 3a 20 6c 65 64 67 65 72 2d 6d 6f    64 65 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20  | .File:.ledger-mode.info,..Node:. | 
| 2ca80 |  41 64 64 69 6e 67 20 54 72 61 6e 73 61 63 74 69    6f 6e 73 2c 20 20 4e 65 78 74 3a 20 43 6f 70 79  | Adding.Transactions,..Next:.Copy | 
| 2caa0 |  69 6e 67 20 54 72 61 6e 73 61 63 74 69 6f 6e 73    2c 20 20 50 72 65 76 3a 20 4e 61 76 69 67 61 74  | ing.Transactions,..Prev:.Navigat | 
| 2cac0 |  69 6e 67 20 54 72 61 6e 73 61 63 74 69 6f 6e 73    2c 20 20 55 70 3a 20 54 68 65 20 4c 65 64 67 65  | ing.Transactions,..Up:.The.Ledge | 
| 2cae0 |  72 20 42 75 66 66 65 72 0a 0a 32 2e 32 20 41 64    64 69 6e 67 20 54 72 61 6e 73 61 63 74 69 6f 6e  | r.Buffer..2.2.Adding.Transaction | 
| 2cb00 |  73 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d    3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 0a 42 65 79 6f 6e  | s.=======================..Beyon | 
| 2cb20 |  64 20 74 68 65 20 74 77 6f 20 77 61 79 73 20 6f    66 20 71 75 69 63 6b 6c 79 20 61 64 64 69 6e 67  | d.the.two.ways.of.quickly.adding | 
| 2cb40 |  20 74 72 61 6e 73 61 63 74 69 6f 6e 73 20 28 2a    6e 6f 74 65 20 51 75 69 63 6b 20 41 64 64 3a 3a  | .transactions.(*note.Quick.Add:: | 
| 2cb60 |  29 0a 4c 65 64 67 65 72 2d 6d 6f 64 65 20 61 73    73 69 73 74 73 20 79 6f 75 20 62 79 20 70 72 6f  | ).Ledger-mode.assists.you.by.pro | 
| 2cb80 |  76 69 64 69 6e 67 20 72 6f 62 75 73 74 20 e2 80    98 54 41 42 e2 80 99 20 63 6f 6d 70 6c 65 74 69  | viding.robust....TAB....completi | 
| 2cba0 |  6f 6e 20 66 6f 72 20 70 61 79 65 65 73 0a 61 6e    64 20 61 63 63 6f 75 6e 74 73 2e 20 20 4c 65 64  | on.for.payees.and.accounts...Led | 
| 2cbc0 |  67 65 72 2d 6d 6f 64 65 20 77 69 6c 6c 20 73 63    61 6e 20 74 68 65 20 65 78 69 73 74 69 6e 67 20  | ger-mode.will.scan.the.existing. | 
| 2cbe0 |  62 75 66 66 65 72 20 66 6f 72 20 70 61 79 65 65    73 20 61 6e 64 0a 61 63 63 6f 75 6e 74 73 2e 20  | buffer.for.payees.and.accounts.. | 
| 2cc00 |  20 49 6e 63 6c 75 64 65 64 20 66 69 6c 65 73 20    61 72 65 20 6e 6f 74 20 63 75 72 72 65 6e 74 6c  | .Included.files.are.not.currentl | 
| 2cc20 |  79 20 69 6e 63 6c 75 64 65 64 20 69 6e 20 74 68    65 20 63 6f 6d 70 6c 65 74 69 6f 6e 0a 73 63 61  | y.included.in.the.completion.sca | 
| 2cc40 |  6e 2e 20 20 4c 65 64 67 65 72 2d 6d 6f 64 65 20    72 65 73 70 65 63 74 73 20 45 6d 61 63 73 e2 80  | n...Ledger-mode.respects.Emacs.. | 
| 2cc60 |  99 73 20 76 61 72 69 61 62 6c 65 73 20 74 68 61    74 20 67 6f 76 65 72 6e 20 e2 80 98 54 41 42 e2  | .s.variables.that.govern....TAB. | 
| 2cc80 |  80 99 0a 63 6f 6d 70 6c 65 74 69 6f 6e 2c 20 73    65 65 20 65 73 70 65 63 69 61 6c 6c 79 20 e2 80  | ...completion,.see.especially... | 
| 2cca0 |  98 74 61 62 2d 61 6c 77 61 79 73 2d 69 6e 64 65    6e 74 e2 80 99 2e 0a 0a 20 20 20 54 6f 20 63 79  | .tab-always-indent.........To.cy | 
| 2ccc0 |  63 6c 65 20 62 65 74 77 65 65 6e 20 63 6f 6d 70    6c 65 74 69 6f 6e 73 20 77 68 65 6e 20 68 69 74  | cle.between.completions.when.hit | 
| 2cce0 |  74 69 6e 67 20 e2 80 98 54 41 42 e2 80 99 20 6d    75 6c 74 69 70 6c 65 20 74 69 6d 65 73 2c 20 79  | ting....TAB....multiple.times,.y | 
| 2cd00 |  6f 75 0a 63 61 6e 20 61 64 6a 75 73 74 20 74 68    65 20 73 74 61 6e 64 61 72 64 20 63 6f 6d 70 6c  | ou.can.adjust.the.standard.compl | 
| 2cd20 |  65 74 69 6f 6e 20 63 6f 6e 66 69 67 75 72 61 74    69 6f 6e 20 6c 69 6b 65 20 74 68 69 73 3a 0a 0a  | etion.configuration.like.this:.. | 
| 2cd40 |  20 20 20 20 20 28 61 64 64 2d 68 6f 6f 6b 20 27    6c 65 64 67 65 72 2d 6d 6f 64 65 2d 68 6f 6f 6b  | .....(add-hook.'ledger-mode-hook | 
| 2cd60 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 6c 61 6d 62 64 61 20 28 29 0a 20 20 20 20 20  | ................(lambda.()...... | 
| 2cd80 |  20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74    71 2d 6c 6f 63 61 6c 20 74 61 62 2d 61 6c 77 61  | ............(setq-local.tab-alwa | 
| 2cda0 |  79 73 2d 69 6e 64 65 6e 74 20 27 63 6f 6d 70 6c    65 74 65 29 0a 20 20 20 20 20 20 20 20 20 20 20  | ys-indent.'complete)............ | 
| 2cdc0 |  20 20 20 20 20 20 28 73 65 74 71 2d 6c 6f 63 61    6c 20 63 6f 6d 70 6c 65 74 69 6f 6e 2d 63 79 63  | ......(setq-local.completion-cyc | 
| 2cde0 |  6c 65 2d 74 68 72 65 73 68 6f 6c 64 20 74 29 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | le-threshold.t)................. | 
| 2ce00 |  20 28 73 65 74 71 2d 6c 6f 63 61 6c 20 6c 65 64    67 65 72 2d 63 6f 6d 70 6c 65 74 65 2d 69 6e 2d  | .(setq-local.ledger-complete-in- | 
| 2ce20 |  73 74 65 70 73 20 74 29 29 29 0a 0a 20 20 20 4c    65 64 67 65 72 2d 6d 6f 64 65 20 77 69 6c 6c 20  | steps.t))).....Ledger-mode.will. | 
| 2ce40 |  68 65 6c 70 20 79 6f 75 20 6b 65 65 70 20 79 6f    75 72 20 61 6d 6f 75 6e 74 73 20 61 6c 69 67 6e  | help.you.keep.your.amounts.align | 
| 2ce60 |  65 64 2e 20 20 57 68 65 6e 20 69 6e 64 65 6e 74    69 6e 67 0a 6f 72 20 63 6f 6d 70 6c 65 74 69 6e  | ed...When.indenting.or.completin | 
| 2ce80 |  67 2c 20 4c 65 64 67 65 72 2d 6d 6f 64 65 20 77    69 6c 6c 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c  | g,.Ledger-mode.will.automaticall | 
| 2cea0 |  79 20 70 6c 61 63 65 20 61 6e 79 20 61 6d 6f 75    6e 74 73 20 73 75 63 68 0a 74 68 61 74 20 74 68  | y.place.any.amounts.such.that.th | 
| 2cec0 |  65 69 72 20 6c 61 73 74 20 64 69 67 69 74 20 69    73 20 61 6c 69 67 6e 65 64 20 74 6f 20 74 68 65  | eir.last.digit.is.aligned.to.the | 
| 2cee0 |  20 63 6f 6c 75 6d 6e 20 73 70 65 63 69 66 69 65    64 20 62 79 0a e2 80 98 6c 65 64 67 65 72 2d 70  | .column.specified.by....ledger-p | 
| 2cf00 |  6f 73 74 2d 61 6d 6f 75 6e 74 2d 61 6c 69 67 6e    6d 65 6e 74 2d 63 6f 6c 75 6d 6e e2 80 99 2c 20  | ost-amount-alignment-column...,. | 
| 2cf20 |  77 68 69 63 68 20 64 65 66 61 75 6c 74 73 20 74    6f 20 e2 80 98 35 32 e2 80 99 2e 20 20 2a 4e 6f  | which.defaults.to....52......*No | 
| 2cf40 |  74 65 0a 4c 65 64 67 65 72 20 50 6f 73 74 20 43    75 73 74 6f 6d 69 7a 61 74 69 6f 6e 20 47 72 6f  | te.Ledger.Post.Customization.Gro | 
| 2cf60 |  75 70 3a 3a 2e 0a 0a 20 20 20 54 6f 20 70 72 65    76 65 6e 74 20 74 68 65 20 61 75 74 6f 6d 61 74  | up::......To.prevent.the.automat | 
| 2cf80 |  69 63 20 72 65 61 6c 69 67 6e 6d 65 6e 74 20 6f    66 20 61 6d 6f 75 6e 74 73 2c 20 64 69 73 61 62  | ic.realignment.of.amounts,.disab | 
| 2cfa0 |  6c 65 0a e2 80 98 6c 65 64 67 65 72 2d 70 6f 73    74 2d 61 75 74 6f 2d 61 6c 69 67 6e e2 80 99 2e  | le....ledger-post-auto-align.... | 
| 2cfc0 |  20 20 2a 4e 6f 74 65 20 4c 65 64 67 65 72 20 50    6f 73 74 20 43 75 73 74 6f 6d 69 7a 61 74 69 6f  | ..*Note.Ledger.Post.Customizatio | 
| 2cfe0 |  6e 20 47 72 6f 75 70 3a 3a 2e 0a 0a 2a 20 4d 65    6e 75 3a 0a 0a 2a 20 53 65 74 74 69 6e 67 20 61  | n.Group::...*.Menu:..*.Setting.a | 
| 2d000 |  20 54 72 61 6e 73 61 63 74 69 6f 6e 73 20 45 66    66 65 63 74 69 76 65 20 44 61 74 65 3a 3a 0a 2a  | .Transactions.Effective.Date::.* | 
| 2d020 |  20 51 75 69 63 6b 20 42 61 6c 61 6e 63 65 20 44    69 73 70 6c 61 79 3a 3a 0a 0a 1f 0a 46 69 6c 65  | .Quick.Balance.Display::....File | 
| 2d040 |  3a 20 6c 65 64 67 65 72 2d 6d 6f 64 65 2e 69 6e    66 6f 2c 20 20 4e 6f 64 65 3a 20 53 65 74 74 69  | :.ledger-mode.info,..Node:.Setti | 
| 2d060 |  6e 67 20 61 20 54 72 61 6e 73 61 63 74 69 6f 6e    73 20 45 66 66 65 63 74 69 76 65 20 44 61 74 65  | ng.a.Transactions.Effective.Date | 
| 2d080 |  2c 20 20 4e 65 78 74 3a 20 51 75 69 63 6b 20 42    61 6c 61 6e 63 65 20 44 69 73 70 6c 61 79 2c 20  | ,..Next:.Quick.Balance.Display,. | 
| 2d0a0 |  20 50 72 65 76 3a 20 41 64 64 69 6e 67 20 54 72    61 6e 73 61 63 74 69 6f 6e 73 2c 20 20 55 70 3a  | .Prev:.Adding.Transactions,..Up: | 
| 2d0c0 |  20 41 64 64 69 6e 67 20 54 72 61 6e 73 61 63 74    69 6f 6e 73 0a 0a 32 2e 32 2e 31 20 53 65 74 74  | .Adding.Transactions..2.2.1.Sett | 
| 2d0e0 |  69 6e 67 20 61 20 54 72 61 6e 73 61 63 74 69 6f    6e 73 20 45 66 66 65 63 74 69 76 65 20 44 61 74  | ing.a.Transactions.Effective.Dat | 
| 2d100 |  65 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  | e.------------------------------ | 
| 2d120 |  2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 4c    65 64 67 65 72 20 70 72 6f 76 69 64 65 73 20 66  | -------------..Ledger.provides.f | 
| 2d140 |  6f 72 20 61 64 64 69 6e 67 20 69 6e 66 6f 72 6d    61 74 69 6f 6e 20 74 6f 20 61 20 74 72 61 6e 73  | or.adding.information.to.a.trans | 
| 2d160 |  61 63 74 69 6f 6e 20 74 68 61 74 20 61 64 64 20    64 65 74 61 69 6c 73 0a 74 6f 20 74 68 65 20 64  | action.that.add.details.to.the.d | 
| 2d180 |  61 74 65 73 2e 20 20 46 6f 72 20 65 78 61 6d 70    6c 65 2c 20 79 6f 75 20 63 61 6e 20 73 70 65 63  | ates...For.example,.you.can.spec | 
| 2d1a0 |  69 66 79 20 77 68 65 6e 20 74 68 65 20 74 72 61    6e 73 61 63 74 69 6f 6e 20 77 61 73 0a 65 6e 74  | ify.when.the.transaction.was.ent | 
| 2d1c0 |  65 72 65 64 2c 20 77 68 65 6e 20 74 68 65 20 74    72 61 6e 73 61 63 74 69 6f 6e 20 77 61 73 20 63  | ered,.when.the.transaction.was.c | 
| 2d1e0 |  6c 65 61 72 65 64 2c 20 6f 72 20 77 68 65 6e 20    69 6e 64 69 76 69 64 75 61 6c 20 70 6f 73 74 69  | leared,.or.when.individual.posti | 
| 2d200 |  6e 67 73 0a 77 65 72 65 20 63 6c 65 61 72 65 64    2e 20 20 4c 65 64 67 65 72 2d 6d 6f 64 65 20 72  | ngs.were.cleared...Ledger-mode.r | 
| 2d220 |  65 66 65 72 73 20 74 6f 20 74 68 65 73 65 20 61    64 64 69 74 69 6f 6e 61 6c 20 64 61 74 65 73 20  | efers.to.these.additional.dates. | 
| 2d240 |  61 73 0a 5f 65 66 66 65 63 74 69 76 65 5f 20 64    61 74 65 73 2e 20 20 54 6f 20 73 65 74 20 74 68  | as._effective_.dates...To.set.th | 
| 2d260 |  65 20 65 66 66 65 63 74 69 76 65 20 64 61 74 65    20 6f 66 20 61 20 74 72 61 6e 73 61 63 74 69 6f  | e.effective.date.of.a.transactio | 
| 2d280 |  6e 2c 20 70 6c 61 63 65 0a 74 68 65 20 70 6f 69    6e 74 20 69 6e 20 74 68 65 20 66 69 72 73 74 20  | n,.place.the.point.in.the.first. | 
| 2d2a0 |  6c 69 6e 65 20 6f 66 20 61 20 74 72 61 6e 73 61    63 74 69 6f 6e 20 61 6e 64 20 74 79 70 65 20 e2  | line.of.a.transaction.and.type.. | 
| 2d2c0 |  80 98 43 2d 63 20 43 2d 74 e2 80 99 2e 20 20 54    68 65 0a 65 66 66 65 63 74 69 76 65 20 64 61 74  | ..C-c.C-t......The.effective.dat | 
| 2d2e0 |  65 20 77 69 6c 6c 20 62 65 20 61 64 64 65 64 20    74 6f 20 74 68 65 20 74 72 61 6e 73 61 63 74 69  | e.will.be.added.to.the.transacti | 
| 2d300 |  6f 6e 2e 20 20 54 6f 20 73 65 74 20 74 68 65 20    65 66 66 65 63 74 69 76 65 0a 64 61 74 65 20 66  | on...To.set.the.effective.date.f | 
| 2d320 |  6f 72 20 61 6e 20 69 6e 64 69 76 69 64 75 61 6c    20 70 6f 73 74 69 6e 67 2c 20 70 6c 61 63 65 20  | or.an.individual.posting,.place. | 
| 2d340 |  70 6f 69 6e 74 20 69 6e 20 74 68 65 20 70 6f 73    74 69 6e 67 20 61 6e 64 20 74 79 70 65 20 e2 80  | point.in.the.posting.and.type... | 
| 2d360 |  98 43 2d 63 0a 43 2d 74 e2 80 99 20 61 6e 64 20    74 68 65 20 65 66 66 65 63 74 69 76 65 20 64 61  | .C-c.C-t....and.the.effective.da | 
| 2d380 |  74 65 20 66 6f 72 20 74 68 61 74 20 70 6f 73 74    69 6e 67 20 77 69 6c 6c 20 62 65 20 61 64 64 65  | te.for.that.posting.will.be.adde | 
| 2d3a0 |  64 20 61 74 20 74 68 65 20 65 6e 64 20 6f 66 0a    74 68 65 20 70 6f 73 74 69 6e 67 2e 0a 0a 1f 0a  | d.at.the.end.of.the.posting..... | 
| 2d3c0 |  46 69 6c 65 3a 20 6c 65 64 67 65 72 2d 6d 6f 64    65 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 51  | File:.ledger-mode.info,..Node:.Q | 
| 2d3e0 |  75 69 63 6b 20 42 61 6c 61 6e 63 65 20 44 69 73    70 6c 61 79 2c 20 20 50 72 65 76 3a 20 53 65 74  | uick.Balance.Display,..Prev:.Set | 
| 2d400 |  74 69 6e 67 20 61 20 54 72 61 6e 73 61 63 74 69    6f 6e 73 20 45 66 66 65 63 74 69 76 65 20 44 61  | ting.a.Transactions.Effective.Da | 
| 2d420 |  74 65 2c 20 20 55 70 3a 20 41 64 64 69 6e 67 20    54 72 61 6e 73 61 63 74 69 6f 6e 73 0a 0a 32 2e  | te,..Up:.Adding.Transactions..2. | 
| 2d440 |  32 2e 32 20 51 75 69 63 6b 20 42 61 6c 61 6e 63    65 20 44 69 73 70 6c 61 79 0a 2d 2d 2d 2d 2d 2d  | 2.2.Quick.Balance.Display.------ | 
| 2d460 |  2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 0a 0a 59 6f 75 20 77 69 6c 6c 20  | ---------------------..You.will. | 
| 2d480 |  6f 66 74 65 6e 20 77 61 6e 74 20 74 6f 20 71 75    69 63 6b 6c 79 20 63 68 65 63 6b 20 74 68 65 20  | often.want.to.quickly.check.the. | 
| 2d4a0 |  62 61 6c 61 6e 63 65 20 6f 66 20 61 6e 20 61 63    63 6f 75 6e 74 2e 20 20 54 68 65 0a 65 61 73 69  | balance.of.an.account...The.easi | 
| 2d4c0 |  65 73 74 20 77 61 79 20 69 73 20 74 6f 20 70 6f    73 69 74 69 6f 6e 20 70 6f 69 6e 74 20 6f 6e 20  | est.way.is.to.position.point.on. | 
| 2d4e0 |  74 68 65 20 61 63 63 6f 75 6e 74 20 79 6f 75 20    61 72 65 20 69 6e 74 65 72 65 73 74 65 64 20 69  | the.account.you.are.interested.i | 
| 2d500 |  6e 2c 0a 61 6e 64 20 74 79 70 65 20 e2 80 98 43    2d 63 20 43 2d 70 e2 80 99 2e 20 20 54 68 65 20  | n,.and.type....C-c.C-p......The. | 
| 2d520 |  4d 69 6e 69 62 75 66 66 65 72 20 77 69 6c 6c 20    61 73 6b 20 79 6f 75 20 74 6f 20 76 65 72 69 66  | Minibuffer.will.ask.you.to.verif | 
| 2d540 |  79 20 74 68 65 20 6e 61 6d 65 20 6f 66 0a 74 68    65 20 61 63 63 6f 75 6e 74 20 79 6f 75 20 77 61  | y.the.name.of.the.account.you.wa | 
| 2d560 |  6e 74 2c 20 69 66 20 69 74 20 69 73 20 61 6c 72    65 61 64 79 20 63 6f 72 72 65 63 74 20 68 69 74  | nt,.if.it.is.already.correct.hit | 
| 2d580 |  20 e2 80 98 52 45 54 e2 80 99 2c 20 74 68 65 6e    20 74 68 65 0a 62 61 6c 61 6e 63 65 20 6f 66 20  | ....RET...,.then.the.balance.of. | 
| 2d5a0 |  74 68 65 20 61 63 63 6f 75 6e 74 20 77 69 6c 6c    20 62 65 20 64 69 73 70 6c 61 79 65 64 20 69 6e  | the.account.will.be.displayed.in | 
| 2d5c0 |  20 74 68 65 20 4d 69 6e 69 62 75 66 66 65 72 2e    0a 0a 1f 0a 46 69 6c 65 3a 20 6c 65 64 67 65 72  | .the.Minibuffer.....File:.ledger | 
| 2d5e0 |  2d 6d 6f 64 65 2e 69 6e 66 6f 2c 20 20 4e 6f 64    65 3a 20 43 6f 70 79 69 6e 67 20 54 72 61 6e 73  | -mode.info,..Node:.Copying.Trans | 
| 2d600 |  61 63 74 69 6f 6e 73 2c 20 20 4e 65 78 74 3a 20    45 64 69 74 69 6e 67 20 41 6d 6f 75 6e 74 73 2c  | actions,..Next:.Editing.Amounts, | 
| 2d620 |  20 20 50 72 65 76 3a 20 41 64 64 69 6e 67 20 54    72 61 6e 73 61 63 74 69 6f 6e 73 2c 20 20 55 70  | ..Prev:.Adding.Transactions,..Up | 
| 2d640 |  3a 20 54 68 65 20 4c 65 64 67 65 72 20 42 75 66    66 65 72 0a 0a 32 2e 33 20 43 6f 70 79 69 6e 67  | :.The.Ledger.Buffer..2.3.Copying | 
| 2d660 |  20 54 72 61 6e 73 61 63 74 69 6f 6e 73 0a 3d 3d    3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  | .Transactions.================== | 
| 2d680 |  3d 3d 3d 3d 3d 3d 0a 0a 41 6e 20 65 61 73 79 20    77 61 79 20 74 6f 20 63 6f 70 79 20 61 20 74 72  | ======..An.easy.way.to.copy.a.tr | 
| 2d6a0 |  61 6e 73 61 63 74 69 6f 6e 20 69 73 20 74 6f 20    74 79 70 65 20 e2 80 98 43 2d 63 20 43 2d 6b e2  | ansaction.is.to.type....C-c.C-k. | 
| 2d6c0 |  80 99 20 6f 72 20 6d 65 6e 75 20 65 6e 74 72 79    0a e2 80 98 43 6f 70 79 20 54 72 61 6e 73 20 61  | ...or.menu.entry....Copy.Trans.a | 
| 2d6e0 |  74 20 50 6f 69 6e 74 e2 80 99 2e 20 20 59 6f 75    20 77 69 6c 6c 20 62 65 20 70 72 6f 6d 70 74 65  | t.Point......You.will.be.prompte | 
| 2d700 |  64 20 74 68 65 20 6e 65 77 20 64 61 74 65 20 66    6f 72 20 74 68 65 20 63 6f 70 69 65 64 0a 74 72  | d.the.new.date.for.the.copied.tr | 
| 2d720 |  61 6e 73 61 63 74 69 6f 6e 2c 20 61 6e 64 20 61    66 74 65 72 20 68 61 76 69 6e 67 20 63 6f 6e 66  | ansaction,.and.after.having.conf | 
| 2d740 |  69 72 6d 65 64 20 77 69 74 68 20 e2 80 98 52 45    54 e2 80 99 2c 20 6e 65 77 20 74 72 61 6e 73 61  | irmed.with....RET...,.new.transa | 
| 2d760 |  63 74 69 6f 6e 20 77 69 6c 6c 0a 62 65 20 69 6e    73 65 72 74 65 64 20 61 74 20 5f 64 61 74 65 5f  | ction.will.be.inserted.at._date_ | 
| 2d780 |  20 70 6f 73 69 74 69 6f 6e 20 69 6e 20 62 75 66    66 65 72 2e 0a 0a 20 20 20 49 66 20 79 6f 75 20  | .position.in.buffer......If.you. | 
| 2d7a0 |  70 72 65 66 65 72 20 74 6f 20 6b 65 65 70 20 62    6c 61 6e 6b 20 6c 69 6e 65 73 20 62 65 74 77 65  | prefer.to.keep.blank.lines.betwe | 
| 2d7c0 |  65 6e 20 79 6f 75 72 20 74 72 61 6e 73 61 63 74    69 6f 6e 73 2c 20 79 6f 75 20 63 61 6e 0a 63 68  | en.your.transactions,.you.can.ch | 
| 2d7e0 |  61 6e 67 65 20 74 68 65 20 64 65 66 61 75 6c 74    20 69 6e 20 e2 80 98 6c 65 64 67 65 72 2d 63 6f  | ange.the.default.in....ledger-co | 
| 2d800 |  70 79 2d 74 72 61 6e 73 61 63 74 69 6f 6e 2d 69    6e 73 65 72 74 2d 62 6c 61 6e 6b 2d 6c 69 6e 65  | py-transaction-insert-blank-line | 
| 2d820 |  2d 61 66 74 65 72 e2 80 99 2e 0a 0a 1f 0a 46 69    6c 65 3a 20 6c 65 64 67 65 72 2d 6d 6f 64 65 2e  | -after........File:.ledger-mode. | 
| 2d840 |  69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 45 64 69    74 69 6e 67 20 41 6d 6f 75 6e 74 73 2c 20 20 4e  | info,..Node:.Editing.Amounts,..N | 
| 2d860 |  65 78 74 3a 20 4d 61 72 6b 69 6e 67 20 54 72 61    6e 73 61 63 74 69 6f 6e 73 2c 20 20 50 72 65 76  | ext:.Marking.Transactions,..Prev | 
| 2d880 |  3a 20 43 6f 70 79 69 6e 67 20 54 72 61 6e 73 61    63 74 69 6f 6e 73 2c 20 20 55 70 3a 20 54 68 65  | :.Copying.Transactions,..Up:.The | 
| 2d8a0 |  20 4c 65 64 67 65 72 20 42 75 66 66 65 72 0a 0a    32 2e 34 20 45 64 69 74 69 6e 67 20 41 6d 6f 75  | .Ledger.Buffer..2.4.Editing.Amou | 
| 2d8c0 |  6e 74 73 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d    3d 3d 3d 3d 3d 3d 3d 0a 0a 47 4e 55 20 45 6d 61  | nts.===================..GNU.Ema | 
| 2d8e0 |  63 73 20 43 61 6c 63 75 6c 61 74 6f 72 2c 20 61    6b 61 20 e2 80 98 43 61 6c 63 e2 80 99 2c 20 69  | cs.Calculator,.aka....Calc...,.i | 
| 2d900 |  73 20 61 20 76 65 72 79 20 70 6f 77 65 72 66 75    6c 20 52 65 76 65 72 73 65 20 50 6f 6c 69 73 68  | s.a.very.powerful.Reverse.Polish | 
| 2d920 |  0a 4e 6f 74 61 74 69 6f 6e 20 63 61 6c 63 75 6c    61 74 6f 72 20 62 75 69 6c 74 20 69 6e 74 6f 20  | .Notation.calculator.built.into. | 
| 2d940 |  61 6c 6c 20 72 65 63 65 6e 74 20 76 65 72 73 69    6f 6e 20 6f 66 20 45 6d 61 63 73 2e 20 20 4c 65  | all.recent.version.of.Emacs...Le | 
| 2d960 |  64 67 65 72 2d 6d 6f 64 65 0a 6d 61 6b 65 73 20    69 74 20 65 61 73 79 20 74 6f 20 63 61 6c 63 75  | dger-mode.makes.it.easy.to.calcu | 
| 2d980 |  6c 61 74 65 20 76 61 6c 75 65 73 20 66 6f 72 20    61 6d 6f 75 6e 74 20 62 79 20 69 6e 74 65 67 72  | late.values.for.amount.by.integr | 
| 2d9a0 |  61 74 69 6e 67 20 e2 80 98 43 61 6c 63 e2 80 99    2e 0a 57 69 74 68 20 74 68 65 20 70 6f 69 6e 74  | ating....Calc.....With.the.point | 
| 2d9c0 |  20 61 6e 79 77 68 65 72 65 20 69 6e 20 74 68 65    20 73 61 6d 65 20 6c 69 6e 65 20 61 73 20 61 20  | .anywhere.in.the.same.line.as.a. | 
| 2d9e0 |  70 6f 73 74 69 6e 67 2c 20 74 79 70 69 6e 67 20    e2 80 98 43 2d 63 20 43 2d 62 e2 80 99 0a 77 69  | posting,.typing....C-c.C-b....wi | 
| 2da00 |  6c 6c 20 62 72 69 6e 67 20 75 70 20 74 68 65 20    e2 80 98 43 61 6c 63 e2 80 99 20 62 75 66 66 65  | ll.bring.up.the....Calc....buffe | 
| 2da20 |  72 2c 20 61 6e 64 20 70 75 73 68 20 74 68 65 20    63 75 72 72 65 6e 74 20 61 6d 6f 75 6e 74 20 66  | r,.and.push.the.current.amount.f | 
| 2da40 |  6f 72 20 74 68 65 0a 70 6f 73 74 69 6e 67 20 6f    6e 74 6f 20 74 68 65 20 74 6f 70 20 6f 66 20 74  | or.the.posting.onto.the.top.of.t | 
| 2da60 |  68 65 20 e2 80 98 43 61 6c 63 e2 80 99 20 73 74    61 63 6b 2e 20 20 50 65 72 66 6f 72 6d 20 61 6e  | he....Calc....stack...Perform.an | 
| 2da80 |  79 20 63 61 6c 63 75 6c 61 74 69 6f 6e 73 20 79    6f 75 0a 6e 65 65 64 20 74 6f 20 61 72 72 69 76  | y.calculations.you.need.to.arriv | 
| 2daa0 |  65 20 61 74 20 74 68 65 20 66 69 6e 61 6c 20 76    61 6c 75 65 2c 20 74 68 65 6e 20 74 79 70 65 20  | e.at.the.final.value,.then.type. | 
| 2dac0 |  e2 80 98 79 e2 80 99 20 74 6f 20 79 61 6e 6b 20    74 68 65 20 76 61 6c 75 65 20 61 74 0a 74 68 65  | ...y....to.yank.the.value.at.the | 
| 2dae0 |  20 74 6f 70 20 6f 66 20 73 74 61 63 6b 20 62 61    63 6b 20 69 6e 74 6f 20 74 68 65 20 6c 65 64 67  | .top.of.stack.back.into.the.ledg | 
| 2db00 |  65 72 20 62 75 66 66 65 72 2e 20 20 4e 6f 74 65    3a 20 e2 80 98 43 61 6c 63 e2 80 99 20 64 6f 65  | er.buffer...Note:....Calc....doe | 
| 2db20 |  73 20 6e 6f 74 0a 64 69 72 65 63 74 6c 79 20 73    75 70 70 6f 72 74 20 63 6f 6d 6d 61 73 20 61 73  | s.not.directly.support.commas.as | 
| 2db40 |  20 64 65 63 69 6d 61 6c 20 73 65 70 61 72 61 74    6f 72 73 2e 20 20 4c 65 64 67 65 72 2d 6d 6f 64  | .decimal.separators...Ledger-mod | 
| 2db60 |  65 20 77 69 6c 6c 0a 74 72 61 6e 73 6c 61 74 65    20 76 61 6c 75 65 73 20 66 72 6f 6d 20 64 65 63  | e.will.translate.values.from.dec | 
| 2db80 |  69 6d 61 6c 2d 63 6f 6d 6d 61 20 66 6f 72 6d 61    74 20 74 6f 20 64 65 63 69 6d 61 6c 2d 70 65 72  | imal-comma.format.to.decimal-per | 
| 2dba0 |  69 6f 64 20 66 6f 72 6d 61 74 20 66 6f 72 0a 75    73 65 20 69 6e 20 e2 80 98 43 61 6c 63 e2 80 99  | iod.format.for.use.in....Calc... | 
| 2dbc0 |  2c 20 62 75 74 20 69 74 20 63 61 6e 6e 6f 74 20    69 6e 74 65 72 63 65 70 74 20 74 68 65 20 76 61  | ,.but.it.cannot.intercept.the.va | 
| 2dbe0 |  6c 75 65 20 62 65 69 6e 67 20 79 61 6e 6b 65 64    20 66 72 6f 6d 20 74 68 65 0a e2 80 98 43 61 6c  | lue.being.yanked.from.the....Cal | 
| 2dc00 |  63 e2 80 99 20 73 74 61 63 6b 2c 20 73 6f 20 64    65 63 69 6d 61 6c 2d 63 6f 6d 6d 61 20 75 73 65  | c....stack,.so.decimal-comma.use | 
| 2dc20 |  72 73 20 77 69 6c 6c 20 68 61 76 65 20 74 6f 20    6d 61 6e 75 61 6c 6c 79 20 72 65 70 6c 61 63 65  | rs.will.have.to.manually.replace | 
| 2dc40 |  20 74 68 65 0a 70 65 72 69 6f 64 20 77 69 74 68    20 61 20 63 6f 6d 6d 61 2e 0a 0a 1f 0a 46 69 6c  | .the.period.with.a.comma.....Fil | 
| 2dc60 |  65 3a 20 6c 65 64 67 65 72 2d 6d 6f 64 65 2e 69    6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 4d 61 72 6b  | e:.ledger-mode.info,..Node:.Mark | 
| 2dc80 |  69 6e 67 20 54 72 61 6e 73 61 63 74 69 6f 6e 73    2c 20 20 4e 65 78 74 3a 20 46 6f 72 6d 61 74 74  | ing.Transactions,..Next:.Formatt | 
| 2dca0 |  69 6e 67 20 54 72 61 6e 73 61 63 74 69 6f 6e 73    2c 20 20 50 72 65 76 3a 20 45 64 69 74 69 6e 67  | ing.Transactions,..Prev:.Editing | 
| 2dcc0 |  20 41 6d 6f 75 6e 74 73 2c 20 20 55 70 3a 20 54    68 65 20 4c 65 64 67 65 72 20 42 75 66 66 65 72  | .Amounts,..Up:.The.Ledger.Buffer | 
| 2dce0 |  0a 0a 32 2e 35 20 4d 61 72 6b 69 6e 67 20 54 72    61 6e 73 61 63 74 69 6f 6e 73 0a 3d 3d 3d 3d 3d  | ..2.5.Marking.Transactions.===== | 
| 2dd00 |  3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d    3d 3d 3d 0a 0a 4c 65 64 67 65 72 20 63 6f 6e 73  | ===================..Ledger.cons | 
| 2dd20 |  69 64 65 72 73 20 74 72 61 6e 73 61 63 74 69 6f    6e 20 6f 72 20 70 6f 73 74 69 6e 67 20 74 6f 20  | iders.transaction.or.posting.to. | 
| 2dd40 |  62 65 20 69 6e 20 6f 6e 65 20 6f 66 20 74 68 72    65 65 20 73 74 61 74 65 73 3a 0a 75 6e 63 6c 65  | be.in.one.of.three.states:.uncle | 
| 2dd60 |  61 72 65 64 2c 20 63 6c 65 61 72 65 64 2c 20 61    6e 64 20 70 65 6e 64 69 6e 67 2e 20 20 46 6f 72  | ared,.cleared,.and.pending...For | 
| 2dd80 |  20 63 61 6c 63 75 6c 61 74 69 6f 6e 20 4c 65 64    67 65 72 20 69 67 6e 6f 72 65 73 20 74 68 65 73  | .calculation.Ledger.ignores.thes | 
| 2dda0 |  65 0a 73 74 61 74 65 73 20 75 6e 6c 65 73 73 20    73 70 65 63 69 66 69 63 61 6c 6c 79 20 69 6e 73  | e.states.unless.specifically.ins | 
| 2ddc0 |  74 72 75 63 74 65 64 20 74 6f 20 75 73 65 20 74    68 65 6d 2e 20 20 4c 65 64 67 65 72 2d 6d 6f 64  | tructed.to.use.them...Ledger-mod | 
| 2dde0 |  65 20 61 73 73 69 67 6e 73 0a 73 6f 6d 65 20 61    64 64 69 74 69 6f 6e 61 6c 20 6d 65 61 6e 69 6e  | e.assigns.some.additional.meanin | 
| 2de00 |  67 20 74 6f 20 74 68 65 20 73 74 61 74 65 73 3a    0a 0a 20 20 20 e2 80 a2 20 55 6e 63 6c 65 61 72  | g.to.the.states:.........Unclear | 
| 2de20 |  65 64 2e 20 20 4e 6f 20 73 74 61 74 65 2e 20 20    54 68 69 73 20 69 73 20 65 71 75 69 76 61 6c 65  | ed...No.state...This.is.equivale | 
| 2de40 |  6e 74 20 74 6f 20 73 74 69 63 6b 69 6e 67 20 61    20 63 68 65 63 6b 20 69 6e 0a 20 20 20 20 20 74  | nt.to.sticking.a.check.in......t | 
| 2de60 |  68 65 20 6d 61 69 6c 2e 20 20 49 74 20 68 61 73    20 62 65 65 6e 20 6f 62 6c 69 67 61 74 65 64 2c  | he.mail...It.has.been.obligated, | 
| 2de80 |  20 62 75 74 20 6e 6f 74 20 62 65 65 6e 20 63 61    73 68 65 64 20 62 79 20 74 68 65 0a 20 20 20 20  | .but.not.been.cashed.by.the..... | 
| 2dea0 |  20 72 65 63 69 70 69 65 6e 74 2e 20 20 49 74 20    63 6f 75 6c 64 20 61 6c 73 6f 20 61 70 70 6c 79  | .recipient...It.could.also.apply | 
| 2dec0 |  20 74 6f 20 63 72 65 64 69 74 2f 64 65 62 69 74    20 63 61 72 64 20 74 72 61 6e 73 61 63 74 69 6f  | .to.credit/debit.card.transactio | 
| 2dee0 |  6e 73 0a 20 20 20 20 20 74 68 61 74 20 68 61 76    65 20 6e 6f 74 20 62 65 65 6e 20 63 6c 65 61 72  | ns......that.have.not.been.clear | 
| 2df00 |  65 64 20 69 6e 74 6f 20 79 6f 75 72 20 61 63 63    6f 75 6e 74 20 62 61 6c 61 6e 63 65 2e 20 20 59  | ed.into.your.account.balance...Y | 
| 2df20 |  6f 75 20 62 61 6e 6b 20 6d 61 79 0a 20 20 20 20    20 63 61 6c 6c 20 74 68 65 73 65 20 74 72 61 6e  | ou.bank.may......call.these.tran | 
| 2df40 |  73 61 63 74 69 6f 6e 73 20 5f 70 65 6e 64 69 6e    67 5f 2c 20 62 75 74 20 4c 65 64 67 65 72 2d 6d  | sactions._pending_,.but.Ledger-m | 
| 2df60 |  6f 64 65 20 75 73 65 73 20 61 20 73 6c 69 67 68    74 6c 79 0a 20 20 20 20 20 64 69 66 66 65 72 65  | ode.uses.a.slightly......differe | 
| 2df80 |  6e 74 20 6d 65 61 6e 69 6e 67 2e 0a 0a 20 20 20    e2 80 a2 20 50 65 6e 64 69 6e 67 2e 20 20 4c 65  | nt.meaning..........Pending...Le | 
| 2dfa0 |  64 67 65 72 2d 6d 6f 64 65 e2 80 99 73 20 72 65    63 6f 6e 63 69 6c 69 61 74 69 6f 6e 20 66 75 6e  | dger-mode...s.reconciliation.fun | 
| 2dfc0 |  63 74 69 6f 6e 20 73 65 65 20 70 65 6e 64 69 6e    67 0a 20 20 20 20 20 74 72 61 6e 73 61 63 74 69  | ction.see.pending......transacti | 
| 2dfe0 |  6f 6e 73 20 61 73 20 61 6e 20 69 6e 74 65 72 6d    65 64 69 61 74 65 20 73 74 65 70 20 69 6e 20 72  | ons.as.an.intermediate.step.in.r | 
| 2e000 |  65 63 6f 6e 63 69 6c 69 6e 67 20 61 6e 20 61 63    63 6f 75 6e 74 2e 0a 20 20 20 20 20 57 68 65 6e  | econciling.an.account.......When | 
| 2e020 |  20 64 6f 69 6e 67 20 61 20 72 65 63 6f 6e 63 69    6c 69 61 74 69 6f 6e 20 28 2a 6e 6f 74 65 20 52  | .doing.a.reconciliation.(*note.R | 
| 2e040 |  65 63 6f 6e 63 69 6c 69 61 74 69 6f 6e 3a 3a 29    2c 20 6d 61 72 6b 69 6e 67 20 61 0a 20 20 20 20  | econciliation::),.marking.a..... | 
| 2e060 |  20 74 72 61 6e 73 61 63 74 69 6f 6e 20 61 73 20    70 65 6e 64 69 6e 67 20 6d 65 61 6e 73 20 74 68  | .transaction.as.pending.means.th | 
| 2e080 |  61 74 20 79 6f 75 20 68 61 76 65 20 73 65 65 6e    20 74 68 65 20 74 72 61 6e 73 61 63 74 69 6f 6e  | at.you.have.seen.the.transaction | 
| 2e0a0 |  0a 20 20 20 20 20 66 69 6e 61 6c 6c 79 20 72 65    63 6f 72 64 65 64 20 62 79 20 74 68 65 20 72 65  | ......finally.recorded.by.the.re | 
| 2e0c0 |  63 69 70 69 65 6e 74 2c 20 62 75 74 20 79 6f 75    20 68 61 76 65 20 6e 6f 74 20 63 6f 6d 70 6c 65  | cipient,.but.you.have.not.comple | 
| 2e0e0 |  74 65 6c 79 0a 20 20 20 20 20 72 65 63 6f 6e 63    69 6c 65 64 20 74 68 65 20 61 63 63 6f 75 6e 74  | tely......reconciled.the.account | 
| 2e100 |  2e 0a 0a 20 20 20 e2 80 a2 20 43 6c 65 61 72 65    64 2e 20 20 54 68 65 20 74 72 61 6e 73 61 63 74  | ..........Cleared...The.transact | 
| 2e120 |  69 6f 6e 20 68 61 73 20 62 65 65 6e 20 63 6f 6d    70 6c 65 74 65 6c 79 20 72 65 63 6f 67 6e 69 7a  | ion.has.been.completely.recogniz | 
| 2e140 |  65 64 20 62 79 20 61 6c 6c 0a 20 20 20 20 20 70    61 72 74 69 65 73 20 74 6f 20 74 68 65 20 74 72  | ed.by.all......parties.to.the.tr | 
| 2e160 |  61 6e 73 61 63 74 69 6f 6e 2e 0a 0a 20 20 20 54    79 70 69 6e 67 20 e2 80 98 43 2d 63 20 43 2d 63  | ansaction......Typing....C-c.C-c | 
| 2e180 |  e2 80 99 2c 20 64 65 70 65 6e 64 69 6e 67 20 77    68 65 72 65 20 69 73 20 74 68 65 20 70 6f 69 6e  | ...,.depending.where.is.the.poin | 
| 2e1a0 |  74 2c 20 77 69 6c 6c 20 63 6c 65 61 72 20 74 68    65 0a 63 6f 6d 70 6c 65 74 65 20 74 72 61 6e 73  | t,.will.clear.the.complete.trans | 
| 2e1c0 |  61 63 74 69 6f 6e 2c 20 6f 72 20 61 6e 20 69 6e    64 69 76 69 64 75 61 6c 20 70 6f 73 74 69 6e 67  | action,.or.an.individual.posting | 
| 2e1e0 |  2e 20 20 54 68 69 73 20 70 6c 61 63 65 73 20 61    6e 20 61 73 74 65 72 69 73 6b 0a e2 80 98 2a e2  | ...This.places.an.asterisk....*. | 
| 2e200 |  80 99 20 70 72 69 6f 72 20 74 6f 20 74 68 65 20    70 61 79 65 65 20 66 6f 72 20 74 68 65 20 63 6f  | ...prior.to.the.payee.for.the.co | 
| 2e220 |  6d 70 6c 65 74 65 20 74 72 61 6e 73 61 63 74 69    6f 6e 2c 20 6f 72 20 70 72 69 6f 72 20 74 6f 20  | mplete.transaction,.or.prior.to. | 
| 2e240 |  74 68 65 0a 61 63 63 6f 75 6e 74 20 66 6f 72 20    61 6e 20 69 6e 64 69 76 69 64 75 61 6c 20 70 6f  | the.account.for.an.individual.po | 
| 2e260 |  73 74 69 6e 67 2e 20 20 57 68 65 6e 20 70 6f 69    6e 74 20 69 73 20 69 6e 73 69 64 65 20 61 20 74  | sting...When.point.is.inside.a.t | 
| 2e280 |  72 61 6e 73 61 63 74 69 6f 6e 2c 0a 73 70 65 63    69 66 69 63 61 6c 6c 79 20 6f 6e 20 61 6e 20 69  | ransaction,.specifically.on.an.i | 
| 2e2a0 |  6e 64 69 76 69 64 75 61 6c 20 70 6f 73 74 69 6e    67 2c 20 79 6f 75 20 63 61 6e 20 73 74 69 6c 6c  | ndividual.posting,.you.can.still | 
| 2e2c0 |  20 63 6c 65 61 72 20 74 68 65 20 63 6f 6d 70 6c    65 74 65 0a 74 72 61 6e 73 61 63 74 69 6f 6e 20  | .clear.the.complete.transaction. | 
| 2e2e0 |  62 79 20 74 79 70 69 6e 67 20 e2 80 98 43 2d 63    20 43 2d 65 e2 80 99 2e 0a 0a 1f 0a 46 69 6c 65  | by.typing....C-c.C-e........File | 
| 2e300 |  3a 20 6c 65 64 67 65 72 2d 6d 6f 64 65 2e 69 6e    66 6f 2c 20 20 4e 6f 64 65 3a 20 46 6f 72 6d 61  | :.ledger-mode.info,..Node:.Forma | 
| 2e320 |  74 74 69 6e 67 20 54 72 61 6e 73 61 63 74 69 6f    6e 73 2c 20 20 4e 65 78 74 3a 20 44 65 6c 65 74  | tting.Transactions,..Next:.Delet | 
| 2e340 |  69 6e 67 20 54 72 61 6e 73 61 63 74 69 6f 6e 73    2c 20 20 50 72 65 76 3a 20 4d 61 72 6b 69 6e 67  | ing.Transactions,..Prev:.Marking | 
| 2e360 |  20 54 72 61 6e 73 61 63 74 69 6f 6e 73 2c 20 20    55 70 3a 20 54 68 65 20 4c 65 64 67 65 72 20 42  | .Transactions,..Up:.The.Ledger.B | 
| 2e380 |  75 66 66 65 72 0a 0a 32 2e 36 20 46 6f 72 6d 61    74 74 69 6e 67 20 54 72 61 6e 73 61 63 74 69 6f  | uffer..2.6.Formatting.Transactio | 
| 2e3a0 |  6e 73 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d    3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 0a  | ns.===========================.. | 
| 2e3c0 |  57 68 65 6e 20 65 64 69 74 69 6e 67 20 61 20 74    72 61 6e 73 61 63 74 69 6f 6e 2c 20 6c 69 62 65  | When.editing.a.transaction,.libe | 
| 2e3e0 |  72 61 6c 20 75 73 65 20 6f 66 20 74 68 65 20 e2    80 98 54 41 42 e2 80 99 20 6b 65 79 20 63 61 6e  | ral.use.of.the....TAB....key.can | 
| 2e400 |  20 6b 65 65 70 20 74 68 65 0a 74 72 61 6e 73 61    63 74 69 6f 6e 20 77 65 6c 6c 20 66 6f 72 6d 61  | .keep.the.transaction.well.forma | 
| 2e420 |  74 74 65 64 2e 20 20 49 66 20 79 6f 75 20 77 61    6e 74 20 74 6f 20 68 61 76 65 20 4c 65 64 67 65  | tted...If.you.want.to.have.Ledge | 
| 2e440 |  72 2d 6d 6f 64 65 20 63 6c 65 61 6e 75 70 20 74    68 65 0a 66 6f 72 6d 61 74 74 69 6e 67 20 6f 66  | r-mode.cleanup.the.formatting.of | 
| 2e460 |  20 61 20 74 72 61 6e 73 61 63 74 69 6f 6e 20 79    6f 75 20 63 61 6e 20 75 73 65 20 e2 80 98 41 6c  | .a.transaction.you.can.use....Al | 
| 2e480 |  69 67 6e 20 54 72 61 6e 73 61 63 74 69 6f 6e e2    80 99 20 6f 72 20 e2 80 98 41 6c 69 67 6e 0a 52  | ign.Transaction....or....Align.R | 
| 2e4a0 |  65 67 69 6f 6e e2 80 99 20 66 72 6f 6d 20 74 68    65 20 6d 65 6e 75 20 62 61 72 2e 0a 0a 20 20 20  | egion....from.the.menu.bar...... | 
| 2e4c0 |  54 68 65 20 6d 65 6e 75 20 69 74 65 6d 20 e2 80    98 43 6c 65 61 6e 2d 75 70 20 42 75 66 66 65 72  | The.menu.item....Clean-up.Buffer | 
| 2e4e0 |  e2 80 99 20 73 6f 72 74 73 20 61 6c 6c 20 74 72    61 6e 73 61 63 74 69 6f 6e 73 20 69 6e 20 74 68  | ....sorts.all.transactions.in.th | 
| 2e500 |  65 20 62 75 66 66 65 72 0a 62 79 20 64 61 74 65    2c 20 72 65 6d 6f 76 65 73 20 65 78 74 72 61 6e  | e.buffer.by.date,.removes.extran | 
| 2e520 |  65 6f 75 73 20 65 6d 70 74 79 20 6c 69 6e 65 73    20 61 6e 64 20 61 6c 69 67 6e 73 20 65 76 65 72  | eous.empty.lines.and.aligns.ever | 
| 2e540 |  79 20 74 72 61 6e 73 61 63 74 69 6f 6e 2e 0a 0a    1f 0a 46 69 6c 65 3a 20 6c 65 64 67 65 72 2d 6d  | y.transaction.....File:.ledger-m | 
| 2e560 |  6f 64 65 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a    20 44 65 6c 65 74 69 6e 67 20 54 72 61 6e 73 61  | ode.info,..Node:.Deleting.Transa | 
| 2e580 |  63 74 69 6f 6e 73 2c 20 20 4e 65 78 74 3a 20 53    6f 72 74 69 6e 67 20 54 72 61 6e 73 61 63 74 69  | ctions,..Next:.Sorting.Transacti | 
| 2e5a0 |  6f 6e 73 2c 20 20 50 72 65 76 3a 20 46 6f 72 6d    61 74 74 69 6e 67 20 54 72 61 6e 73 61 63 74 69  | ons,..Prev:.Formatting.Transacti | 
| 2e5c0 |  6f 6e 73 2c 20 20 55 70 3a 20 54 68 65 20 4c 65    64 67 65 72 20 42 75 66 66 65 72 0a 0a 32 2e 37  | ons,..Up:.The.Ledger.Buffer..2.7 | 
| 2e5e0 |  20 44 65 6c 65 74 69 6e 67 20 54 72 61 6e 73 61    63 74 69 6f 6e 73 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d  | .Deleting.Transactions.========= | 
| 2e600 |  3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d    0a 0a 41 6c 6f 6e 67 20 77 69 74 68 20 6e 6f 72  | ================..Along.with.nor | 
| 2e620 |  6d 61 6c 20 62 75 66 66 65 72 20 65 64 69 74 69    6e 67 20 6d 65 74 68 6f 64 73 20 74 6f 20 64 65  | mal.buffer.editing.methods.to.de | 
| 2e640 |  6c 65 74 65 20 74 65 78 74 2c 20 4c 65 64 67 65    72 2d 6d 6f 64 65 0a 70 72 6f 76 69 64 65 73 20  | lete.text,.Ledger-mode.provides. | 
| 2e660 |  61 6e 20 65 61 73 79 20 77 61 79 20 74 6f 20 64    65 6c 65 74 65 20 74 68 65 20 74 72 61 6e 73 61  | an.easy.way.to.delete.the.transa | 
| 2e680 |  63 74 69 6f 6e 20 75 6e 64 65 72 20 70 6f 69 6e    74 3a 20 e2 80 98 43 2d 63 20 43 2d 64 e2 80 99  | ction.under.point:....C-c.C-d... | 
| 2e6a0 |  2e 0a 54 68 65 20 61 64 76 61 6e 74 61 67 65 20    74 6f 20 75 73 69 6e 67 20 74 68 69 73 20 6d 65  | ..The.advantage.to.using.this.me | 
| 2e6c0 |  74 68 6f 64 20 69 73 20 74 68 61 74 20 74 68 65    20 63 6f 6d 70 6c 65 74 65 20 74 72 61 6e 73 61  | thod.is.that.the.complete.transa | 
| 2e6e0 |  63 74 69 6f 6e 0a 6f 70 65 72 61 74 69 6f 6e 20    69 73 20 69 6e 20 74 68 65 20 75 6e 64 6f 20 62  | ction.operation.is.in.the.undo.b | 
| 2e700 |  75 66 66 65 72 2e 0a 0a 1f 0a 46 69 6c 65 3a 20    6c 65 64 67 65 72 2d 6d 6f 64 65 2e 69 6e 66 6f  | uffer.....File:.ledger-mode.info | 
| 2e720 |  2c 20 20 4e 6f 64 65 3a 20 53 6f 72 74 69 6e 67    20 54 72 61 6e 73 61 63 74 69 6f 6e 73 2c 20 20  | ,..Node:.Sorting.Transactions,.. | 
| 2e740 |  4e 65 78 74 3a 20 4e 61 72 72 6f 77 69 6e 67 20    54 72 61 6e 73 61 63 74 69 6f 6e 73 2c 20 20 50  | Next:.Narrowing.Transactions,..P | 
| 2e760 |  72 65 76 3a 20 44 65 6c 65 74 69 6e 67 20 54 72    61 6e 73 61 63 74 69 6f 6e 73 2c 20 20 55 70 3a  | rev:.Deleting.Transactions,..Up: | 
| 2e780 |  20 54 68 65 20 4c 65 64 67 65 72 20 42 75 66 66    65 72 0a 0a 32 2e 38 20 53 6f 72 74 69 6e 67 20  | .The.Ledger.Buffer..2.8.Sorting. | 
| 2e7a0 |  54 72 61 6e 73 61 63 74 69 6f 6e 73 0a 3d 3d 3d    3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  | Transactions.=================== | 
| 2e7c0 |  3d 3d 3d 3d 3d 0a 0a 41 73 20 79 6f 75 20 6f 70    65 72 61 74 69 6e 67 20 6f 6e 20 74 68 65 20 4c  | =====..As.you.operating.on.the.L | 
| 2e7e0 |  65 64 67 65 72 20 66 69 6c 65 73 2c 20 74 68 65    79 20 6d 61 79 20 62 65 63 6f 6d 65 20 64 69 73  | edger.files,.they.may.become.dis | 
| 2e800 |  6f 72 67 61 6e 69 7a 65 64 2e 20 20 46 6f 72 0a    74 68 65 20 6d 6f 73 74 20 70 61 72 74 2c 20 4c  | organized...For.the.most.part,.L | 
| 2e820 |  65 64 67 65 72 20 64 6f 65 73 6e e2 80 99 74 20    63 61 72 65 2c 20 62 75 74 20 6f 75 72 20 68 75  | edger.doesn...t.care,.but.our.hu | 
| 2e840 |  6d 61 6e 20 62 72 61 69 6e 73 20 70 72 65 66 65    72 20 61 20 62 69 74 20 6f 66 0a 6f 72 64 65 72  | man.brains.prefer.a.bit.of.order | 
| 2e860 |  2e 20 20 53 6f 72 74 69 6e 67 20 74 68 65 20 74    72 61 6e 73 61 63 74 69 6f 6e 73 20 69 6e 20 61  | ...Sorting.the.transactions.in.a | 
| 2e880 |  20 62 75 66 66 65 72 20 69 6e 74 6f 20 63 68 72    6f 6e 6f 6c 6f 67 69 63 61 6c 20 6f 72 64 65 72  | .buffer.into.chronological.order | 
| 2e8a0 |  0a 63 61 6e 20 68 65 6c 70 20 62 72 69 6e 67 20    6f 72 64 65 72 20 74 6f 20 63 68 61 6f 73 2e 20  | .can.help.bring.order.to.chaos.. | 
| 2e8c0 |  20 45 69 74 68 65 72 20 75 73 69 6e 67 20 e2 80    98 53 6f 72 74 20 52 65 67 69 6f 6e e2 80 99 20  | .Either.using....Sort.Region.... | 
| 2e8e0 |  6d 65 6e 75 20 65 6e 74 72 79 20 6f 72 0a 74 79    70 69 6e 67 20 e2 80 98 43 2d 63 20 43 2d 73 e2  | menu.entry.or.typing....C-c.C-s. | 
| 2e900 |  80 99 20 77 69 6c 6c 20 73 6f 72 74 20 61 6c 6c    20 6f 66 20 74 68 65 20 74 72 61 6e 73 61 63 74  | ...will.sort.all.of.the.transact | 
| 2e920 |  69 6f 6e 73 20 69 6e 20 61 20 72 65 67 69 6f 6e    20 62 79 20 64 61 74 65 2e 0a 4c 65 64 67 65 72  | ions.in.a.region.by.date..Ledger | 
| 2e940 |  2d 6d 6f 64 65 20 69 73 6e e2 80 99 74 20 70 61    72 74 69 63 75 6c 61 72 6c 79 20 73 6d 61 72 74  | -mode.isn...t.particularly.smart | 
| 2e960 |  20 61 62 6f 75 74 20 68 61 6e 64 6c 69 6e 67 20    64 61 74 65 73 20 61 6e 64 20 69 74 20 73 69 6d  | .about.handling.dates.and.it.sim | 
| 2e980 |  70 6c 79 0a 73 6f 72 74 73 20 74 68 65 20 74 72    61 6e 73 61 63 74 69 6f 6e 73 20 75 73 69 6e 67  | ply.sorts.the.transactions.using | 
| 2e9a0 |  20 74 68 65 20 73 74 72 69 6e 67 20 61 74 20 74    68 65 20 62 65 67 69 6e 6e 69 6e 67 20 6f 66 20  | .the.string.at.the.beginning.of. | 
| 2e9c0 |  74 68 65 0a 74 72 61 6e 73 61 63 74 69 6f 6e 2e    20 20 53 6f 2c 20 79 6f 75 20 73 68 6f 75 6c 64  | the.transaction...So,.you.should | 
| 2e9e0 |  20 75 73 65 20 74 68 65 20 70 72 65 66 65 72 72    65 64 20 49 53 4f 20 38 36 30 31 20 73 74 61 6e  | .use.the.preferred.ISO.8601.stan | 
| 2ea00 |  64 61 72 64 20 64 61 74 65 0a 66 6f 72 6d 61 74    20 e2 80 98 59 59 59 59 2f 4d 4d 2f 44 44 e2 80  | dard.date.format....YYYY/MM/DD.. | 
| 2ea20 |  99 20 77 68 69 63 68 20 65 61 73 69 6c 79 20 73    6f 72 74 73 2e 0a 0a 20 20 20 4e 6f 74 65 2c 20  | ..which.easily.sorts......Note,. | 
| 2ea40 |  74 68 65 72 65 20 69 73 20 61 20 6d 65 6e 75 20    65 6e 74 72 79 20 e2 80 98 53 6f 72 74 20 42 75  | there.is.a.menu.entry....Sort.Bu | 
| 2ea60 |  66 66 65 72 e2 80 99 20 74 6f 20 73 6f 72 74 20    74 68 65 20 65 6e 74 69 72 65 20 62 75 66 66 65  | ffer....to.sort.the.entire.buffe | 
| 2ea80 |  72 2e 0a 53 70 65 63 69 61 6c 20 74 72 61 6e 73    61 63 74 69 6f 6e 73 20 6c 69 6b 65 20 61 75 74  | r..Special.transactions.like.aut | 
| 2eaa0 |  6f 6d 61 74 65 64 20 74 72 61 6e 73 61 63 74 69    6f 6e 2c 20 77 69 6c 6c 20 62 65 20 6d 6f 76 65  | omated.transaction,.will.be.move | 
| 2eac0 |  64 20 69 6e 20 74 68 65 0a 73 6f 72 74 69 6e 67    20 70 72 6f 63 65 73 73 20 61 6e 64 20 6d 61 79  | d.in.the.sorting.process.and.may | 
| 2eae0 |  20 6e 6f 74 20 66 75 6e 63 74 69 6f 6e 20 63 6f    72 72 65 63 74 6c 79 20 61 66 74 65 72 77 61 72  | .not.function.correctly.afterwar | 
| 2eb00 |  64 73 2e 20 20 46 6f 72 20 74 68 69 73 0a 72 65    61 73 6f 6e 20 74 68 65 72 65 20 69 73 20 6e 6f  | ds...For.this.reason.there.is.no | 
| 2eb20 |  20 6b 65 79 20 73 65 71 75 65 6e 63 65 2e 0a 0a    20 20 20 59 6f 75 20 63 61 6e 20 6c 69 6d 69 74  | .key.sequence......You.can.limit | 
| 2eb40 |  20 74 68 65 20 61 6c 6c 6f 77 65 64 20 73 6f 72    74 20 72 65 67 69 6f 6e 20 62 79 20 75 73 69 6e  | .the.allowed.sort.region.by.usin | 
| 2eb60 |  67 20 65 6d 62 65 64 64 65 64 20 4c 65 64 67 65    72 2d 6d 6f 64 65 0a 6d 61 72 6b 75 70 20 77 69  | g.embedded.Ledger-mode.markup.wi | 
| 2eb80 |  74 68 69 6e 20 79 6f 75 72 20 6c 65 64 67 65 72    2e 20 20 46 6f 72 20 65 78 61 6d 70 6c 65 3a 0a  | thin.your.ledger...For.example:. | 
| 2eba0 |  0a 20 20 20 20 20 3c 3c 3c 20 69 6e 66 6f 72 6d    61 74 69 6f 6e 20 74 6f 20 6e 6f 74 20 73 6f 72  | ......<<<.information.to.not.sor | 
| 2ebc0 |  74 20 3e 3e 3e 0a 0a 20 20 20 20 20 3b 20 4c 65    64 67 65 72 2d 6d 6f 64 65 3a 20 53 74 61 72 74  | t.>>>.......;.Ledger-mode:.Start | 
| 2ebe0 |  20 73 6f 72 74 0a 0a 20 20 20 20 20 3c 3c 3c 20    74 72 61 6e 73 61 63 74 69 6f 6e 73 20 74 6f 20  | .sort.......<<<.transactions.to. | 
| 2ec00 |  73 6f 72 74 20 3e 3e 3e 0a 0a 20 20 20 20 20 3b    20 4c 65 64 67 65 72 2d 6d 6f 64 65 3a 20 45 6e  | sort.>>>.......;.Ledger-mode:.En | 
| 2ec20 |  64 20 73 6f 72 74 0a 0a 20 20 20 20 20 3c 3c 3c    20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 74 6f 20  | d.sort.......<<<.information.to. | 
| 2ec40 |  6e 6f 74 20 73 6f 72 74 20 3e 3e 3e 0a 0a 20 20    20 59 6f 75 20 63 61 6e 20 75 73 65 20 6d 65 6e  | not.sort.>>>.....You.can.use.men | 
| 2ec60 |  75 20 65 6e 74 72 69 65 73 20 e2 80 98 4d 61 72    6b 20 53 6f 72 74 20 42 65 67 69 6e 6e 69 6e 67  | u.entries....Mark.Sort.Beginning | 
| 2ec80 |  e2 80 99 20 74 6f 20 69 6e 73 65 72 74 20 73 74    61 72 74 20 61 6e 64 0a e2 80 98 4d 61 72 6b 20  | ....to.insert.start.and....Mark. | 
| 2eca0 |  53 6f 72 74 20 45 6e 64 e2 80 99 20 74 6f 20 69    6e 73 65 72 74 20 65 6e 64 20 6d 61 72 6b 65 72  | Sort.End....to.insert.end.marker | 
| 2ecc0 |  73 2e 20 20 54 68 65 73 65 20 66 75 6e 63 74 69    6f 6e 73 20 77 69 6c 6c 0a 61 75 74 6f 6d 61 74  | s...These.functions.will.automat | 
| 2ece0 |  69 63 61 6c 6c 79 20 64 65 6c 65 74 65 20 6f 6c    64 20 6d 61 72 6b 65 72 73 20 61 6e 64 20 70 75  | ically.delete.old.markers.and.pu | 
| 2ed00 |  74 20 6e 65 77 20 6d 61 72 6b 65 72 20 61 74 20    70 6f 69 6e 74 2e 0a 0a 1f 0a 46 69 6c 65 3a 20  | t.new.marker.at.point.....File:. | 
| 2ed20 |  6c 65 64 67 65 72 2d 6d 6f 64 65 2e 69 6e 66 6f    2c 20 20 4e 6f 64 65 3a 20 4e 61 72 72 6f 77 69  | ledger-mode.info,..Node:.Narrowi | 
| 2ed40 |  6e 67 20 54 72 61 6e 73 61 63 74 69 6f 6e 73 2c    20 20 50 72 65 76 3a 20 53 6f 72 74 69 6e 67 20  | ng.Transactions,..Prev:.Sorting. | 
| 2ed60 |  54 72 61 6e 73 61 63 74 69 6f 6e 73 2c 20 20 55    70 3a 20 54 68 65 20 4c 65 64 67 65 72 20 42 75  | Transactions,..Up:.The.Ledger.Bu | 
| 2ed80 |  66 66 65 72 0a 0a 32 2e 39 20 4e 61 72 72 6f 77    69 6e 67 20 54 72 61 6e 73 61 63 74 69 6f 6e 73  | ffer..2.9.Narrowing.Transactions | 
| 2eda0 |  0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d    3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 0a 4f 66 74  | .==========================..Oft | 
| 2edc0 |  65 6e 20 79 6f 75 20 77 69 6c 6c 20 77 61 6e 74    20 74 6f 20 72 75 6e 20 4c 65 64 67 65 72 20 72  | en.you.will.want.to.run.Ledger.r | 
| 2ede0 |  65 67 69 73 74 65 72 20 72 65 70 6f 72 74 73 20    6a 75 73 74 20 74 6f 20 6c 6f 6f 6b 20 61 74 20  | egister.reports.just.to.look.at. | 
| 2ee00 |  61 0a 73 70 65 63 69 66 69 63 20 73 65 74 20 6f    66 20 74 72 61 6e 73 61 63 74 69 6f 6e 73 2e 20  | a.specific.set.of.transactions.. | 
| 2ee20 |  20 49 66 20 79 6f 75 20 64 6f 6e e2 80 99 74 20    6e 65 65 64 20 74 68 65 20 72 75 6e 6e 69 6e 67  | .If.you.don...t.need.the.running | 
| 2ee40 |  20 74 6f 74 61 6c 0a 63 61 6c 63 75 6c 61 74 69    6f 6e 20 68 61 6e 64 6c 65 64 20 62 79 20 4c 65  | .total.calculation.handled.by.Le | 
| 2ee60 |  64 67 65 72 2c 20 4c 65 64 67 65 72 2d 6d 6f 64    65 20 70 72 6f 76 69 64 65 73 20 61 20 72 61 70  | dger,.Ledger-mode.provides.a.rap | 
| 2ee80 |  69 64 20 77 61 79 20 6f 66 0a 6e 61 72 72 6f 77    69 6e 67 20 77 68 61 74 20 69 73 20 64 69 73 70  | id.way.of.narrowing.what.is.disp | 
| 2eea0 |  6c 61 79 65 64 20 69 6e 20 74 68 65 20 62 75 66    66 65 72 20 69 6e 20 61 20 77 61 79 20 74 68 61  | layed.in.the.buffer.in.a.way.tha | 
| 2eec0 |  74 20 69 73 20 73 69 6d 70 6c 65 72 20 74 68 61    6e 0a 74 68 65 20 4c 65 64 67 65 72 20 72 65 67  | t.is.simpler.than.the.Ledger.reg | 
| 2eee0 |  69 73 74 65 72 20 63 6f 6d 6d 61 6e 64 2e 0a 0a    20 20 20 42 61 73 65 64 20 6f 6e 20 74 68 65 20  | ister.command......Based.on.the. | 
| 2ef00 |  45 6d 61 63 73 20 4f 63 63 75 72 20 6d 6f 64 65    20 62 79 20 41 6c 65 78 65 79 20 56 65 72 65 74  | Emacs.Occur.mode.by.Alexey.Veret | 
| 2ef20 |  65 6e 6e 69 6b 6f 76 2c 20 4c 65 64 67 65 72 2d    6f 63 63 75 72 0a 68 69 64 65 73 20 61 6c 6c 20  | ennikov,.Ledger-occur.hides.all. | 
| 2ef40 |  74 72 61 6e 73 61 63 74 69 6f 6e 73 20 74 68 61    74 20 64 6f 20 5f 6e 6f 74 5f 20 6d 65 65 74 20  | transactions.that.do._not_.meet. | 
| 2ef60 |  61 20 73 70 65 63 69 66 69 63 20 72 65 67 75 6c    61 72 20 65 78 70 72 65 73 73 69 6f 6e 2e 0a 54  | a.specific.regular.expression..T | 
| 2ef80 |  68 65 20 72 65 67 75 6c 61 72 20 65 78 70 72 65    73 73 69 6f 6e 20 63 61 6e 20 6d 61 74 63 68 20  | he.regular.expression.can.match. | 
| 2efa0 |  6f 6e 20 61 6e 79 20 70 61 72 74 20 6f 66 20 74    68 65 20 74 72 61 6e 73 61 63 74 69 6f 6e 2e 20  | on.any.part.of.the.transaction.. | 
| 2efc0 |  20 49 66 20 79 6f 75 0a 77 61 6e 74 20 74 6f 20    66 69 6e 64 20 61 6c 6c 20 74 72 61 6e 73 61 63  | .If.you.want.to.find.all.transac | 
| 2efe0 |  74 69 6f 6e 73 20 77 68 6f 73 65 20 61 6d 6f 75    6e 74 20 65 6e 64 73 20 69 6e 20 e2 80 98 2e 33  | tions.whose.amount.ends.in.....3 | 
| 2f000 |  37 e2 80 99 2c 20 79 6f 75 20 63 61 6e 20 64 6f    0a 74 68 61 74 20 28 49 20 64 6f 6e e2 80 99 74  | 7...,.you.can.do.that.(I.don...t | 
| 2f020 |  20 6b 6e 6f 77 20 77 68 79 2c 20 62 75 74 20 68    65 79 2c 20 77 68 61 74 65 76 65 72 20 65 76 65  | .know.why,.but.hey,.whatever.eve | 
| 2f040 |  72 20 66 6c 6f 61 74 73 20 79 6f 75 20 61 65 72    6f 73 74 61 74 29 2e 0a 0a 20 20 20 55 73 69 6e  | r.floats.you.aerostat)......Usin | 
| 2f060 |  67 20 e2 80 98 43 2d 63 20 43 2d 66 e2 80 99 20    6f 72 20 74 68 65 20 e2 80 98 4e 61 72 72 6f 77  | g....C-c.C-f....or.the....Narrow | 
| 2f080 |  20 74 6f 20 52 65 67 65 78 e2 80 99 20 6d 65 6e    75 20 65 6e 74 72 79 2c 20 65 6e 74 65 72 20 61  | .to.Regex....menu.entry,.enter.a | 
| 2f0a0 |  20 72 65 67 75 6c 61 72 0a 65 78 70 72 65 73 73    69 6f 6e 20 69 6e 20 74 68 65 20 4d 69 6e 69 62  | .regular.expression.in.the.Minib | 
| 2f0c0 |  75 66 66 65 72 2e 20 20 4c 65 64 67 65 72 2d 6d    6f 64 65 20 77 69 6c 6c 20 68 69 64 65 20 61 6c  | uffer...Ledger-mode.will.hide.al | 
| 2f0e0 |  6c 20 6f 74 68 65 72 0a 74 72 61 6e 73 61 63 74    69 6f 6e 73 2e 20 20 46 6f 72 20 64 65 74 61 69  | l.other.transactions...For.detai | 
| 2f100 |  6c 73 20 6f 66 20 74 68 65 20 72 65 67 75 6c 61    72 20 65 78 70 72 65 73 73 69 6f 6e 20 73 79 6e  | ls.of.the.regular.expression.syn | 
| 2f120 |  74 61 78 2c 20 73 65 65 20 79 6f 75 72 0a 45 6d    61 63 73 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f  | tax,.see.your.Emacs.documentatio | 
| 2f140 |  6e 2e 20 20 41 20 66 65 77 20 65 78 61 6d 70 6c    65 73 20 75 73 69 6e 67 20 74 68 65 20 e2 80 98  | n...A.few.examples.using.the.... | 
| 2f160 |  64 65 6d 6f 2e 6c 65 64 67 65 72 e2 80 99 20 61    72 65 20 67 69 76 65 6e 0a 68 65 72 65 3a 0a 0a  | demo.ledger....are.given.here:.. | 
| 2f180 |  e2 80 98 47 72 6f 63 65 72 69 65 73 e2 80 99 0a    20 20 20 20 20 53 68 6f 77 20 6f 6e 6c 79 20 74  | ...Groceries.........Show.only.t | 
| 2f1a0 |  72 61 6e 73 61 63 74 69 6f 6e 73 20 74 68 61 74    20 68 61 76 65 20 61 20 70 6f 73 74 69 6e 67 20  | ransactions.that.have.a.posting. | 
| 2f1c0 |  74 6f 20 74 68 65 20 e2 80 98 47 72 6f 63 65 72    69 65 73 e2 80 99 0a 20 20 20 20 20 61 63 63 6f  | to.the....Groceries.........acco | 
| 2f1e0 |  75 6e 74 2e 0a 0a e2 80 98 5e 32 30 31 31 2f 30    31 e2 80 99 0a 20 20 20 20 20 53 68 6f 77 20 6f  | unt......^2011/01.........Show.o | 
| 2f200 |  6e 6c 79 20 74 72 61 6e 73 61 63 74 69 6f 6e 73    20 6f 63 63 75 72 72 69 6e 67 20 69 6e 20 4a 61  | nly.transactions.occurring.in.Ja | 
| 2f220 |  6e 75 61 72 79 20 6f 66 20 32 30 31 31 2e 0a 0a    e2 80 98 5e 32 30 31 31 2f 2e 2a 2f 32 35 e2 80  | nuary.of.2011......^2011/.*/25.. | 
| 2f240 |  99 0a 20 20 20 20 20 53 68 6f 77 20 6f 6e 6c 79    20 74 72 61 6e 73 61 63 74 69 6f 6e 73 20 6f 63  | .......Show.only.transactions.oc | 
| 2f260 |  63 75 72 72 69 6e 67 20 6f 6e 20 74 68 65 20 32    35 74 68 20 6f 66 20 74 68 65 20 6d 6f 6e 74 68  | curring.on.the.25th.of.the.month | 
| 2f280 |  20 69 6e 20 32 30 31 31 2e 0a 0a e2 80 98 61 75    74 6f e2 80 99 0a 20 20 20 20 20 53 68 6f 77 20  | .in.2011......auto.........Show. | 
| 2f2a0 |  6f 6e 6c 79 20 74 72 61 6e 73 61 63 74 69 6f 6e    73 20 77 69 74 68 20 70 61 79 65 65 73 20 6f 72  | only.transactions.with.payees.or | 
| 2f2c0 |  20 61 63 63 6f 75 6e 74 73 20 6f 72 20 63 6f 6d    6d 65 6e 74 73 0a 20 20 20 20 20 63 6f 6e 74 61  | .accounts.or.comments......conta | 
| 2f2e0 |  69 6e 69 6e 67 2e 20 20 e2 80 98 61 75 74 6f e2    80 99 0a 0a e2 80 98 68 61 72 6c 65 79 24 e2 80  | ining......auto........harley$.. | 
| 2f300 |  99 0a 20 20 20 20 20 53 68 6f 77 20 6f 6e 6c 79    20 74 72 61 6e 73 61 63 74 69 6f 6e 73 20 77 69  | .......Show.only.transactions.wi | 
| 2f320 |  74 68 20 61 6e 79 20 6c 69 6e 65 20 65 6e 64 69    6e 67 20 77 69 74 68 20 e2 80 98 68 61 72 6c 65  | th.any.line.ending.with....harle | 
| 2f340 |  79 e2 80 99 2e 0a 0a 20 20 20 54 6f 20 73 68 6f    77 20 62 61 63 6b 20 61 6c 6c 20 74 72 61 6e 73  | y.........To.show.back.all.trans | 
| 2f360 |  61 63 74 69 6f 6e 73 20 73 69 6d 70 6c 79 20 69    6e 76 6f 6b 65 20 e2 80 98 4e 61 72 72 6f 77 20  | actions.simply.invoke....Narrow. | 
| 2f380 |  74 6f 20 52 65 67 65 78 e2 80 99 20 6f 72 20 e2    80 98 43 2d 63 0a 43 2d 66 e2 80 99 20 61 67 61  | to.Regex....or....C-c.C-f....aga | 
| 2f3a0 |  69 6e 2e 0a 0a 20 20 20 49 66 20 79 6f 75 e2 80    99 76 65 20 65 64 69 74 65 64 20 73 6f 6d 65 20  | in......If.you...ve.edited.some. | 
| 2f3c0 |  74 72 61 6e 73 61 63 74 69 6f 6e 73 20 61 66 74    65 72 20 6e 61 72 72 6f 77 69 6e 67 20 73 75 63  | transactions.after.narrowing.suc | 
| 2f3e0 |  68 20 74 68 61 74 20 74 68 65 79 0a 77 6f 75 6c    64 20 6e 6f 20 6c 6f 6e 67 65 72 20 6d 61 74 63  | h.that.they.would.no.longer.matc | 
| 2f400 |  68 20 74 68 65 20 72 65 67 75 6c 61 72 20 65 78    70 72 65 73 73 69 6f 6e 2c 20 79 6f 75 20 63 61  | h.the.regular.expression,.you.ca | 
| 2f420 |  6e 20 72 65 66 72 65 73 68 20 74 68 65 0a 6e 61    72 72 6f 77 65 64 20 76 69 65 77 20 75 73 69 6e  | n.refresh.the.narrowed.view.usin | 
| 2f440 |  67 20 e2 80 98 43 2d 63 20 43 2d 67 e2 80 99 2e    0a 0a 1f 0a 46 69 6c 65 3a 20 6c 65 64 67 65 72  | g....C-c.C-g........File:.ledger | 
| 2f460 |  2d 6d 6f 64 65 2e 69 6e 66 6f 2c 20 20 4e 6f 64    65 3a 20 54 68 65 20 52 65 63 6f 6e 63 69 6c 65  | -mode.info,..Node:.The.Reconcile | 
| 2f480 |  20 42 75 66 66 65 72 2c 20 20 4e 65 78 74 3a 20    54 68 65 20 52 65 70 6f 72 74 20 42 75 66 66 65  | .Buffer,..Next:.The.Report.Buffe | 
| 2f4a0 |  72 2c 20 20 50 72 65 76 3a 20 54 68 65 20 4c 65    64 67 65 72 20 42 75 66 66 65 72 2c 20 20 55 70  | r,..Prev:.The.Ledger.Buffer,..Up | 
| 2f4c0 |  3a 20 54 6f 70 0a 0a 33 20 54 68 65 20 52 65 63    6f 6e 63 69 6c 65 20 42 75 66 66 65 72 0a 2a 2a  | :.Top..3.The.Reconcile.Buffer.** | 
| 2f4e0 |  2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a    2a 2a 2a 2a 0a 0a 2a 20 4d 65 6e 75 3a 0a 0a 2a  | ********************..*.Menu:..* | 
| 2f500 |  20 42 61 73 69 63 73 20 6f 66 20 52 65 63 6f 6e    63 69 6c 69 61 74 69 6f 6e 3a 3a 0a 2a 20 53 74  | .Basics.of.Reconciliation::.*.St | 
| 2f520 |  61 72 74 69 6e 67 20 61 20 52 65 63 6f 6e 63 69    6c 69 61 74 69 6f 6e 3a 3a 0a 2a 20 4d 61 72 6b  | arting.a.Reconciliation::.*.Mark | 
| 2f540 |  20 54 72 61 6e 73 61 63 74 69 6f 6e 73 20 50 65    6e 64 69 6e 67 3a 3a 0a 2a 20 45 64 69 74 20 54  | .Transactions.Pending::.*.Edit.T | 
| 2f560 |  72 61 6e 73 61 63 74 69 6f 6e 73 20 44 75 72 69    6e 67 20 52 65 63 6f 6e 63 69 6c 69 61 74 69 6f  | ransactions.During.Reconciliatio | 
| 2f580 |  6e 3a 3a 0a 2a 20 46 69 6e 61 6c 69 7a 65 20 52    65 63 6f 6e 63 69 6c 69 61 74 69 6f 6e 3a 3a 0a  | n::.*.Finalize.Reconciliation::. | 
| 2f5a0 |  2a 20 41 64 64 69 6e 67 20 61 6e 64 20 44 65 6c    65 74 69 6e 67 20 54 72 61 6e 73 61 63 74 69 6f  | *.Adding.and.Deleting.Transactio | 
| 2f5c0 |  6e 73 20 64 75 72 69 6e 67 20 52 65 63 6f 6e 63    69 6c 69 61 74 69 6f 6e 3a 3a 0a 2a 20 43 68 61  | ns.during.Reconciliation::.*.Cha | 
| 2f5e0 |  6e 67 69 6e 67 20 52 65 63 6f 6e 63 69 6c 69 61    74 69 6f 6e 20 41 63 63 6f 75 6e 74 3a 3a 0a 2a  | nging.Reconciliation.Account::.* | 
| 2f600 |  20 43 68 61 6e 67 69 6e 67 20 52 65 63 6f 6e 63    69 6c 69 61 74 69 6f 6e 20 54 61 72 67 65 74 3a  | .Changing.Reconciliation.Target: | 
| 2f620 |  3a 0a 0a 1f 0a 46 69 6c 65 3a 20 6c 65 64 67 65    72 2d 6d 6f 64 65 2e 69 6e 66 6f 2c 20 20 4e 6f  | :....File:.ledger-mode.info,..No | 
| 2f640 |  64 65 3a 20 42 61 73 69 63 73 20 6f 66 20 52 65    63 6f 6e 63 69 6c 69 61 74 69 6f 6e 2c 20 20 4e  | de:.Basics.of.Reconciliation,..N | 
| 2f660 |  65 78 74 3a 20 53 74 61 72 74 69 6e 67 20 61 20    52 65 63 6f 6e 63 69 6c 69 61 74 69 6f 6e 2c 20  | ext:.Starting.a.Reconciliation,. | 
| 2f680 |  20 50 72 65 76 3a 20 54 68 65 20 52 65 63 6f 6e    63 69 6c 65 20 42 75 66 66 65 72 2c 20 20 55 70  | .Prev:.The.Reconcile.Buffer,..Up | 
| 2f6a0 |  3a 20 54 68 65 20 52 65 63 6f 6e 63 69 6c 65 20    42 75 66 66 65 72 0a 0a 33 2e 31 20 42 61 73 69  | :.The.Reconcile.Buffer..3.1.Basi | 
| 2f6c0 |  63 73 20 6f 66 20 52 65 63 6f 6e 63 69 6c 69 61    74 69 6f 6e 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  | cs.of.Reconciliation.=========== | 
| 2f6e0 |  3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d    3d 0a 0a 45 76 65 6e 20 69 6e 20 74 68 69 73 20  | =================..Even.in.this. | 
| 2f700 |  72 65 6c 61 74 69 76 65 6c 79 20 6d 6f 64 65 72    6e 20 65 72 61 2c 20 66 69 6e 61 6e 63 69 61 6c  | relatively.modern.era,.financial | 
| 2f720 |  20 74 72 61 6e 73 61 63 74 69 6f 6e 73 20 64 6f    20 6e 6f 74 20 68 61 70 70 65 6e 0a 69 6e 73 74  | .transactions.do.not.happen.inst | 
| 2f740 |  61 6e 74 61 6e 65 6f 75 73 6c 79 2c 20 75 6e 6c    65 73 73 20 79 6f 75 20 61 72 65 20 70 61 79 69  | antaneously,.unless.you.are.payi | 
| 2f760 |  6e 67 20 63 61 73 68 2e 20 20 57 68 65 6e 20 79    6f 75 20 73 77 69 70 65 20 79 6f 75 72 20 64 65  | ng.cash...When.you.swipe.your.de | 
| 2f780 |  62 69 74 0a 63 61 72 64 20 74 68 65 20 6d 6f 6e    65 79 20 6d 61 79 20 74 61 6b 65 20 73 65 76 65  | bit.card.the.money.may.take.seve | 
| 2f7a0 |  72 61 6c 20 64 61 79 73 20 74 6f 20 61 63 74 75    61 6c 6c 79 20 63 6f 6d 65 20 6f 75 74 20 6f 66  | ral.days.to.actually.come.out.of | 
| 2f7c0 |  20 79 6f 75 72 0a 61 63 63 6f 75 6e 74 2c 20 6f    72 20 61 20 63 68 65 63 6b 20 6d 61 79 20 74 61  | .your.account,.or.a.check.may.ta | 
| 2f7e0 |  6b 65 20 73 65 76 65 72 61 6c 20 64 61 79 73 20    74 6f 20 5f 63 6c 65 61 72 5f 2e 20 20 54 68 61  | ke.several.days.to._clear_...Tha | 
| 2f800 |  74 20 69 73 20 74 68 65 20 72 6f 6f 74 0a 6f 66    20 74 68 65 20 64 69 66 66 65 72 65 6e 63 65 20  | t.is.the.root.of.the.difference. | 
| 2f820 |  62 65 74 77 65 65 6e 20 5f 6f 62 6c 69 67 61 74    69 6e 67 5f 20 66 75 6e 64 73 20 61 6e 64 20 5f  | between._obligating_.funds.and._ | 
| 2f840 |  65 78 70 65 6e 64 69 6e 67 5f 20 66 75 6e 64 73    2e 0a 4f 62 6c 69 67 61 74 69 6f 6e 20 73 61 79  | expending_.funds..Obligation.say | 
| 2f860 |  73 20 79 6f 75 20 68 61 76 65 20 61 67 72 65 65    64 20 74 6f 20 70 61 79 20 69 74 2c 20 74 68 65  | s.you.have.agreed.to.pay.it,.the | 
| 2f880 |  20 65 78 70 65 6e 64 69 74 75 72 65 20 64 6f 65    73 6e e2 80 99 74 0a 68 61 70 70 65 6e 20 75 6e  | .expenditure.doesn...t.happen.un | 
| 2f8a0 |  74 69 6c 20 74 68 65 20 6d 6f 6e 65 79 20 61 63    74 75 61 6c 6c 79 20 6c 65 61 76 65 73 20 79 6f  | til.the.money.actually.leaves.yo | 
| 2f8c0 |  75 72 20 61 63 63 6f 75 6e 74 2e 20 20 4f 72 20    69 6e 20 74 68 65 20 63 61 73 65 20 6f 66 0a 72  | ur.account...Or.in.the.case.of.r | 
| 2f8e0 |  65 63 65 69 76 69 6e 67 20 70 61 79 6d 65 6e 74    2c 20 79 6f 75 20 68 61 76 65 20 61 6e 20 61 63  | eceiving.payment,.you.have.an.ac | 
| 2f900 |  63 6f 75 6e 74 20 72 65 63 65 69 76 61 62 6c 65    20 75 6e 74 69 6c 20 74 68 65 20 6d 6f 6e 65 79  | count.receivable.until.the.money | 
| 2f920 |  20 68 61 73 0a 61 63 74 75 61 6c 6c 79 20 6d 61    64 65 20 69 74 20 74 6f 20 79 6f 75 2e 0a 0a 20  | .has.actually.made.it.to.you.... | 
| 2f940 |  20 20 41 66 74 65 72 20 61 6e 20 61 63 63 6f 75    6e 74 20 68 61 73 20 62 65 65 6e 20 72 65 63 6f  | ..After.an.account.has.been.reco | 
| 2f960 |  6e 63 69 6c 65 64 20 79 6f 75 20 68 61 76 65 20    76 65 72 69 66 69 65 64 20 74 68 61 74 20 61 6c  | nciled.you.have.verified.that.al | 
| 2f980 |  6c 20 74 68 65 0a 74 72 61 6e 73 61 63 74 69 6f    6e 73 20 69 6e 20 74 68 61 74 20 61 63 63 6f 75  | l.the.transactions.in.that.accou | 
| 2f9a0 |  6e 74 20 68 61 76 65 20 62 65 65 6e 20 63 6f 72    72 65 63 74 6c 79 20 72 65 63 6f 72 64 65 64 20  | nt.have.been.correctly.recorded. | 
| 2f9c0 |  61 6e 64 20 61 6c 6c 0a 70 61 72 74 69 65 73 20    61 67 72 65 65 2e 0a 0a 1f 0a 46 69 6c 65 3a 20  | and.all.parties.agree.....File:. | 
| 2f9e0 |  6c 65 64 67 65 72 2d 6d 6f 64 65 2e 69 6e 66 6f    2c 20 20 4e 6f 64 65 3a 20 53 74 61 72 74 69 6e  | ledger-mode.info,..Node:.Startin | 
| 2fa00 |  67 20 61 20 52 65 63 6f 6e 63 69 6c 69 61 74 69    6f 6e 2c 20 20 4e 65 78 74 3a 20 4d 61 72 6b 20  | g.a.Reconciliation,..Next:.Mark. | 
| 2fa20 |  54 72 61 6e 73 61 63 74 69 6f 6e 73 20 50 65 6e    64 69 6e 67 2c 20 20 50 72 65 76 3a 20 42 61 73  | Transactions.Pending,..Prev:.Bas | 
| 2fa40 |  69 63 73 20 6f 66 20 52 65 63 6f 6e 63 69 6c 69    61 74 69 6f 6e 2c 20 20 55 70 3a 20 54 68 65 20  | ics.of.Reconciliation,..Up:.The. | 
| 2fa60 |  52 65 63 6f 6e 63 69 6c 65 20 42 75 66 66 65 72    0a 0a 33 2e 32 20 53 74 61 72 74 69 6e 67 20 61  | Reconcile.Buffer..3.2.Starting.a | 
| 2fa80 |  20 52 65 63 6f 6e 63 69 6c 69 61 74 69 6f 6e 0a    3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  | .Reconciliation.================ | 
| 2faa0 |  3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 0a 54    6f 20 73 74 61 72 74 20 72 65 63 6f 6e 63 69 6c  | =============..To.start.reconcil | 
| 2fac0 |  69 6e 67 20 61 6e 20 61 63 63 6f 75 6e 74 20 79    6f 75 20 6d 75 73 74 20 68 61 76 65 20 61 20 74  | ing.an.account.you.must.have.a.t | 
| 2fae0 |  61 72 67 65 74 2c 20 62 6f 74 68 20 74 68 65 0a    74 72 61 6e 73 61 63 74 69 6f 6e 73 20 74 68 61  | arget,.both.the.transactions.tha | 
| 2fb00 |  74 20 79 6f 75 20 6b 6e 6f 77 20 61 62 6f 75 74    20 61 6e 64 20 74 68 65 20 74 72 61 6e 73 61 63  | t.you.know.about.and.the.transac | 
| 2fb20 |  74 69 6f 6e 73 20 74 68 65 20 62 61 6e 6b 20 6b    6e 6f 77 73 0a 61 62 6f 75 74 2e 20 20 59 6f 75  | tions.the.bank.knows.about...You | 
| 2fb40 |  20 63 61 6e 20 67 65 74 20 74 68 69 73 20 66 72    6f 6d 20 61 20 6d 6f 6e 74 68 6c 79 20 73 74 61  | .can.get.this.from.a.monthly.sta | 
| 2fb60 |  74 65 6d 65 6e 74 2c 20 6f 72 20 66 72 6f 6d 20    63 68 65 63 6b 69 6e 67 20 79 6f 75 72 0a 6f 6e  | tement,.or.from.checking.your.on | 
| 2fb80 |  2d 6c 69 6e 65 20 74 72 61 6e 73 61 63 74 69 6f    6e 20 68 69 73 74 6f 72 79 2e 20 20 49 74 20 61  | -line.transaction.history...It.a | 
| 2fba0 |  6c 73 6f 20 68 65 6c 70 73 20 69 6d 6d 65 6e 73    65 6c 79 20 74 6f 20 6b 6e 6f 77 20 74 68 65 20  | lso.helps.immensely.to.know.the. | 
| 2fbc0 |  66 69 6e 61 6c 0a 63 6c 65 61 72 65 64 20 62 61    6c 61 6e 63 65 20 79 6f 75 20 61 72 65 20 61 69  | final.cleared.balance.you.are.ai | 
| 2fbe0 |  6d 69 6e 67 20 66 6f 72 2e 0a 0a 20 20 20 55 73    65 20 6d 65 6e 75 20 e2 80 98 52 65 63 6f 6e 63  | ming.for......Use.menu....Reconc | 
| 2fc00 |  69 6c 65 20 41 63 63 6f 75 6e 74 e2 80 99 20 6f    72 20 6b 65 79 62 6f 61 72 64 20 73 68 6f 72 74  | ile.Account....or.keyboard.short | 
| 2fc20 |  63 75 74 20 e2 80 98 43 2d 63 20 43 2d 72 e2 80    99 20 74 6f 20 73 74 61 72 74 0a 72 65 63 6f 6e  | cut....C-c.C-r....to.start.recon | 
| 2fc40 |  63 69 6c 69 61 74 69 6f 6e 2e 0a 0a 20 20 20 49    66 20 63 75 72 73 6f 72 20 69 73 20 6f 6e 20 61  | ciliation......If.cursor.is.on.a | 
| 2fc60 |  6e 20 61 63 63 6f 75 6e 74 2c 20 4c 65 64 67 65    72 2d 6d 6f 64 65 20 77 69 6c 6c 20 70 72 6f 70  | n.account,.Ledger-mode.will.prop | 
| 2fc80 |  6f 73 65 20 74 68 69 73 20 61 63 63 6f 75 6e 74    2c 20 6f 72 0a 69 6e 20 74 68 65 20 4d 69 6e 69  | ose.this.account,.or.in.the.Mini | 
| 2fca0 |  62 75 66 66 65 72 2c 20 77 69 6c 6c 20 70 72 6f    6d 70 74 20 66 6f 72 20 61 6e 20 61 63 63 6f 75  | buffer,.will.prompt.for.an.accou | 
| 2fcc0 |  6e 74 20 74 6f 20 72 65 63 6f 6e 63 69 6c 65 2e    20 20 48 69 74 20 e2 80 98 52 45 54 e2 80 99 0a  | nt.to.reconcile...Hit....RET.... | 
| 2fce0 |  69 66 20 79 6f 75 20 61 72 65 20 68 61 70 70 79    20 77 69 74 68 20 70 72 6f 70 6f 73 65 64 20 61  | if.you.are.happy.with.proposed.a | 
| 2fd00 |  63 63 6f 75 6e 74 2c 20 6f 72 20 65 6e 74 65 72    20 e2 80 98 43 68 65 63 6b 69 6e 67 e2 80 99 20  | ccount,.or.enter....Checking.... | 
| 2fd20 |  61 73 20 65 78 61 6d 70 6c 65 2e 0a 4c 65 64 67    65 72 2d 6d 6f 64 65 20 69 73 20 6e 6f 74 20 70  | as.example..Ledger-mode.is.not.p | 
| 2fd40 |  61 72 74 69 63 75 6c 61 72 20 61 62 6f 75 74 20    77 68 61 74 20 79 6f 75 20 65 6e 74 65 72 20 66  | articular.about.what.you.enter.f | 
| 2fd60 |  6f 72 20 74 68 65 20 61 63 63 6f 75 6e 74 2e 20    20 59 6f 75 0a 63 61 6e 20 6c 65 61 76 65 20 69  | or.the.account...You.can.leave.i | 
| 2fd80 |  74 20 62 6c 61 6e 6b 20 61 6e 64 20 e2 80 98 2a    52 65 63 6f 6e 63 69 6c 65 2a e2 80 99 20 62 75  | t.blank.and....*Reconcile*....bu | 
| 2fda0 |  66 66 65 72 20 77 69 6c 6c 20 73 68 6f 77 20 79    6f 75 20 5f 61 6c 6c 5f 0a 75 6e 63 6c 65 61 72  | ffer.will.show.you._all_.unclear | 
| 2fdc0 |  65 64 20 74 72 61 6e 73 61 63 74 69 6f 6e 73 2e    0a 0a 20 20 20 41 66 74 65 72 20 79 6f 75 20 65  | ed.transactions......After.you.e | 
| 2fde0 |  6e 74 65 72 20 74 68 65 20 61 63 63 6f 75 6e 74    20 65 6e 74 65 72 20 74 68 65 20 74 61 72 67 65  | nter.the.account.enter.the.targe | 
| 2fe00 |  74 20 61 6d 6f 75 6e 74 2e 20 20 49 74 20 69 73    20 68 65 6c 70 66 75 6c 0a 74 6f 20 65 6e 74 65  | t.amount...It.is.helpful.to.ente | 
| 2fe20 |  72 20 61 6e 20 61 6d 6f 75 6e 74 20 77 69 74 68    20 61 20 63 6f 6d 6d 6f 64 69 74 79 2e 20 20 59  | r.an.amount.with.a.commodity...Y | 
| 2fe40 |  6f 75 20 63 61 6e 20 61 6c 73 6f 20 6c 65 61 76    65 20 69 74 20 62 6c 61 6e 6b 2c 20 79 6f 75 0a  | ou.can.also.leave.it.blank,.you. | 
| 2fe60 |  77 69 6c 6c 20 62 65 20 61 62 6c 65 20 74 6f 20    63 6c 65 61 72 20 74 72 61 6e 73 61 63 74 69 6f  | will.be.able.to.clear.transactio | 
| 2fe80 |  6e 73 20 62 75 74 20 6e 6f 74 20 62 65 6e 65 66    69 74 20 66 72 6f 6d 20 62 61 6c 61 6e 63 65 0a  | ns.but.not.benefit.from.balance. | 
| 2fea0 |  63 61 6c 63 75 6c 61 74 69 6f 6e 73 2e 20 20 49    74 20 61 73 73 75 6d 65 73 20 69 6e 69 74 69 61  | calculations...It.assumes.initia | 
| 2fec0 |  6c 6c 79 20 74 68 61 74 20 79 6f 75 20 61 72 65    20 75 73 69 6e 67 20 e2 80 98 24 e2 80 99 20 28  | lly.that.you.are.using....$....( | 
| 2fee0 |  55 53 44 29 20 61 73 20 79 6f 75 72 0a 64 65 66    61 75 6c 74 20 63 6f 6d 6d 6f 64 69 74 79 2e 20  | USD).as.your.default.commodity.. | 
| 2ff00 |  20 49 66 20 79 6f 75 20 61 72 65 20 77 6f 72 6b    69 6e 67 20 69 6e 20 61 20 64 69 66 66 65 72 65  | .If.you.are.working.in.a.differe | 
| 2ff20 |  6e 74 20 63 75 72 72 65 6e 63 79 20 79 6f 75 20    63 61 6e 0a 63 68 61 6e 67 65 20 74 68 65 20 64  | nt.currency.you.can.change.the.d | 
| 2ff40 |  65 66 61 75 6c 74 20 69 6e 20 76 61 72 69 61 62    6c 65 20 e2 80 98 6c 65 64 67 65 72 2d 72 65 63  | efault.in.variable....ledger-rec | 
| 2ff60 |  6f 6e 63 69 6c 65 2d 64 65 66 61 75 6c 74 2d 63    6f 6d 6d 6f 64 69 74 79 e2 80 99 20 74 6f 0a 77  | oncile-default-commodity....to.w | 
| 2ff80 |  68 61 74 65 76 65 72 20 79 6f 75 20 6e 65 65 64    2e 20 20 49 66 20 79 6f 75 20 77 6f 72 6b 20 69  | hatever.you.need...If.you.work.i | 
| 2ffa0 |  6e 20 6d 75 6c 74 69 70 6c 65 20 63 6f 6d 6d 6f    64 69 74 69 65 73 20 73 69 6d 70 6c 79 20 65 6e  | n.multiple.commodities.simply.en | 
| 2ffc0 |  74 65 72 20 74 68 65 0a 63 6f 6d 6d 6f 64 69 74    69 7a 65 64 20 61 6d 6f 75 6e 74 20 28 66 6f 72  | ter.the.commoditized.amount.(for | 
| 2ffe0 |  20 65 78 61 6d 70 6c 65 20 e2 80 98 33 34 30 20    56 53 44 58 e2 80 99 2c 20 66 6f 72 20 33 34 30  | .example....340.VSDX...,.for.340 | 
| 30000 |  20 73 68 61 72 65 73 20 6f 66 20 56 53 44 58 29    2e 0a 0a 20 20 20 4c 65 64 67 65 72 2d 6d 6f 64  | .shares.of.VSDX)......Ledger-mod | 
| 30020 |  65 20 72 65 63 6f 6e 63 69 6c 65 20 63 61 6e 6e    6f 74 20 63 75 72 72 65 6e 74 6c 79 20 72 65 63  | e.reconcile.cannot.currently.rec | 
| 30040 |  6f 6e 63 69 6c 65 20 61 63 63 6f 75 6e 74 73 20    74 68 61 74 20 68 61 76 65 0a 6d 75 6c 74 69 70  | oncile.accounts.that.have.multip | 
| 30060 |  6c 65 20 63 6f 6d 6d 6f 64 69 74 69 65 73 2c 20    73 75 63 68 20 61 73 20 62 72 6f 6b 65 72 61 67  | le.commodities,.such.as.brokerag | 
| 30080 |  65 20 61 63 63 6f 75 6e 74 73 2e 20 20 59 6f 75    20 6d 61 79 20 75 73 65 0a 72 65 63 6f 6e 63 69  | e.accounts...You.may.use.reconci | 
| 300a0 |  6c 69 61 74 69 6f 6e 20 6d 6f 64 65 20 74 6f 20    63 6c 65 61 72 20 74 72 61 6e 73 61 63 74 69 6f  | liation.mode.to.clear.transactio | 
| 300c0 |  6e 73 2c 20 62 75 74 20 62 61 6c 61 6e 63 65 20    63 61 6c 63 75 6c 61 74 69 6f 6e 73 20 77 69 6c  | ns,.but.balance.calculations.wil | 
| 300e0 |  6c 0a 6e 6f 74 20 64 69 73 70 6c 61 79 20 74 68    65 20 63 6f 6d 70 6c 65 74 65 20 6c 69 73 74 20  | l.not.display.the.complete.list. | 
| 30100 |  6f 66 20 63 6f 6d 6d 6f 64 69 74 69 65 73 2e 0a    0a 1f 0a 46 69 6c 65 3a 20 6c 65 64 67 65 72 2d  | of.commodities.....File:.ledger- | 
| 30120 |  6d 6f 64 65 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65    3a 20 4d 61 72 6b 20 54 72 61 6e 73 61 63 74 69  | mode.info,..Node:.Mark.Transacti | 
| 30140 |  6f 6e 73 20 50 65 6e 64 69 6e 67 2c 20 20 4e 65    78 74 3a 20 45 64 69 74 20 54 72 61 6e 73 61 63  | ons.Pending,..Next:.Edit.Transac | 
| 30160 |  74 69 6f 6e 73 20 44 75 72 69 6e 67 20 52 65 63    6f 6e 63 69 6c 69 61 74 69 6f 6e 2c 20 20 50 72  | tions.During.Reconciliation,..Pr | 
| 30180 |  65 76 3a 20 53 74 61 72 74 69 6e 67 20 61 20 52    65 63 6f 6e 63 69 6c 69 61 74 69 6f 6e 2c 20 20  | ev:.Starting.a.Reconciliation,.. | 
| 301a0 |  55 70 3a 20 54 68 65 20 52 65 63 6f 6e 63 69 6c    65 20 42 75 66 66 65 72 0a 0a 33 2e 33 20 4d 61  | Up:.The.Reconcile.Buffer..3.3.Ma | 
| 301c0 |  72 6b 20 54 72 61 6e 73 61 63 74 69 6f 6e 73 20    50 65 6e 64 69 6e 67 0a 3d 3d 3d 3d 3d 3d 3d 3d  | rk.Transactions.Pending.======== | 
| 301e0 |  3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d    3d 3d 3d 3d 3d 0a 0a 54 68 65 20 e2 80 98 2a 52  | =====================..The....*R | 
| 30200 |  65 63 6f 6e 63 69 6c 65 2a e2 80 99 20 62 75 66    66 65 72 20 77 69 6c 6c 20 73 68 6f 77 20 61 6c  | econcile*....buffer.will.show.al | 
| 30220 |  6c 20 74 68 65 20 75 6e 63 6c 65 61 72 65 64 20    74 72 61 6e 73 61 63 74 69 6f 6e 73 20 74 68 61  | l.the.uncleared.transactions.tha | 
| 30240 |  74 0a 6d 65 65 74 20 74 68 65 20 63 72 69 74 65    72 69 61 20 73 65 74 20 69 6e 20 74 68 65 20 72  | t.meet.the.criteria.set.in.the.r | 
| 30260 |  65 67 65 78 2e 20 20 42 79 20 64 65 66 61 75 6c    74 20 75 6e 63 6c 65 61 72 65 64 20 74 72 61 6e  | egex...By.default.uncleared.tran | 
| 30280 |  73 61 63 74 69 6f 6e 73 0a 61 72 65 20 73 68 6f    77 6e 20 69 6e 20 72 65 64 2e 20 20 57 68 65 6e  | sactions.are.shown.in.red...When | 
| 302a0 |  20 79 6f 75 20 68 61 76 65 20 76 65 72 69 66 69    65 64 20 74 68 61 74 20 61 20 74 72 61 6e 73 61  | .you.have.verified.that.a.transa | 
| 302c0 |  63 74 69 6f 6e 20 68 61 73 20 62 65 65 6e 0a 63    6f 72 72 65 63 74 6c 79 20 61 6e 64 20 63 6f 6d  | ction.has.been.correctly.and.com | 
| 302e0 |  70 6c 65 74 65 6c 79 20 72 65 63 6f 72 64 65 64    20 62 79 20 74 68 65 20 6f 70 70 6f 73 69 6e 67  | pletely.recorded.by.the.opposing | 
| 30300 |  20 70 61 72 74 79 2c 20 6d 61 72 6b 20 74 68 65    0a 74 72 61 6e 73 61 63 74 69 6f 6e 20 61 73 20  | .party,.mark.the.transaction.as. | 
| 30320 |  70 65 6e 64 69 6e 67 20 75 73 69 6e 67 20 74 68    65 20 e2 80 98 53 50 43 e2 80 99 20 62 61 72 2e  | pending.using.the....SPC....bar. | 
| 30340 |  20 20 43 6f 6e 74 69 6e 75 65 20 74 68 69 73 20    70 72 6f 63 65 73 73 20 75 6e 74 69 6c 0a 79 6f  | ..Continue.this.process.until.yo | 
| 30360 |  75 20 61 67 72 65 65 20 77 69 74 68 20 74 68 65    20 6f 70 70 6f 73 69 6e 67 20 70 61 72 74 79 20  | u.agree.with.the.opposing.party. | 
| 30380 |  61 6e 64 20 74 68 65 20 64 69 66 66 65 72 65 6e    63 65 20 66 72 6f 6d 20 79 6f 75 72 20 74 61 72  | and.the.difference.from.your.tar | 
| 303a0 |  67 65 74 20 69 73 0a 7a 65 72 6f 2e 0a 0a 1f 0a    46 69 6c 65 3a 20 6c 65 64 67 65 72 2d 6d 6f 64  | get.is.zero.....File:.ledger-mod | 
| 303c0 |  65 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 45    64 69 74 20 54 72 61 6e 73 61 63 74 69 6f 6e 73  | e.info,..Node:.Edit.Transactions | 
| 303e0 |  20 44 75 72 69 6e 67 20 52 65 63 6f 6e 63 69 6c    69 61 74 69 6f 6e 2c 20 20 4e 65 78 74 3a 20 46  | .During.Reconciliation,..Next:.F | 
| 30400 |  69 6e 61 6c 69 7a 65 20 52 65 63 6f 6e 63 69 6c    69 61 74 69 6f 6e 2c 20 20 50 72 65 76 3a 20 4d  | inalize.Reconciliation,..Prev:.M | 
| 30420 |  61 72 6b 20 54 72 61 6e 73 61 63 74 69 6f 6e 73    20 50 65 6e 64 69 6e 67 2c 20 20 55 70 3a 20 54  | ark.Transactions.Pending,..Up:.T | 
| 30440 |  68 65 20 52 65 63 6f 6e 63 69 6c 65 20 42 75 66    66 65 72 0a 0a 33 2e 34 20 45 64 69 74 20 54 72  | he.Reconcile.Buffer..3.4.Edit.Tr | 
| 30460 |  61 6e 73 61 63 74 69 6f 6e 73 20 64 75 72 69 6e    67 20 52 65 63 6f 6e 63 69 6c 69 61 74 69 6f 6e  | ansactions.during.Reconciliation | 
| 30480 |  0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d    3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  | .=============================== | 
| 304a0 |  3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 0a 49 66    20 79 6f 75 20 66 69 6e 64 20 65 72 72 6f 72 73  | ============..If.you.find.errors | 
| 304c0 |  20 64 75 72 69 6e 67 20 72 65 63 6f 6e 63 69 6c    69 61 74 69 6f 6e 2e 20 20 59 6f 75 20 63 61 6e  | .during.reconciliation...You.can | 
| 304e0 |  20 76 69 73 69 74 20 74 68 65 20 74 72 61 6e 73    61 63 74 69 6f 6e 0a 75 6e 64 65 72 20 70 6f 69  | .visit.the.transaction.under.poi | 
| 30500 |  6e 74 20 69 6e 20 74 68 65 20 e2 80 98 2a 52 65    63 6f 6e 63 69 6c 65 2a e2 80 99 20 62 75 66 66  | nt.in.the....*Reconcile*....buff | 
| 30520 |  65 72 20 62 79 20 68 69 74 74 69 6e 67 20 74 68    65 20 e2 80 98 52 45 54 e2 80 99 20 6b 65 79 2e  | er.by.hitting.the....RET....key. | 
| 30540 |  20 20 54 68 69 73 0a 77 69 6c 6c 20 74 61 6b 65    20 79 6f 75 20 74 6f 20 74 68 65 20 74 72 61 6e  | ..This.will.take.you.to.the.tran | 
| 30560 |  73 61 63 74 69 6f 6e 20 69 6e 20 74 68 65 20 4c    65 64 67 65 72 20 62 75 66 66 65 72 2e 20 20 57  | saction.in.the.Ledger.buffer...W | 
| 30580 |  68 65 6e 20 79 6f 75 20 68 61 76 65 0a 66 69 6e    69 73 68 65 64 20 65 64 69 74 69 6e 67 20 74 68  | hen.you.have.finished.editing.th | 
| 305a0 |  65 20 74 72 61 6e 73 61 63 74 69 6f 6e 2c 20 73    61 76 69 6e 67 20 74 68 65 20 62 75 66 66 65 72  | e.transaction,.saving.the.buffer | 
| 305c0 |  20 77 69 6c 6c 20 61 75 74 6f 6d 61 74 69 63 61    6c 6c 79 0a 72 65 74 75 72 6e 20 79 6f 75 20 74  | .will.automatically.return.you.t | 
| 305e0 |  6f 20 74 68 65 20 e2 80 98 2a 52 65 63 6f 6e 63    69 6c 65 2a e2 80 99 20 62 75 66 66 65 72 20 61  | o.the....*Reconcile*....buffer.a | 
| 30600 |  6e 64 20 79 6f 75 20 63 61 6e 20 6d 61 72 6b 20    74 68 65 20 74 72 61 6e 73 61 63 74 69 6f 6e 0a  | nd.you.can.mark.the.transaction. | 
| 30620 |  69 66 20 61 70 70 72 6f 70 72 69 61 74 65 2e 0a    0a 1f 0a 46 69 6c 65 3a 20 6c 65 64 67 65 72 2d  | if.appropriate.....File:.ledger- | 
| 30640 |  6d 6f 64 65 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65    3a 20 46 69 6e 61 6c 69 7a 65 20 52 65 63 6f 6e  | mode.info,..Node:.Finalize.Recon | 
| 30660 |  63 69 6c 69 61 74 69 6f 6e 2c 20 20 4e 65 78 74    3a 20 41 64 64 69 6e 67 20 61 6e 64 20 44 65 6c  | ciliation,..Next:.Adding.and.Del | 
| 30680 |  65 74 69 6e 67 20 54 72 61 6e 73 61 63 74 69 6f    6e 73 20 64 75 72 69 6e 67 20 52 65 63 6f 6e 63  | eting.Transactions.during.Reconc | 
| 306a0 |  69 6c 69 61 74 69 6f 6e 2c 20 20 50 72 65 76 3a    20 45 64 69 74 20 54 72 61 6e 73 61 63 74 69 6f  | iliation,..Prev:.Edit.Transactio | 
| 306c0 |  6e 73 20 44 75 72 69 6e 67 20 52 65 63 6f 6e 63    69 6c 69 61 74 69 6f 6e 2c 20 20 55 70 3a 20 54  | ns.During.Reconciliation,..Up:.T | 
| 306e0 |  68 65 20 52 65 63 6f 6e 63 69 6c 65 20 42 75 66    66 65 72 0a 0a 33 2e 35 20 46 69 6e 61 6c 69 7a  | he.Reconcile.Buffer..3.5.Finaliz | 
| 30700 |  65 20 52 65 63 6f 6e 63 69 6c 69 61 74 69 6f 6e    0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  | e.Reconciliation.=============== | 
| 30720 |  3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 0a 4f 6e    63 65 20 79 6f 75 20 68 61 76 65 20 6d 61 72 6b  | ============..Once.you.have.mark | 
| 30740 |  65 64 20 61 6c 6c 20 74 72 61 6e 73 61 63 74 69    6f 6e 73 20 61 73 20 70 65 6e 64 69 6e 67 20 61  | ed.all.transactions.as.pending.a | 
| 30760 |  6e 64 20 74 68 65 20 63 6c 65 61 72 65 64 20 62    61 6c 61 6e 63 65 0a 69 73 20 63 6f 72 72 65 63  | nd.the.cleared.balance.is.correc | 
| 30780 |  74 2e 20 20 46 69 6e 69 73 68 20 74 68 65 20 72    65 63 6f 6e 63 69 6c 69 61 74 69 6f 6e 20 62 79  | t...Finish.the.reconciliation.by | 
| 307a0 |  20 74 79 70 69 6e 67 20 e2 80 98 43 2d 63 20 43    2d 63 e2 80 99 2e 20 20 54 68 69 73 20 6d 61 72  | .typing....C-c.C-c......This.mar | 
| 307c0 |  6b 73 0a 61 6c 6c 20 70 65 6e 64 69 6e 67 20 74    72 61 6e 73 61 63 74 69 6f 6e 73 20 61 73 20 63  | ks.all.pending.transactions.as.c | 
| 307e0 |  6c 65 61 72 65 64 20 61 6e 64 20 73 61 76 65 73    20 74 68 65 20 6c 65 64 67 65 72 20 62 75 66 66  | leared.and.saves.the.ledger.buff | 
| 30800 |  65 72 2e 0a 0a 20 20 20 54 79 70 65 20 e2 80 98    71 e2 80 99 20 74 6f 20 63 6c 6f 73 65 20 6f 75  | er......Type....q....to.close.ou | 
| 30820 |  74 20 74 68 65 20 72 65 63 6f 6e 63 69 6c 69 61    74 69 6f 6e 20 62 75 66 66 65 72 2e 20 20 49 66  | t.the.reconciliation.buffer...If | 
| 30840 |  20 76 61 72 69 61 62 6c 65 0a 4c 45 44 47 45 52    2d 52 45 43 4f 4e 43 49 4c 45 2d 46 49 4e 49 53  | .variable.LEDGER-RECONCILE-FINIS | 
| 30860 |  48 2d 46 4f 52 43 45 2d 51 55 49 54 20 69 73 20    73 65 74 2c 20 74 68 65 20 72 65 63 6f 6e 63 69  | H-FORCE-QUIT.is.set,.the.reconci | 
| 30880 |  6c 69 61 74 69 6f 6e 20 62 75 66 66 65 72 0a 77    69 6c 6c 20 62 65 20 6b 69 6c 6c 65 64 20 61 75  | liation.buffer.will.be.killed.au | 
| 308a0 |  74 6f 6d 61 74 69 63 61 6c 6c 79 20 61 66 74 65    72 20 e2 80 98 43 2d 63 20 43 2d 63 e2 80 99 2e  | tomatically.after....C-c.C-c.... | 
| 308c0 |  0a 0a 1f 0a 46 69 6c 65 3a 20 6c 65 64 67 65 72    2d 6d 6f 64 65 2e 69 6e 66 6f 2c 20 20 4e 6f 64  | ....File:.ledger-mode.info,..Nod | 
| 308e0 |  65 3a 20 41 64 64 69 6e 67 20 61 6e 64 20 44 65    6c 65 74 69 6e 67 20 54 72 61 6e 73 61 63 74 69  | e:.Adding.and.Deleting.Transacti | 
| 30900 |  6f 6e 73 20 64 75 72 69 6e 67 20 52 65 63 6f 6e    63 69 6c 69 61 74 69 6f 6e 2c 20 20 4e 65 78 74  | ons.during.Reconciliation,..Next | 
| 30920 |  3a 20 43 68 61 6e 67 69 6e 67 20 52 65 63 6f 6e    63 69 6c 69 61 74 69 6f 6e 20 41 63 63 6f 75 6e  | :.Changing.Reconciliation.Accoun | 
| 30940 |  74 2c 20 20 50 72 65 76 3a 20 46 69 6e 61 6c 69    7a 65 20 52 65 63 6f 6e 63 69 6c 69 61 74 69 6f  | t,..Prev:.Finalize.Reconciliatio | 
| 30960 |  6e 2c 20 20 55 70 3a 20 54 68 65 20 52 65 63 6f    6e 63 69 6c 65 20 42 75 66 66 65 72 0a 0a 33 2e  | n,..Up:.The.Reconcile.Buffer..3. | 
| 30980 |  36 20 41 64 64 69 6e 67 20 61 6e 64 20 44 65 6c    65 74 69 6e 67 20 54 72 61 6e 73 61 63 74 69 6f  | 6.Adding.and.Deleting.Transactio | 
| 309a0 |  6e 73 20 64 75 72 69 6e 67 20 52 65 63 6f 6e 63    69 6c 69 61 74 69 6f 6e 0a 3d 3d 3d 3d 3d 3d 3d  | ns.during.Reconciliation.======= | 
| 309c0 |  3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d    3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  | ================================ | 
| 309e0 |  3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d    3d 3d 3d 0a 0a 57 68 69 6c 65 20 72 65 63 6f 6e  | ===================..While.recon | 
| 30a00 |  63 69 6c 69 6e 67 2c 20 79 6f 75 20 6d 61 79 20    66 69 6e 64 20 6e 65 77 20 74 72 61 6e 73 61 63  | ciling,.you.may.find.new.transac | 
| 30a20 |  74 69 6f 6e 73 20 74 68 61 74 20 6e 65 65 64 20    74 6f 20 62 65 20 65 6e 74 65 72 65 64 0a 69 6e  | tions.that.need.to.be.entered.in | 
| 30a40 |  74 6f 20 79 6f 75 72 20 6c 65 64 67 65 72 2e 20    20 53 69 6d 70 6c 79 20 74 79 70 65 20 e2 80 98  | to.your.ledger...Simply.type.... | 
| 30a60 |  61 e2 80 99 20 74 6f 20 62 72 69 6e 67 20 75 70    20 74 68 65 20 71 75 69 63 6b 20 61 64 64 20 66  | a....to.bring.up.the.quick.add.f | 
| 30a80 |  6f 72 20 74 68 65 0a 6c 65 64 67 65 72 20 62 75    66 66 65 72 2e 0a 0a 20 20 20 54 79 70 69 6e 67  | or.the.ledger.buffer......Typing | 
| 30aa0 |  20 e2 80 98 64 e2 80 99 20 77 69 6c 6c 20 64 65    6c 65 74 65 20 74 68 65 20 74 72 61 6e 73 61 63  | ....d....will.delete.the.transac | 
| 30ac0 |  74 69 6f 6e 20 75 6e 64 65 72 20 70 6f 69 6e 74    20 69 6e 20 74 68 65 0a e2 80 98 2a 52 65 63 6f  | tion.under.point.in.the....*Reco | 
| 30ae0 |  6e 63 69 6c 65 2a e2 80 99 20 62 75 66 66 65 72    20 66 72 6f 6d 20 74 68 65 20 6c 65 64 67 65 72  | ncile*....buffer.from.the.ledger | 
| 30b00 |  20 62 75 66 66 65 72 2e 0a 0a 1f 0a 46 69 6c 65    3a 20 6c 65 64 67 65 72 2d 6d 6f 64 65 2e 69 6e  | .buffer.....File:.ledger-mode.in | 
| 30b20 |  66 6f 2c 20 20 4e 6f 64 65 3a 20 43 68 61 6e 67    69 6e 67 20 52 65 63 6f 6e 63 69 6c 69 61 74 69  | fo,..Node:.Changing.Reconciliati | 
| 30b40 |  6f 6e 20 41 63 63 6f 75 6e 74 2c 20 20 4e 65 78    74 3a 20 43 68 61 6e 67 69 6e 67 20 52 65 63 6f  | on.Account,..Next:.Changing.Reco | 
| 30b60 |  6e 63 69 6c 69 61 74 69 6f 6e 20 54 61 72 67 65    74 2c 20 20 50 72 65 76 3a 20 41 64 64 69 6e 67  | nciliation.Target,..Prev:.Adding | 
| 30b80 |  20 61 6e 64 20 44 65 6c 65 74 69 6e 67 20 54 72    61 6e 73 61 63 74 69 6f 6e 73 20 64 75 72 69 6e  | .and.Deleting.Transactions.durin | 
| 30ba0 |  67 20 52 65 63 6f 6e 63 69 6c 69 61 74 69 6f 6e    2c 20 20 55 70 3a 20 54 68 65 20 52 65 63 6f 6e  | g.Reconciliation,..Up:.The.Recon | 
| 30bc0 |  63 69 6c 65 20 42 75 66 66 65 72 0a 0a 33 2e 37    20 43 68 61 6e 67 69 6e 67 20 52 65 63 6f 6e 63  | cile.Buffer..3.7.Changing.Reconc | 
| 30be0 |  69 6c 69 61 74 69 6f 6e 20 41 63 63 6f 75 6e 74    0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  | iliation.Account.=============== | 
| 30c00 |  3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d    3d 3d 3d 3d 0a 0a 59 6f 75 20 63 61 6e 20 63 6f  | ====================..You.can.co | 
| 30c20 |  6e 76 65 6e 69 65 6e 74 6c 79 20 73 77 69 74 63    68 20 74 68 65 20 61 63 63 6f 75 6e 74 20 62 65  | nveniently.switch.the.account.be | 
| 30c40 |  69 6e 67 20 72 65 63 6f 6e 63 69 6c 65 64 20 62    79 20 74 79 70 69 6e 67 20 e2 80 98 67 e2 80 99  | ing.reconciled.by.typing....g... | 
| 30c60 |  2c 0a 61 6e 64 20 65 6e 74 65 72 69 6e 67 20 61    20 6e 65 77 20 61 63 63 6f 75 6e 74 20 74 6f 20  | ,.and.entering.a.new.account.to. | 
| 30c80 |  72 65 63 6f 6e 63 69 6c 65 2e 20 20 54 68 69 73    20 73 69 6d 70 6c 79 20 72 65 73 74 61 72 74 73  | reconcile...This.simply.restarts | 
| 30ca0 |  20 74 68 65 0a 72 65 63 6f 6e 63 69 6c 65 20 70    72 6f 63 65 73 73 2e 20 20 41 6e 79 20 74 72 61  | .the.reconcile.process...Any.tra | 
| 30cc0 |  6e 73 61 63 74 69 6f 6e 73 20 74 68 61 74 20 77    65 72 65 20 6d 61 72 6b 65 64 20 5f 70 65 6e 64  | nsactions.that.were.marked._pend | 
| 30ce0 |  69 6e 67 5f 20 69 6e 20 74 68 65 0a 6c 65 64 67    65 72 20 62 75 66 66 65 72 20 61 72 65 20 6c 65  | ing_.in.the.ledger.buffer.are.le | 
| 30d00 |  66 74 20 69 6e 20 74 68 61 74 20 73 74 61 74 65    20 77 68 65 6e 20 74 68 65 20 61 63 63 6f 75 6e  | ft.in.that.state.when.the.accoun | 
| 30d20 |  74 20 69 73 20 73 77 69 74 63 68 65 64 2e 0a 0a    1f 0a 46 69 6c 65 3a 20 6c 65 64 67 65 72 2d 6d  | t.is.switched.....File:.ledger-m | 
| 30d40 |  6f 64 65 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a    20 43 68 61 6e 67 69 6e 67 20 52 65 63 6f 6e 63  | ode.info,..Node:.Changing.Reconc | 
| 30d60 |  69 6c 69 61 74 69 6f 6e 20 54 61 72 67 65 74 2c    20 20 50 72 65 76 3a 20 43 68 61 6e 67 69 6e 67  | iliation.Target,..Prev:.Changing | 
| 30d80 |  20 52 65 63 6f 6e 63 69 6c 69 61 74 69 6f 6e 20    41 63 63 6f 75 6e 74 2c 20 20 55 70 3a 20 54 68  | .Reconciliation.Account,..Up:.Th | 
| 30da0 |  65 20 52 65 63 6f 6e 63 69 6c 65 20 42 75 66 66    65 72 0a 0a 33 2e 38 20 43 68 61 6e 67 69 6e 67  | e.Reconcile.Buffer..3.8.Changing | 
| 30dc0 |  20 52 65 63 6f 6e 63 69 6c 69 61 74 69 6f 6e 20    54 61 72 67 65 74 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d  | .Reconciliation.Target.========= | 
| 30de0 |  3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d    3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 0a 49 66 20 66 6f  | =========================..If.fo | 
| 30e00 |  72 20 73 6f 6d 65 20 72 65 61 73 6f 6e 20 64 75    72 69 6e 67 20 72 65 63 6f 6e 63 69 6c 69 61 74  | r.some.reason.during.reconciliat | 
| 30e20 |  69 6f 6e 20 79 6f 75 72 20 74 61 72 67 65 74 20    61 6d 6f 75 6e 74 20 63 68 61 6e 67 65 73 2c 0a  | ion.your.target.amount.changes,. | 
| 30e40 |  74 79 70 65 20 e2 80 98 74 e2 80 99 20 61 6e 64    20 65 6e 74 65 72 20 74 68 65 20 6e 65 77 20 74  | type....t....and.enter.the.new.t | 
| 30e60 |  61 72 67 65 74 20 76 61 6c 75 65 2e 0a 0a 1f 0a    46 69 6c 65 3a 20 6c 65 64 67 65 72 2d 6d 6f 64  | arget.value.....File:.ledger-mod | 
| 30e80 |  65 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 54    68 65 20 52 65 70 6f 72 74 20 42 75 66 66 65 72  | e.info,..Node:.The.Report.Buffer | 
| 30ea0 |  2c 20 20 4e 65 78 74 3a 20 53 63 68 65 64 75 6c    69 6e 67 20 54 72 61 6e 73 61 63 74 69 6f 6e 73  | ,..Next:.Scheduling.Transactions | 
| 30ec0 |  2c 20 20 50 72 65 76 3a 20 54 68 65 20 52 65 63    6f 6e 63 69 6c 65 20 42 75 66 66 65 72 2c 20 20  | ,..Prev:.The.Reconcile.Buffer,.. | 
| 30ee0 |  55 70 3a 20 54 6f 70 0a 0a 34 20 54 68 65 20 52    65 70 6f 72 74 20 42 75 66 66 65 72 0a 2a 2a 2a  | Up:.Top..4.The.Report.Buffer.*** | 
| 30f00 |  2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a    0a 0a 2a 20 4d 65 6e 75 3a 0a 0a 2a 20 52 75 6e  | ****************..*.Menu:..*.Run | 
| 30f20 |  6e 69 6e 67 20 42 61 73 69 63 20 52 65 70 6f 72    74 73 3a 3a 0a 2a 20 41 64 64 69 6e 67 20 61 6e  | ning.Basic.Reports::.*.Adding.an | 
| 30f40 |  64 20 45 64 69 74 69 6e 67 20 52 65 70 6f 72 74    73 3a 3a 0a 2a 20 52 65 76 65 72 73 69 6e 67 20  | d.Editing.Reports::.*.Reversing. | 
| 30f60 |  52 65 70 6f 72 74 20 4f 72 64 65 72 3a 3a 0a 0a    1f 0a 46 69 6c 65 3a 20 6c 65 64 67 65 72 2d 6d  | Report.Order::....File:.ledger-m | 
| 30f80 |  6f 64 65 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a    20 52 75 6e 6e 69 6e 67 20 42 61 73 69 63 20 52  | ode.info,..Node:.Running.Basic.R | 
| 30fa0 |  65 70 6f 72 74 73 2c 20 20 4e 65 78 74 3a 20 41    64 64 69 6e 67 20 61 6e 64 20 45 64 69 74 69 6e  | eports,..Next:.Adding.and.Editin | 
| 30fc0 |  67 20 52 65 70 6f 72 74 73 2c 20 20 50 72 65 76    3a 20 54 68 65 20 52 65 70 6f 72 74 20 42 75 66  | g.Reports,..Prev:.The.Report.Buf | 
| 30fe0 |  66 65 72 2c 20 20 55 70 3a 20 54 68 65 20 52 65    70 6f 72 74 20 42 75 66 66 65 72 0a 0a 34 2e 31  | fer,..Up:.The.Report.Buffer..4.1 | 
| 31000 |  20 52 75 6e 6e 69 6e 67 20 52 65 70 6f 72 74 73    0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  | .Running.Reports.=============== | 
| 31020 |  3d 3d 3d 3d 0a 0a 54 68 65 20 72 65 61 6c 20 70    6f 77 65 72 20 62 65 68 69 6e 64 20 4c 65 64 67  | ====..The.real.power.behind.Ledg | 
| 31040 |  65 72 20 69 73 20 69 6e 20 69 74 73 20 61 6d 61    7a 69 6e 67 20 72 65 70 6f 72 74 69 6e 67 20 63  | er.is.in.its.amazing.reporting.c | 
| 31060 |  61 70 61 62 69 6c 69 74 79 2e 0a 4c 65 64 67 65    72 2d 6d 6f 64 65 20 70 72 6f 76 69 64 65 73 20  | apability..Ledger-mode.provides. | 
| 31080 |  65 61 73 79 20 66 61 63 69 6c 69 74 79 20 74 6f    20 72 75 6e 20 72 65 70 6f 72 74 73 20 64 69 72  | easy.facility.to.run.reports.dir | 
| 310a0 |  65 63 74 6c 79 20 66 72 6f 6d 20 45 6d 61 63 73    2e 0a 49 74 20 68 61 73 20 66 6f 75 72 20 72 65  | ectly.from.Emacs..It.has.four.re | 
| 310c0 |  70 6f 72 74 73 20 62 75 69 6c 74 2d 69 6e 20 61    6e 64 20 66 61 63 69 6c 69 74 69 65 73 20 66 6f  | ports.built-in.and.facilities.fo | 
| 310e0 |  72 20 61 64 64 69 6e 67 20 63 75 73 74 6f 6d 20    72 65 70 6f 72 74 73 2e 0a 0a 20 20 20 54 79 70  | r.adding.custom.reports......Typ | 
| 31100 |  69 6e 67 20 e2 80 98 43 2d 63 20 43 2d 6f 20 43    2d 72 e2 80 99 20 6f 72 20 75 73 69 6e 67 20 6d  | ing....C-c.C-o.C-r....or.using.m | 
| 31120 |  65 6e 75 20 e2 80 98 52 75 6e 20 52 65 70 6f 72    74 e2 80 99 20 70 72 6f 6d 70 74 73 20 66 6f 72  | enu....Run.Report....prompts.for | 
| 31140 |  20 74 68 65 20 6e 61 6d 65 0a 6f 66 20 61 20 73    61 76 65 64 20 72 65 70 6f 72 74 2e 20 20 54 68  | .the.name.of.a.saved.report...Th | 
| 31160 |  65 20 62 75 69 6c 74 2d 69 6e 20 72 65 70 6f 72    74 73 20 61 72 65 3a 0a 0a 42 41 4c 0a 20 20 20  | e.built-in.reports.are:..BAL.... | 
| 31180 |  20 20 50 72 6f 64 75 63 65 20 61 20 62 61 6c 61    6e 63 65 20 72 65 70 6f 72 74 73 20 6f 66 20 61  | ..Produce.a.balance.reports.of.a | 
| 311a0 |  6c 6c 20 61 63 63 6f 75 6e 74 73 2e 0a 0a 52 45    47 0a 20 20 20 20 20 50 72 6f 64 75 63 65 20 61  | ll.accounts...REG......Produce.a | 
| 311c0 |  20 72 65 67 69 73 74 65 72 20 72 65 70 6f 72 74    20 6f 66 20 61 6c 6c 20 74 72 61 6e 73 61 63 74  | .register.report.of.all.transact | 
| 311e0 |  69 6f 6e 73 2e 0a 0a 50 41 59 45 45 0a 20 20 20    20 20 50 72 6f 6d 70 74 20 66 6f 72 20 61 20 70  | ions...PAYEE......Prompt.for.a.p | 
| 31200 |  61 79 65 65 2c 20 74 68 65 6e 20 70 72 6f 64 75    63 65 20 61 20 72 65 67 69 73 74 65 72 20 72 65  | ayee,.then.produce.a.register.re | 
| 31220 |  70 6f 72 74 20 6f 66 20 61 6c 6c 0a 20 20 20 20    20 74 72 61 6e 73 61 63 74 69 6f 6e 73 20 69 6e  | port.of.all......transactions.in | 
| 31240 |  76 6f 6c 76 69 6e 67 20 74 68 61 74 20 70 61 79    65 65 2e 0a 0a 41 43 43 4f 55 4e 54 0a 20 20 20  | volving.that.payee...ACCOUNT.... | 
| 31260 |  20 20 50 72 6f 6d 70 74 20 66 6f 72 20 61 6e 20    61 63 63 6f 75 6e 74 2c 20 74 68 65 6e 20 70 72  | ..Prompt.for.an.account,.then.pr | 
| 31280 |  6f 64 75 63 65 20 61 20 72 65 67 69 73 74 65 72    20 72 65 70 6f 72 74 20 6f 66 20 61 6c 6c 0a 20  | oduce.a.register.report.of.all.. | 
| 312a0 |  20 20 20 20 74 72 61 6e 73 61 63 74 69 6f 6e 73    20 69 6e 76 6f 6c 76 69 6e 67 20 74 68 61 74 20  | ....transactions.involving.that. | 
| 312c0 |  61 63 63 6f 75 6e 74 2e 0a 0a 20 20 20 57 68 69    6c 65 20 76 69 65 77 69 6e 67 20 72 65 70 6f 72  | account......While.viewing.repor | 
| 312e0 |  74 73 20 79 6f 75 20 63 61 6e 20 65 61 73 69 6c    79 20 73 77 69 74 63 68 20 62 61 63 6b 20 61 6e  | ts.you.can.easily.switch.back.an | 
| 31300 |  64 20 66 6f 72 74 68 20 62 65 74 77 65 65 6e 0a    74 68 65 20 6c 65 64 67 65 72 20 62 75 66 66 65  | d.forth.between.the.ledger.buffe | 
| 31320 |  72 20 61 6e 64 20 74 68 65 20 e2 80 98 2a 4c 65    64 67 65 72 20 52 65 70 6f 72 74 2a e2 80 99 20  | r.and.the....*Ledger.Report*.... | 
| 31340 |  62 75 66 66 65 72 2e 20 20 49 6e 20 e2 80 98 2a    4c 65 64 67 65 72 0a 52 65 70 6f 72 74 2a e2 80  | buffer...In....*Ledger.Report*.. | 
| 31360 |  99 20 62 75 66 66 65 72 2c 20 74 79 70 69 6e 67    20 e2 80 98 52 45 54 e2 80 99 20 77 69 6c 6c 20  | ..buffer,.typing....RET....will. | 
| 31380 |  74 61 6b 65 20 79 6f 75 20 74 6f 20 74 68 61 74    20 74 72 61 6e 73 61 63 74 69 6f 6e 20 69 6e 20  | take.you.to.that.transaction.in. | 
| 313a0 |  74 68 65 0a 6c 65 64 67 65 72 20 62 75 66 66 65    72 2e 20 20 57 68 69 6c 65 20 69 6e 20 74 68 65  | the.ledger.buffer...While.in.the | 
| 313c0 |  20 6c 65 64 67 65 72 20 62 75 66 66 65 72 20 e2    80 98 43 2d 63 20 43 2d 6f 20 43 2d 67 e2 80 99  | .ledger.buffer....C-c.C-o.C-g... | 
| 313e0 |  20 72 65 74 75 72 6e 73 20 79 6f 75 20 74 6f 0a    74 68 65 20 e2 80 98 2a 4c 65 64 67 65 72 20 52  | .returns.you.to.the....*Ledger.R | 
| 31400 |  65 70 6f 72 74 2a e2 80 99 20 62 75 66 66 65 72    2e 0a 0a 20 20 20 42 79 20 64 65 66 61 75 6c 74  | eport*....buffer......By.default | 
| 31420 |  20 4c 65 64 67 65 72 2d 6d 6f 64 65 20 77 69 6c    6c 20 72 65 66 72 65 73 68 20 74 68 65 20 72 65  | .Ledger-mode.will.refresh.the.re | 
| 31440 |  70 6f 72 74 20 62 75 66 66 65 72 20 77 68 65 6e    20 74 68 65 20 6c 65 64 67 65 72 0a 62 75 66 66  | port.buffer.when.the.ledger.buff | 
| 31460 |  65 72 20 69 73 20 73 61 76 65 64 2e 20 20 49 66    20 79 6f 75 20 77 61 6e 74 20 74 6f 20 72 65 72  | er.is.saved...If.you.want.to.rer | 
| 31480 |  75 6e 20 74 68 65 20 72 65 70 6f 72 74 20 61 74    20 61 6e 6f 74 68 65 72 20 74 69 6d 65 20 e2 80  | un.the.report.at.another.time... | 
| 314a0 |  98 43 2d 63 0a 43 2d 6f 20 43 2d 61 e2 80 99 2e    20 20 54 68 69 73 20 69 73 20 75 73 65 66 75 6c  | .C-c.C-o.C-a......This.is.useful | 
| 314c0 |  20 69 66 20 79 6f 75 20 68 61 76 65 20 6f 74 68    65 72 20 70 72 6f 67 72 61 6d 73 20 61 6c 74 65  | .if.you.have.other.programs.alte | 
| 314e0 |  72 69 6e 67 20 79 6f 75 72 0a 6c 65 64 67 65 72    20 66 69 6c 65 20 6f 75 74 73 69 64 65 20 6f 66  | ring.your.ledger.file.outside.of | 
| 31500 |  20 45 6d 61 63 73 2e 0a 0a 1f 0a 46 69 6c 65 3a    20 6c 65 64 67 65 72 2d 6d 6f 64 65 2e 69 6e 66  | .Emacs.....File:.ledger-mode.inf | 
| 31520 |  6f 2c 20 20 4e 6f 64 65 3a 20 41 64 64 69 6e 67    20 61 6e 64 20 45 64 69 74 69 6e 67 20 52 65 70  | o,..Node:.Adding.and.Editing.Rep | 
| 31540 |  6f 72 74 73 2c 20 20 4e 65 78 74 3a 20 52 65 76    65 72 73 69 6e 67 20 52 65 70 6f 72 74 20 4f 72  | orts,..Next:.Reversing.Report.Or | 
| 31560 |  64 65 72 2c 20 20 50 72 65 76 3a 20 52 75 6e 6e    69 6e 67 20 42 61 73 69 63 20 52 65 70 6f 72 74  | der,..Prev:.Running.Basic.Report | 
| 31580 |  73 2c 20 20 55 70 3a 20 54 68 65 20 52 65 70 6f    72 74 20 42 75 66 66 65 72 0a 0a 34 2e 32 20 41  | s,..Up:.The.Report.Buffer..4.2.A | 
| 315a0 |  64 64 69 6e 67 20 61 6e 64 20 45 64 69 74 69 6e    67 20 52 65 70 6f 72 74 73 0a 3d 3d 3d 3d 3d 3d  | dding.and.Editing.Reports.====== | 
| 315c0 |  3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d    3d 3d 3d 3d 3d 3d 3d 3d 0a 0a 2a 20 4d 65 6e 75  | ========================..*.Menu | 
| 315e0 |  3a 0a 0a 2a 20 45 78 70 61 6e 73 69 6f 6e 20 46    6f 72 6d 61 74 73 3a 3a 0a 2a 20 4d 61 6b 65 20  | :..*.Expansion.Formats::.*.Make. | 
| 31600 |  52 65 70 6f 72 74 20 54 72 61 6e 73 61 63 74 69    6f 6e 73 20 41 63 74 69 76 65 3a 3a 0a 0a 49 66  | Report.Transactions.Active::..If | 
| 31620 |  20 79 6f 75 20 74 79 70 65 20 61 20 72 65 70 6f    72 74 20 6e 61 6d 65 20 74 68 61 74 20 4c 65 64  | .you.type.a.report.name.that.Led | 
| 31640 |  67 65 72 2d 6d 6f 64 65 20 64 6f 65 73 6e e2 80    99 74 20 72 65 63 6f 67 6e 69 7a 65 20 69 74 20  | ger-mode.doesn...t.recognize.it. | 
| 31660 |  77 69 6c 6c 0a 70 72 6f 6d 70 74 20 79 6f 75 20    66 6f 72 20 61 20 6c 65 64 67 65 72 20 63 6f 6d  | will.prompt.you.for.a.ledger.com | 
| 31680 |  6d 61 6e 64 20 6c 69 6e 65 20 74 6f 20 72 75 6e    2e 20 20 54 68 61 74 20 63 6f 6d 6d 61 6e 64 20  | mand.line.to.run...That.command. | 
| 316a0 |  69 73 0a 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79    20 73 61 76 65 64 20 77 69 74 68 20 74 68 65 20  | is.automatically.saved.with.the. | 
| 316c0 |  6e 61 6d 65 20 67 69 76 65 6e 20 61 6e 64 20 79    6f 75 20 63 61 6e 20 72 65 2d 72 75 6e 20 69 74  | name.given.and.you.can.re-run.it | 
| 316e0 |  20 61 74 20 61 6e 79 0a 74 69 6d 65 2e 0a 0a 20    20 20 54 68 65 72 65 20 61 72 65 20 74 77 6f 20  | .at.any.time......There.are.two. | 
| 31700 |  77 61 79 73 20 74 6f 20 65 64 69 74 20 74 68 65    20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 66 6f  | ways.to.edit.the.command.line.fo | 
| 31720 |  72 20 61 20 72 65 70 6f 72 74 2e 20 20 54 68 65    20 66 69 72 73 74 0a 69 73 20 74 6f 20 70 72 6f  | r.a.report...The.first.is.to.pro | 
| 31740 |  76 69 64 65 20 61 20 70 72 65 66 69 78 20 61 72    67 75 6d 65 6e 74 20 74 6f 20 74 68 65 20 72 75  | vide.a.prefix.argument.to.the.ru | 
| 31760 |  6e 2d 72 65 70 6f 72 74 20 63 6f 6d 6d 61 6e 64    2e 20 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 0a  | n-report.command...For.example,. | 
| 31780 |  74 79 70 65 20 e2 80 98 4d 2d 31 20 43 2d 63 20    43 2d 6f 20 43 2d 72 e2 80 99 2e 20 20 54 68 69  | type....M-1.C-c.C-o.C-r......Thi | 
| 317a0 |  73 20 77 69 6c 6c 20 70 72 6f 6d 70 74 20 79 6f    75 20 66 6f 72 20 74 68 65 20 72 65 70 6f 72 74  | s.will.prompt.you.for.the.report | 
| 317c0 |  20 6e 61 6d 65 2c 20 74 68 65 6e 0a 70 72 65 73    65 6e 74 20 74 68 65 20 72 65 70 6f 72 74 20 63  | .name,.then.present.the.report.c | 
| 317e0 |  6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 74 6f 20 62    65 20 65 64 69 74 65 64 2e 20 20 57 68 65 6e 20  | ommand.line.to.be.edited...When. | 
| 31800 |  79 6f 75 20 68 69 74 20 e2 80 98 52 45 54 e2 80    99 2c 20 74 68 65 0a 72 65 70 6f 72 74 20 77 69  | you.hit....RET...,.the.report.wi | 
| 31820 |  6c 6c 20 62 65 20 72 75 6e 2c 20 62 75 74 20 69    74 20 77 69 6c 6c 20 6e 6f 74 20 62 65 20 70 65  | ll.be.run,.but.it.will.not.be.pe | 
| 31840 |  72 6d 61 6e 65 6e 74 6c 79 20 73 61 76 65 64 2e    20 20 49 66 20 79 6f 75 20 77 61 6e 74 0a 74 6f  | rmanently.saved...If.you.want.to | 
| 31860 |  20 73 61 76 65 20 69 74 2c 20 74 79 70 65 20 e2    80 98 53 e2 80 99 20 69 6e 20 74 68 65 20 e2 80  | .save.it,.type....S....in.the... | 
| 31880 |  98 2a 4c 65 64 67 65 72 20 52 65 70 6f 72 74 2a    e2 80 99 20 62 75 66 66 65 72 20 79 6f 75 20 77  | .*Ledger.Report*....buffer.you.w | 
| 318a0 |  69 6c 6c 20 68 61 76 65 20 74 68 65 0a 6f 70 74    69 6f 6e 20 74 6f 20 67 69 76 65 20 69 74 20 61  | ill.have.the.option.to.give.it.a | 
| 318c0 |  20 6e 65 77 20 6e 61 6d 65 2c 20 6f 72 20 6f 76    65 72 77 72 69 74 65 20 74 68 65 20 6f 6c 64 20  | .new.name,.or.overwrite.the.old. | 
| 318e0 |  72 65 70 6f 72 74 2e 0a 0a 20 20 20 44 65 6c 65    74 69 6e 67 20 72 65 70 6f 72 74 73 20 69 73 20  | report......Deleting.reports.is. | 
| 31900 |  61 63 63 6f 6d 70 6c 69 73 68 65 64 20 62 79 20    74 79 70 69 6e 67 20 e2 80 98 43 2d 63 20 43 2d  | accomplished.by.typing....C-c.C- | 
| 31920 |  6f 20 43 2d 65 e2 80 99 20 6f 72 20 75 73 69 6e    67 0a e2 80 98 45 64 69 74 20 52 65 70 6f 72 74  | o.C-e....or.using....Edit.Report | 
| 31940 |  e2 80 99 20 6d 65 6e 75 20 69 6e 20 74 68 65 20    6c 65 64 67 65 72 20 62 75 66 66 65 72 2c 20 6f  | ....menu.in.the.ledger.buffer,.o | 
| 31960 |  72 20 74 79 70 69 6e 67 20 e2 80 98 65 e2 80 99    20 69 6e 20 74 68 65 20 e2 80 98 2a 4c 65 64 67  | r.typing....e....in.the....*Ledg | 
| 31980 |  65 72 0a 52 65 70 6f 72 74 2a e2 80 99 20 62 75    66 66 65 72 2e 20 20 54 68 69 73 20 74 61 6b 65  | er.Report*....buffer...This.take | 
| 319a0 |  73 20 79 6f 75 20 74 6f 20 74 68 65 20 45 6d 61    63 73 20 63 75 73 74 6f 6d 69 7a 61 74 69 6f 6e  | s.you.to.the.Emacs.customization | 
| 319c0 |  20 77 69 6e 64 6f 77 20 66 6f 72 0a 74 68 65 20    4c 65 64 67 65 72 20 52 65 70 6f 72 74 73 20 76  | .window.for.the.Ledger.Reports.v | 
| 319e0 |  61 72 69 61 62 6c 65 73 2e 20 20 55 73 65 20 74    68 65 20 77 69 64 67 65 74 73 20 74 6f 20 64 65  | ariables...Use.the.widgets.to.de | 
| 31a00 |  6c 65 74 65 20 74 68 65 20 72 65 70 6f 72 74 20    79 6f 75 0a 77 61 6e 74 20 72 65 6d 6f 76 65 64  | lete.the.report.you.want.removed | 
| 31a20 |  2e 0a 0a 20 20 20 54 79 70 69 6e 67 20 e2 80 98    43 2d 63 20 43 2d 6f 20 43 2d 73 e2 80 99 20 77  | ......Typing....C-c.C-o.C-s....w | 
| 31a40 |  69 6c 6c 20 70 72 6f 6d 70 74 20 66 6f 72 20 61    20 6e 61 6d 65 20 61 6e 64 20 73 61 76 65 20 74  | ill.prompt.for.a.name.and.save.t | 
| 31a60 |  68 65 20 63 75 72 72 65 6e 74 0a 72 65 70 6f 72    74 2e 0a 0a 1f 0a 46 69 6c 65 3a 20 6c 65 64 67  | he.current.report.....File:.ledg | 
| 31a80 |  65 72 2d 6d 6f 64 65 2e 69 6e 66 6f 2c 20 20 4e    6f 64 65 3a 20 45 78 70 61 6e 73 69 6f 6e 20 46  | er-mode.info,..Node:.Expansion.F | 
| 31aa0 |  6f 72 6d 61 74 73 2c 20 20 4e 65 78 74 3a 20 4d    61 6b 65 20 52 65 70 6f 72 74 20 54 72 61 6e 73  | ormats,..Next:.Make.Report.Trans | 
| 31ac0 |  61 63 74 69 6f 6e 73 20 41 63 74 69 76 65 2c 20    20 50 72 65 76 3a 20 41 64 64 69 6e 67 20 61 6e  | actions.Active,..Prev:.Adding.an | 
| 31ae0 |  64 20 45 64 69 74 69 6e 67 20 52 65 70 6f 72 74    73 2c 20 20 55 70 3a 20 41 64 64 69 6e 67 20 61  | d.Editing.Reports,..Up:.Adding.a | 
| 31b00 |  6e 64 20 45 64 69 74 69 6e 67 20 52 65 70 6f 72    74 73 0a 0a 34 2e 32 2e 31 20 45 78 70 61 6e 73  | nd.Editing.Reports..4.2.1.Expans | 
| 31b20 |  69 6f 6e 20 46 6f 72 6d 61 74 73 0a 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  | ion.Formats.-------------------- | 
| 31b40 |  2d 2d 2d 0a 0a 49 74 20 69 73 20 73 6f 6d 65 74    69 6d 65 73 20 63 6f 6e 76 65 6e 69 65 6e 74 20  | ---..It.is.sometimes.convenient. | 
| 31b60 |  74 6f 20 6c 65 61 76 65 20 72 6f 6f 6d 20 74 6f    20 63 75 73 74 6f 6d 69 7a 65 20 61 20 72 65 70  | to.leave.room.to.customize.a.rep | 
| 31b80 |  6f 72 74 20 77 69 74 68 6f 75 74 0a 73 61 76 69    6e 67 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 6c  | ort.without.saving.the.command.l | 
| 31ba0 |  69 6e 65 20 65 76 65 72 79 20 74 69 6d 65 2e 20    20 46 6f 72 20 65 78 61 6d 70 6c 65 20 72 75 6e  | ine.every.time...For.example.run | 
| 31bc0 |  6e 69 6e 67 20 61 20 72 65 67 69 73 74 65 72 0a    72 65 70 6f 72 74 20 66 6f 72 20 61 20 73 70 65  | ning.a.register.report.for.a.spe | 
| 31be0 |  63 69 66 69 63 20 61 63 63 6f 75 6e 74 20 65 6e    74 65 72 65 64 20 61 74 20 72 75 6e 74 69 6d 65  | cific.account.entered.at.runtime | 
| 31c00 |  20 62 79 20 74 68 65 20 75 73 65 72 2e 20 20 54    68 65 0a 62 75 69 6c 74 2d 69 6e 20 72 65 70 6f  | .by.the.user...The.built-in.repo | 
| 31c20 |  72 74 20 41 43 43 4f 55 4e 54 20 64 6f 65 73 20    65 78 61 63 74 6c 79 20 74 68 61 74 2c 20 75 73  | rt.ACCOUNT.does.exactly.that,.us | 
| 31c40 |  69 6e 67 20 61 20 76 61 72 69 61 62 6c 65 20 65    78 70 61 6e 73 69 6f 6e 20 74 6f 0a 70 72 6f 6d  | ing.a.variable.expansion.to.prom | 
| 31c60 |  70 74 20 74 68 65 20 75 73 65 72 20 66 6f 72 20    74 68 65 20 61 63 63 6f 75 6e 74 20 74 6f 20 75  | pt.the.user.for.the.account.to.u | 
| 31c80 |  73 65 2e 20 20 54 68 65 72 65 20 61 72 65 20 66    6f 75 72 20 76 61 72 69 61 62 6c 65 73 20 74 68  | se...There.are.four.variables.th | 
| 31ca0 |  61 74 0a 63 61 6e 20 62 65 20 65 78 70 61 6e 64    65 64 20 74 6f 20 72 75 6e 20 61 20 72 65 70 6f  | at.can.be.expanded.to.run.a.repo | 
| 31cc0 |  72 74 3a 0a 0a 4c 45 44 47 45 52 2d 46 49 4c 45    0a 20 20 20 20 20 52 65 74 75 72 6e 73 20 74 68  | rt:..LEDGER-FILE......Returns.th | 
| 31ce0 |  65 20 66 69 6c 65 20 74 6f 20 62 65 20 6f 70 65    72 61 74 65 64 20 6f 6e 2e 0a 0a 50 41 59 45 45  | e.file.to.be.operated.on...PAYEE | 
| 31d00 |  0a 20 20 20 20 20 50 72 6f 6d 70 74 73 20 66 6f    72 20 61 20 70 61 79 65 65 2e 0a 0a 41 43 43 4f  | ......Prompts.for.a.payee...ACCO | 
| 31d20 |  55 4e 54 0a 20 20 20 20 20 50 72 6f 6d 70 74 20    66 6f 72 20 61 6e 20 61 63 63 6f 75 6e 74 2e 0a  | UNT......Prompt.for.an.account.. | 
| 31d40 |  0a 54 41 47 4e 41 4d 45 0a 20 20 20 20 20 50 72    6f 6d 70 74 20 66 6f 72 20 61 20 6d 65 74 61 2d  | .TAGNAME......Prompt.for.a.meta- | 
| 31d60 |  64 61 74 61 20 74 61 67 20 6e 61 6d 65 2e 0a 0a    54 41 47 56 41 4c 55 45 0a 20 20 20 20 20 50 72  | data.tag.name...TAGVALUE......Pr | 
| 31d80 |  6f 6d 70 74 20 66 6f 72 20 61 20 6d 65 74 61 2d    64 61 74 61 20 74 61 67 20 76 61 6c 75 65 2e 0a  | ompt.for.a.meta-data.tag.value.. | 
| 31da0 |  0a 4d 4f 4e 54 48 0a 20 20 20 20 20 52 65 74 75    72 6e 20 74 68 65 20 63 75 72 72 65 6e 74 20 6d  | .MONTH......Return.the.current.m | 
| 31dc0 |  6f 6e 74 68 2e 0a 0a 20 20 20 59 6f 75 20 63 61    6e 20 75 73 65 20 74 68 65 73 65 20 65 78 70 61  | onth......You.can.use.these.expa | 
| 31de0 |  6e 73 69 6f 6e 20 76 61 6c 75 65 73 20 69 6e 20    79 6f 75 72 20 6c 65 64 67 65 72 20 72 65 70 6f  | nsion.values.in.your.ledger.repo | 
| 31e00 |  72 74 20 63 6f 6d 6d 61 6e 64 73 2e 0a 46 6f 72    20 65 78 61 6d 70 6c 65 2c 20 69 66 20 79 6f 75  | rt.commands..For.example,.if.you | 
| 31e20 |  20 77 61 6e 74 65 64 20 74 6f 20 73 70 65 63 69    66 79 20 61 20 72 65 67 69 73 74 65 72 20 72 65  | .wanted.to.specify.a.register.re | 
| 31e40 |  70 6f 72 74 20 74 68 65 20 64 69 73 70 6c 61 79    65 64 0a 74 72 61 6e 73 61 63 74 69 6f 6e 73 20  | port.the.displayed.transactions. | 
| 31e60 |  66 72 6f 6d 20 61 20 75 73 65 72 2d 64 65 74 65    72 6d 69 6e 65 64 20 61 63 63 6f 75 6e 74 20 77  | from.a.user-determined.account.w | 
| 31e80 |  69 74 68 20 61 20 70 61 72 74 69 63 75 6c 61 72    20 6d 65 74 61 2d 64 61 74 61 0a 74 61 67 20 76  | ith.a.particular.meta-data.tag.v | 
| 31ea0 |  61 6c 75 65 2c 20 79 6f 75 20 73 70 65 63 69 66    79 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20  | alue,.you.specify.the.following. | 
| 31ec0 |  63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 3a 0a 0a 20    20 20 20 20 6c 65 64 67 65 72 20 2d 66 20 25 28  | command.line:.......ledger.-f.%( | 
| 31ee0 |  6c 65 64 67 65 72 2d 66 69 6c 65 29 20 72 65 67    20 25 28 61 63 63 6f 75 6e 74 29 20 5c 0a 20 20  | ledger-file).reg.%(account).\... | 
| 31f00 |  20 20 20 20 20 2d 2d 6c 69 6d 69 74 20 5c 22 74    61 67 28 27 6d 79 2d 74 61 67 27 29 20 3d 7e 2f  | .....--limit.\"tag('my-tag').=~/ | 
| 31f20 |  25 28 76 61 6c 75 65 29 2f 5c 22 0a 0a 20 20 20    4e 6f 74 65 20 68 6f 77 20 74 68 65 20 64 6f 75  | %(value)/\".....Note.how.the.dou | 
| 31f40 |  62 6c 65 2d 71 75 6f 74 65 73 20 61 72 65 20 65    73 63 61 70 65 64 20 77 69 74 68 20 62 61 63 6b  | ble-quotes.are.escaped.with.back | 
| 31f60 |  2d 73 6c 61 73 68 65 73 2e 0a 0a 20 20 20 41 64    64 69 74 69 6f 6e 61 6c 6c 79 2c 20 69 66 20 79  | -slashes......Additionally,.if.y | 
| 31f80 |  6f 75 20 77 61 6e 74 20 61 20 72 65 70 6f 72 74    20 73 68 6f 77 69 6e 67 20 61 20 70 61 72 74 69  | ou.want.a.report.showing.a.parti | 
| 31fa0 |  63 75 6c 61 72 20 6d 6f 6e 74 68 20 61 6e 64 20    62 65 0a 61 62 6c 65 20 74 6f 20 65 61 73 69 6c  | cular.month.and.be.able.to.easil | 
| 31fc0 |  79 20 63 68 61 6e 67 65 20 74 68 61 74 20 6d 6f    6e 74 68 2c 20 79 6f 75 20 63 61 6e 20 73 70 65  | y.change.that.month,.you.can.spe | 
| 31fe0 |  63 69 66 79 20 61 20 70 65 72 69 6f 64 20 75 73    69 6e 67 20 74 68 65 0a e2 80 98 25 28 6d 6f 6e  | cify.a.period.using.the....%(mon | 
| 32000 |  74 68 29 e2 80 99 20 73 70 65 63 69 66 69 65 72    20 6c 69 6b 65 20 74 68 69 73 3a 0a 0a 20 20 20  | th)....specifier.like.this:..... | 
| 32020 |  20 20 6c 65 64 67 65 72 20 2d 66 20 25 28 6c 65    64 67 65 72 2d 66 69 6c 65 29 20 62 61 6c 61 6e  | ..ledger.-f.%(ledger-file).balan | 
| 32040 |  63 65 20 2d 2d 70 65 72 69 6f 64 20 25 28 6d 6f    6e 74 68 29 20 5e 49 6e 63 6f 6d 65 20 5e 45 78  | ce.--period.%(month).^Income.^Ex | 
| 32060 |  70 65 6e 73 65 73 0a 0a 20 20 20 57 68 65 6e 20    79 6f 75 20 64 6f 20 74 68 69 73 2c 20 79 6f 75  | penses.....When.you.do.this,.you | 
| 32080 |  20 63 61 6e 20 75 73 65 20 e2 80 98 4d 2d 70 e2    80 99 20 6f 72 20 e2 80 98 4d 2d 6e e2 80 99 20  | .can.use....M-p....or....M-n.... | 
| 320a0 |  74 6f 20 72 65 2d 6f 70 65 6e 20 74 68 65 20 73    61 6d 65 0a 72 65 70 6f 72 74 20 77 69 74 68 20  | to.re-open.the.same.report.with. | 
| 320c0 |  74 68 65 20 70 72 65 76 69 6f 75 73 20 6f 72 20    6e 65 78 74 20 6d 6f 6e 74 68 2e 0a 0a 1f 0a 46  | the.previous.or.next.month.....F | 
| 320e0 |  69 6c 65 3a 20 6c 65 64 67 65 72 2d 6d 6f 64 65    2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 4d 61  | ile:.ledger-mode.info,..Node:.Ma | 
| 32100 |  6b 65 20 52 65 70 6f 72 74 20 54 72 61 6e 73 61    63 74 69 6f 6e 73 20 41 63 74 69 76 65 2c 20 20  | ke.Report.Transactions.Active,.. | 
| 32120 |  50 72 65 76 3a 20 45 78 70 61 6e 73 69 6f 6e 20    46 6f 72 6d 61 74 73 2c 20 20 55 70 3a 20 41 64  | Prev:.Expansion.Formats,..Up:.Ad | 
| 32140 |  64 69 6e 67 20 61 6e 64 20 45 64 69 74 69 6e 67    20 52 65 70 6f 72 74 73 0a 0a 34 2e 32 2e 32 20  | ding.and.Editing.Reports..4.2.2. | 
| 32160 |  4d 61 6b 65 20 52 65 70 6f 72 74 20 54 72 61 6e    73 61 63 74 69 6f 6e 73 20 41 63 74 69 76 65 0a  | Make.Report.Transactions.Active. | 
| 32180 |  2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  | -------------------------------- | 
| 321a0 |  2d 2d 2d 2d 2d 0a 0a 49 6e 20 61 20 6c 61 72 67    65 20 72 65 67 69 73 74 65 72 20 72 65 70 6f 72  | -----..In.a.large.register.repor | 
| 321c0 |  74 20 69 74 20 69 73 20 63 6f 6e 76 65 6e 69 65    6e 74 20 74 6f 20 62 65 20 61 62 6c 65 20 74 6f  | t.it.is.convenient.to.be.able.to | 
| 321e0 |  20 6a 75 6d 70 20 74 6f 20 74 68 65 0a 73 6f 75    72 63 65 20 74 72 61 6e 73 61 63 74 69 6f 6e 2e  | .jump.to.the.source.transaction. | 
| 32200 |  20 20 4c 65 64 67 65 72 2d 6d 6f 64 65 20 77 69    6c 6c 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79  | ..Ledger-mode.will.automatically | 
| 32220 |  20 69 6e 63 6c 75 64 65 20 73 6f 75 72 63 65 0a    69 6e 66 6f 72 6d 61 74 69 6f 6e 20 69 6e 20 65  | .include.source.information.in.e | 
| 32240 |  76 65 72 79 20 72 65 67 69 73 74 65 72 20 66 69    6c 65 20 74 68 61 74 20 64 6f 65 73 6e e2 80 99  | very.register.file.that.doesn... | 
| 32260 |  74 20 63 6f 6e 74 61 69 6e 20 61 20 e2 80 98 2d    2d 73 75 62 74 6f 74 61 6c e2 80 99 0a 6f 70 74  | t.contain.a....--subtotal....opt | 
| 32280 |  69 6f 6e 2e 20 20 49 74 20 64 6f 65 73 20 74 68    69 73 20 62 79 20 61 64 64 69 6e 67 0a e2 80 98  | ion...It.does.this.by.adding.... | 
| 322a0 |  2d 2d 70 72 65 70 65 6e 64 2d 66 6f 72 6d 61 74    3d 27 25 28 66 69 6c 65 6e 61 6d 65 29 3a 25 28  | --prepend-format='%(filename):%( | 
| 322c0 |  62 65 67 5f 6c 69 6e 65 29 3a 27 e2 80 99 20 74    6f 20 74 68 65 20 72 65 67 69 73 74 65 72 20 72  | beg_line):'....to.the.register.r | 
| 322e0 |  65 70 6f 72 74 0a 63 6f 6d 6d 61 6e 64 2d 6c 69    6e 65 20 79 6f 75 20 73 70 65 63 69 66 79 2e 20  | eport.command-line.you.specify.. | 
| 32300 |  20 59 6f 75 20 73 68 6f 75 6c 64 20 6e 65 76 65    72 20 68 61 76 65 20 74 6f 20 73 65 65 20 74 68  | .You.should.never.have.to.see.th | 
| 32320 |  69 73 2c 20 62 75 74 20 69 66 0a 74 68 65 72 65    20 69 73 20 61 6e 20 65 72 72 6f 72 20 69 6e 20  | is,.but.if.there.is.an.error.in. | 
| 32340 |  79 6f 75 72 20 6c 65 64 67 65 72 20 6f 75 74 70    75 74 20 74 68 69 73 20 61 64 64 69 74 69 6f 6e  | your.ledger.output.this.addition | 
| 32360 |  61 6c 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 6d    61 79 0a 6e 6f 74 20 67 65 74 20 73 74 72 69 70  | al.information.may.not.get.strip | 
| 32380 |  70 65 64 20 6f 75 74 20 6f 66 20 74 68 65 20 76    69 73 69 62 6c 65 20 72 65 70 6f 72 74 2e 0a 0a  | ped.out.of.the.visible.report... | 
| 323a0 |  1f 0a 46 69 6c 65 3a 20 6c 65 64 67 65 72 2d 6d    6f 64 65 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a  | ..File:.ledger-mode.info,..Node: | 
| 323c0 |  20 52 65 76 65 72 73 69 6e 67 20 52 65 70 6f 72    74 20 4f 72 64 65 72 2c 20 20 50 72 65 76 3a 20  | .Reversing.Report.Order,..Prev:. | 
| 323e0 |  41 64 64 69 6e 67 20 61 6e 64 20 45 64 69 74 69    6e 67 20 52 65 70 6f 72 74 73 2c 20 20 55 70 3a  | Adding.and.Editing.Reports,..Up: | 
| 32400 |  20 54 68 65 20 52 65 70 6f 72 74 20 42 75 66 66    65 72 0a 0a 34 2e 33 20 52 65 76 65 72 73 69 6e  | .The.Report.Buffer..4.3.Reversin | 
| 32420 |  67 20 52 65 70 6f 72 74 20 4f 72 64 65 72 0a 3d    3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  | g.Report.Order.================= | 
| 32440 |  3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 0a 4f 66 74 65 6e    2c 20 62 61 6e 6b 73 20 73 68 6f 77 20 74 68 65  | =========..Often,.banks.show.the | 
| 32460 |  69 72 20 6f 6e 2d 6c 69 6e 65 20 74 72 61 6e 73    61 63 74 69 6f 6e 20 68 69 73 74 6f 72 69 65 73  | ir.on-line.transaction.histories | 
| 32480 |  20 77 69 74 68 20 74 68 65 20 6d 6f 73 74 0a 72    65 63 65 6e 74 20 74 72 61 6e 73 61 63 74 69 6f  | .with.the.most.recent.transactio | 
| 324a0 |  6e 20 61 74 20 74 68 65 20 74 6f 70 2e 20 20 4c    65 64 67 65 72 20 69 74 73 65 6c 66 20 63 61 6e  | n.at.the.top...Ledger.itself.can | 
| 324c0 |  6e 6f 74 20 64 6f 20 61 20 73 65 6e 73 69 62 6c    65 0a 6c 65 64 67 65 72 20 72 65 70 6f 72 74 20  | not.do.a.sensible.ledger.report. | 
| 324e0 |  69 6e 20 72 65 76 65 72 73 65 20 63 68 72 6f 6e    6f 6c 6f 67 69 63 61 6c 20 6f 72 64 65 72 2c 20  | in.reverse.chronological.order,. | 
| 32500 |  69 66 20 79 6f 75 20 73 6f 72 74 20 6f 6e 20 72    65 76 65 72 73 65 0a 64 61 74 65 20 74 68 65 20  | if.you.sort.on.reverse.date.the. | 
| 32520 |  63 61 6c 63 75 6c 61 74 69 6f 6e 20 77 69 6c 6c    20 61 6c 73 6f 20 72 75 6e 20 69 6e 20 74 68 65  | calculation.will.also.run.in.the | 
| 32540 |  20 6f 70 70 6f 73 69 74 65 20 64 69 72 65 63 74    69 6f 6e 2e 20 20 49 66 20 79 6f 75 0a 77 61 6e  | .opposite.direction...If.you.wan | 
| 32560 |  74 20 74 6f 20 63 6f 6d 70 61 72 65 20 61 20 6c    65 64 67 65 72 20 72 65 67 69 73 74 65 72 20 72  | t.to.compare.a.ledger.register.r | 
| 32580 |  65 70 6f 72 74 20 74 6f 20 61 20 62 61 6e 6b 20    72 65 70 6f 72 74 20 77 69 74 68 20 74 68 65 20  | eport.to.a.bank.report.with.the. | 
| 325a0 |  6d 6f 73 74 0a 72 65 63 65 6e 74 20 74 72 61 6e    73 61 63 74 69 6f 6e 73 20 61 74 20 74 68 65 20  | most.recent.transactions.at.the. | 
| 325c0 |  74 6f 70 2c 20 74 79 70 65 20 e2 80 98 52 e2 80    99 20 69 6e 20 74 68 65 20 e2 80 98 2a 4c 65 64  | top,.type....R....in.the....*Led | 
| 325e0 |  67 65 72 20 52 65 70 6f 72 74 2a e2 80 99 20 62    75 66 66 65 72 0a 61 6e 64 20 69 74 20 77 69 6c  | ger.Report*....buffer.and.it.wil | 
| 32600 |  6c 20 72 65 76 65 72 73 65 20 74 68 65 20 6f 72    64 65 72 20 6f 66 20 74 68 65 20 74 72 61 6e 73  | l.reverse.the.order.of.the.trans | 
| 32620 |  61 63 74 69 6f 6e 73 20 61 6e 64 20 6d 61 69 6e    74 61 69 6e 20 74 68 65 0a 70 72 6f 70 65 72 20  | actions.and.maintain.the.proper. | 
| 32640 |  6d 61 74 68 65 6d 61 74 69 63 61 6c 20 73 65 6e    73 65 2e 0a 0a 1f 0a 46 69 6c 65 3a 20 6c 65 64  | mathematical.sense.....File:.led | 
| 32660 |  67 65 72 2d 6d 6f 64 65 2e 69 6e 66 6f 2c 20 20    4e 6f 64 65 3a 20 53 63 68 65 64 75 6c 69 6e 67  | ger-mode.info,..Node:.Scheduling | 
| 32680 |  20 54 72 61 6e 73 61 63 74 69 6f 6e 73 2c 20 20    4e 65 78 74 3a 20 43 75 73 74 6f 6d 69 7a 69 6e  | .Transactions,..Next:.Customizin | 
| 326a0 |  67 20 4c 65 64 67 65 72 2d 6d 6f 64 65 2c 20 20    50 72 65 76 3a 20 54 68 65 20 52 65 70 6f 72 74  | g.Ledger-mode,..Prev:.The.Report | 
| 326c0 |  20 42 75 66 66 65 72 2c 20 20 55 70 3a 20 54 6f    70 0a 0a 35 20 53 63 68 65 64 75 6c 69 6e 67 20  | .Buffer,..Up:.Top..5.Scheduling. | 
| 326e0 |  54 72 61 6e 73 61 63 74 69 6f 6e 73 0a 2a 2a 2a    2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  | Transactions.******************* | 
| 32700 |  2a 2a 2a 2a 2a 2a 0a 0a 54 68 65 20 4c 65 64 67    65 72 20 70 72 6f 67 72 61 6d 20 70 72 6f 76 69  | ******..The.Ledger.program.provi | 
| 32720 |  64 65 73 20 66 6f 72 20 61 75 74 6f 6d 61 74 69    6e 67 20 74 72 61 6e 73 61 63 74 69 6f 6e 73 20  | des.for.automating.transactions. | 
| 32740 |  62 75 74 20 74 68 65 73 65 0a 74 72 61 6e 73 61    63 74 69 6f 6e 20 61 72 65 6e e2 80 99 74 20 5f  | but.these.transaction.aren...t._ | 
| 32760 |  72 65 61 6c 5f 2c 20 74 68 65 79 20 6f 6e 6c 79    20 65 78 69 73 74 20 69 6e 73 69 64 65 20 61 20  | real_,.they.only.exist.inside.a. | 
| 32780 |  6c 65 64 67 65 72 20 73 65 73 73 69 6f 6e 20 61    6e 64 0a 61 72 65 20 6e 6f 74 20 72 65 66 6c 65  | ledger.session.and.are.not.refle | 
| 327a0 |  63 74 65 64 20 69 6e 20 74 68 65 20 61 63 74 75    61 6c 20 64 61 74 61 20 66 69 6c 65 2e 20 20 4d  | cted.in.the.actual.data.file...M | 
| 327c0 |  61 6e 79 20 74 72 61 6e 73 61 63 74 69 6f 6e 73    20 61 72 65 20 76 65 72 79 0a 72 65 70 65 74 69  | any.transactions.are.very.repeti | 
| 327e0 |  74 69 76 65 2c 20 62 75 74 20 6d 61 79 20 76 61    72 79 20 73 6c 69 67 68 74 6c 79 20 69 6e 20 74  | tive,.but.may.vary.slightly.in.t | 
| 32800 |  68 65 20 64 61 74 65 20 74 68 65 79 20 6f 63 63    75 72 20 6f 6e 2c 20 6f 72 20 74 68 65 0a 61 6d  | he.date.they.occur.on,.or.the.am | 
| 32820 |  6f 75 6e 74 2e 20 20 53 6f 6d 65 20 74 72 61 6e    73 61 63 74 69 6f 6e 73 20 61 72 65 20 77 65 65  | ount...Some.transactions.are.wee | 
| 32840 |  6b 6c 79 2c 20 6d 6f 6e 74 68 6c 79 2c 20 71 75    61 72 74 65 72 6c 79 20 6f 72 20 61 6e 6e 75 61  | kly,.monthly,.quarterly.or.annua | 
| 32860 |  6c 6c 79 2e 0a 4c 65 64 67 65 72 20 6d 6f 64 65    20 70 72 6f 76 69 64 65 73 20 61 20 77 61 79 20  | lly..Ledger.mode.provides.a.way. | 
| 32880 |  74 6f 20 73 63 68 65 64 75 6c 65 20 75 70 63 6f    6d 69 6e 67 20 74 72 61 6e 73 61 63 74 69 6f 6e  | to.schedule.upcoming.transaction | 
| 328a0 |  20 77 69 74 68 20 61 0a 66 6c 65 78 69 62 6c 65    20 73 63 68 65 64 75 6c 65 72 20 74 68 61 74 20  | .with.a.flexible.scheduler.that. | 
| 328c0 |  61 6c 6c 6f 77 73 20 79 6f 75 20 74 6f 20 73 70    65 63 69 66 79 20 74 68 65 20 74 72 61 6e 73 61  | allows.you.to.specify.the.transa | 
| 328e0 |  63 74 69 6f 6e 73 20 69 6e 20 61 0a 73 65 70 61    72 61 74 65 20 6c 65 64 67 65 72 20 66 69 6c 65  | ctions.in.a.separate.ledger.file | 
| 32900 |  20 61 6e 64 20 63 61 6c 63 75 6c 61 74 65 20 74    68 65 20 75 70 63 6f 6d 69 6e 67 20 6f 63 63 75  | .and.calculate.the.upcoming.occu | 
| 32920 |  72 72 65 6e 63 65 73 20 6f 66 20 74 68 6f 73 65    0a 74 72 61 6e 73 61 63 74 69 6f 6e 73 2e 20 20  | rrences.of.those.transactions... | 
| 32940 |  59 6f 75 20 63 61 6e 20 74 68 65 6e 20 63 6f 70    79 20 74 68 65 20 74 72 61 6e 73 61 63 74 69 6f  | You.can.then.copy.the.transactio | 
| 32960 |  6e 73 20 69 6e 74 6f 20 79 6f 75 72 20 6c 69 76    65 20 64 61 74 61 0a 66 69 6c 65 2e 0a 0a 2a 20  | ns.into.your.live.data.file...*. | 
| 32980 |  4d 65 6e 75 3a 0a 0a 2a 20 53 70 65 63 69 66 79    69 6e 67 20 55 70 63 6f 6d 69 6e 67 20 54 72 61  | Menu:..*.Specifying.Upcoming.Tra | 
| 329a0 |  6e 73 61 63 74 69 6f 6e 73 3a 3a 0a 0a 1f 0a 46    69 6c 65 3a 20 6c 65 64 67 65 72 2d 6d 6f 64 65  | nsactions::....File:.ledger-mode | 
| 329c0 |  2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 53 70    65 63 69 66 79 69 6e 67 20 55 70 63 6f 6d 69 6e  | .info,..Node:.Specifying.Upcomin | 
| 329e0 |  67 20 54 72 61 6e 73 61 63 74 69 6f 6e 73 2c 20    20 50 72 65 76 3a 20 53 63 68 65 64 75 6c 69 6e  | g.Transactions,..Prev:.Schedulin | 
| 32a00 |  67 20 54 72 61 6e 73 61 63 74 69 6f 6e 73 2c 20    20 55 70 3a 20 53 63 68 65 64 75 6c 69 6e 67 20  | g.Transactions,..Up:.Scheduling. | 
| 32a20 |  54 72 61 6e 73 61 63 74 69 6f 6e 73 0a 0a 35 2e    31 20 53 70 65 63 69 66 79 69 6e 67 20 55 70 63  | Transactions..5.1.Specifying.Upc | 
| 32a40 |  6f 6d 69 6e 67 20 54 72 61 6e 73 61 63 74 69 6f    6e 73 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  | oming.Transactions.============= | 
| 32a60 |  3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d    3d 3d 3d 3d 3d 3d 3d 0a 0a 54 68 65 20 66 6f 72  | =======================..The.for | 
| 32a80 |  6d 61 74 20 66 6f 72 20 73 70 65 63 69 66 79 69    6e 67 20 74 72 61 6e 73 61 63 74 69 6f 6e 73 20  | mat.for.specifying.transactions. | 
| 32aa0 |  69 73 20 69 64 65 6e 74 69 63 61 6c 20 74 6f 20    4c 65 64 67 65 72 e2 80 99 73 20 66 69 6c 65 0a  | is.identical.to.Ledger...s.file. | 
| 32ac0 |  66 6f 72 6d 61 74 20 77 69 74 68 20 74 68 65 20    65 78 63 65 70 74 69 6f 6e 20 6f 66 20 74 68 65  | format.with.the.exception.of.the | 
| 32ae0 |  20 64 61 74 65 20 66 69 65 6c 64 2e 20 20 54 68    65 20 64 61 74 61 20 66 69 65 6c 64 20 69 73 20  | .date.field...The.data.field.is. | 
| 32b00 |  6d 6f 64 69 66 69 65 64 0a 62 79 20 73 75 72 72    6f 75 6e 64 69 6e 67 20 69 74 20 77 69 74 68 20  | modified.by.surrounding.it.with. | 
| 32b20 |  62 72 61 63 6b 65 74 73 20 61 6e 64 20 75 73 69    6e 67 20 77 69 6c 64 20 63 61 72 64 73 20 61 6e  | brackets.and.using.wild.cards.an | 
| 32b40 |  64 20 73 70 65 63 69 61 6c 0a 63 68 61 72 61 63    74 65 72 73 20 74 6f 20 73 70 65 63 69 66 79 20  | d.special.characters.to.specify. | 
| 32b60 |  77 68 65 6e 20 74 68 65 20 74 72 61 6e 73 61 63    74 69 6f 6e 73 20 73 68 6f 75 6c 64 20 61 70 70  | when.the.transactions.should.app | 
| 32b80 |  65 61 72 2e 0a 0a 2a 20 4d 65 6e 75 3a 0a 0a 2a    20 54 72 61 6e 73 61 63 74 69 6f 6e 73 20 74 68  | ear...*.Menu:..*.Transactions.th | 
| 32ba0 |  61 74 20 6f 63 63 75 72 20 6f 6e 20 73 70 65 63    69 66 69 63 20 64 61 74 65 73 3a 3a 0a 2a 20 54  | at.occur.on.specific.dates::.*.T | 
| 32bc0 |  72 61 6e 73 61 63 74 69 6f 6e 73 20 74 68 61 74    20 6f 63 63 75 72 20 6f 6e 20 73 70 65 63 69 66  | ransactions.that.occur.on.specif | 
| 32be0 |  69 63 20 64 61 79 73 3a 3a 0a 0a 1f 0a 46 69 6c    65 3a 20 6c 65 64 67 65 72 2d 6d 6f 64 65 2e 69  | ic.days::....File:.ledger-mode.i | 
| 32c00 |  6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 54 72 61 6e    73 61 63 74 69 6f 6e 73 20 74 68 61 74 20 6f 63  | nfo,..Node:.Transactions.that.oc | 
| 32c20 |  63 75 72 20 6f 6e 20 73 70 65 63 69 66 69 63 20    64 61 74 65 73 2c 20 20 4e 65 78 74 3a 20 54 72  | cur.on.specific.dates,..Next:.Tr | 
| 32c40 |  61 6e 73 61 63 74 69 6f 6e 73 20 74 68 61 74 20    6f 63 63 75 72 20 6f 6e 20 73 70 65 63 69 66 69  | ansactions.that.occur.on.specifi | 
| 32c60 |  63 20 64 61 79 73 2c 20 20 50 72 65 76 3a 20 53    70 65 63 69 66 79 69 6e 67 20 55 70 63 6f 6d 69  | c.days,..Prev:.Specifying.Upcomi | 
| 32c80 |  6e 67 20 54 72 61 6e 73 61 63 74 69 6f 6e 73 2c    20 20 55 70 3a 20 53 70 65 63 69 66 79 69 6e 67  | ng.Transactions,..Up:.Specifying | 
| 32ca0 |  20 55 70 63 6f 6d 69 6e 67 20 54 72 61 6e 73 61    63 74 69 6f 6e 73 0a 0a 35 2e 31 2e 31 20 54 72  | .Upcoming.Transactions..5.1.1.Tr | 
| 32cc0 |  61 6e 73 61 63 74 69 6f 6e 73 20 74 68 61 74 20    6f 63 63 75 72 20 6f 6e 20 73 70 65 63 69 66 69  | ansactions.that.occur.on.specifi | 
| 32ce0 |  63 20 64 61 74 65 73 0a 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  | c.dates.------------------------ | 
| 32d00 |  2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 0a 0a 4d 61 6e 79 20 74 69  | -----------------------..Many.ti | 
| 32d20 |  6d 65 73 20 79 6f 75 20 77 69 6c 6c 20 65 6e 74    65 72 20 72 65 70 65 74 69 74 69 76 65 20 74 72  | mes.you.will.enter.repetitive.tr | 
| 32d40 |  61 6e 73 61 63 74 69 6f 6e 73 20 74 68 61 74 20    6f 63 63 75 72 20 6f 6e 20 74 68 65 20 73 61 6d  | ansactions.that.occur.on.the.sam | 
| 32d60 |  65 0a 64 61 79 20 6f 66 20 74 68 65 20 6d 6f 6e    74 68 20 65 61 63 68 20 6d 6f 6e 74 68 2e 20 20  | e.day.of.the.month.each.month... | 
| 32d80 |  54 68 65 73 65 20 63 61 6e 20 62 65 20 73 70 65    63 69 66 69 65 64 20 75 73 69 6e 67 20 61 20 77  | These.can.be.specified.using.a.w | 
| 32da0 |  69 6c 64 20 63 61 72 64 0a 69 6e 20 74 68 65 20    79 65 61 72 20 61 6e 64 20 6d 6f 6e 74 68 20 77  | ild.card.in.the.year.and.month.w | 
| 32dc0 |  69 74 68 20 61 20 66 69 78 65 64 20 64 61 74 65    20 69 6e 20 74 68 65 20 64 61 79 2e 20 20 54 68  | ith.a.fixed.date.in.the.day...Th | 
| 32de0 |  65 20 66 6f 6c 6c 6f 77 69 6e 67 20 65 6e 74 72    79 0a 73 70 65 63 69 66 69 65 73 20 61 20 74 72  | e.following.entry.specifies.a.tr | 
| 32e00 |  61 6e 73 61 63 74 69 6f 6e 20 74 68 61 74 20 6f    63 63 75 72 73 20 6f 6e 20 74 68 65 20 66 69 72  | ansaction.that.occurs.on.the.fir | 
| 32e20 |  73 74 20 61 6e 64 20 66 69 66 74 65 65 6e 74 68    20 6f 66 20 65 76 65 72 79 0a 6d 6f 6e 74 68 20  | st.and.fifteenth.of.every.month. | 
| 32e40 |  69 6e 20 65 76 65 72 79 20 79 65 61 72 2e 0a 20    20 20 20 20 5b 2a 2f 2a 2f 31 2c 31 35 5d 20 50  | in.every.year.......[*/*/1,15].P | 
| 32e60 |  61 79 63 68 65 63 6b 0a 20 20 20 20 20 20 20 20    20 49 6e 63 6f 6d 65 3a 4a 6f 62 20 20 20 20 20  | aycheck..........Income:Job..... | 
| 32e80 |  20 20 24 31 30 30 30 2e 30 30 0a 20 20 20 20 20    20 20 20 20 41 73 73 65 74 73 3a 43 68 65 63 6b  | ..$1000.00..........Assets:Check | 
| 32ea0 |  69 6e 67 0a 0a 20 20 20 53 6f 6d 65 20 74 72 61    6e 73 61 63 74 69 6f 6e 73 20 64 6f 20 6e 6f 74  | ing.....Some.transactions.do.not | 
| 32ec0 |  20 6f 63 63 75 72 20 65 76 65 72 79 20 6d 6f 6e    74 68 2e 20 20 43 6f 6d 6d 61 20 73 65 70 61 72  | .occur.every.month...Comma.separ | 
| 32ee0 |  61 74 65 64 20 6c 69 73 74 73 20 6f 66 0a 74 68    65 20 6d 6f 6e 74 68 73 2c 20 6f 72 20 e2 80 98  | ated.lists.of.the.months,.or.... | 
| 32f00 |  45 e2 80 99 20 66 6f 72 20 65 76 65 6e 2c 20 6f    72 20 e2 80 98 4f e2 80 99 20 66 6f 72 20 6f 64  | E....for.even,.or....O....for.od | 
| 32f20 |  64 20 6e 75 6d 62 65 72 20 6d 6f 6e 74 68 73 20    63 61 6e 20 61 6c 73 6f 20 62 65 0a 73 70 65 63  | d.number.months.can.also.be.spec | 
| 32f40 |  69 66 69 65 64 2e 20 20 54 68 65 20 66 6f 6c 6c    6f 77 69 6e 67 20 65 6e 74 72 79 20 73 70 65 63  | ified...The.following.entry.spec | 
| 32f60 |  69 66 69 65 73 20 61 20 62 69 2d 6d 6f 6e 74 68    6c 79 20 65 78 74 65 72 6d 69 6e 61 74 6f 72 20  | ifies.a.bi-monthly.exterminator. | 
| 32f80 |  62 69 6c 6c 0a 74 68 61 74 20 6f 63 63 75 72 73    20 69 6e 20 74 68 65 20 65 76 65 6e 20 6d 6f 6e  | bill.that.occurs.in.the.even.mon | 
| 32fa0 |  74 68 73 3a 0a 20 20 20 20 20 5b 2a 2f 45 2f 30    31 5d 20 20 45 78 74 65 72 6d 69 6e 61 74 6f 72  | ths:......[*/E/01]..Exterminator | 
| 32fc0 |  0a 20 20 20 20 20 20 20 20 20 45 78 70 65 6e 73    65 73 3a 48 6f 6d 65 20 20 20 24 31 30 30 2e 30  | ..........Expenses:Home...$100.0 | 
| 32fe0 |  30 0a 20 20 20 20 20 20 20 20 20 41 73 73 65 74    73 3a 43 68 65 63 6b 69 6e 67 0a 0a 1f 0a 46 69  | 0..........Assets:Checking....Fi | 
| 33000 |  6c 65 3a 20 6c 65 64 67 65 72 2d 6d 6f 64 65 2e    69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 54 72 61  | le:.ledger-mode.info,..Node:.Tra | 
| 33020 |  6e 73 61 63 74 69 6f 6e 73 20 74 68 61 74 20 6f    63 63 75 72 20 6f 6e 20 73 70 65 63 69 66 69 63  | nsactions.that.occur.on.specific | 
| 33040 |  20 64 61 79 73 2c 20 20 50 72 65 76 3a 20 54 72    61 6e 73 61 63 74 69 6f 6e 73 20 74 68 61 74 20  | .days,..Prev:.Transactions.that. | 
| 33060 |  6f 63 63 75 72 20 6f 6e 20 73 70 65 63 69 66 69    63 20 64 61 74 65 73 2c 20 20 55 70 3a 20 53 70  | occur.on.specific.dates,..Up:.Sp | 
| 33080 |  65 63 69 66 79 69 6e 67 20 55 70 63 6f 6d 69 6e    67 20 54 72 61 6e 73 61 63 74 69 6f 6e 73 0a 0a  | ecifying.Upcoming.Transactions.. | 
| 330a0 |  35 2e 31 2e 32 20 54 72 61 6e 73 61 63 74 69 6f    6e 73 20 74 68 61 74 20 6f 63 63 75 72 20 6f 6e  | 5.1.2.Transactions.that.occur.on | 
| 330c0 |  20 73 70 65 63 69 66 69 63 20 64 61 79 73 0a 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  | .specific.days.----------------- | 
| 330e0 |  2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 53  | -----------------------------..S | 
| 33100 |  6f 6d 65 20 74 72 61 6e 73 61 63 74 69 6f 6e 73    20 6f 63 63 75 72 20 65 76 65 72 79 20 72 65 6c  | ome.transactions.occur.every.rel | 
| 33120 |  61 74 69 76 65 20 74 6f 20 74 68 65 20 64 61 79    20 6f 66 20 74 68 65 20 77 65 65 6b 20 72 61 74  | ative.to.the.day.of.the.week.rat | 
| 33140 |  68 65 72 0a 74 68 61 6e 20 74 68 65 20 64 61 74    65 20 6f 66 20 74 68 65 20 6d 6f 6e 74 68 2e 20  | her.than.the.date.of.the.month.. | 
| 33160 |  20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 6d 61    6e 79 20 70 65 6f 70 6c 65 20 61 72 65 20 70 61  | .For.example,.many.people.are.pa | 
| 33180 |  69 64 20 65 76 65 72 79 20 74 77 6f 0a 77 65 65    6b 73 20 77 69 74 68 6f 75 74 20 72 65 67 61 72  | id.every.two.weeks.without.regar | 
| 331a0 |  64 20 74 6f 20 74 68 65 20 64 61 79 20 6f 66 20    74 68 65 20 6d 6f 6e 74 68 2e 20 20 4f 74 68 65  | d.to.the.day.of.the.month...Othe | 
| 331c0 |  72 20 65 76 65 6e 74 73 20 6d 61 79 20 6f 63 63    75 72 20 6f 6e 0a 73 70 65 63 69 66 69 63 20 64  | r.events.may.occur.on.specific.d | 
| 331e0 |  61 79 73 20 72 65 67 61 72 64 6c 65 73 73 20 6f    66 20 74 68 65 20 64 61 74 65 2e 20 20 46 6f 72  | ays.regardless.of.the.date...For | 
| 33200 |  20 65 78 61 6d 70 6c 65 20 74 68 65 20 66 6f 6c    6c 6f 77 69 6e 67 0a 74 72 61 6e 73 61 63 74 69  | .example.the.following.transacti | 
| 33220 |  6f 6e 73 20 63 72 65 61 74 65 73 20 61 20 74 72    61 6e 73 61 63 74 69 6f 6e 20 65 76 65 72 79 20  | ons.creates.a.transaction.every. | 
| 33240 |  6f 74 68 65 72 20 54 68 75 72 73 64 61 79 3a 0a    0a 20 20 20 20 20 5b 32 30 31 34 2f 31 31 2f 32  | other.Thursday:.......[2014/11/2 | 
| 33260 |  37 2b 32 54 68 5d 20 20 50 61 79 63 68 65 63 6b    0a 20 20 20 20 20 20 20 20 20 49 6e 63 6f 6d 65  | 7+2Th]..Paycheck..........Income | 
| 33280 |  3a 4a 6f 62 20 20 20 20 20 20 20 24 31 30 30 30    2e 30 30 0a 20 20 20 20 20 20 20 20 20 41 73 73  | :Job.......$1000.00..........Ass | 
| 332a0 |  65 74 73 3a 43 68 65 63 6b 69 6e 67 0a 0a 20 20    20 49 74 20 69 73 20 6e 65 63 65 73 73 61 72 79  | ets:Checking.....It.is.necessary | 
| 332c0 |  20 74 6f 20 73 70 65 63 69 66 79 20 61 20 73 74    61 72 74 69 6e 67 20 64 61 74 65 20 69 6e 20 6f  | .to.specify.a.starting.date.in.o | 
| 332e0 |  72 64 65 72 20 66 6f 72 20 74 68 69 73 20 74 79    70 65 20 6f 66 0a 72 65 63 75 72 72 65 6e 63 65  | rder.for.this.type.of.recurrence | 
| 33300 |  20 72 65 6c 61 74 69 6f 6e 20 74 6f 20 62 65 20    73 70 65 63 69 66 69 65 64 2e 20 20 54 68 65 20  | .relation.to.be.specified...The. | 
| 33320 |  64 61 79 20 6e 61 6d 65 73 20 61 72 65 20 74 77    6f 20 63 68 61 72 61 63 74 65 72 0a 63 6f 64 65  | day.names.are.two.character.code | 
| 33340 |  73 20 74 68 61 74 20 64 65 66 61 75 6c 74 20 74    6f 20 4d 6f 2c 20 54 75 2c 20 57 65 2c 20 54 68  | s.that.default.to.Mo,.Tu,.We,.Th | 
| 33360 |  2c 20 46 72 2c 20 53 61 2c 20 53 75 2c 20 66 6f    72 20 4d 6f 6e 64 61 79 2c 20 54 75 65 73 64 61  | ,.Fr,.Sa,.Su,.for.Monday,.Tuesda | 
| 33380 |  79 2c 0a 57 65 64 6e 65 73 64 61 79 2c 20 54 68    75 72 73 64 61 79 2c 20 46 72 69 64 61 79 2c 20  | y,.Wednesday,.Thursday,.Friday,. | 
| 333a0 |  53 61 74 75 72 64 61 79 2c 20 53 75 6e 64 61 79    20 72 65 73 70 65 63 74 69 76 65 6c 79 2e 20 20  | Saturday,.Sunday.respectively... | 
| 333c0 |  59 6f 75 20 63 61 6e 0a 63 68 61 6e 67 65 20 74    68 65 20 63 6f 64 65 73 20 74 6f 20 73 6f 6d 65  | You.can.change.the.codes.to.some | 
| 333e0 |  74 68 69 6e 67 20 6d 6f 72 65 20 63 6f 6e 76 65    6e 69 65 6e 74 20 66 6f 72 20 79 6f 75 72 20 6c  | thing.more.convenient.for.your.l | 
| 33400 |  6f 63 61 6c 65 20 62 79 0a 63 75 73 74 6f 6d 69    7a 69 6e 67 20 74 68 65 20 6c 65 64 67 65 72 20  | ocale.by.customizing.the.ledger. | 
| 33420 |  e2 80 98 6c 65 64 67 65 72 2d 73 63 68 65 64 75    6c 65 2d 77 65 65 6b 2d 64 61 79 73 e2 80 99 2e  | ...ledger-schedule-week-days.... | 
| 33440 |  20 20 54 68 65 79 20 6d 75 73 74 20 62 65 20 74    77 6f 0a 63 68 61 72 61 63 74 65 72 73 20 6c 6f  | ..They.must.be.two.characters.lo | 
| 33460 |  6e 67 2e 0a 0a 1f 0a 46 69 6c 65 3a 20 6c 65 64    67 65 72 2d 6d 6f 64 65 2e 69 6e 66 6f 2c 20 20  | ng.....File:.ledger-mode.info,.. | 
| 33480 |  4e 6f 64 65 3a 20 43 75 73 74 6f 6d 69 7a 69 6e    67 20 4c 65 64 67 65 72 2d 6d 6f 64 65 2c 20 20  | Node:.Customizing.Ledger-mode,.. | 
| 334a0 |  4e 65 78 74 3a 20 47 65 6e 65 72 61 74 69 6e 67    20 4c 65 64 67 65 72 20 52 65 67 72 65 73 73 69  | Next:.Generating.Ledger.Regressi | 
| 334c0 |  6f 6e 20 54 65 73 74 73 2c 20 20 50 72 65 76 3a    20 53 63 68 65 64 75 6c 69 6e 67 20 54 72 61 6e  | on.Tests,..Prev:.Scheduling.Tran | 
| 334e0 |  73 61 63 74 69 6f 6e 73 2c 20 20 55 70 3a 20 54    6f 70 0a 0a 36 20 43 75 73 74 6f 6d 69 7a 69 6e  | sactions,..Up:.Top..6.Customizin | 
| 33500 |  67 20 4c 65 64 67 65 72 2d 6d 6f 64 65 0a 2a 2a    2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  | g.Ledger-mode.****************** | 
| 33520 |  2a 2a 2a 2a 2a 2a 2a 0a 0a 2a 20 4d 65 6e 75 3a    0a 0a 2a 20 4c 65 64 67 65 72 2d 6d 6f 64 65 20  | *******..*.Menu:..*.Ledger-mode. | 
| 33540 |  43 75 73 74 6f 6d 69 7a 61 74 69 6f 6e 3a 3a 0a    2a 20 43 75 73 74 6f 6d 69 7a 61 74 69 6f 6e 20  | Customization::.*.Customization. | 
| 33560 |  56 61 72 69 61 62 6c 65 73 3a 3a 0a 0a 1f 0a 46    69 6c 65 3a 20 6c 65 64 67 65 72 2d 6d 6f 64 65  | Variables::....File:.ledger-mode | 
| 33580 |  2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 4c 65    64 67 65 72 2d 6d 6f 64 65 20 43 75 73 74 6f 6d  | .info,..Node:.Ledger-mode.Custom | 
| 335a0 |  69 7a 61 74 69 6f 6e 2c 20 20 4e 65 78 74 3a 20    43 75 73 74 6f 6d 69 7a 61 74 69 6f 6e 20 56 61  | ization,..Next:.Customization.Va | 
| 335c0 |  72 69 61 62 6c 65 73 2c 20 20 50 72 65 76 3a 20    43 75 73 74 6f 6d 69 7a 69 6e 67 20 4c 65 64 67  | riables,..Prev:.Customizing.Ledg | 
| 335e0 |  65 72 2d 6d 6f 64 65 2c 20 20 55 70 3a 20 43 75    73 74 6f 6d 69 7a 69 6e 67 20 4c 65 64 67 65 72  | er-mode,..Up:.Customizing.Ledger | 
| 33600 |  2d 6d 6f 64 65 0a 0a 36 2e 31 20 4c 65 64 67 65    72 2d 6d 6f 64 65 20 43 75 73 74 6f 6d 69 7a 61  | -mode..6.1.Ledger-mode.Customiza | 
| 33620 |  74 69 6f 6e 0a 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d    3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  | tion.=========================== | 
| 33640 |  3d 3d 0a 0a 4c 65 64 67 65 72 2d 6d 6f 64 65 20    68 61 73 20 73 65 76 65 72 61 6c 20 6f 70 74 69  | ==..Ledger-mode.has.several.opti | 
| 33660 |  6f 6e 73 20 61 76 61 69 6c 61 62 6c 65 20 66 6f    72 20 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 2e  | ons.available.for.configuration. | 
| 33680 |  20 20 41 6c 6c 0a 6f 70 74 69 6f 6e 73 20 63 61    6e 20 62 65 20 63 6f 6e 66 69 67 75 72 65 64 20  | ..All.options.can.be.configured. | 
| 336a0 |  74 68 72 6f 75 67 68 20 74 68 65 20 45 6d 61 63    73 20 63 75 73 74 6f 6d 69 7a 61 74 69 6f 6e 20  | through.the.Emacs.customization. | 
| 336c0 |  6d 65 6e 75 73 2c 20 6f 72 0a 73 70 65 63 69 66    69 65 64 20 69 6e 20 79 6f 75 72 20 45 6d 61 63  | menus,.or.specified.in.your.Emac | 
| 336e0 |  73 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 6f 6e    20 66 69 6c 65 2e 20 20 54 68 65 20 63 6f 6d 70  | s.initialization.file...The.comp | 
| 33700 |  6c 65 74 65 20 6c 69 73 74 20 6f 66 0a 6f 70 74    69 6f 6e 73 20 69 73 20 73 68 6f 77 6e 20 62 65  | lete.list.of.options.is.shown.be | 
| 33720 |  6c 6f 77 2e 20 20 54 6f 20 63 68 61 6e 67 65 20    74 68 65 20 6f 70 74 69 6f 6e 20 75 73 69 6e 67  | low...To.change.the.option.using | 
| 33740 |  20 74 68 65 20 45 6d 61 63 73 0a 63 75 73 74 6f    6d 69 7a 61 74 69 6f 6e 20 6d 65 6e 75 2c 20 73  | .the.Emacs.customization.menu,.s | 
| 33760 |  69 6d 70 6c 79 20 63 68 6f 6f 73 65 20 63 75 73    74 6f 6d 69 7a 65 20 69 6e 20 74 68 65 20 4f 70  | imply.choose.customize.in.the.Op | 
| 33780 |  74 69 6f 6e 73 20 6d 65 6e 75 20 61 6e 64 20 6c    6f 6f 6b 0a 66 6f 72 20 4c 65 64 67 65 72 20 75  | tions.menu.and.look.for.Ledger.u | 
| 337a0 |  6e 64 65 72 20 74 68 65 20 64 61 74 61 20 6f 70    74 69 6f 6e 73 2e 20 20 41 6c 74 65 72 6e 61 74  | nder.the.data.options...Alternat | 
| 337c0 |  69 76 65 6c 79 20 79 6f 75 20 63 61 6e 20 63 68    6f 6f 73 65 0a e2 80 98 43 75 73 74 6f 6d 69 7a  | ively.you.can.choose....Customiz | 
| 337e0 |  65 20 53 70 65 63 69 66 69 63 20 47 72 6f 75 70    e2 80 99 20 61 6e 64 20 65 6e 74 65 72 20 e2 80  | e.Specific.Group....and.enter... | 
| 33800 |  98 4c 65 64 67 65 72 e2 80 99 20 61 73 20 74 68    65 20 67 72 6f 75 70 2e 0a 0a 1f 0a 46 69 6c 65  | .Ledger....as.the.group.....File | 
| 33820 |  3a 20 6c 65 64 67 65 72 2d 6d 6f 64 65 2e 69 6e    66 6f 2c 20 20 4e 6f 64 65 3a 20 43 75 73 74 6f  | :.ledger-mode.info,..Node:.Custo | 
| 33840 |  6d 69 7a 61 74 69 6f 6e 20 56 61 72 69 61 62 6c    65 73 2c 20 20 50 72 65 76 3a 20 4c 65 64 67 65  | mization.Variables,..Prev:.Ledge | 
| 33860 |  72 2d 6d 6f 64 65 20 43 75 73 74 6f 6d 69 7a 61    74 69 6f 6e 2c 20 20 55 70 3a 20 43 75 73 74 6f  | r-mode.Customization,..Up:.Custo | 
| 33880 |  6d 69 7a 69 6e 67 20 4c 65 64 67 65 72 2d 6d 6f    64 65 0a 0a 36 2e 32 20 43 75 73 74 6f 6d 69 7a  | mizing.Ledger-mode..6.2.Customiz | 
| 338a0 |  61 74 69 6f 6e 20 56 61 72 69 61 62 6c 65 73 0a    3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d  | ation.Variables.================ | 
| 338c0 |  3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 0a 2a 20 4d    65 6e 75 3a 0a 0a 2a 20 4c 65 64 67 65 72 20 43  | ===========..*.Menu:..*.Ledger.C | 
| 338e0 |  75 73 74 6f 6d 69 7a 61 74 69 6f 6e 20 47 72 6f    75 70 3a 3a 0a 2a 20 4c 65 64 67 65 72 20 52 65  | ustomization.Group::.*.Ledger.Re | 
| 33900 |  63 6f 6e 63 69 6c 65 20 43 75 73 74 6f 6d 69 7a    61 74 69 6f 6e 20 47 72 6f 75 70 3a 3a 0a 2a 20  | concile.Customization.Group::.*. | 
| 33920 |  4c 65 64 67 65 72 20 52 65 70 6f 72 74 20 43 75    73 74 6f 6d 69 7a 61 74 69 6f 6e 20 47 72 6f 75  | Ledger.Report.Customization.Grou | 
| 33940 |  70 3a 3a 0a 2a 20 4c 65 64 67 65 72 20 46 61 63    65 73 20 43 75 73 74 6f 6d 69 7a 61 74 69 6f 6e  | p::.*.Ledger.Faces.Customization | 
| 33960 |  20 47 72 6f 75 70 3a 3a 0a 2a 20 4c 65 64 67 65    72 20 50 6f 73 74 20 43 75 73 74 6f 6d 69 7a 61  | .Group::.*.Ledger.Post.Customiza | 
| 33980 |  74 69 6f 6e 20 47 72 6f 75 70 3a 3a 0a 2a 20 4c    65 64 67 65 72 20 45 78 65 63 20 43 75 73 74 6f  | tion.Group::.*.Ledger.Exec.Custo | 
| 339a0 |  6d 69 7a 61 74 69 6f 6e 20 47 72 6f 75 70 3a 3a    0a 2a 20 4c 65 64 67 65 72 20 54 65 73 74 20 43  | mization.Group::.*.Ledger.Test.C | 
| 339c0 |  75 73 74 6f 6d 69 7a 61 74 69 6f 6e 20 47 72 6f    75 70 3a 3a 0a 2a 20 4c 65 64 67 65 72 20 54 65  | ustomization.Group::.*.Ledger.Te | 
| 339e0 |  78 69 20 43 75 73 74 6f 6d 69 7a 61 74 69 6f 6e    20 47 72 6f 75 70 3a 3a 0a 0a 1f 0a 46 69 6c 65  | xi.Customization.Group::....File | 
| 33a00 |  3a 20 6c 65 64 67 65 72 2d 6d 6f 64 65 2e 69 6e    66 6f 2c 20 20 4e 6f 64 65 3a 20 4c 65 64 67 65  | :.ledger-mode.info,..Node:.Ledge | 
| 33a20 |  72 20 43 75 73 74 6f 6d 69 7a 61 74 69 6f 6e 20    47 72 6f 75 70 2c 20 20 4e 65 78 74 3a 20 4c 65  | r.Customization.Group,..Next:.Le | 
| 33a40 |  64 67 65 72 20 52 65 63 6f 6e 63 69 6c 65 20 43    75 73 74 6f 6d 69 7a 61 74 69 6f 6e 20 47 72 6f  | dger.Reconcile.Customization.Gro | 
| 33a60 |  75 70 2c 20 20 50 72 65 76 3a 20 43 75 73 74 6f    6d 69 7a 61 74 69 6f 6e 20 56 61 72 69 61 62 6c  | up,..Prev:.Customization.Variabl | 
| 33a80 |  65 73 2c 20 20 55 70 3a 20 43 75 73 74 6f 6d 69    7a 61 74 69 6f 6e 20 56 61 72 69 61 62 6c 65 73  | es,..Up:.Customization.Variables | 
| 33aa0 |  0a 0a 36 2e 32 2e 31 20 4c 65 64 67 65 72 20 43    75 73 74 6f 6d 69 7a 61 74 69 6f 6e 20 47 72 6f  | ..6.2.1.Ledger.Customization.Gro | 
| 33ac0 |  75 70 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  | up.----------------------------- | 
| 33ae0 |  2d 2d 2d 0a 0a e2 80 98 6c 65 64 67 65 72 2d 6f    63 63 75 72 2d 75 73 65 2d 66 61 63 65 2d 73 68  | ---.....ledger-occur-use-face-sh | 
| 33b00 |  6f 77 6e e2 80 99 0a 20 20 20 20 20 49 66 20 6e    6f 6e 2d 6e 69 6c 2c 20 75 73 65 20 61 20 63 75  | own.........If.non-nil,.use.a.cu | 
| 33b20 |  73 74 6f 6d 20 66 61 63 65 20 66 6f 72 20 74 72    61 6e 73 61 63 74 69 6f 6e 73 20 73 68 6f 77 6e  | stom.face.for.transactions.shown | 
| 33b40 |  20 69 6e 0a 20 20 20 20 20 e2 80 98 6c 65 64 67    65 72 2d 6f 63 63 75 72 e2 80 99 20 6d 6f 64 65  | .in.........ledger-occur....mode | 
| 33b60 |  20 75 73 69 6e 67 20 e2 80 98 6c 65 64 67 65 72    2d 6f 63 63 75 72 2d 78 61 63 74 2d 66 61 63 65  | .using....ledger-occur-xact-face | 
| 33b80 |  e2 80 99 2e 0a 0a e2 80 98 6c 65 64 67 65 72 2d    63 6c 65 61 72 2d 77 68 6f 6c 65 2d 74 72 61 6e  | .........ledger-clear-whole-tran | 
| 33ba0 |  73 61 63 74 69 6f 6e 73 e2 80 99 0a 20 20 20 20    20 49 66 20 6e 6f 6e 2d 6e 69 6c 2c 20 63 6c 65  | sactions.........If.non-nil,.cle | 
| 33bc0 |  61 72 20 77 68 6f 6c 65 20 74 72 61 6e 73 61 63    74 69 6f 6e 73 2c 20 6e 6f 74 20 69 6e 64 69 76  | ar.whole.transactions,.not.indiv | 
| 33be0 |  69 64 75 61 6c 20 70 6f 73 74 69 6e 67 73 2e 0a    0a e2 80 98 6c 65 64 67 65 72 2d 68 69 67 68 6c  | idual.postings......ledger-highl | 
| 33c00 |  69 67 68 74 2d 78 61 63 74 2d 75 6e 64 65 72 2d    70 6f 69 6e 74 e2 80 99 0a 20 20 20 20 20 49 66  | ight-xact-under-point.........If | 
| 33c20 |  20 6e 6f 6e 2d 6e 69 6c 2c 20 68 69 67 68 6c 69    67 68 74 20 74 72 61 6e 73 61 63 74 69 6f 6e 20  | .non-nil,.highlight.transaction. | 
| 33c40 |  75 6e 64 65 72 20 70 6f 69 6e 74 20 75 73 69 6e    67 0a 20 20 20 20 20 e2 80 98 6c 65 64 67 65 72  | under.point.using.........ledger | 
| 33c60 |  2d 66 6f 6e 74 2d 68 69 67 68 6c 69 67 68 74 2d    66 61 63 65 e2 80 99 2e 0a 0a 1f 0a 46 69 6c 65  | -font-highlight-face........File | 
| 33c80 |  3a 20 6c 65 64 67 65 72 2d 6d 6f 64 65 2e 69 6e    66 6f 2c 20 20 4e 6f 64 65 3a 20 4c 65 64 67 65  | :.ledger-mode.info,..Node:.Ledge | 
| 33ca0 |  72 20 52 65 63 6f 6e 63 69 6c 65 20 43 75 73 74    6f 6d 69 7a 61 74 69 6f 6e 20 47 72 6f 75 70 2c  | r.Reconcile.Customization.Group, | 
| 33cc0 |  20 20 4e 65 78 74 3a 20 4c 65 64 67 65 72 20 52    65 70 6f 72 74 20 43 75 73 74 6f 6d 69 7a 61 74  | ..Next:.Ledger.Report.Customizat | 
| 33ce0 |  69 6f 6e 20 47 72 6f 75 70 2c 20 20 50 72 65 76    3a 20 4c 65 64 67 65 72 20 43 75 73 74 6f 6d 69  | ion.Group,..Prev:.Ledger.Customi | 
| 33d00 |  7a 61 74 69 6f 6e 20 47 72 6f 75 70 2c 20 20 55    70 3a 20 43 75 73 74 6f 6d 69 7a 61 74 69 6f 6e  | zation.Group,..Up:.Customization | 
| 33d20 |  20 56 61 72 69 61 62 6c 65 73 0a 0a 36 2e 32 2e    32 20 4c 65 64 67 65 72 20 52 65 63 6f 6e 63 69  | .Variables..6.2.2.Ledger.Reconci | 
| 33d40 |  6c 65 20 43 75 73 74 6f 6d 69 7a 61 74 69 6f 6e    20 47 72 6f 75 70 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d  | le.Customization.Group.--------- | 
| 33d60 |  2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  | -------------------------------- | 
| 33d80 |  2d 0a 0a e2 80 98 6c 65 64 67 65 72 2d 72 65 63    6f 6e 63 69 6c 65 2d 62 75 66 66 65 72 2d 6e 61  | -.....ledger-reconcile-buffer-na | 
| 33da0 |  6d 65 e2 80 99 0a 20 20 20 20 20 4e 61 6d 65 20    74 6f 20 75 73 65 20 66 6f 72 20 72 65 63 6f 6e  | me.........Name.to.use.for.recon | 
| 33dc0 |  63 69 6c 69 61 74 69 6f 6e 20 62 75 66 66 65 72    2e 20 20 44 65 66 61 75 6c 74 73 20 74 6f 20 e2  | ciliation.buffer...Defaults.to.. | 
| 33de0 |  80 98 2a 52 65 63 6f 6e 63 69 6c 65 2a e2 80 99    2e 0a 0a e2 80 98 6c 65 64 67 65 72 2d 6e 61 72  | ..*Reconcile*.........ledger-nar | 
| 33e00 |  72 6f 77 2d 6f 6e 2d 72 65 63 6f 6e 63 69 6c 65    e2 80 99 0a 20 20 20 20 20 49 66 20 74 2c 20 6c  | row-on-reconcile.........If.t,.l | 
| 33e20 |  69 6d 69 74 20 74 72 61 6e 73 61 63 74 69 6f 6e    73 20 73 68 6f 77 6e 20 69 6e 20 6d 61 69 6e 20  | imit.transactions.shown.in.main. | 
| 33e40 |  62 75 66 66 65 72 20 74 6f 20 74 68 6f 73 65 20    6d 61 74 63 68 69 6e 67 20 74 68 65 0a 20 20 20  | buffer.to.those.matching.the.... | 
| 33e60 |  20 20 72 65 63 6f 6e 63 69 6c 65 20 72 65 67 65    78 2e 0a 0a e2 80 98 6c 65 64 67 65 72 2d 62 75  | ..reconcile.regex......ledger-bu | 
| 33e80 |  66 66 65 72 2d 74 72 61 63 6b 73 2d 72 65 63 6f    6e 63 69 6c 65 2d 62 75 66 66 65 72 e2 80 99 0a  | ffer-tracks-reconcile-buffer.... | 
| 33ea0 |  20 20 20 20 20 49 66 20 74 2c 20 74 68 65 6e 20    77 68 65 6e 20 74 68 65 20 63 75 72 73 6f 72 20  | .....If.t,.then.when.the.cursor. | 
| 33ec0 |  69 73 20 6d 6f 76 65 64 20 74 6f 20 61 20 6e 65    77 20 74 72 61 6e 73 61 63 74 69 6f 6e 20 69 6e  | is.moved.to.a.new.transaction.in | 
| 33ee0 |  20 74 68 65 0a 20 20 20 20 20 e2 80 98 2a 52 65    63 6f 6e 63 69 6c 65 2a e2 80 99 20 62 75 66 66  | .the.........*Reconcile*....buff | 
| 33f00 |  65 72 2e 20 20 54 68 65 6e 20 74 68 61 74 20 74    72 61 6e 73 61 63 74 69 6f 6e 20 77 69 6c 6c 20  | er...Then.that.transaction.will. | 
| 33f20 |  62 65 20 73 68 6f 77 6e 20 69 6e 20 69 74 73 0a    20 20 20 20 20 73 6f 75 72 63 65 20 62 75 66 66  | be.shown.in.its......source.buff | 
| 33f40 |  65 72 2e 0a 0a e2 80 98 6c 65 64 67 65 72 2d 72    65 63 6f 6e 63 69 6c 65 2d 66 6f 72 63 65 2d 77  | er......ledger-reconcile-force-w | 
| 33f60 |  69 6e 64 6f 77 2d 62 6f 74 74 6f 6d e2 80 99 0a    20 20 20 20 20 49 66 20 74 2c 20 6d 61 6b 65 20  | indow-bottom.........If.t,.make. | 
| 33f80 |  74 68 65 20 e2 80 98 2a 52 65 63 6f 6e 63 69 6c    65 2a e2 80 99 20 77 69 6e 64 6f 77 20 61 70 70  | the....*Reconcile*....window.app | 
| 33fa0 |  65 61 72 20 61 6c 6f 6e 67 20 74 68 65 20 62 6f    74 74 6f 6d 20 6f 66 20 74 68 65 0a 20 20 20 20  | ear.along.the.bottom.of.the..... | 
| 33fc0 |  20 72 65 67 69 73 74 65 72 20 77 69 6e 64 6f 77    20 61 6e 64 20 72 65 73 69 7a 65 2e 0a 0a e2 80  | .register.window.and.resize..... | 
| 33fe0 |  98 6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69 6c    65 2d 74 6f 67 67 6c 65 2d 74 6f 2d 70 65 6e 64  | .ledger-reconcile-toggle-to-pend | 
| 34000 |  69 6e 67 e2 80 99 0a 20 20 20 20 20 49 66 20 74    2c 20 74 68 65 6e 20 74 6f 67 67 6c 65 20 62 65  | ing.........If.t,.then.toggle.be | 
| 34020 |  74 77 65 65 6e 20 75 6e 63 6c 65 61 72 65 64 20    61 6e 64 20 70 65 6e 64 69 6e 67 20 e2 80 98 21  | tween.uncleared.and.pending....! | 
| 34040 |  e2 80 99 2e 20 20 49 66 20 66 61 6c 73 65 0a 20    20 20 20 20 74 6f 67 67 6c 65 20 62 65 74 77 65  | ......If.false......toggle.betwe | 
| 34060 |  65 6e 20 75 6e 63 6c 65 61 72 65 64 20 61 6e 64    20 63 6c 65 61 72 65 64 20 e2 80 98 2a e2 80 99  | en.uncleared.and.cleared....*... | 
| 34080 |  2e 0a 0a e2 80 98 6c 65 64 67 65 72 2d 72 65 63    6f 6e 63 69 6c 65 2d 64 65 66 61 75 6c 74 2d 64  | ......ledger-reconcile-default-d | 
| 340a0 |  61 74 65 2d 66 6f 72 6d 61 74 e2 80 99 0a 20 20    20 20 20 44 61 74 65 20 66 6f 72 6d 61 74 20 66  | ate-format.........Date.format.f | 
| 340c0 |  6f 72 20 74 68 65 20 72 65 63 6f 6e 63 69 6c 65    20 62 75 66 66 65 72 2e 20 20 44 65 66 61 75 6c  | or.the.reconcile.buffer...Defaul | 
| 340e0 |  74 73 20 74 6f 0a 20 20 20 20 20 e2 80 98 6c 65    64 67 65 72 2d 64 65 66 61 75 6c 74 2d 64 61 74  | ts.to.........ledger-default-dat | 
| 34100 |  65 2d 66 6f 72 6d 61 74 e2 80 99 2e 0a 0a e2 80    98 6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69 6c  | e-format.........ledger-reconcil | 
| 34120 |  65 2d 74 61 72 67 65 74 2d 70 72 6f 6d 70 74 2d    73 74 72 69 6e 67 e2 80 99 0a 20 20 20 20 20 50  | e-target-prompt-string.........P | 
| 34140 |  72 6f 6d 70 74 20 66 6f 72 20 72 65 63 6f 6e 63    69 6c 65 20 74 61 72 67 65 74 2e 20 20 44 65 66  | rompt.for.reconcile.target...Def | 
| 34160 |  61 75 6c 74 73 20 74 6f 20 22 54 61 72 67 65 74    20 61 6d 6f 75 6e 74 20 66 6f 72 0a 20 20 20 20  | aults.to."Target.amount.for..... | 
| 34180 |  20 72 65 63 6f 6e 63 69 6c 69 61 74 69 6f 6e 20    22 2e 0a 0a e2 80 98 6c 65 64 67 65 72 2d 72 65  | .reconciliation."......ledger-re | 
| 341a0 |  63 6f 6e 63 69 6c 65 2d 62 75 66 66 65 72 2d 68    65 61 64 65 72 e2 80 99 0a 20 20 20 20 20 48 65  | concile-buffer-header.........He | 
| 341c0 |  61 64 65 72 20 73 74 72 69 6e 67 20 66 6f 72 20    74 68 65 20 72 65 63 6f 6e 63 69 6c 65 20 62 75  | ader.string.for.the.reconcile.bu | 
| 341e0 |  66 66 65 72 2e 20 20 49 66 20 6e 6f 6e 2d 6e 69    6c 2c 20 74 68 65 20 6e 61 6d 65 20 6f 66 0a 20  | ffer...If.non-nil,.the.name.of.. | 
| 34200 |  20 20 20 20 74 68 65 20 61 63 63 6f 75 6e 74 20    62 65 69 6e 67 20 72 65 63 6f 6e 63 69 6c 65 64  | ....the.account.being.reconciled | 
| 34220 |  20 77 69 6c 6c 20 62 65 20 73 75 62 73 74 69 74    75 74 65 64 20 69 6e 74 6f 20 74 68 65 20 e2 80  | .will.be.substituted.into.the... | 
| 34240 |  99 25 73 e2 80 99 2e 20 20 49 66 0a 20 20 20 20    20 6e 69 6c 2c 20 6e 6f 20 68 65 61 64 65 72 20  | .%s......If......nil,.no.header. | 
| 34260 |  77 69 6c 6c 20 62 65 20 64 69 73 70 6c 61 79 65    64 2e 20 20 44 65 66 61 75 6c 74 73 20 74 6f 20  | will.be.displayed...Defaults.to. | 
| 34280 |  22 52 65 63 6f 6e 63 69 6c 69 6e 67 20 61 63 63    6f 75 6e 74 0a 20 20 20 20 20 25 73 5c 6e 5c 6e  | "Reconciling.account......%s\n\n | 
| 342a0 |  22 2e 0a 0a e2 80 98 6c 65 64 67 65 72 2d 72 65    63 6f 6e 63 69 6c 65 2d 62 75 66 66 65 72 2d 6c  | "......ledger-reconcile-buffer-l | 
| 342c0 |  69 6e 65 2d 66 6f 72 6d 61 74 e2 80 99 0a 20 20    20 20 20 46 6f 72 6d 61 74 20 73 74 72 69 6e 67  | ine-format.........Format.string | 
| 342e0 |  20 66 6f 72 20 74 68 65 20 6c 65 64 67 65 72 20    72 65 63 6f 6e 63 69 6c 65 20 70 6f 73 74 69 6e  | .for.the.ledger.reconcile.postin | 
| 34300 |  67 20 66 6f 72 6d 61 74 2e 20 20 41 76 61 69 6c    61 62 6c 65 0a 20 20 20 20 20 66 69 65 6c 64 73  | g.format...Available......fields | 
| 34320 |  20 61 72 65 20 64 61 74 65 2c 20 73 74 61 74 75    73 2c 20 63 6f 64 65 2c 20 70 61 79 65 65 2c 20  | .are.date,.status,.code,.payee,. | 
| 34340 |  61 63 63 6f 75 6e 74 2c 20 61 6d 6f 75 6e 74 2e    20 20 54 68 65 20 66 6f 72 6d 61 74 0a 20 20 20  | account,.amount...The.format.... | 
| 34360 |  20 20 66 6f 72 20 65 61 63 68 20 66 69 65 6c 64    20 69 73 20 25 57 49 44 54 48 28 46 49 45 4c 44  | ..for.each.field.is.%WIDTH(FIELD | 
| 34380 |  29 2c 20 57 49 44 54 48 20 63 61 6e 20 62 65 20    70 72 65 63 65 64 65 64 20 62 79 20 61 20 6d 69  | ),.WIDTH.can.be.preceded.by.a.mi | 
| 343a0 |  6e 75 73 0a 20 20 20 20 20 73 69 67 6e 20 77 68    69 63 68 20 6d 65 61 6e 20 74 6f 20 6c 65 66 74  | nus......sign.which.mean.to.left | 
| 343c0 |  20 6a 75 73 74 69 66 79 20 61 6e 64 20 70 61 64    20 74 68 65 20 66 69 65 6c 64 2e 20 20 57 49 44  | .justify.and.pad.the.field...WID | 
| 343e0 |  54 48 20 69 73 20 74 68 65 0a 20 20 20 20 20 6d    69 6e 69 6d 75 6d 20 6e 75 6d 62 65 72 20 6f 66  | TH.is.the......minimum.number.of | 
| 34400 |  20 63 68 61 72 61 63 74 65 72 73 20 74 6f 20 64    69 73 70 6c 61 79 3b 20 69 66 20 73 74 72 69 6e  | .characters.to.display;.if.strin | 
| 34420 |  67 20 69 73 20 6c 6f 6e 67 65 72 2c 20 69 74 20    69 73 0a 20 20 20 20 20 6e 6f 74 20 74 72 75 6e  | g.is.longer,.it.is......not.trun | 
| 34440 |  63 61 74 65 64 20 75 6e 6c 65 73 73 20 e2 80 98    6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65  | cated.unless....ledger-reconcile | 
| 34460 |  2d 62 75 66 66 65 72 2d 70 61 79 65 65 2d 6d 61    78 2d 63 68 61 72 73 e2 80 99 20 6f 72 0a 20 20  | -buffer-payee-max-chars....or... | 
| 34480 |  20 20 20 e2 80 98 6c 65 64 67 65 72 2d 72 65 63    6f 6e 63 69 6c 65 2d 62 75 66 66 65 72 2d 61 63  | ......ledger-reconcile-buffer-ac | 
| 344a0 |  63 6f 75 6e 74 2d 6d 61 78 2d 63 68 61 72 73 e2    80 99 20 69 73 20 64 65 66 69 6e 65 64 2e 20 20  | count-max-chars....is.defined... | 
| 344c0 |  44 65 66 61 75 6c 74 73 0a 20 20 20 20 20 74 6f    20 22 25 28 64 61 74 65 29 73 20 25 2d 34 28 63  | Defaults......to."%(date)s.%-4(c | 
| 344e0 |  6f 64 65 29 73 20 25 2d 35 30 28 70 61 79 65 65    29 73 20 25 2d 33 30 28 61 63 63 6f 75 6e 74 29  | ode)s.%-50(payee)s.%-30(account) | 
| 34500 |  73 20 25 31 35 28 61 6d 6f 75 6e 74 29 73 5c 6e    22 0a 0a e2 80 98 6c 65 64 67 65 72 2d 72 65 63  | s.%15(amount)s\n".....ledger-rec | 
| 34520 |  6f 6e 63 69 6c 65 2d 62 75 66 66 65 72 2d 70 61    79 65 65 2d 6d 61 78 2d 63 68 61 72 73 e2 80 99  | oncile-buffer-payee-max-chars... | 
| 34540 |  0a 20 20 20 20 20 49 66 20 70 6f 73 69 74 69 76    65 2c 20 74 72 75 6e 63 61 74 65 20 70 61 79 65  | ......If.positive,.truncate.paye | 
| 34560 |  65 20 6e 61 6d 65 20 72 69 67 68 74 20 73 69 64    65 20 74 6f 20 6d 61 78 20 6e 75 6d 62 65 72 20  | e.name.right.side.to.max.number. | 
| 34580 |  6f 66 0a 20 20 20 20 20 63 68 61 72 61 63 74 65    72 73 2e 0a 0a e2 80 98 6c 65 64 67 65 72 2d 72  | of......characters......ledger-r | 
| 345a0 |  65 63 6f 6e 63 69 6c 65 2d 62 75 66 66 65 72 2d    61 63 63 6f 75 6e 74 2d 6d 61 78 2d 63 68 61 72  | econcile-buffer-account-max-char | 
| 345c0 |  73 e2 80 99 0a 20 20 20 20 20 49 66 20 70 6f 73    69 74 69 76 65 2c 20 74 72 75 6e 63 61 74 65 20  | s.........If.positive,.truncate. | 
| 345e0 |  61 63 63 6f 75 6e 74 20 6e 61 6d 65 20 6c 65 66    74 20 73 69 64 65 20 74 6f 20 6d 61 78 20 6e 75  | account.name.left.side.to.max.nu | 
| 34600 |  6d 62 65 72 20 6f 66 0a 20 20 20 20 20 63 68 61    72 61 63 74 65 72 73 2e 0a 0a e2 80 98 6c 65 64  | mber.of......characters......led | 
| 34620 |  67 65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d 73 6f    72 74 2d 6b 65 79 e2 80 99 0a 20 20 20 20 20 4b  | ger-reconcile-sort-key.........K | 
| 34640 |  65 79 20 66 6f 72 20 73 6f 72 74 69 6e 67 20 72    65 63 6f 6e 63 69 6c 65 20 62 75 66 66 65 72 2e  | ey.for.sorting.reconcile.buffer. | 
| 34660 |  20 20 50 6f 73 73 69 62 6c 65 20 76 61 6c 75 65    73 20 61 72 65 20 e2 80 99 28 64 61 74 65 29 e2  | ..Possible.values.are....(date). | 
| 34680 |  80 99 2c 0a 20 20 20 20 20 e2 80 99 28 61 6d 6f    75 6e 74 29 e2 80 99 2c 20 e2 80 99 28 70 61 79  | ..,.........(amount)...,....(pay | 
| 346a0 |  65 65 29 e2 80 99 20 6f 72 20 e2 80 99 28 30 29    e2 80 99 20 66 6f 72 20 6e 6f 20 73 6f 72 74 69  | ee)....or....(0)....for.no.sorti | 
| 346c0 |  6e 67 2c 20 69 2e 65 2e 20 20 75 73 69 6e 67 20    6c 65 64 67 65 72 0a 20 20 20 20 20 66 69 6c 65  | ng,.i.e...using.ledger......file | 
| 346e0 |  20 6f 72 64 65 72 2e 20 20 44 65 66 61 75 6c 74    73 20 74 6f 20 e2 80 99 28 30 29 e2 80 99 2e 0a  | .order...Defaults.to....(0)..... | 
| 34700 |  0a e2 80 98 6c 65 64 67 65 72 2d 72 65 63 6f 6e    63 69 6c 65 2d 69 6e 73 65 72 74 2d 65 66 66 65  | ....ledger-reconcile-insert-effe | 
| 34720 |  63 74 69 76 65 2d 64 61 74 65 20 6e 69 6c e2 80    99 0a 20 20 20 20 20 49 66 20 74 2c 20 70 72 6f  | ctive-date.nil.........If.t,.pro | 
| 34740 |  6d 70 74 20 66 6f 72 20 65 66 66 65 63 74 69 76    65 20 64 61 74 65 20 77 68 65 6e 20 63 6c 65 61  | mpt.for.effective.date.when.clea | 
| 34760 |  72 69 6e 67 20 74 72 61 6e 73 61 63 74 69 6f 6e    73 20 64 75 72 69 6e 67 0a 20 20 20 20 20 72 65  | ring.transactions.during......re | 
| 34780 |  63 6f 6e 63 69 6c 69 61 74 69 6f 6e 2e 0a 0a e2    80 98 6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69  | conciliation......ledger-reconci | 
| 347a0 |  6c 65 2d 66 69 6e 69 73 68 2d 66 6f 72 63 65 2d    71 75 69 74 20 6e 69 6c e2 80 99 0a 20 20 20 20  | le-finish-force-quit.nil........ | 
| 347c0 |  20 49 66 20 74 2c 20 77 69 6c 6c 20 66 6f 72 63    65 20 63 6c 6f 73 69 6e 67 20 72 65 63 6f 6e 63  | .If.t,.will.force.closing.reconc | 
| 347e0 |  69 6c 65 20 77 69 6e 64 6f 77 20 61 66 74 65 72    20 e2 80 98 43 2d 63 20 43 2d 63 e2 80 99 2e 0a  | ile.window.after....C-c.C-c..... | 
| 34800 |  0a 1f 0a 46 69 6c 65 3a 20 6c 65 64 67 65 72 2d    6d 6f 64 65 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65  | ...File:.ledger-mode.info,..Node | 
| 34820 |  3a 20 4c 65 64 67 65 72 20 52 65 70 6f 72 74 20    43 75 73 74 6f 6d 69 7a 61 74 69 6f 6e 20 47 72  | :.Ledger.Report.Customization.Gr | 
| 34840 |  6f 75 70 2c 20 20 4e 65 78 74 3a 20 4c 65 64 67    65 72 20 46 61 63 65 73 20 43 75 73 74 6f 6d 69  | oup,..Next:.Ledger.Faces.Customi | 
| 34860 |  7a 61 74 69 6f 6e 20 47 72 6f 75 70 2c 20 20 50    72 65 76 3a 20 4c 65 64 67 65 72 20 52 65 63 6f  | zation.Group,..Prev:.Ledger.Reco | 
| 34880 |  6e 63 69 6c 65 20 43 75 73 74 6f 6d 69 7a 61 74    69 6f 6e 20 47 72 6f 75 70 2c 20 20 55 70 3a 20  | ncile.Customization.Group,..Up:. | 
| 348a0 |  43 75 73 74 6f 6d 69 7a 61 74 69 6f 6e 20 56 61    72 69 61 62 6c 65 73 0a 0a 36 2e 32 2e 33 20 4c  | Customization.Variables..6.2.3.L | 
| 348c0 |  65 64 67 65 72 20 52 65 70 6f 72 74 20 43 75 73    74 6f 6d 69 7a 61 74 69 6f 6e 20 47 72 6f 75 70  | edger.Report.Customization.Group | 
| 348e0 |  0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  | .------------------------------- | 
| 34900 |  2d 2d 2d 2d 2d 2d 2d 2d 0a 0a e2 80 98 6c 65 64    67 65 72 2d 72 65 70 6f 72 74 73 e2 80 99 0a 20  | --------.....ledger-reports..... | 
| 34920 |  20 20 20 20 44 65 66 69 6e 69 74 69 6f 6e 20 6f    66 20 72 65 70 6f 72 74 73 20 74 6f 20 72 75 6e  | ....Definition.of.reports.to.run | 
| 34940 |  2e 0a 0a e2 80 98 6c 65 64 67 65 72 2d 72 65 70    6f 72 74 2d 66 6f 72 6d 61 74 2d 73 70 65 63 69  | ......ledger-report-format-speci | 
| 34960 |  66 69 65 72 73 e2 80 99 0a 20 20 20 20 20 41 6e    20 61 6c 69 73 74 20 6d 61 70 70 69 6e 67 20 6c  | fiers.........An.alist.mapping.l | 
| 34980 |  65 64 67 65 72 20 72 65 70 6f 72 74 20 66 6f 72    6d 61 74 20 73 70 65 63 69 66 69 65 72 73 20 74  | edger.report.format.specifiers.t | 
| 349a0 |  6f 20 69 6d 70 6c 65 6d 65 6e 74 69 6e 67 0a 20    20 20 20 20 66 75 6e 63 74 69 6f 6e 73 2e 0a 0a  | o.implementing......functions... | 
| 349c0 |  e2 80 98 6c 65 64 67 65 72 2d 72 65 70 6f 72 74    2d 75 73 65 2d 6e 61 74 69 76 65 2d 68 69 67 68  | ...ledger-report-use-native-high | 
| 349e0 |  6c 69 67 68 74 69 6e 67 e2 80 99 0a 20 20 20 20    20 57 68 65 74 68 65 72 20 72 65 70 6f 72 74 73  | lighting.........Whether.reports | 
| 34a00 |  20 73 68 6f 75 6c 64 20 62 65 20 64 69 73 70 6c    61 79 65 64 20 75 73 69 6e 67 20 74 68 65 20 73  | .should.be.displayed.using.the.s | 
| 34a20 |  61 6d 65 20 63 6f 6c 6f 72 73 20 61 73 20 77 68    65 6e 0a 20 20 20 20 20 63 61 6c 6c 69 6e 67 20  | ame.colors.as.when......calling. | 
| 34a40 |  6c 65 64 67 65 72 20 6f 6e 20 74 68 65 20 63 6f    6d 6d 61 6e 64 20 6c 69 6e 65 2e 0a 0a e2 80 98  | ledger.on.the.command.line...... | 
| 34a60 |  6c 65 64 67 65 72 2d 72 65 70 6f 72 74 2d 61 75    74 6f 2d 77 69 64 74 68 e2 80 99 0a 20 20 20 20  | ledger-report-auto-width........ | 
| 34a80 |  20 57 68 65 74 68 65 72 20 72 65 70 6f 72 74 73    20 73 68 6f 75 6c 64 20 66 69 6c 6c 20 74 68 65  | .Whether.reports.should.fill.the | 
| 34aa0 |  20 77 68 6f 6c 65 20 77 69 64 74 68 20 6f 66 20    74 68 65 20 e2 80 98 2a 52 65 70 6f 72 74 2a e2  | .whole.width.of.the....*Report*. | 
| 34ac0 |  80 99 0a 20 20 20 20 20 77 69 6e 64 6f 77 0a 0a    1f 0a 46 69 6c 65 3a 20 6c 65 64 67 65 72 2d 6d  | ........window....File:.ledger-m | 
| 34ae0 |  6f 64 65 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a    20 4c 65 64 67 65 72 20 46 61 63 65 73 20 43 75  | ode.info,..Node:.Ledger.Faces.Cu | 
| 34b00 |  73 74 6f 6d 69 7a 61 74 69 6f 6e 20 47 72 6f 75    70 2c 20 20 4e 65 78 74 3a 20 4c 65 64 67 65 72  | stomization.Group,..Next:.Ledger | 
| 34b20 |  20 50 6f 73 74 20 43 75 73 74 6f 6d 69 7a 61 74    69 6f 6e 20 47 72 6f 75 70 2c 20 20 50 72 65 76  | .Post.Customization.Group,..Prev | 
| 34b40 |  3a 20 4c 65 64 67 65 72 20 52 65 70 6f 72 74 20    43 75 73 74 6f 6d 69 7a 61 74 69 6f 6e 20 47 72  | :.Ledger.Report.Customization.Gr | 
| 34b60 |  6f 75 70 2c 20 20 55 70 3a 20 43 75 73 74 6f 6d    69 7a 61 74 69 6f 6e 20 56 61 72 69 61 62 6c 65  | oup,..Up:.Customization.Variable | 
| 34b80 |  73 0a 0a 36 2e 32 2e 34 20 4c 65 64 67 65 72 20    46 61 63 65 73 20 43 75 73 74 6f 6d 69 7a 61 74  | s..6.2.4.Ledger.Faces.Customizat | 
| 34ba0 |  69 6f 6e 20 47 72 6f 75 70 0a 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  | ion.Group.---------------------- | 
| 34bc0 |  2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    0a 0a 4c 65 64 67 65 72 20 46 61 63 65 73 3a 20  | ----------------..Ledger.Faces:. | 
| 34be0 |  4c 65 64 67 65 72 2d 6d 6f 64 65 20 68 69 67 68    6c 69 67 68 74 69 6e 67 0a 0a e2 80 98 6c 65 64  | Ledger-mode.highlighting.....led | 
| 34c00 |  67 65 72 2d 66 6f 6e 74 2d 75 6e 63 6c 65 61 72    65 64 2d 66 61 63 65 e2 80 99 0a 20 20 20 20 20  | ger-font-uncleared-face......... | 
| 34c20 |  44 65 66 61 75 6c 74 20 66 61 63 65 20 66 6f 72    20 4c 65 64 67 65 72 2e 0a 0a e2 80 98 6c 65 64  | Default.face.for.Ledger......led | 
| 34c40 |  67 65 72 2d 66 6f 6e 74 2d 63 6c 65 61 72 65 64    2d 66 61 63 65 e2 80 99 0a 20 20 20 20 20 44 65  | ger-font-cleared-face.........De | 
| 34c60 |  66 61 75 6c 74 20 66 61 63 65 20 66 6f 72 20 63    6c 65 61 72 65 64 20 e2 80 98 2a e2 80 99 20 74  | fault.face.for.cleared....*....t | 
| 34c80 |  72 61 6e 73 61 63 74 69 6f 6e 73 2e 0a 0a e2 80    98 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 68 69 67  | ransactions......ledger-font-hig | 
| 34ca0 |  68 6c 69 67 68 74 2d 66 61 63 65 e2 80 99 0a 20    20 20 20 20 44 65 66 61 75 6c 74 20 66 61 63 65  | hlight-face.........Default.face | 
| 34cc0 |  20 66 6f 72 20 74 72 61 6e 73 61 63 74 69 6f 6e    20 75 6e 64 65 72 20 70 6f 69 6e 74 2e 0a 0a e2  | .for.transaction.under.point.... | 
| 34ce0 |  80 98 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 70 65    6e 64 69 6e 67 2d 66 61 63 65 e2 80 99 0a 20 20  | ..ledger-font-pending-face...... | 
| 34d00 |  20 20 20 44 65 66 61 75 6c 74 20 66 61 63 65 20    66 6f 72 20 70 65 6e 64 69 6e 67 20 e2 80 98 21  | ...Default.face.for.pending....! | 
| 34d20 |  e2 80 99 20 74 72 61 6e 73 61 63 74 69 6f 6e 73    2e 0a 0a e2 80 98 6c 65 64 67 65 72 2d 66 6f 6e  | ....transactions......ledger-fon | 
| 34d40 |  74 2d 6f 74 68 65 72 2d 66 61 63 65 e2 80 99 0a    20 20 20 20 20 44 65 66 61 75 6c 74 20 66 61 63  | t-other-face.........Default.fac | 
| 34d60 |  65 20 66 6f 72 20 6f 74 68 65 72 20 74 72 61 6e    73 61 63 74 69 6f 6e 73 2e 0a 0a e2 80 98 6c 65  | e.for.other.transactions......le | 
| 34d80 |  64 67 65 72 2d 66 6f 6e 74 2d 70 6f 73 74 69 6e    67 2d 61 63 63 6f 75 6e 74 2d 66 61 63 65 e2 80  | dger-font-posting-account-face.. | 
| 34da0 |  99 0a 20 20 20 20 20 46 61 63 65 20 66 6f 72 20    4c 65 64 67 65 72 20 61 63 63 6f 75 6e 74 73 2e  | .......Face.for.Ledger.accounts. | 
| 34dc0 |  0a 0a e2 80 98 6c 65 64 67 65 72 2d 66 6f 6e 74    2d 70 6f 73 74 69 6e 67 2d 61 63 63 6f 75 6e 74  | .....ledger-font-posting-account | 
| 34de0 |  2d 63 6c 65 61 72 65 64 2d 66 61 63 65 e2 80 99    0a 20 20 20 20 20 46 61 63 65 20 66 6f 72 20 63  | -cleared-face.........Face.for.c | 
| 34e00 |  6c 65 61 72 65 64 20 4c 65 64 67 65 72 20 61 63    63 6f 75 6e 74 73 2e 0a 0a e2 80 98 6c 65 64 67  | leared.Ledger.accounts......ledg | 
| 34e20 |  65 72 2d 66 6f 6e 74 2d 70 6f 73 74 69 6e 67 2d    61 63 63 6f 75 6e 74 2d 70 65 6e 64 69 6e 67 2d  | er-font-posting-account-pending- | 
| 34e40 |  66 61 63 65 e2 80 99 0a 20 20 20 20 20 46 61 63    65 20 66 6f 72 20 4c 65 64 67 65 72 20 70 65 6e  | face.........Face.for.Ledger.pen | 
| 34e60 |  64 69 6e 67 20 61 63 63 6f 75 6e 74 73 2e 0a 0a    e2 80 98 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 70  | ding.accounts......ledger-font-p | 
| 34e80 |  6f 73 74 69 6e 67 2d 61 6d 6f 75 6e 74 2d 66 61    63 65 e2 80 99 0a 20 20 20 20 20 46 61 63 65 20  | osting-amount-face.........Face. | 
| 34ea0 |  66 6f 72 20 4c 65 64 67 65 72 20 61 6d 6f 75 6e    74 73 2e 0a 0a e2 80 98 6c 65 64 67 65 72 2d 6f  | for.Ledger.amounts......ledger-o | 
| 34ec0 |  63 63 75 72 2d 6e 61 72 72 6f 77 65 64 2d 66 61    63 65 e2 80 99 0a 20 20 20 20 20 44 65 66 61 75  | ccur-narrowed-face.........Defau | 
| 34ee0 |  6c 74 20 66 61 63 65 20 66 6f 72 20 4c 65 64 67    65 72 20 6f 63 63 75 72 20 6d 6f 64 65 20 68 69  | lt.face.for.Ledger.occur.mode.hi | 
| 34f00 |  64 64 65 6e 20 74 72 61 6e 73 61 63 74 69 6f 6e    73 2e 0a 0a e2 80 98 6c 65 64 67 65 72 2d 6f 63  | dden.transactions......ledger-oc | 
| 34f20 |  63 75 72 2d 78 61 63 74 2d 66 61 63 65 e2 80 99    0a 20 20 20 20 20 44 65 66 61 75 6c 74 20 66 61  | cur-xact-face.........Default.fa | 
| 34f40 |  63 65 20 66 6f 72 20 4c 65 64 67 65 72 20 6f 63    63 75 72 20 6d 6f 64 65 20 73 68 6f 77 6e 20 74  | ce.for.Ledger.occur.mode.shown.t | 
| 34f60 |  72 61 6e 73 61 63 74 69 6f 6e 73 2e 0a 0a e2 80    98 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 63 6f 6d  | ransactions......ledger-font-com | 
| 34f80 |  6d 65 6e 74 2d 66 61 63 65 e2 80 99 0a 20 20 20    20 20 46 61 63 65 20 66 6f 72 20 4c 65 64 67 65  | ment-face.........Face.for.Ledge | 
| 34fa0 |  72 20 63 6f 6d 6d 65 6e 74 73 2e 0a 0a e2 80 98    6c 65 64 67 65 72 2d 66 6f 6e 74 2d 72 65 63 6f  | r.comments......ledger-font-reco | 
| 34fc0 |  6e 63 69 6c 65 72 2d 75 6e 63 6c 65 61 72 65 64    2d 66 61 63 65 e2 80 99 0a 20 20 20 20 20 44 65  | nciler-uncleared-face.........De | 
| 34fe0 |  66 61 75 6c 74 20 66 61 63 65 20 66 6f 72 20 75    6e 63 6c 65 61 72 65 64 20 74 72 61 6e 73 61 63  | fault.face.for.uncleared.transac | 
| 35000 |  74 69 6f 6e 73 20 69 6e 20 74 68 65 20 e2 80 98    2a 52 65 63 6f 6e 63 69 6c 65 2a e2 80 99 0a 20  | tions.in.the....*Reconcile*..... | 
| 35020 |  20 20 20 20 62 75 66 66 65 72 2e 0a 0a e2 80 98    6c 65 64 67 65 72 2d 66 6f 6e 74 2d 72 65 63 6f  | ....buffer......ledger-font-reco | 
| 35040 |  6e 63 69 6c 65 72 2d 63 6c 65 61 72 65 64 2d 66    61 63 65 e2 80 99 0a 20 20 20 20 20 44 65 66 61  | nciler-cleared-face.........Defa | 
| 35060 |  75 6c 74 20 66 61 63 65 20 66 6f 72 20 63 6c 65    61 72 65 64 20 e2 80 98 2a e2 80 99 20 74 72 61  | ult.face.for.cleared....*....tra | 
| 35080 |  6e 73 61 63 74 69 6f 6e 73 20 69 6e 20 74 68 65    20 e2 80 98 2a 52 65 63 6f 6e 63 69 6c 65 2a e2  | nsactions.in.the....*Reconcile*. | 
| 350a0 |  80 99 0a 20 20 20 20 20 62 75 66 66 65 72 2e 0a    0a e2 80 98 6c 65 64 67 65 72 2d 66 6f 6e 74 2d  | ........buffer......ledger-font- | 
| 350c0 |  72 65 63 6f 6e 63 69 6c 65 72 2d 70 65 6e 64 69    6e 67 2d 66 61 63 65 e2 80 99 0a 20 20 20 20 20  | reconciler-pending-face......... | 
| 350e0 |  44 65 66 61 75 6c 74 20 66 61 63 65 20 66 6f 72    20 70 65 6e 64 69 6e 67 20 e2 80 98 21 e2 80 99  | Default.face.for.pending....!... | 
| 35100 |  20 74 72 61 6e 73 61 63 74 69 6f 6e 73 20 69 6e    20 74 68 65 20 e2 80 98 2a 52 65 63 6f 6e 63 69  | .transactions.in.the....*Reconci | 
| 35120 |  6c 65 2a e2 80 99 0a 20 20 20 20 20 62 75 66 66    65 72 2e 0a 0a e2 80 98 6c 65 64 67 65 72 2d 66  | le*.........buffer......ledger-f | 
| 35140 |  6f 6e 74 2d 72 65 70 6f 72 74 2d 63 6c 69 63 6b    61 62 6c 65 2d 66 61 63 65 e2 80 99 0a 20 20 20  | ont-report-clickable-face....... | 
| 35160 |  20 20 46 61 63 65 20 61 70 70 6c 69 65 64 20 74    6f 20 63 6c 69 63 6b 61 62 6c 65 20 65 6e 74 72  | ..Face.applied.to.clickable.entr | 
| 35180 |  69 65 73 20 69 6e 20 74 68 65 20 e2 80 98 2a 52    65 70 6f 72 74 2a e2 80 99 20 62 75 66 66 65 72  | ies.in.the....*Report*....buffer | 
| 351a0 |  2e 0a 0a 1f 0a 46 69 6c 65 3a 20 6c 65 64 67 65    72 2d 6d 6f 64 65 2e 69 6e 66 6f 2c 20 20 4e 6f  | .....File:.ledger-mode.info,..No | 
| 351c0 |  64 65 3a 20 4c 65 64 67 65 72 20 50 6f 73 74 20    43 75 73 74 6f 6d 69 7a 61 74 69 6f 6e 20 47 72  | de:.Ledger.Post.Customization.Gr | 
| 351e0 |  6f 75 70 2c 20 20 4e 65 78 74 3a 20 4c 65 64 67    65 72 20 45 78 65 63 20 43 75 73 74 6f 6d 69 7a  | oup,..Next:.Ledger.Exec.Customiz | 
| 35200 |  61 74 69 6f 6e 20 47 72 6f 75 70 2c 20 20 50 72    65 76 3a 20 4c 65 64 67 65 72 20 46 61 63 65 73  | ation.Group,..Prev:.Ledger.Faces | 
| 35220 |  20 43 75 73 74 6f 6d 69 7a 61 74 69 6f 6e 20 47    72 6f 75 70 2c 20 20 55 70 3a 20 43 75 73 74 6f  | .Customization.Group,..Up:.Custo | 
| 35240 |  6d 69 7a 61 74 69 6f 6e 20 56 61 72 69 61 62 6c    65 73 0a 0a 36 2e 32 2e 35 20 4c 65 64 67 65 72  | mization.Variables..6.2.5.Ledger | 
| 35260 |  20 50 6f 73 74 20 43 75 73 74 6f 6d 69 7a 61 74    69 6f 6e 20 47 72 6f 75 70 0a 2d 2d 2d 2d 2d 2d  | .Post.Customization.Group.------ | 
| 35280 |  2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a  | -------------------------------. | 
| 352a0 |  0a 4c 65 64 67 65 72 20 50 6f 73 74 3a 0a 0a e2    80 98 6c 65 64 67 65 72 2d 70 6f 73 74 2d 61 63  | .Ledger.Post:.....ledger-post-ac | 
| 352c0 |  63 6f 75 6e 74 2d 61 6c 69 67 6e 6d 65 6e 74 2d    63 6f 6c 75 6d 6e e2 80 99 0a 20 20 20 20 20 54  | count-alignment-column.........T | 
| 352e0 |  68 65 20 63 6f 6c 75 6d 6e 20 4c 65 64 67 65 72    2d 6d 6f 64 65 20 61 74 74 65 6d 70 74 73 20 74  | he.column.Ledger-mode.attempts.t | 
| 35300 |  6f 20 61 6c 69 67 6e 20 61 63 63 6f 75 6e 74 73    20 74 6f 2e 0a 0a e2 80 98 6c 65 64 67 65 72 2d  | o.align.accounts.to......ledger- | 
| 35320 |  70 6f 73 74 2d 61 6d 6f 75 6e 74 2d 61 6c 69 67    6e 6d 65 6e 74 2d 61 74 e2 80 99 0a 20 20 20 20  | post-amount-alignment-at........ | 
| 35340 |  20 50 6f 73 69 74 69 6f 6e 20 61 74 20 77 68 69    63 68 20 74 68 65 20 61 6d 6f 75 6e 74 20 69 73  | .Position.at.which.the.amount.is | 
| 35360 |  20 61 6c 69 67 6e 65 64 2e 0a 0a 20 20 20 20 20    43 61 6e 20 62 65 20 e2 80 98 3a 65 6e 64 e2 80  | .aligned........Can.be....:end.. | 
| 35380 |  99 20 74 6f 20 61 6c 69 67 6e 20 6f 6e 20 74 68    65 20 6c 61 73 74 20 6e 75 6d 62 65 72 20 6f 66  | ..to.align.on.the.last.number.of | 
| 353a0 |  20 74 68 65 20 61 6d 6f 75 6e 74 20 28 63 61 6e    20 62 65 0a 20 20 20 20 20 66 6f 6c 6c 6f 77 65  | .the.amount.(can.be......followe | 
| 353c0 |  64 20 62 79 20 75 6e 61 6c 69 67 6e 65 64 20 63    6f 6d 6d 6f 64 69 74 79 29 20 6f 72 20 e2 80 98  | d.by.unaligned.commodity).or.... | 
| 353e0 |  3a 64 65 63 69 6d 61 6c e2 80 99 20 74 6f 20 61    6c 69 67 6e 20 61 74 20 74 68 65 0a 20 20 20 20  | :decimal....to.align.at.the..... | 
| 35400 |  20 64 65 63 69 6d 61 6c 20 73 65 70 61 72 61 74    6f 72 2e 0a 0a e2 80 98 6c 65 64 67 65 72 2d 70  | .decimal.separator......ledger-p | 
| 35420 |  6f 73 74 2d 61 6d 6f 75 6e 74 2d 61 6c 69 67 6e    6d 65 6e 74 2d 63 6f 6c 75 6d 6e e2 80 99 0a 20  | ost-amount-alignment-column..... | 
| 35440 |  20 20 20 20 54 68 65 20 63 6f 6c 75 6d 6e 20 4c    65 64 67 65 72 2d 6d 6f 64 65 20 61 74 74 65 6d  | ....The.column.Ledger-mode.attem | 
| 35460 |  70 74 73 20 74 6f 20 61 6c 69 67 6e 20 61 6d 6f    75 6e 74 73 20 74 6f 2e 0a 0a e2 80 98 6c 65 64  | pts.to.align.amounts.to......led | 
| 35480 |  67 65 72 2d 70 6f 73 74 2d 61 75 74 6f 2d 61 6c    69 67 6e e2 80 99 0a 20 20 20 20 20 57 68 65 6e  | ger-post-auto-align.........When | 
| 354a0 |  20 6e 6f 6e 2d 6e 69 6c 2c 20 72 65 61 6c 69 67    6e 20 70 6f 73 74 20 61 6d 6f 75 6e 74 73 20 77  | .non-nil,.realign.post.amounts.w | 
| 354c0 |  68 65 6e 20 69 6e 64 65 6e 74 69 6e 67 20 6f 72    20 63 6f 6d 70 6c 65 74 69 6e 67 2e 0a 0a 1f 0a  | hen.indenting.or.completing..... | 
| 354e0 |  46 69 6c 65 3a 20 6c 65 64 67 65 72 2d 6d 6f 64    65 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 4c  | File:.ledger-mode.info,..Node:.L | 
| 35500 |  65 64 67 65 72 20 45 78 65 63 20 43 75 73 74 6f    6d 69 7a 61 74 69 6f 6e 20 47 72 6f 75 70 2c 20  | edger.Exec.Customization.Group,. | 
| 35520 |  20 4e 65 78 74 3a 20 4c 65 64 67 65 72 20 54 65    73 74 20 43 75 73 74 6f 6d 69 7a 61 74 69 6f 6e  | .Next:.Ledger.Test.Customization | 
| 35540 |  20 47 72 6f 75 70 2c 20 20 50 72 65 76 3a 20 4c    65 64 67 65 72 20 50 6f 73 74 20 43 75 73 74 6f  | .Group,..Prev:.Ledger.Post.Custo | 
| 35560 |  6d 69 7a 61 74 69 6f 6e 20 47 72 6f 75 70 2c 20    20 55 70 3a 20 43 75 73 74 6f 6d 69 7a 61 74 69  | mization.Group,..Up:.Customizati | 
| 35580 |  6f 6e 20 56 61 72 69 61 62 6c 65 73 0a 0a 36 2e    32 2e 36 20 4c 65 64 67 65 72 20 45 78 65 63 20  | on.Variables..6.2.6.Ledger.Exec. | 
| 355a0 |  43 75 73 74 6f 6d 69 7a 61 74 69 6f 6e 20 47 72    6f 75 70 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  | Customization.Group.------------ | 
| 355c0 |  2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a 4c 65 64 67 65  | -------------------------..Ledge | 
| 355e0 |  72 20 45 78 65 63 3a 20 49 6e 74 65 72 66 61 63    65 20 74 6f 20 74 68 65 20 4c 65 64 67 65 72 20  | r.Exec:.Interface.to.the.Ledger. | 
| 35600 |  63 6f 6d 6d 61 6e 64 2d 6c 69 6e 65 20 61 63 63    6f 75 6e 74 69 6e 67 20 70 72 6f 67 72 61 6d 2e  | command-line.accounting.program. | 
| 35620 |  0a 0a e2 80 98 6c 65 64 67 65 72 2d 62 69 6e 61    72 79 2d 70 61 74 68 e2 80 99 0a 20 20 20 20 20  | .....ledger-binary-path......... | 
| 35640 |  50 61 74 68 20 74 6f 20 74 68 65 20 6c 65 64 67    65 72 20 65 78 65 63 75 74 61 62 6c 65 2e 0a 0a  | Path.to.the.ledger.executable... | 
| 35660 |  e2 80 98 6c 65 64 67 65 72 2d 69 6e 69 74 2d 66    69 6c 65 2d 6e 61 6d 65 e2 80 99 0a 20 20 20 20  | ...ledger-init-file-name........ | 
| 35680 |  20 4c 6f 63 61 74 69 6f 6e 20 6f 66 20 74 68 65    20 6c 65 64 67 65 72 20 69 6e 69 74 69 61 6c 69  | .Location.of.the.ledger.initiali | 
| 356a0 |  7a 61 74 69 6f 6e 20 66 69 6c 65 2e 20 20 6e 69    6c 20 69 66 20 79 6f 75 20 64 6f 6e e2 80 99 74  | zation.file...nil.if.you.don...t | 
| 356c0 |  20 68 61 76 65 0a 20 20 20 20 20 6f 6e 65 2e 0a    0a 1f 0a 46 69 6c 65 3a 20 6c 65 64 67 65 72 2d  | .have......one.....File:.ledger- | 
| 356e0 |  6d 6f 64 65 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65    3a 20 4c 65 64 67 65 72 20 54 65 73 74 20 43 75  | mode.info,..Node:.Ledger.Test.Cu | 
| 35700 |  73 74 6f 6d 69 7a 61 74 69 6f 6e 20 47 72 6f 75    70 2c 20 20 4e 65 78 74 3a 20 4c 65 64 67 65 72  | stomization.Group,..Next:.Ledger | 
| 35720 |  20 54 65 78 69 20 43 75 73 74 6f 6d 69 7a 61 74    69 6f 6e 20 47 72 6f 75 70 2c 20 20 50 72 65 76  | .Texi.Customization.Group,..Prev | 
| 35740 |  3a 20 4c 65 64 67 65 72 20 45 78 65 63 20 43 75    73 74 6f 6d 69 7a 61 74 69 6f 6e 20 47 72 6f 75  | :.Ledger.Exec.Customization.Grou | 
| 35760 |  70 2c 20 20 55 70 3a 20 43 75 73 74 6f 6d 69 7a    61 74 69 6f 6e 20 56 61 72 69 61 62 6c 65 73 0a  | p,..Up:.Customization.Variables. | 
| 35780 |  0a 36 2e 32 2e 37 20 4c 65 64 67 65 72 20 54 65    73 74 20 43 75 73 74 6f 6d 69 7a 61 74 69 6f 6e  | .6.2.7.Ledger.Test.Customization | 
| 357a0 |  20 47 72 6f 75 70 0a 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  | .Group.------------------------- | 
| 357c0 |  2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 0a e2 80    98 6c 65 64 67 65 72 2d 73 6f 75 72 63 65 2d 64  | ------------.....ledger-source-d | 
| 357e0 |  69 72 65 63 74 6f 72 79 e2 80 99 0a 20 20 20 20    20 44 69 72 65 63 74 6f 72 79 20 77 68 65 72 65  | irectory.........Directory.where | 
| 35800 |  20 74 68 65 20 4c 65 64 67 65 72 20 73 6f 75 72    63 65 73 20 61 72 65 20 6c 6f 63 61 74 65 64 2e  | .the.Ledger.sources.are.located. | 
| 35820 |  0a 0a e2 80 98 6c 65 64 67 65 72 2d 74 65 73 74    2d 62 69 6e 61 72 79 e2 80 99 0a 20 20 20 20 20  | .....ledger-test-binary......... | 
| 35840 |  44 69 72 65 63 74 6f 72 79 20 77 68 65 72 65 20    74 68 65 20 64 65 62 75 67 20 62 69 6e 61 72 79  | Directory.where.the.debug.binary | 
| 35860 |  2e 0a 0a 1f 0a 46 69 6c 65 3a 20 6c 65 64 67 65    72 2d 6d 6f 64 65 2e 69 6e 66 6f 2c 20 20 4e 6f  | .....File:.ledger-mode.info,..No | 
| 35880 |  64 65 3a 20 4c 65 64 67 65 72 20 54 65 78 69 20    43 75 73 74 6f 6d 69 7a 61 74 69 6f 6e 20 47 72  | de:.Ledger.Texi.Customization.Gr | 
| 358a0 |  6f 75 70 2c 20 20 50 72 65 76 3a 20 4c 65 64 67    65 72 20 54 65 73 74 20 43 75 73 74 6f 6d 69 7a  | oup,..Prev:.Ledger.Test.Customiz | 
| 358c0 |  61 74 69 6f 6e 20 47 72 6f 75 70 2c 20 20 55 70    3a 20 43 75 73 74 6f 6d 69 7a 61 74 69 6f 6e 20  | ation.Group,..Up:.Customization. | 
| 358e0 |  56 61 72 69 61 62 6c 65 73 0a 0a 36 2e 32 2e 38    20 4c 65 64 67 65 72 20 54 65 78 69 20 43 75 73  | Variables..6.2.8.Ledger.Texi.Cus | 
| 35900 |  74 6f 6d 69 7a 61 74 69 6f 6e 20 47 72 6f 75 70    0a 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d  | tomization.Group.--------------- | 
| 35920 |  2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d    2d 2d 2d 2d 2d 2d 0a 0a e2 80 98 6c 65 64 67 65  | ----------------------.....ledge | 
| 35940 |  72 2d 74 65 78 69 2d 73 61 6d 70 6c 65 2d 64 6f    63 2d 70 61 74 68 e2 80 99 0a 20 20 20 20 20 4c  | r-texi-sample-doc-path.........L | 
| 35960 |  6f 63 61 74 69 6f 6e 20 66 6f 72 20 73 61 6d 70    6c 65 20 64 61 74 61 20 74 6f 20 62 65 20 75 73  | ocation.for.sample.data.to.be.us | 
| 35980 |  65 64 20 69 6e 20 74 65 78 69 20 74 65 73 74 73    2c 20 64 65 66 61 75 6c 74 73 20 74 6f 0a 20 20  | ed.in.texi.tests,.defaults.to... | 
| 359a0 |  20 20 20 e2 80 98 7e 2f 6c 65 64 67 65 72 2f 64    6f 63 2f 73 61 6d 70 6c 65 2e 64 61 74 e2 80 99  | ......~/ledger/doc/sample.dat... | 
| 359c0 |  2e 0a 0a e2 80 98 6c 65 64 67 65 72 2d 74 65 78    69 2d 6e 6f 72 6d 61 6c 69 7a 61 74 69 6f 6e 2d  | ......ledger-texi-normalization- | 
| 359e0 |  61 72 67 73 e2 80 99 0a 20 20 20 20 20 74 65 78    69 20 6e 6f 72 6d 61 6c 69 7a 61 74 69 6f 6e 20  | args.........texi.normalization. | 
| 35a00 |  66 6f 72 20 70 72 6f 64 75 63 69 6e 67 20 6c 65    64 67 65 72 20 6f 75 74 70 75 74 2c 20 64 65 66  | for.producing.ledger.output,.def | 
| 35a20 |  61 75 6c 74 73 20 74 6f 0a 20 20 20 20 20 e2 80    98 2d 2d 61 72 67 73 2d 6f 6e 6c 79 20 2d 2d 63  | aults.to.........--args-only.--c | 
| 35a40 |  6f 6c 75 6d 6e 73 20 38 30 e2 80 99 2e 0a 0a 1f    0a 46 69 6c 65 3a 20 6c 65 64 67 65 72 2d 6d 6f  | olumns.80........File:.ledger-mo | 
| 35a60 |  64 65 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20    47 65 6e 65 72 61 74 69 6e 67 20 4c 65 64 67 65  | de.info,..Node:.Generating.Ledge | 
| 35a80 |  72 20 52 65 67 72 65 73 73 69 6f 6e 20 54 65 73    74 73 2c 20 20 4e 65 78 74 3a 20 45 6d 62 65 64  | r.Regression.Tests,..Next:.Embed | 
| 35aa0 |  64 69 6e 67 20 45 78 61 6d 70 6c 65 20 72 65 73    75 6c 74 73 20 69 6e 20 4c 65 64 67 65 72 20 44  | ding.Example.results.in.Ledger.D | 
| 35ac0 |  6f 63 75 6d 65 6e 74 61 74 69 6f 6e 2c 20 20 50    72 65 76 3a 20 43 75 73 74 6f 6d 69 7a 69 6e 67  | ocumentation,..Prev:.Customizing | 
| 35ae0 |  20 4c 65 64 67 65 72 2d 6d 6f 64 65 2c 20 20 55    70 3a 20 54 6f 70 0a 0a 37 20 47 65 6e 65 72 61  | .Ledger-mode,..Up:.Top..7.Genera | 
| 35b00 |  74 69 6e 67 20 4c 65 64 67 65 72 20 52 65 67 72    65 73 73 69 6f 6e 20 54 65 73 74 73 0a 2a 2a 2a  | ting.Ledger.Regression.Tests.*** | 
| 35b20 |  2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a    2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  | ******************************** | 
| 35b40 |  2a 0a 0a 57 6f 72 6b 20 69 6e 20 50 72 6f 67 72    65 73 73 2e 0a 0a 1f 0a 46 69 6c 65 3a 20 6c 65  | *..Work.in.Progress.....File:.le | 
| 35b60 |  64 67 65 72 2d 6d 6f 64 65 2e 69 6e 66 6f 2c 20    20 4e 6f 64 65 3a 20 45 6d 62 65 64 64 69 6e 67  | dger-mode.info,..Node:.Embedding | 
| 35b80 |  20 45 78 61 6d 70 6c 65 20 72 65 73 75 6c 74 73    20 69 6e 20 4c 65 64 67 65 72 20 44 6f 63 75 6d  | .Example.results.in.Ledger.Docum | 
| 35ba0 |  65 6e 74 61 74 69 6f 6e 2c 20 20 4e 65 78 74 3a    20 48 61 63 6b 69 6e 67 20 4c 65 64 67 65 72 2d  | entation,..Next:.Hacking.Ledger- | 
| 35bc0 |  6d 6f 64 65 2c 20 20 50 72 65 76 3a 20 47 65 6e    65 72 61 74 69 6e 67 20 4c 65 64 67 65 72 20 52  | mode,..Prev:.Generating.Ledger.R | 
| 35be0 |  65 67 72 65 73 73 69 6f 6e 20 54 65 73 74 73 2c    20 20 55 70 3a 20 54 6f 70 0a 0a 38 20 45 6d 62  | egression.Tests,..Up:.Top..8.Emb | 
| 35c00 |  65 64 64 69 6e 67 20 45 78 61 6d 70 6c 65 20 72    65 73 75 6c 74 73 20 69 6e 20 4c 65 64 67 65 72  | edding.Example.results.in.Ledger | 
| 35c20 |  20 44 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 0a 2a    2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  | .Documentation.***************** | 
| 35c40 |  2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a    2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  | ******************************** | 
| 35c60 |  2a 2a 0a 0a 57 6f 72 6b 20 69 6e 20 50 72 6f 67    72 65 73 73 2e 0a 0a 1f 0a 46 69 6c 65 3a 20 6c  | **..Work.in.Progress.....File:.l | 
| 35c80 |  65 64 67 65 72 2d 6d 6f 64 65 2e 69 6e 66 6f 2c    20 20 4e 6f 64 65 3a 20 48 61 63 6b 69 6e 67 20  | edger-mode.info,..Node:.Hacking. | 
| 35ca0 |  4c 65 64 67 65 72 2d 6d 6f 64 65 2c 20 20 4e 65    78 74 3a 20 43 6f 6e 63 65 70 74 20 49 6e 64 65  | Ledger-mode,..Next:.Concept.Inde | 
| 35cc0 |  78 2c 20 20 50 72 65 76 3a 20 45 6d 62 65 64 64    69 6e 67 20 45 78 61 6d 70 6c 65 20 72 65 73 75  | x,..Prev:.Embedding.Example.resu | 
| 35ce0 |  6c 74 73 20 69 6e 20 4c 65 64 67 65 72 20 44 6f    63 75 6d 65 6e 74 61 74 69 6f 6e 2c 20 20 55 70  | lts.in.Ledger.Documentation,..Up | 
| 35d00 |  3a 20 54 6f 70 0a 0a 39 20 48 61 63 6b 69 6e 67    20 4c 65 64 67 65 72 2d 6d 6f 64 65 0a 2a 2a 2a  | :.Top..9.Hacking.Ledger-mode.*** | 
| 35d20 |  2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a    2a 2a 0a 0a 2a 20 4d 65 6e 75 3a 0a 0a 2a 20 55  | ******************..*.Menu:..*.U | 
| 35d40 |  73 65 20 6f 72 67 2d 6c 69 6b 65 20 6f 75 74 6c    69 6e 65 73 3a 3a 0a 0a 1f 0a 46 69 6c 65 3a 20  | se.org-like.outlines::....File:. | 
| 35d60 |  6c 65 64 67 65 72 2d 6d 6f 64 65 2e 69 6e 66 6f    2c 20 20 4e 6f 64 65 3a 20 55 73 65 20 6f 72 67  | ledger-mode.info,..Node:.Use.org | 
| 35d80 |  2d 6c 69 6b 65 20 6f 75 74 6c 69 6e 65 73 2c 20    20 50 72 65 76 3a 20 48 61 63 6b 69 6e 67 20 4c  | -like.outlines,..Prev:.Hacking.L | 
| 35da0 |  65 64 67 65 72 2d 6d 6f 64 65 2c 20 20 55 70 3a    20 48 61 63 6b 69 6e 67 20 4c 65 64 67 65 72 2d  | edger-mode,..Up:.Hacking.Ledger- | 
| 35dc0 |  6d 6f 64 65 0a 0a 39 2e 31 20 55 73 65 20 6f 72    67 2d 6c 69 6b 65 20 6f 75 74 6c 69 6e 65 73 0a  | mode..9.1.Use.org-like.outlines. | 
| 35de0 |  3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d 3d    3d 3d 3d 3d 3d 3d 3d 3d 3d 0a 0a 53 6f 6d 65 20  | =========================..Some. | 
| 35e00 |  75 73 65 72 73 20 6c 69 6b 65 20 74 6f 20 68 61    76 65 20 6f 72 67 2d 6c 69 6b 65 20 6f 75 74 6c  | users.like.to.have.org-like.outl | 
| 35e20 |  69 6e 65 73 20 66 6f 72 20 74 68 65 69 72 20 6c    65 64 67 65 72 20 66 69 6c 65 73 2e 20 20 41 0a  | ines.for.their.ledger.files...A. | 
| 35e40 |  73 75 67 67 65 73 74 65 64 20 63 75 73 74 6f 6d    69 7a 61 74 69 6f 6e 20 69 73 20 74 6f 20 69 6e  | suggested.customization.is.to.in | 
| 35e60 |  63 6c 75 64 65 20 73 6f 6d 65 74 68 69 6e 67 20    6c 69 6b 65 20 74 68 65 20 66 6f 6c 6c 6f 77 69  | clude.something.like.the.followi | 
| 35e80 |  6e 67 20 69 6e 0a 79 6f 75 72 20 45 6d 61 63 73    20 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 3a 0a  | ng.in.your.Emacs.configuration:. | 
| 35ea0 |  0a 20 20 20 20 20 28 65 76 61 6c 2d 61 66 74 65    72 2d 6c 6f 61 64 20 27 6c 65 64 67 65 72 2d 6d  | ......(eval-after-load.'ledger-m | 
| 35ec0 |  6f 64 65 0a 20 20 20 20 20 20 20 28 70 72 6f 67    6e 0a 20 20 20 20 20 20 20 20 20 3b 3b 20 6f 72  | ode........(progn..........;;.or | 
| 35ee0 |  67 2d 63 79 63 6c 65 20 61 6c 6c 6f 77 73 20 63    6f 6d 70 6c 65 74 69 6f 6e 20 74 6f 20 77 6f 72  | g-cycle.allows.completion.to.wor | 
| 35f00 |  6b 20 77 68 65 72 65 61 73 20 6f 75 74 6c 69 6e    65 2d 74 6f 67 67 6c 65 2d 63 68 69 6c 64 72 65  | k.whereas.outline-toggle-childre | 
| 35f20 |  6e 20 64 6f 65 73 20 6e 6f 74 0a 20 20 20 20 20    20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65 79 20  | n.does.not..........(define-key. | 
| 35f40 |  6c 65 64 67 65 72 2d 6d 6f 64 65 2d 6d 61 70 20    28 6b 62 64 20 22 54 41 42 22 29 20 23 27 6f 72  | ledger-mode-map.(kbd."TAB").#'or | 
| 35f60 |  67 2d 63 79 63 6c 65 29 0a 20 20 20 20 20 20 20    20 20 28 61 64 64 2d 68 6f 6f 6b 20 27 6c 65 64  | g-cycle)..........(add-hook.'led | 
| 35f80 |  67 65 72 2d 6d 6f 64 65 2d 68 6f 6f 6b 20 23 27    6f 75 74 6c 69 6e 65 2d 6d 69 6e 6f 72 2d 6d 6f  | ger-mode-hook.#'outline-minor-mo | 
| 35fa0 |  64 65 29 0a 20 20 20 20 20 20 20 20 20 28 66 6f    6e 74 2d 6c 6f 63 6b 2d 61 64 64 2d 6b 65 79 77  | de)..........(font-lock-add-keyw | 
| 35fc0 |  6f 72 64 73 20 27 6c 65 64 67 65 72 2d 6d 6f 64    65 20 6f 75 74 6c 69 6e 65 2d 66 6f 6e 74 2d 6c  | ords.'ledger-mode.outline-font-l | 
| 35fe0 |  6f 63 6b 2d 6b 65 79 77 6f 72 64 73 29 29 29 0a    0a 1f 0a 46 69 6c 65 3a 20 6c 65 64 67 65 72 2d  | ock-keywords)))....File:.ledger- | 
| 36000 |  6d 6f 64 65 2e 69 6e 66 6f 2c 20 20 4e 6f 64 65    3a 20 43 6f 6e 63 65 70 74 20 49 6e 64 65 78 2c  | mode.info,..Node:.Concept.Index, | 
| 36020 |  20 20 4e 65 78 74 3a 20 43 6f 6d 6d 61 6e 64 20    26 20 56 61 72 69 61 62 6c 65 20 49 6e 64 65 78  | ..Next:.Command.&.Variable.Index | 
| 36040 |  2c 20 20 50 72 65 76 3a 20 48 61 63 6b 69 6e 67    20 4c 65 64 67 65 72 2d 6d 6f 64 65 2c 20 20 55  | ,..Prev:.Hacking.Ledger-mode,..U | 
| 36060 |  70 3a 20 54 6f 70 0a 0a 43 6f 6e 63 65 70 74 20    49 6e 64 65 78 0a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  | p:.Top..Concept.Index.********** | 
| 36080 |  2a 2a 2a 0a 0a 00 08 5b 69 6e 64 65 78 00 08 5d    0a 2a 20 4d 65 6e 75 3a 0a 0a 2a 20 62 61 6c 61  | ***....[index..].*.Menu:..*.bala | 
| 360a0 |  6e 63 65 3a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | nce:............................ | 
| 360c0 |  20 20 20 51 75 69 63 6b 20 42 61 6c 61 6e 63 65    20 44 69 73 70 6c 61 79 2e 0a 20 20 20 20 20 20  | ...Quick.Balance.Display........ | 
| 360e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 36100 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 28 6c 69 6e 65 20 20  | .........................(line.. | 
| 36120 |  36 29 0a 2a 20 43 61 6c 63 3a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | 6).*.Calc:...................... | 
| 36140 |  20 20 20 20 20 20 20 20 20 20 20 20 45 64 69 74    69 6e 67 20 41 6d 6f 75 6e 74 73 2e 20 20 20 20  | ............Editing.Amounts..... | 
| 36160 |  20 20 28 6c 69 6e 65 20 20 36 29 0a 2a 20 63 6c    65 61 72 65 64 3a 20 20 20 20 20 20 20 20 20 20  | ..(line..6).*.cleared:.......... | 
| 36180 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 4d 61 72 6b 69 6e 67 20 54 72 61  | .....................Marking.Tra | 
| 361a0 |  6e 73 61 63 74 69 6f 6e 73 2e 20 28 6c 69 6e 65    20 20 36 29 0a 2a 20 63 75 73 74 6f 6d 69 7a 61  | nsactions..(line..6).*.customiza | 
| 361c0 |  74 69 6f 6e 2c 20 65 78 65 63 75 74 61 62 6c 65    3a 20 20 20 20 20 20 20 20 20 20 20 20 20 4c 65  | tion,.executable:.............Le | 
| 361e0 |  64 67 65 72 20 45 78 65 63 20 43 75 73 74 6f 6d    69 7a 61 74 69 6f 6e 20 47 72 6f 75 70 2e 0a 20  | dger.Exec.Customization.Group... | 
| 36200 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 36220 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c  | ..............................(l | 
| 36240 |  69 6e 65 20 20 36 29 0a 2a 20 63 75 73 74 6f 6d    69 7a 61 74 69 6f 6e 2c 20 66 61 63 65 73 3a 20  | ine..6).*.customization,.faces:. | 
| 36260 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 4c 65 64 67 65 72 20 46 61 63 65 73 20 43 75  | .................Ledger.Faces.Cu | 
| 36280 |  73 74 6f 6d 69 7a 61 74 69 6f 6e 20 47 72 6f 75    70 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | stomization.Group............... | 
| 362a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 362c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 6c 69 6e 65 20 20 36 29 0a 2a 20 63 75  | ..................(line..6).*.cu | 
| 362e0 |  73 74 6f 6d 69 7a 61 74 69 6f 6e 2c 20 6c 65 64    67 65 72 2d 6d 6f 64 65 3a 20 20 20 20 20 20 20  | stomization,.ledger-mode:....... | 
| 36300 |  20 20 20 20 20 4c 65 64 67 65 72 20 43 75 73 74    6f 6d 69 7a 61 74 69 6f 6e 20 47 72 6f 75 70 2e  | .....Ledger.Customization.Group. | 
| 36320 |  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  | ................................ | 
| 36340 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 36360 |  28 6c 69 6e 65 20 20 36 29 0a 2a 20 63 75 73 74    6f 6d 69 7a 61 74 69 6f 6e 2c 20 70 6f 73 74 3a  | (line..6).*.customization,.post: | 
| 36380 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 4c 65 64 67 65 72 20 50 6f 73 74 20 43  | ...................Ledger.Post.C | 
| 363a0 |  75 73 74 6f 6d 69 7a 61 74 69 6f 6e 20 47 72 6f    75 70 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20  | ustomization.Group.............. | 
| 363c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 363e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 6c 69 6e 65 20 20 36 29 0a 2a 20 63  | ...................(line..6).*.c | 
| 36400 |  75 73 74 6f 6d 69 7a 61 74 69 6f 6e 2c 20 72 65    63 6f 6e 63 69 6c 65 3a 20 20 20 20 20 20 20 20  | ustomization,.reconcile:........ | 
| 36420 |  20 20 20 20 20 20 4c 65 64 67 65 72 20 52 65 63    6f 6e 63 69 6c 65 20 43 75 73 74 6f 6d 69 7a 61  | ......Ledger.Reconcile.Customiza | 
| 36440 |  74 69 6f 6e 20 47 72 6f 75 70 2e 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | tion.Group...................... | 
| 36460 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 36480 |  20 20 20 20 20 20 20 20 20 20 20 28 6c 69 6e 65    20 20 36 29 0a 2a 20 63 75 73 74 6f 6d 69 7a 61  | ...........(line..6).*.customiza | 
| 364a0 |  74 69 6f 6e 2c 20 72 65 70 6f 72 74 3a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 4c 65  | tion,.report:.................Le | 
| 364c0 |  64 67 65 72 20 52 65 70 6f 72 74 20 43 75 73 74    6f 6d 69 7a 61 74 69 6f 6e 20 47 72 6f 75 70 2e  | dger.Report.Customization.Group. | 
| 364e0 |  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  | ................................ | 
| 36500 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 36520 |  28 6c 69 6e 65 20 20 36 29 0a 2a 20 63 75 73 74    6f 6d 69 7a 61 74 69 6f 6e 2c 20 74 65 73 74 3a  | (line..6).*.customization,.test: | 
| 36540 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 4c 65 64 67 65 72 20 54 65 73 74 20 43  | ...................Ledger.Test.C | 
| 36560 |  75 73 74 6f 6d 69 7a 61 74 69 6f 6e 20 47 72 6f    75 70 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20  | ustomization.Group.............. | 
| 36580 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 365a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 6c 69 6e 65 20 20 36 29 0a 2a 20 63  | ...................(line..6).*.c | 
| 365c0 |  75 73 74 6f 6d 69 7a 61 74 69 6f 6e 2c 20 74 65    78 69 3a 20 20 20 20 20 20 20 20 20 20 20 20 20  | ustomization,.texi:............. | 
| 365e0 |  20 20 20 20 20 20 4c 65 64 67 65 72 20 54 65 78    69 20 43 75 73 74 6f 6d 69 7a 61 74 69 6f 6e 20  | ......Ledger.Texi.Customization. | 
| 36600 |  47 72 6f 75 70 2e 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | Group........................... | 
| 36620 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 36640 |  20 20 20 20 20 20 28 6c 69 6e 65 20 20 36 29 0a    2a 20 64 65 6d 6f 3a 20 20 20 20 20 20 20 20 20  | ......(line..6).*.demo:......... | 
| 36660 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 51 75 69 63 6b 20 44  | .........................Quick.D | 
| 36680 |  65 6d 6f 2e 20 20 20 20 20 20 20 20 20 20 20 28    6c 69 6e 65 20 20 36 29 0a 2a 20 65 66 66 65 63  | emo............(line..6).*.effec | 
| 366a0 |  74 69 76 65 20 64 61 74 65 3a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | tive.date:...................... | 
| 366c0 |  20 20 53 65 74 74 69 6e 67 20 61 20 54 72 61 6e    73 61 63 74 69 6f 6e 73 20 45 66 66 65 63 74 69  | ..Setting.a.Transactions.Effecti | 
| 366e0 |  76 65 20 44 61 74 65 2e 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ve.Date......................... | 
| 36700 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 36720 |  20 20 20 20 20 20 20 20 28 6c 69 6e 65 20 20 36    29 0a 2a 20 66 6f 6c 64 69 6e 67 3a 20 20 20 20  | ........(line..6).*.folding:.... | 
| 36740 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 55 73 65 20 6f  | ...........................Use.o | 
| 36760 |  72 67 2d 6c 69 6b 65 20 6f 75 74 6c 69 6e 65 73    2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | rg-like.outlines................ | 
| 36780 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 367a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 6c 69 6e 65 20 31 30 29 0a 2a 20 47 4e 55  | .................(line.10).*.GNU | 
| 367c0 |  20 45 6d 61 63 73 20 43 61 6c 63 75 6c 61 74 6f    72 3a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .Emacs.Calculator:.............. | 
| 367e0 |  20 20 20 20 45 64 69 74 69 6e 67 20 41 6d 6f 75    6e 74 73 2e 20 20 20 20 20 20 28 6c 69 6e 65 20  | ....Editing.Amounts.......(line. | 
| 36800 |  20 36 29 0a 2a 20 69 6e 73 74 61 6c 6c 61 74 69    6f 6e 3a 20 20 20 20 20 20 20 20 20 20 20 20 20  | .6).*.installation:............. | 
| 36820 |  20 20 20 20 20 20 20 20 20 20 20 20 20 51 75 69    63 6b 20 49 6e 73 74 61 6c 6c 61 74 69 6f 6e 2e  | .............Quick.Installation. | 
| 36840 |  20 20 20 28 6c 69 6e 65 20 20 36 29 0a 2a 20 6d    65 6e 75 3a 20 20 20 20 20 20 20 20 20 20 20 20  | ...(line..6).*.menu:............ | 
| 36860 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 4d 65 6e 75 73 2e 20 20 20 20  | ......................Menus..... | 
| 36880 |  20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 6e    65 20 20 36 29 0a 2a 20 6f 72 67 3a 20 20 20 20  | ............(line..6).*.org:.... | 
| 368a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 55  | ...............................U | 
| 368c0 |  73 65 20 6f 72 67 2d 6c 69 6b 65 20 6f 75 74 6c    69 6e 65 73 2e 0a 20 20 20 20 20 20 20 20 20 20  | se.org-like.outlines............ | 
| 368e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 36900 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 6c 69 6e 65 20 31 30 29 0a 2a  | .....................(line.10).* | 
| 36920 |  20 6f 75 74 6c 69 6e 65 3a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .outline:....................... | 
| 36940 |  20 20 20 20 20 20 20 20 55 73 65 20 6f 72 67 2d    6c 69 6b 65 20 6f 75 74 6c 69 6e 65 73 2e 0a 20  | ........Use.org-like.outlines... | 
| 36960 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 36980 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c  | ..............................(l | 
| 369a0 |  69 6e 65 20 31 30 29 0a 2a 20 70 65 6e 64 69 6e    67 3a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ine.10).*.pending:.............. | 
| 369c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 4d 61 72 6b 69 6e 67 20 54 72 61 6e 73 61 63  | .................Marking.Transac | 
| 369e0 |  74 69 6f 6e 73 2e 20 28 6c 69 6e 65 20 20 36 29    0a 2a 20 72 65 63 6f 6e 63 69 6c 69 61 74 69 6f  | tions..(line..6).*.reconciliatio | 
| 36a00 |  6e 2c 20 61 63 63 6f 75 6e 74 20 63 68 61 6e 67    69 6e 67 3a 20 20 20 20 20 20 43 68 61 6e 67 69  | n,.account.changing:......Changi | 
| 36a20 |  6e 67 20 52 65 63 6f 6e 63 69 6c 69 61 74 69 6f    6e 20 41 63 63 6f 75 6e 74 2e 0a 20 20 20 20 20  | ng.Reconciliation.Account....... | 
| 36a40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 36a60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 6c 69 6e 65 20  | ..........................(line. | 
| 36a80 |  20 36 29 0a 2a 20 72 65 63 6f 6e 63 69 6c 69 61    74 69 6f 6e 2c 20 62 61 73 69 63 73 3a 20 20 20  | .6).*.reconciliation,.basics:... | 
| 36aa0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 42 61 73    69 63 73 20 6f 66 20 52 65 63 6f 6e 63 69 6c 69  | .............Basics.of.Reconcili | 
| 36ac0 |  61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ation........................... | 
| 36ae0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 36b00 |  20 20 20 20 20 20 28 6c 69 6e 65 20 20 36 29 0a    2a 20 72 65 63 6f 6e 63 69 6c 69 61 74 69 6f 6e  | ......(line..6).*.reconciliation | 
| 36b20 |  2c 20 66 69 6e 61 6c 69 7a 69 6e 67 3a 20 20 20    20 20 20 20 20 20 20 20 20 46 69 6e 61 6c 69 7a  | ,.finalizing:............Finaliz | 
| 36b40 |  65 20 52 65 63 6f 6e 63 69 6c 69 61 74 69 6f 6e    2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | e.Reconciliation................ | 
| 36b60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 36b80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 6c 69 6e 65 20 20 36 29 0a 2a 20 72 65 63  | .................(line..6).*.rec | 
| 36ba0 |  6f 6e 63 69 6c 69 61 74 69 6f 6e 2c 20 73 74 61    72 74 69 6e 67 3a 20 20 20 20 20 20 20 20 20 20  | onciliation,.starting:.......... | 
| 36bc0 |  20 20 20 20 53 74 61 72 74 69 6e 67 20 61 20 52    65 63 6f 6e 63 69 6c 69 61 74 69 6f 6e 2e 0a 20  | ....Starting.a.Reconciliation... | 
| 36be0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 36c00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c  | ..............................(l | 
| 36c20 |  69 6e 65 20 20 36 29 0a 2a 20 72 65 63 6f 6e 63    69 6c 69 61 74 69 6f 6e 2c 20 74 61 72 67 65 74  | ine..6).*.reconciliation,.target | 
| 36c40 |  20 63 68 61 6e 67 69 6e 67 3a 20 20 20 20 20 20    20 43 68 61 6e 67 69 6e 67 20 52 65 63 6f 6e 63  | .changing:.......Changing.Reconc | 
| 36c60 |  69 6c 69 61 74 69 6f 6e 20 54 61 72 67 65 74 2e    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | iliation.Target................. | 
| 36c80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 36ca0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 6c 69 6e 65 20 20 36 29 0a 2a 20 72 65 63 6f  | ................(line..6).*.reco | 
| 36cc0 |  6e 63 69 6c 69 61 74 69 6f 6e 2c 20 74 72 61 6e    73 61 63 74 69 6f 6e 20 61 64 64 69 6e 67 20 61  | nciliation,.transaction.adding.a | 
| 36ce0 |  6e 64 20 64 65 6c 65 74 69 6e 67 3a 20 41 64 64    69 6e 67 20 61 6e 64 20 44 65 6c 65 74 69 6e 67  | nd.deleting:.Adding.and.Deleting | 
| 36d00 |  20 54 72 61 6e 73 61 63 74 69 6f 6e 73 20 64 75    72 69 6e 67 20 52 65 63 6f 6e 63 69 6c 69 61 74  | .Transactions.during.Reconciliat | 
| 36d20 |  69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ion............................. | 
| 36d40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 36d60 |  20 20 20 20 28 6c 69 6e 65 20 20 36 29 0a 2a 20    72 65 63 6f 6e 63 69 6c 69 61 74 69 6f 6e 2c 20  | ....(line..6).*.reconciliation,. | 
| 36d80 |  74 72 61 6e 73 61 63 74 69 6f 6e 20 65 64 69 74    69 6e 67 3a 20 20 20 45 64 69 74 20 54 72 61 6e  | transaction.editing:...Edit.Tran | 
| 36da0 |  73 61 63 74 69 6f 6e 73 20 44 75 72 69 6e 67 20    52 65 63 6f 6e 63 69 6c 69 61 74 69 6f 6e 2e 0a  | sactions.During.Reconciliation.. | 
| 36dc0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 36de0 |  20 20 20 20 20 20 20 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  | ...............................( | 
| 36e00 |  6c 69 6e 65 20 20 36 29 0a 2a 20 72 65 63 6f 6e    63 69 6c 69 61 74 69 6f 6e 2c 20 74 72 61 6e 73  | line..6).*.reconciliation,.trans | 
| 36e20 |  61 63 74 69 6f 6e 20 6d 61 72 6b 69 6e 67 3a 20    20 20 4d 61 72 6b 20 54 72 61 6e 73 61 63 74 69  | action.marking:...Mark.Transacti | 
| 36e40 |  6f 6e 73 20 50 65 6e 64 69 6e 67 2e 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ons.Pending..................... | 
| 36e60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 36e80 |  20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 6e    65 20 20 36 29 0a 2a 20 72 65 70 6f 72 74 2c 20  | ............(line..6).*.report,. | 
| 36ea0 |  61 64 64 69 6e 67 20 61 6e 64 20 65 64 69 74 69    6e 67 3a 20 20 20 20 20 20 20 20 20 20 20 20 41  | adding.and.editing:............A | 
| 36ec0 |  64 64 69 6e 67 20 61 6e 64 20 45 64 69 74 69 6e    67 20 52 65 70 6f 72 74 73 2e 0a 20 20 20 20 20  | dding.and.Editing.Reports....... | 
| 36ee0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 36f00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 6c 69 6e 65 20  | ..........................(line. | 
| 36f20 |  20 36 29 0a 2a 20 72 65 70 6f 72 74 2c 20 63 75    73 74 6f 6d 20 63 6f 6d 6d 61 6e 64 3a 20 20 20  | .6).*.report,.custom.command:... | 
| 36f40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 4d 61 6b    65 20 52 65 70 6f 72 74 20 54 72 61 6e 73 61 63  | .............Make.Report.Transac | 
| 36f60 |  74 69 6f 6e 73 20 41 63 74 69 76 65 2e 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | tions.Active.................... | 
| 36f80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 36fa0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69    6e 65 20 20 36 29 0a 2a 20 72 65 70 6f 72 74 2c  | .............(line..6).*.report, | 
| 36fc0 |  20 63 75 73 74 6f 6d 20 76 61 72 69 61 62 6c 65    3a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .custom.variable:............... | 
| 36fe0 |  45 78 70 61 6e 73 69 6f 6e 20 46 6f 72 6d 61 74    73 2e 20 20 20 20 28 6c 69 6e 65 20 20 36 29 0a  | Expansion.Formats.....(line..6). | 
| 37000 |  2a 20 72 65 70 6f 72 74 2c 20 6f 72 64 65 72 20    72 65 76 65 72 73 69 6e 67 3a 20 20 20 20 20 20  | *.report,.order.reversing:...... | 
| 37020 |  20 20 20 20 20 20 20 20 20 52 65 76 65 72 73 69    6e 67 20 52 65 70 6f 72 74 20 4f 72 64 65 72 2e  | .........Reversing.Report.Order. | 
| 37040 |  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  | ................................ | 
| 37060 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 37080 |  28 6c 69 6e 65 20 20 36 29 0a 2a 20 72 65 70 6f    72 74 2c 20 72 75 6e 6e 69 6e 67 3a 20 20 20 20  | (line..6).*.report,.running:.... | 
| 370a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 52 75 6e 6e 69 6e 67 20 42 61 73 69 63  | ...................Running.Basic | 
| 370c0 |  20 52 65 70 6f 72 74 73 2e 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .Reports........................ | 
| 370e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 37100 |  20 20 20 20 20 20 20 20 20 28 6c 69 6e 65 20 20    36 29 0a 2a 20 74 72 61 6e 73 61 63 74 69 6f 6e  | .........(line..6).*.transaction | 
| 37120 |  2c 20 61 64 64 69 6e 67 3a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 41 64 64 69  | ,.adding:...................Addi | 
| 37140 |  6e 67 20 54 72 61 6e 73 61 63 74 69 6f 6e 73 2e    20 20 28 6c 69 6e 65 20 20 36 29 0a 2a 20 74 72  | ng.Transactions...(line..6).*.tr | 
| 37160 |  61 6e 73 61 63 74 69 6f 6e 2c 20 63 6f 70 79 69    6e 67 3a 20 20 20 20 20 20 20 20 20 20 20 20 20  | ansaction,.copying:............. | 
| 37180 |  20 20 20 20 20 43 6f 70 79 69 6e 67 20 54 72 61    6e 73 61 63 74 69 6f 6e 73 2e 20 28 6c 69 6e 65  | .....Copying.Transactions..(line | 
| 371a0 |  20 20 36 29 0a 2a 20 74 72 61 6e 73 61 63 74 69    6f 6e 2c 20 64 65 6c 65 74 69 6e 67 3a 20 20 20  | ..6).*.transaction,.deleting:... | 
| 371c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 44 65    6c 65 74 69 6e 67 20 54 72 61 6e 73 61 63 74 69  | ..............Deleting.Transacti | 
| 371e0 |  6f 6e 73 2e 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ons............................. | 
| 37200 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 37220 |  20 20 20 20 28 6c 69 6e 65 20 20 36 29 0a 2a 20    74 72 61 6e 73 61 63 74 69 6f 6e 2c 20 64 69 73  | ....(line..6).*.transaction,.dis | 
| 37240 |  70 6c 61 79 20 66 69 6c 74 65 72 69 6e 67 3a 20    20 20 20 20 20 20 20 4e 61 72 72 6f 77 69 6e 67  | play.filtering:........Narrowing | 
| 37260 |  20 54 72 61 6e 73 61 63 74 69 6f 6e 73 2e 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .Transactions................... | 
| 37280 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 372a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c    69 6e 65 20 20 36 29 0a 2a 20 74 72 61 6e 73 61  | ..............(line..6).*.transa | 
| 372c0 |  63 74 69 6f 6e 2c 20 65 64 69 74 69 6e 67 20 61    6d 6f 75 6e 74 73 3a 20 20 20 20 20 20 20 20 20  | ction,.editing.amounts:......... | 
| 372e0 |  20 45 64 69 74 69 6e 67 20 41 6d 6f 75 6e 74 73    2e 20 20 20 20 20 20 28 6c 69 6e 65 20 20 36 29  | .Editing.Amounts.......(line..6) | 
| 37300 |  0a 2a 20 74 72 61 6e 73 61 63 74 69 6f 6e 2c 20    66 6f 72 6d 61 74 74 69 6e 67 3a 20 20 20 20 20  | .*.transaction,.formatting:..... | 
| 37320 |  20 20 20 20 20 20 20 20 20 20 46 6f 72 6d 61 74    74 69 6e 67 20 54 72 61 6e 73 61 63 74 69 6f 6e  | ..........Formatting.Transaction | 
| 37340 |  73 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | s............................... | 
| 37360 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 37380 |  20 20 28 6c 69 6e 65 20 20 36 29 0a 2a 20 74 72    61 6e 73 61 63 74 69 6f 6e 2c 20 6d 61 72 6b 69  | ..(line..6).*.transaction,.marki | 
| 373a0 |  6e 67 3a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 4d 61 72 6b 69 6e 67 20 54 72 61  | ng:..................Marking.Tra | 
| 373c0 |  6e 73 61 63 74 69 6f 6e 73 2e 20 28 6c 69 6e 65    20 20 36 29 0a 2a 20 74 72 61 6e 73 61 63 74 69  | nsactions..(line..6).*.transacti | 
| 373e0 |  6f 6e 2c 20 6e 61 72 72 6f 77 69 6e 67 3a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 4e 61  | on,.narrowing:................Na | 
| 37400 |  72 72 6f 77 69 6e 67 20 54 72 61 6e 73 61 63 74    69 6f 6e 73 2e 0a 20 20 20 20 20 20 20 20 20 20  | rrowing.Transactions............ | 
| 37420 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 37440 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 6c 69 6e 65 20 20 36 29 0a 2a  | .....................(line..6).* | 
| 37460 |  20 74 72 61 6e 73 61 63 74 69 6f 6e 2c 20 6e 61    76 69 67 61 74 69 6f 6e 3a 20 20 20 20 20 20 20  | .transaction,.navigation:....... | 
| 37480 |  20 20 20 20 20 20 20 20 4e 61 76 69 67 61 74 69    6e 67 20 54 72 61 6e 73 61 63 74 69 6f 6e 73 2e  | ........Navigating.Transactions. | 
| 374a0 |  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  | ................................ | 
| 374c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 374e0 |  28 6c 69 6e 65 20 20 36 29 0a 2a 20 74 72 61 6e    73 61 63 74 69 6f 6e 2c 20 73 6f 72 74 69 6e 67  | (line..6).*.transaction,.sorting | 
| 37500 |  3a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 53 6f 72 74 69 6e 67 20 54 72 61 6e 73  | :..................Sorting.Trans | 
| 37520 |  61 63 74 69 6f 6e 73 2e 20 28 6c 69 6e 65 20 20    36 29 0a 2a 20 75 6e 63 6c 65 61 72 65 64 3a 20  | actions..(line..6).*.uncleared:. | 
| 37540 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 4d 61 72 6b  | ............................Mark | 
| 37560 |  69 6e 67 20 54 72 61 6e 73 61 63 74 69 6f 6e 73    2e 20 28 6c 69 6e 65 20 20 36 29 0a 0a 1f 0a 46  | ing.Transactions..(line..6)....F | 
| 37580 |  69 6c 65 3a 20 6c 65 64 67 65 72 2d 6d 6f 64 65    2e 69 6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 43 6f  | ile:.ledger-mode.info,..Node:.Co | 
| 375a0 |  6d 6d 61 6e 64 20 26 20 56 61 72 69 61 62 6c 65    20 49 6e 64 65 78 2c 20 20 4e 65 78 74 3a 20 4b  | mmand.&.Variable.Index,..Next:.K | 
| 375c0 |  65 79 73 74 72 6f 6b 65 20 49 6e 64 65 78 2c 20    20 50 72 65 76 3a 20 43 6f 6e 63 65 70 74 20 49  | eystroke.Index,..Prev:.Concept.I | 
| 375e0 |  6e 64 65 78 2c 20 20 55 70 3a 20 54 6f 70 0a 0a    43 6f 6d 6d 61 6e 64 20 26 20 56 61 72 69 61 62  | ndex,..Up:.Top..Command.&.Variab | 
| 37600 |  6c 65 20 49 6e 64 65 78 0a 2a 2a 2a 2a 2a 2a 2a    2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  | le.Index.*********************** | 
| 37620 |  2a 0a 0a 00 08 5b 69 6e 64 65 78 00 08 5d 0a 2a    20 4d 65 6e 75 3a 0a 0a 2a 20 6c 65 64 67 65 72  | *....[index..].*.Menu:..*.ledger | 
| 37640 |  2d 62 69 6e 61 72 79 2d 70 61 74 68 3a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | -binary-path:................... | 
| 37660 |  20 4c 65 64 67 65 72 20 45 78 65 63 20 43 75 73    74 6f 6d 69 7a 61 74 69 6f 6e 20 47 72 6f 75 70  | .Ledger.Exec.Customization.Group | 
| 37680 |  2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 376a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 376c0 |  20 28 6c 69 6e 65 20 20 38 29 0a 2a 20 6c 65 64    67 65 72 2d 62 75 66 66 65 72 2d 74 72 61 63 6b  | .(line..8).*.ledger-buffer-track | 
| 376e0 |  73 2d 72 65 63 6f 6e 63 69 6c 65 2d 62 75 66 66    65 72 3a 20 4c 65 64 67 65 72 20 52 65 63 6f 6e  | s-reconcile-buffer:.Ledger.Recon | 
| 37700 |  63 69 6c 65 20 43 75 73 74 6f 6d 69 7a 61 74 69    6f 6e 20 47 72 6f 75 70 2e 0a 20 20 20 20 20 20  | cile.Customization.Group........ | 
| 37720 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 37740 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 28 6c 69 6e 65 20 31  | .........................(line.1 | 
| 37760 |  33 29 0a 2a 20 6c 65 64 67 65 72 2d 63 6c 65 61    72 2d 77 68 6f 6c 65 2d 74 72 61 6e 73 61 63 74  | 3).*.ledger-clear-whole-transact | 
| 37780 |  69 6f 6e 73 3a 20 20 20 20 20 20 20 4c 65 64 67    65 72 20 43 75 73 74 6f 6d 69 7a 61 74 69 6f 6e  | ions:.......Ledger.Customization | 
| 377a0 |  20 47 72 6f 75 70 2e 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .Group.......................... | 
| 377c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 377e0 |  20 20 20 20 20 20 20 28 6c 69 6e 65 20 31 30 29    0a 2a 20 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 63  | .......(line.10).*.ledger-font-c | 
| 37800 |  6c 65 61 72 65 64 2d 66 61 63 65 3a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 4c 65 64 67 65 72  | leared-face:..............Ledger | 
| 37820 |  20 46 61 63 65 73 20 43 75 73 74 6f 6d 69 7a 61    74 69 6f 6e 20 47 72 6f 75 70 2e 0a 20 20 20 20  | .Faces.Customization.Group...... | 
| 37840 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 37860 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 6c 69 6e 65  | ...........................(line | 
| 37880 |  20 31 31 29 0a 2a 20 6c 65 64 67 65 72 2d 66 6f    6e 74 2d 63 6f 6d 6d 65 6e 74 2d 66 61 63 65 3a  | .11).*.ledger-font-comment-face: | 
| 378a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 4c 65    64 67 65 72 20 46 61 63 65 73 20 43 75 73 74 6f  | ..............Ledger.Faces.Custo | 
| 378c0 |  6d 69 7a 61 74 69 6f 6e 20 47 72 6f 75 70 2e 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | mization.Group.................. | 
| 378e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 37900 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    6c 69 6e 65 20 34 31 29 0a 2a 20 6c 65 64 67 65  | ...............(line.41).*.ledge | 
| 37920 |  72 2d 66 6f 6e 74 2d 68 69 67 68 6c 69 67 68 74    2d 66 61 63 65 3a 20 20 20 20 20 20 20 20 20 20  | r-font-highlight-face:.......... | 
| 37940 |  20 20 4c 65 64 67 65 72 20 46 61 63 65 73 20 43    75 73 74 6f 6d 69 7a 61 74 69 6f 6e 20 47 72 6f  | ..Ledger.Faces.Customization.Gro | 
| 37960 |  75 70 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | up.............................. | 
| 37980 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 379a0 |  20 20 20 28 6c 69 6e 65 20 31 34 29 0a 2a 20 6c    65 64 67 65 72 2d 66 6f 6e 74 2d 6f 74 68 65 72  | ...(line.14).*.ledger-font-other | 
| 379c0 |  2d 66 61 63 65 3a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 4c 65 64 67 65 72 20 46 61 63  | -face:................Ledger.Fac | 
| 379e0 |  65 73 20 43 75 73 74 6f 6d 69 7a 61 74 69 6f 6e    20 47 72 6f 75 70 2e 0a 20 20 20 20 20 20 20 20  | es.Customization.Group.......... | 
| 37a00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 37a20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 28 6c 69 6e 65 20 32 30 29  | .......................(line.20) | 
| 37a40 |  0a 2a 20 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 70    65 6e 64 69 6e 67 2d 66 61 63 65 3a 20 20 20 20  | .*.ledger-font-pending-face:.... | 
| 37a60 |  20 20 20 20 20 20 20 20 20 20 4c 65 64 67 65 72    20 46 61 63 65 73 20 43 75 73 74 6f 6d 69 7a 61  | ..........Ledger.Faces.Customiza | 
| 37a80 |  74 69 6f 6e 20 47 72 6f 75 70 2e 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | tion.Group...................... | 
| 37aa0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 37ac0 |  20 20 20 20 20 20 20 20 20 20 20 28 6c 69 6e 65    20 31 37 29 0a 2a 20 6c 65 64 67 65 72 2d 66 6f  | ...........(line.17).*.ledger-fo | 
| 37ae0 |  6e 74 2d 70 6f 73 74 69 6e 67 2d 61 63 63 6f 75    6e 74 2d 63 6c 65 61 72 65 64 2d 66 61 63 65 3a  | nt-posting-account-cleared-face: | 
| 37b00 |  20 4c 65 64 67 65 72 20 46 61 63 65 73 20 43 75    73 74 6f 6d 69 7a 61 74 69 6f 6e 20 47 72 6f 75  | .Ledger.Faces.Customization.Grou | 
| 37b20 |  70 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | p............................... | 
| 37b40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 37b60 |  20 20 28 6c 69 6e 65 20 32 36 29 0a 2a 20 6c 65    64 67 65 72 2d 66 6f 6e 74 2d 70 6f 73 74 69 6e  | ..(line.26).*.ledger-font-postin | 
| 37b80 |  67 2d 61 63 63 6f 75 6e 74 2d 66 61 63 65 3a 20    20 20 20 20 20 4c 65 64 67 65 72 20 46 61 63 65  | g-account-face:......Ledger.Face | 
| 37ba0 |  73 20 43 75 73 74 6f 6d 69 7a 61 74 69 6f 6e 20    47 72 6f 75 70 2e 0a 20 20 20 20 20 20 20 20 20  | s.Customization.Group........... | 
| 37bc0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 37be0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 6c 69 6e 65 20 32 33 29 0a  | ......................(line.23). | 
| 37c00 |  2a 20 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 70 6f    73 74 69 6e 67 2d 61 63 63 6f 75 6e 74 2d 70 65  | *.ledger-font-posting-account-pe | 
| 37c20 |  6e 64 69 6e 67 2d 66 61 63 65 3a 20 4c 65 64 67    65 72 20 46 61 63 65 73 20 43 75 73 74 6f 6d 69  | nding-face:.Ledger.Faces.Customi | 
| 37c40 |  7a 61 74 69 6f 6e 20 47 72 6f 75 70 2e 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | zation.Group.................... | 
| 37c60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 37c80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69    6e 65 20 32 39 29 0a 2a 20 6c 65 64 67 65 72 2d  | .............(line.29).*.ledger- | 
| 37ca0 |  66 6f 6e 74 2d 70 6f 73 74 69 6e 67 2d 61 6d 6f    75 6e 74 2d 66 61 63 65 3a 20 20 20 20 20 20 20  | font-posting-amount-face:....... | 
| 37cc0 |  4c 65 64 67 65 72 20 46 61 63 65 73 20 43 75 73    74 6f 6d 69 7a 61 74 69 6f 6e 20 47 72 6f 75 70  | Ledger.Faces.Customization.Group | 
| 37ce0 |  2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 37d00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 37d20 |  20 28 6c 69 6e 65 20 33 32 29 0a 2a 20 6c 65 64    67 65 72 2d 66 6f 6e 74 2d 72 65 63 6f 6e 63 69  | .(line.32).*.ledger-font-reconci | 
| 37d40 |  6c 65 72 2d 63 6c 65 61 72 65 64 2d 66 61 63 65    3a 20 20 20 4c 65 64 67 65 72 20 46 61 63 65 73  | ler-cleared-face:...Ledger.Faces | 
| 37d60 |  20 43 75 73 74 6f 6d 69 7a 61 74 69 6f 6e 20 47    72 6f 75 70 2e 0a 20 20 20 20 20 20 20 20 20 20  | .Customization.Group............ | 
| 37d80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 37da0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 6c 69 6e 65 20 34 38 29 0a 2a  | .....................(line.48).* | 
| 37dc0 |  20 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 72 65 63    6f 6e 63 69 6c 65 72 2d 70 65 6e 64 69 6e 67 2d  | .ledger-font-reconciler-pending- | 
| 37de0 |  66 61 63 65 3a 20 20 20 4c 65 64 67 65 72 20 46    61 63 65 73 20 43 75 73 74 6f 6d 69 7a 61 74 69  | face:...Ledger.Faces.Customizati | 
| 37e00 |  6f 6e 20 47 72 6f 75 70 2e 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | on.Group........................ | 
| 37e20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 37e40 |  20 20 20 20 20 20 20 20 20 28 6c 69 6e 65 20 35    32 29 0a 2a 20 6c 65 64 67 65 72 2d 66 6f 6e 74  | .........(line.52).*.ledger-font | 
| 37e60 |  2d 72 65 63 6f 6e 63 69 6c 65 72 2d 75 6e 63 6c    65 61 72 65 64 2d 66 61 63 65 3a 20 4c 65 64 67  | -reconciler-uncleared-face:.Ledg | 
| 37e80 |  65 72 20 46 61 63 65 73 20 43 75 73 74 6f 6d 69    7a 61 74 69 6f 6e 20 47 72 6f 75 70 2e 0a 20 20  | er.Faces.Customization.Group.... | 
| 37ea0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 37ec0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69  | .............................(li | 
| 37ee0 |  6e 65 20 34 34 29 0a 2a 20 6c 65 64 67 65 72 2d    66 6f 6e 74 2d 72 65 70 6f 72 74 2d 63 6c 69 63  | ne.44).*.ledger-font-report-clic | 
| 37f00 |  6b 61 62 6c 65 2d 66 61 63 65 3a 20 20 20 20 20    4c 65 64 67 65 72 20 46 61 63 65 73 20 43 75 73  | kable-face:.....Ledger.Faces.Cus | 
| 37f20 |  74 6f 6d 69 7a 61 74 69 6f 6e 20 47 72 6f 75 70    2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | tomization.Group................ | 
| 37f40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 37f60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 6c 69 6e 65 20 35 36 29 0a 2a 20 6c 65 64  | .................(line.56).*.led | 
| 37f80 |  67 65 72 2d 66 6f 6e 74 2d 75 6e 63 6c 65 61 72    65 64 2d 66 61 63 65 3a 20 20 20 20 20 20 20 20  | ger-font-uncleared-face:........ | 
| 37fa0 |  20 20 20 20 4c 65 64 67 65 72 20 46 61 63 65 73    20 43 75 73 74 6f 6d 69 7a 61 74 69 6f 6e 20 47  | ....Ledger.Faces.Customization.G | 
| 37fc0 |  72 6f 75 70 2e 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | roup............................ | 
| 37fe0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 38000 |  20 20 20 20 20 28 6c 69 6e 65 20 20 38 29 0a 2a    20 6c 65 64 67 65 72 2d 68 69 67 68 6c 69 67 68  | .....(line..8).*.ledger-highligh | 
| 38020 |  74 2d 78 61 63 74 2d 75 6e 64 65 72 2d 70 6f 69    6e 74 3a 20 20 20 20 20 4c 65 64 67 65 72 20 43  | t-xact-under-point:.....Ledger.C | 
| 38040 |  75 73 74 6f 6d 69 7a 61 74 69 6f 6e 20 47 72 6f    75 70 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20  | ustomization.Group.............. | 
| 38060 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 38080 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 6c 69 6e 65 20 31 33 29 0a 2a 20 6c  | ...................(line.13).*.l | 
| 380a0 |  65 64 67 65 72 2d 69 6e 69 74 2d 66 69 6c 65 2d    6e 61 6d 65 3a 20 20 20 20 20 20 20 20 20 20 20  | edger-init-file-name:........... | 
| 380c0 |  20 20 20 20 20 20 4c 65 64 67 65 72 20 45 78 65    63 20 43 75 73 74 6f 6d 69 7a 61 74 69 6f 6e 20  | ......Ledger.Exec.Customization. | 
| 380e0 |  47 72 6f 75 70 2e 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | Group........................... | 
| 38100 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 38120 |  20 20 20 20 20 20 28 6c 69 6e 65 20 31 31 29 0a    2a 20 6c 65 64 67 65 72 2d 6e 61 72 72 6f 77 2d  | ......(line.11).*.ledger-narrow- | 
| 38140 |  6f 6e 2d 72 65 63 6f 6e 63 69 6c 65 3a 20 20 20    20 20 20 20 20 20 20 20 20 4c 65 64 67 65 72 20  | on-reconcile:............Ledger. | 
| 38160 |  52 65 63 6f 6e 63 69 6c 65 20 43 75 73 74 6f 6d    69 7a 61 74 69 6f 6e 20 47 72 6f 75 70 2e 0a 20  | Reconcile.Customization.Group... | 
| 38180 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 381a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c  | ..............................(l | 
| 381c0 |  69 6e 65 20 20 39 29 0a 2a 20 6c 65 64 67 65 72    2d 6e 61 76 69 67 61 74 65 2d 6e 65 78 74 2d 75  | ine..9).*.ledger-navigate-next-u | 
| 381e0 |  6e 63 6c 65 61 72 65 64 3a 20 20 20 20 20 20 20    20 4e 61 76 69 67 61 74 69 6e 67 20 54 72 61 6e  | ncleared:........Navigating.Tran | 
| 38200 |  73 61 63 74 69 6f 6e 73 2e 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | sactions........................ | 
| 38220 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 38240 |  20 20 20 20 20 20 20 20 20 28 6c 69 6e 65 20 31    30 29 0a 2a 20 6c 65 64 67 65 72 2d 6e 61 76 69  | .........(line.10).*.ledger-navi | 
| 38260 |  67 61 74 65 2d 6e 65 78 74 2d 78 61 63 74 2d 6f    72 2d 64 69 72 65 63 74 69 76 65 3a 20 4e 61 76  | gate-next-xact-or-directive:.Nav | 
| 38280 |  69 67 61 74 69 6e 67 20 54 72 61 6e 73 61 63 74    69 6f 6e 73 2e 0a 20 20 20 20 20 20 20 20 20 20  | igating.Transactions............ | 
| 382a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 382c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 6c 69 6e 65 20 20 36 29 0a 2a  | .....................(line..6).* | 
| 382e0 |  20 6c 65 64 67 65 72 2d 6e 61 76 69 67 61 74 65    2d 70 72 65 76 2d 78 61 63 74 2d 6f 72 2d 64 69  | .ledger-navigate-prev-xact-or-di | 
| 38300 |  72 65 63 74 69 76 65 3a 20 4e 61 76 69 67 61 74    69 6e 67 20 54 72 61 6e 73 61 63 74 69 6f 6e 73  | rective:.Navigating.Transactions | 
| 38320 |  2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 38340 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 38360 |  20 28 6c 69 6e 65 20 20 36 29 0a 2a 20 6c 65 64    67 65 72 2d 6e 61 76 69 67 61 74 65 2d 70 72 65  | .(line..6).*.ledger-navigate-pre | 
| 38380 |  76 69 6f 75 73 2d 75 6e 63 6c 65 61 72 65 64 3a    20 20 20 20 4e 61 76 69 67 61 74 69 6e 67 20 54  | vious-uncleared:....Navigating.T | 
| 383a0 |  72 61 6e 73 61 63 74 69 6f 6e 73 2e 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ransactions..................... | 
| 383c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 383e0 |  20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 6e    65 20 31 30 29 0a 2a 20 6c 65 64 67 65 72 2d 6f  | ............(line.10).*.ledger-o | 
| 38400 |  63 63 75 72 2d 6e 61 72 72 6f 77 65 64 2d 66 61    63 65 3a 20 20 20 20 20 20 20 20 20 20 20 20 4c  | ccur-narrowed-face:............L | 
| 38420 |  65 64 67 65 72 20 46 61 63 65 73 20 43 75 73 74    6f 6d 69 7a 61 74 69 6f 6e 20 47 72 6f 75 70 2e  | edger.Faces.Customization.Group. | 
| 38440 |  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  | ................................ | 
| 38460 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 38480 |  28 6c 69 6e 65 20 33 35 29 0a 2a 20 6c 65 64 67    65 72 2d 6f 63 63 75 72 2d 75 73 65 2d 66 61 63  | (line.35).*.ledger-occur-use-fac | 
| 384a0 |  65 2d 73 68 6f 77 6e 3a 20 20 20 20 20 20 20 20    20 20 20 4c 65 64 67 65 72 20 43 75 73 74 6f 6d  | e-shown:...........Ledger.Custom | 
| 384c0 |  69 7a 61 74 69 6f 6e 20 47 72 6f 75 70 2e 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ization.Group................... | 
| 384e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 38500 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c    69 6e 65 20 20 36 29 0a 2a 20 6c 65 64 67 65 72  | ..............(line..6).*.ledger | 
| 38520 |  2d 6f 63 63 75 72 2d 78 61 63 74 2d 66 61 63 65    3a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | -occur-xact-face:............... | 
| 38540 |  20 4c 65 64 67 65 72 20 46 61 63 65 73 20 43 75    73 74 6f 6d 69 7a 61 74 69 6f 6e 20 47 72 6f 75  | .Ledger.Faces.Customization.Grou | 
| 38560 |  70 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | p............................... | 
| 38580 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 385a0 |  20 20 28 6c 69 6e 65 20 33 38 29 0a 2a 20 6c 65    64 67 65 72 2d 70 6f 73 74 2d 61 63 63 6f 75 6e  | ..(line.38).*.ledger-post-accoun | 
| 385c0 |  74 2d 61 6c 69 67 6e 6d 65 6e 74 2d 63 6f 6c 75    6d 6e 3a 20 20 4c 65 64 67 65 72 20 50 6f 73 74  | t-alignment-column:..Ledger.Post | 
| 385e0 |  20 43 75 73 74 6f 6d 69 7a 61 74 69 6f 6e 20 47    72 6f 75 70 2e 0a 20 20 20 20 20 20 20 20 20 20  | .Customization.Group............ | 
| 38600 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 38620 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 6c 69 6e 65 20 20 38 29 0a 2a  | .....................(line..8).* | 
| 38640 |  20 6c 65 64 67 65 72 2d 70 6f 73 74 2d 61 6d 6f    75 6e 74 2d 61 6c 69 67 6e 6d 65 6e 74 2d 61 74  | .ledger-post-amount-alignment-at | 
| 38660 |  3a 20 20 20 20 20 20 20 4c 65 64 67 65 72 20 50    6f 73 74 20 43 75 73 74 6f 6d 69 7a 61 74 69 6f  | :.......Ledger.Post.Customizatio | 
| 38680 |  6e 20 47 72 6f 75 70 2e 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | n.Group......................... | 
| 386a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 386c0 |  20 20 20 20 20 20 20 20 28 6c 69 6e 65 20 31 31    29 0a 2a 20 6c 65 64 67 65 72 2d 70 6f 73 74 2d  | ........(line.11).*.ledger-post- | 
| 386e0 |  61 6d 6f 75 6e 74 2d 61 6c 69 67 6e 6d 65 6e 74    2d 63 6f 6c 75 6d 6e 3a 20 20 20 41 64 64 69 6e  | amount-alignment-column:...Addin | 
| 38700 |  67 20 54 72 61 6e 73 61 63 74 69 6f 6e 73 2e 20    20 28 6c 69 6e 65 20 20 36 29 0a 2a 20 6c 65 64  | g.Transactions...(line..6).*.led | 
| 38720 |  67 65 72 2d 70 6f 73 74 2d 61 6d 6f 75 6e 74 2d    61 6c 69 67 6e 6d 65 6e 74 2d 63 6f 6c 75 6d 6e  | ger-post-amount-alignment-column | 
| 38740 |  20 3c 31 3e 3a 20 4c 65 64 67 65 72 20 50 6f 73    74 20 43 75 73 74 6f 6d 69 7a 61 74 69 6f 6e 20  | .<1>:.Ledger.Post.Customization. | 
| 38760 |  47 72 6f 75 70 2e 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | Group........................... | 
| 38780 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 387a0 |  20 20 20 20 20 20 28 6c 69 6e 65 20 31 38 29 0a    2a 20 6c 65 64 67 65 72 2d 70 6f 73 74 2d 61 75  | ......(line.18).*.ledger-post-au | 
| 387c0 |  74 6f 2d 61 6c 69 67 6e 3a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 4c 65 64 67 65 72 20  | to-align:................Ledger. | 
| 387e0 |  50 6f 73 74 20 43 75 73 74 6f 6d 69 7a 61 74 69    6f 6e 20 47 72 6f 75 70 2e 0a 20 20 20 20 20 20  | Post.Customization.Group........ | 
| 38800 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 38820 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 28 6c 69 6e 65 20 32  | .........................(line.2 | 
| 38840 |  31 29 0a 2a 20 6c 65 64 67 65 72 2d 72 65 63 6f    6e 63 69 6c 65 2d 62 75 66 66 65 72 2d 61 63 63  | 1).*.ledger-reconcile-buffer-acc | 
| 38860 |  6f 75 6e 74 2d 6d 61 78 2d 63 68 61 72 73 3a 20    4c 65 64 67 65 72 20 52 65 63 6f 6e 63 69 6c 65  | ount-max-chars:.Ledger.Reconcile | 
| 38880 |  20 43 75 73 74 6f 6d 69 7a 61 74 69 6f 6e 20 47    72 6f 75 70 2e 0a 20 20 20 20 20 20 20 20 20 20  | .Customization.Group............ | 
| 388a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 388c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 6c 69 6e 65 20 35 34 29 0a 2a  | .....................(line.54).* | 
| 388e0 |  20 6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69 6c    65 2d 62 75 66 66 65 72 2d 68 65 61 64 65 72 3a  | .ledger-reconcile-buffer-header: | 
| 38900 |  20 20 20 20 20 20 20 20 4c 65 64 67 65 72 20 52    65 63 6f 6e 63 69 6c 65 20 43 75 73 74 6f 6d 69  | ........Ledger.Reconcile.Customi | 
| 38920 |  7a 61 74 69 6f 6e 20 47 72 6f 75 70 2e 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | zation.Group.................... | 
| 38940 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 38960 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69    6e 65 20 33 34 29 0a 2a 20 6c 65 64 67 65 72 2d  | .............(line.34).*.ledger- | 
| 38980 |  72 65 63 6f 6e 63 69 6c 65 2d 62 75 66 66 65 72    2d 6c 69 6e 65 2d 66 6f 72 6d 61 74 3a 20 20 20  | reconcile-buffer-line-format:... | 
| 389a0 |  4c 65 64 67 65 72 20 52 65 63 6f 6e 63 69 6c 65    20 43 75 73 74 6f 6d 69 7a 61 74 69 6f 6e 20 47  | Ledger.Reconcile.Customization.G | 
| 389c0 |  72 6f 75 70 2e 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | roup............................ | 
| 389e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 38a00 |  20 20 20 20 20 28 6c 69 6e 65 20 34 30 29 0a 2a    20 6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69 6c  | .....(line.40).*.ledger-reconcil | 
| 38a20 |  65 2d 62 75 66 66 65 72 2d 6e 61 6d 65 3a 20 20    20 20 20 20 20 20 20 20 4c 65 64 67 65 72 20 52  | e-buffer-name:..........Ledger.R | 
| 38a40 |  65 63 6f 6e 63 69 6c 65 20 43 75 73 74 6f 6d 69    7a 61 74 69 6f 6e 20 47 72 6f 75 70 2e 0a 20 20  | econcile.Customization.Group.... | 
| 38a60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 38a80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69  | .............................(li | 
| 38aa0 |  6e 65 20 20 36 29 0a 2a 20 6c 65 64 67 65 72 2d    72 65 63 6f 6e 63 69 6c 65 2d 62 75 66 66 65 72  | ne..6).*.ledger-reconcile-buffer | 
| 38ac0 |  2d 70 61 79 65 65 2d 6d 61 78 2d 63 68 61 72 73    3a 20 4c 65 64 67 65 72 20 52 65 63 6f 6e 63 69  | -payee-max-chars:.Ledger.Reconci | 
| 38ae0 |  6c 65 20 43 75 73 74 6f 6d 69 7a 61 74 69 6f 6e    20 47 72 6f 75 70 2e 0a 20 20 20 20 20 20 20 20  | le.Customization.Group.......... | 
| 38b00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 38b20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 28 6c 69 6e 65 20 35 30 29  | .......................(line.50) | 
| 38b40 |  0a 2a 20 6c 65 64 67 65 72 2d 72 65 63 6f 6e 63    69 6c 65 2d 64 65 66 61 75 6c 74 2d 63 6f 6d 6d  | .*.ledger-reconcile-default-comm | 
| 38b60 |  6f 64 69 74 79 3a 20 20 20 20 53 74 61 72 74 69    6e 67 20 61 20 52 65 63 6f 6e 63 69 6c 69 61 74  | odity:....Starting.a.Reconciliat | 
| 38b80 |  69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ion............................. | 
| 38ba0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 38bc0 |  20 20 20 20 28 6c 69 6e 65 20 20 36 29 0a 2a 20    6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65  | ....(line..6).*.ledger-reconcile | 
| 38be0 |  2d 64 65 66 61 75 6c 74 2d 64 61 74 65 2d 66 6f    72 6d 61 74 3a 20 20 4c 65 64 67 65 72 20 52 65  | -default-date-format:..Ledger.Re | 
| 38c00 |  63 6f 6e 63 69 6c 65 20 43 75 73 74 6f 6d 69 7a    61 74 69 6f 6e 20 47 72 6f 75 70 2e 0a 20 20 20  | concile.Customization.Group..... | 
| 38c20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 38c40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 6e  | ............................(lin | 
| 38c60 |  65 20 32 36 29 0a 2a 20 6c 65 64 67 65 72 2d 72    65 63 6f 6e 63 69 6c 65 2d 66 69 6e 69 73 68 2d  | e.26).*.ledger-reconcile-finish- | 
| 38c80 |  66 6f 72 63 65 2d 71 75 69 74 20 6e 69 6c 3a 20    4c 65 64 67 65 72 20 52 65 63 6f 6e 63 69 6c 65  | force-quit.nil:.Ledger.Reconcile | 
| 38ca0 |  20 43 75 73 74 6f 6d 69 7a 61 74 69 6f 6e 20 47    72 6f 75 70 2e 0a 20 20 20 20 20 20 20 20 20 20  | .Customization.Group............ | 
| 38cc0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 38ce0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 6c 69 6e 65 20 36 37 29 0a 2a  | .....................(line.67).* | 
| 38d00 |  20 6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69 6c    65 2d 66 6f 72 63 65 2d 77 69 6e 64 6f 77 2d 62  | .ledger-reconcile-force-window-b | 
| 38d20 |  6f 74 74 6f 6d 3a 20 20 4c 65 64 67 65 72 20 52    65 63 6f 6e 63 69 6c 65 20 43 75 73 74 6f 6d 69  | ottom:..Ledger.Reconcile.Customi | 
| 38d40 |  7a 61 74 69 6f 6e 20 47 72 6f 75 70 2e 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | zation.Group.................... | 
| 38d60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 38d80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69    6e 65 20 31 38 29 0a 2a 20 6c 65 64 67 65 72 2d  | .............(line.18).*.ledger- | 
| 38da0 |  72 65 63 6f 6e 63 69 6c 65 2d 69 6e 73 65 72 74    2d 65 66 66 65 63 74 69 76 65 2d 64 61 74 65 20  | reconcile-insert-effective-date. | 
| 38dc0 |  6e 69 6c 3a 20 4c 65 64 67 65 72 20 52 65 63 6f    6e 63 69 6c 65 20 43 75 73 74 6f 6d 69 7a 61 74  | nil:.Ledger.Reconcile.Customizat | 
| 38de0 |  69 6f 6e 20 47 72 6f 75 70 2e 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ion.Group....................... | 
| 38e00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 38e20 |  20 20 20 20 20 20 20 20 20 20 28 6c 69 6e 65 20    36 33 29 0a 2a 20 6c 65 64 67 65 72 2d 72 65 63  | ..........(line.63).*.ledger-rec | 
| 38e40 |  6f 6e 63 69 6c 65 2d 73 6f 72 74 2d 6b 65 79 3a    20 20 20 20 20 20 20 20 20 20 20 20 20 4c 65 64  | oncile-sort-key:.............Led | 
| 38e60 |  67 65 72 20 52 65 63 6f 6e 63 69 6c 65 20 43 75    73 74 6f 6d 69 7a 61 74 69 6f 6e 20 47 72 6f 75  | ger.Reconcile.Customization.Grou | 
| 38e80 |  70 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | p............................... | 
| 38ea0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 38ec0 |  20 20 28 6c 69 6e 65 20 35 38 29 0a 2a 20 6c 65    64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d 74  | ..(line.58).*.ledger-reconcile-t | 
| 38ee0 |  61 72 67 65 74 2d 70 72 6f 6d 70 74 2d 73 74 72    69 6e 67 3a 20 4c 65 64 67 65 72 20 52 65 63 6f  | arget-prompt-string:.Ledger.Reco | 
| 38f00 |  6e 63 69 6c 65 20 43 75 73 74 6f 6d 69 7a 61 74    69 6f 6e 20 47 72 6f 75 70 2e 0a 20 20 20 20 20  | ncile.Customization.Group....... | 
| 38f20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 38f40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 6c 69 6e 65 20  | ..........................(line. | 
| 38f60 |  33 30 29 0a 2a 20 6c 65 64 67 65 72 2d 72 65 63    6f 6e 63 69 6c 65 2d 74 6f 67 67 6c 65 2d 74 6f  | 30).*.ledger-reconcile-toggle-to | 
| 38f80 |  2d 70 65 6e 64 69 6e 67 3a 20 20 20 20 4c 65 64    67 65 72 20 52 65 63 6f 6e 63 69 6c 65 20 43 75  | -pending:....Ledger.Reconcile.Cu | 
| 38fa0 |  73 74 6f 6d 69 7a 61 74 69 6f 6e 20 47 72 6f 75    70 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | stomization.Group............... | 
| 38fc0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 38fe0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 6c 69 6e 65 20 32 32 29 0a 2a 20 6c 65  | ..................(line.22).*.le | 
| 39000 |  64 67 65 72 2d 72 65 70 6f 72 74 2d 61 75 74 6f    2d 77 69 64 74 68 3a 20 20 20 20 20 20 20 20 20  | dger-report-auto-width:......... | 
| 39020 |  20 20 20 20 20 4c 65 64 67 65 72 20 52 65 70 6f    72 74 20 43 75 73 74 6f 6d 69 7a 61 74 69 6f 6e  | .....Ledger.Report.Customization | 
| 39040 |  20 47 72 6f 75 70 2e 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .Group.......................... | 
| 39060 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 39080 |  20 20 20 20 20 20 20 28 6c 69 6e 65 20 31 37 29    0a 2a 20 6c 65 64 67 65 72 2d 72 65 70 6f 72 74  | .......(line.17).*.ledger-report | 
| 390a0 |  2d 66 6f 72 6d 61 74 2d 73 70 65 63 69 66 69 65    72 73 3a 20 20 20 20 20 20 20 4c 65 64 67 65 72  | -format-specifiers:.......Ledger | 
| 390c0 |  20 52 65 70 6f 72 74 20 43 75 73 74 6f 6d 69 7a    61 74 69 6f 6e 20 47 72 6f 75 70 2e 0a 20 20 20  | .Report.Customization.Group..... | 
| 390e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 39100 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 6e  | ............................(lin | 
| 39120 |  65 20 20 39 29 0a 2a 20 6c 65 64 67 65 72 2d 72    65 70 6f 72 74 2d 75 73 65 2d 6e 61 74 69 76 65  | e..9).*.ledger-report-use-native | 
| 39140 |  2d 68 69 67 68 6c 69 67 68 74 69 6e 67 3a 20 4c    65 64 67 65 72 20 52 65 70 6f 72 74 20 43 75 73  | -highlighting:.Ledger.Report.Cus | 
| 39160 |  74 6f 6d 69 7a 61 74 69 6f 6e 20 47 72 6f 75 70    2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | tomization.Group................ | 
| 39180 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 391a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 6c 69 6e 65 20 31 33 29 0a 2a 20 6c 65 64  | .................(line.13).*.led | 
| 391c0 |  67 65 72 2d 72 65 70 6f 72 74 73 3a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ger-reports:.................... | 
| 391e0 |  20 20 20 20 41 64 64 69 6e 67 20 61 6e 64 20 45    64 69 74 69 6e 67 20 52 65 70 6f 72 74 73 2e 0a  | ....Adding.and.Editing.Reports.. | 
| 39200 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 39220 |  20 20 20 20 20 20 20 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  | ...............................( | 
| 39240 |  6c 69 6e 65 20 20 36 29 0a 2a 20 6c 65 64 67 65    72 2d 72 65 70 6f 72 74 73 20 3c 31 3e 3a 20 20  | line..6).*.ledger-reports.<1>:.. | 
| 39260 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 4c 65 64 67 65 72 20 52 65 70 6f 72 74 20  | ..................Ledger.Report. | 
| 39280 |  43 75 73 74 6f 6d 69 7a 61 74 69 6f 6e 20 47 72    6f 75 70 2e 0a 20 20 20 20 20 20 20 20 20 20 20  | Customization.Group............. | 
| 392a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 392c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 28 6c 69 6e 65 20 20 36 29 0a 2a 20  | ....................(line..6).*. | 
| 392e0 |  6c 65 64 67 65 72 2d 73 6f 75 72 63 65 2d 64 69    72 65 63 74 6f 72 79 3a 20 20 20 20 20 20 20 20  | ledger-source-directory:........ | 
| 39300 |  20 20 20 20 20 20 20 4c 65 64 67 65 72 20 54 65    73 74 20 43 75 73 74 6f 6d 69 7a 61 74 69 6f 6e  | .......Ledger.Test.Customization | 
| 39320 |  20 47 72 6f 75 70 2e 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .Group.......................... | 
| 39340 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 39360 |  20 20 20 20 20 20 20 28 6c 69 6e 65 20 20 36 29    0a 2a 20 6c 65 64 67 65 72 2d 74 65 73 74 2d 62  | .......(line..6).*.ledger-test-b | 
| 39380 |  69 6e 61 72 79 3a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 4c 65 64 67 65 72  | inary:....................Ledger | 
| 393a0 |  20 54 65 73 74 20 43 75 73 74 6f 6d 69 7a 61 74    69 6f 6e 20 47 72 6f 75 70 2e 0a 20 20 20 20 20  | .Test.Customization.Group....... | 
| 393c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 393e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 6c 69 6e 65 20  | ..........................(line. | 
| 39400 |  20 39 29 0a 2a 20 6c 65 64 67 65 72 2d 74 65 78    69 2d 6e 6f 72 6d 61 6c 69 7a 61 74 69 6f 6e 2d  | .9).*.ledger-texi-normalization- | 
| 39420 |  61 72 67 73 3a 20 20 20 20 20 20 20 20 4c 65 64    67 65 72 20 54 65 78 69 20 43 75 73 74 6f 6d 69  | args:........Ledger.Texi.Customi | 
| 39440 |  7a 61 74 69 6f 6e 20 47 72 6f 75 70 2e 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | zation.Group.................... | 
| 39460 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 39480 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69    6e 65 20 31 30 29 0a 2a 20 6c 65 64 67 65 72 2d  | .............(line.10).*.ledger- | 
| 394a0 |  74 65 78 69 2d 73 61 6d 70 6c 65 2d 64 6f 63 2d    70 61 74 68 3a 20 20 20 20 20 20 20 20 20 20 20  | texi-sample-doc-path:........... | 
| 394c0 |  4c 65 64 67 65 72 20 54 65 78 69 20 43 75 73 74    6f 6d 69 7a 61 74 69 6f 6e 20 47 72 6f 75 70 2e  | Ledger.Texi.Customization.Group. | 
| 394e0 |  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  | ................................ | 
| 39500 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 39520 |  28 6c 69 6e 65 20 20 36 29 0a 0a 1f 0a 46 69 6c    65 3a 20 6c 65 64 67 65 72 2d 6d 6f 64 65 2e 69  | (line..6)....File:.ledger-mode.i | 
| 39540 |  6e 66 6f 2c 20 20 4e 6f 64 65 3a 20 4b 65 79 73    74 72 6f 6b 65 20 49 6e 64 65 78 2c 20 20 50 72  | nfo,..Node:.Keystroke.Index,..Pr | 
| 39560 |  65 76 3a 20 43 6f 6d 6d 61 6e 64 20 26 20 56 61    72 69 61 62 6c 65 20 49 6e 64 65 78 2c 20 20 55  | ev:.Command.&.Variable.Index,..U | 
| 39580 |  70 3a 20 54 6f 70 0a 0a 4b 65 79 73 74 72 6f 6b    65 20 49 6e 64 65 78 0a 2a 2a 2a 2a 2a 2a 2a 2a  | p:.Top..Keystroke.Index.******** | 
| 395a0 |  2a 2a 2a 2a 2a 2a 2a 0a 0a 00 08 5b 69 6e 64 65    78 00 08 5d 0a 2a 20 4d 65 6e 75 3a 0a 0a 2a 20  | *******....[index..].*.Menu:..*. | 
| 395c0 |  61 3a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | a:.............................. | 
| 395e0 |  20 20 20 20 20 20 20 41 64 64 69 6e 67 20 61 6e    64 20 44 65 6c 65 74 69 6e 67 20 54 72 61 6e 73  | .......Adding.and.Deleting.Trans | 
| 39600 |  61 63 74 69 6f 6e 73 20 64 75 72 69 6e 67 20 52    65 63 6f 6e 63 69 6c 69 61 74 69 6f 6e 2e 0a 20  | actions.during.Reconciliation... | 
| 39620 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 39640 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c  | ..............................(l | 
| 39660 |  69 6e 65 20 20 36 29 0a 2a 20 43 2d 63 20 43 2d    61 3a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ine..6).*.C-c.C-a:.............. | 
| 39680 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 51 75 69 63 6b 20 41 64 64 2e 20 20 20 20 20  | .................Quick.Add...... | 
| 396a0 |  20 20 20 20 20 20 20 28 6c 69 6e 65 20 20 36 29    0a 2a 20 43 2d 63 20 43 2d 62 3a 20 20 20 20 20  | .......(line..6).*.C-c.C-b:..... | 
| 396c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 45 64 69 74 69 6e  | ..........................Editin | 
| 396e0 |  67 20 41 6d 6f 75 6e 74 73 2e 20 20 20 20 20 20    28 6c 69 6e 65 20 20 36 29 0a 2a 20 43 2d 63 20  | g.Amounts.......(line..6).*.C-c. | 
| 39700 |  43 2d 63 3a 20 20 20 20 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-c:............................ | 
| 39720 |  20 20 20 52 65 63 6f 6e 63 69 6c 69 61 74 69 6f    6e 2e 20 20 20 20 20 20 20 28 6c 69 6e 65 20 20  | ...Reconciliation........(line.. | 
| 39740 |  36 29 0a 2a 20 43 2d 63 20 43 2d 63 20 3c 31 3e    3a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | 6).*.C-c.C-c.<1>:............... | 
| 39760 |  20 20 20 20 20 20 20 20 20 20 20 20 52 65 70 6f    72 74 73 2e 20 20 20 20 20 20 20 20 20 20 20 20  | ............Reports............. | 
| 39780 |  20 20 28 6c 69 6e 65 20 20 36 29 0a 2a 20 43 2d    63 20 43 2d 63 20 3c 32 3e 3a 20 20 20 20 20 20  | ..(line..6).*.C-c.C-c.<2>:...... | 
| 397a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 4d 61 72 6b 69 6e 67 20 54 72 61  | .....................Marking.Tra | 
| 397c0 |  6e 73 61 63 74 69 6f 6e 73 2e 20 28 6c 69 6e 65    20 32 38 29 0a 2a 20 43 2d 63 20 43 2d 63 20 3c  | nsactions..(line.28).*.C-c.C-c.< | 
| 397e0 |  33 3e 3a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 64  | 3>:...........................Ed | 
| 39800 |  69 74 20 54 72 61 6e 73 61 63 74 69 6f 6e 73 20    44 75 72 69 6e 67 20 52 65 63 6f 6e 63 69 6c 69  | it.Transactions.During.Reconcili | 
| 39820 |  61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ation........................... | 
| 39840 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 39860 |  20 20 20 20 20 20 28 6c 69 6e 65 20 20 36 29 0a    2a 20 43 2d 63 20 43 2d 63 20 3c 34 3e 3a 20 20  | ......(line..6).*.C-c.C-c.<4>:.. | 
| 39880 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 46 69 6e 61 6c 69 7a  | .........................Finaliz | 
| 398a0 |  65 20 52 65 63 6f 6e 63 69 6c 69 61 74 69 6f 6e    2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | e.Reconciliation................ | 
| 398c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 398e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 6c 69 6e 65 20 20 36 29 0a 2a 20 43 2d 63  | .................(line..6).*.C-c | 
| 39900 |  20 43 2d 64 3a 20 20 20 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-d:........................... | 
| 39920 |  20 20 20 20 44 65 6c 65 74 69 6e 67 20 54 72 61    6e 73 61 63 74 69 6f 6e 73 2e 0a 20 20 20 20 20  | ....Deleting.Transactions....... | 
| 39940 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 39960 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 6c 69 6e 65 20  | ..........................(line. | 
| 39980 |  20 36 29 0a 2a 20 43 2d 63 20 43 2d 65 3a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .6).*.C-c.C-e:.................. | 
| 399a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 4d 61 72    6b 69 6e 67 20 54 72 61 6e 73 61 63 74 69 6f 6e  | .............Marking.Transaction | 
| 399c0 |  73 2e 20 28 6c 69 6e 65 20 32 38 29 0a 2a 20 43    2d 63 20 43 2d 66 3a 20 20 20 20 20 20 20 20 20  | s..(line.28).*.C-c.C-f:......... | 
| 399e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 4e 61 72 72 6f 77 69 6e 67 2e  | ......................Narrowing. | 
| 39a00 |  20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 6e    65 20 20 36 29 0a 2a 20 43 2d 63 20 43 2d 66 20  | ............(line..6).*.C-c.C-f. | 
| 39a20 |  3c 31 3e 3a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 4e  | <1>:...........................N | 
| 39a40 |  61 72 72 6f 77 69 6e 67 20 54 72 61 6e 73 61 63    74 69 6f 6e 73 2e 0a 20 20 20 20 20 20 20 20 20  | arrowing.Transactions........... | 
| 39a60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 39a80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 6c 69 6e 65 20 20 36 29 0a  | ......................(line..6). | 
| 39aa0 |  2a 20 43 2d 63 20 43 2d 67 3a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | *.C-c.C-g:...................... | 
| 39ac0 |  20 20 20 20 20 20 20 20 20 4e 61 72 72 6f 77 69    6e 67 2e 20 20 20 20 20 20 20 20 20 20 20 20 28  | .........Narrowing.............( | 
| 39ae0 |  6c 69 6e 65 20 20 36 29 0a 2a 20 43 2d 63 20 43    2d 67 20 3c 31 3e 3a 20 20 20 20 20 20 20 20 20  | line..6).*.C-c.C-g.<1>:......... | 
| 39b00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 4e 61 72 72 6f 77 69 6e 67 20 54 72 61 6e  | ..................Narrowing.Tran | 
| 39b20 |  73 61 63 74 69 6f 6e 73 2e 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | sactions........................ | 
| 39b40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 39b60 |  20 20 20 20 20 20 20 20 20 28 6c 69 6e 65 20 20    36 29 0a 2a 20 43 2d 63 20 43 2d 6b 3a 20 20 20  | .........(line..6).*.C-c.C-k:... | 
| 39b80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 43 6f 70 79  | ............................Copy | 
| 39ba0 |  69 6e 67 20 54 72 61 6e 73 61 63 74 69 6f 6e 73    2e 20 28 6c 69 6e 65 20 20 36 29 0a 2a 20 43 2d  | ing.Transactions..(line..6).*.C- | 
| 39bc0 |  63 20 43 2d 6f 20 43 2d 61 3a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | c.C-o.C-a:...................... | 
| 39be0 |  20 20 20 20 20 52 75 6e 6e 69 6e 67 20 42 61 73    69 63 20 52 65 70 6f 72 74 73 2e 0a 20 20 20 20  | .....Running.Basic.Reports...... | 
| 39c00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 39c20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 6c 69 6e 65  | ...........................(line | 
| 39c40 |  20 20 36 29 0a 2a 20 43 2d 63 20 43 2d 6f 20 43    2d 65 3a 20 20 20 20 20 20 20 20 20 20 20 20 20  | ..6).*.C-c.C-o.C-e:............. | 
| 39c60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 64    64 69 6e 67 20 61 6e 64 20 45 64 69 74 69 6e 67  | ..............Adding.and.Editing | 
| 39c80 |  20 52 65 70 6f 72 74 73 2e 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .Reports........................ | 
| 39ca0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 39cc0 |  20 20 20 20 20 20 20 20 20 28 6c 69 6e 65 20 20    36 29 0a 2a 20 43 2d 63 20 43 2d 6f 20 43 2d 67  | .........(line..6).*.C-c.C-o.C-g | 
| 39ce0 |  3a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 52 75 6e 6e  | :...........................Runn | 
| 39d00 |  69 6e 67 20 42 61 73 69 63 20 52 65 70 6f 72 74    73 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | ing.Basic.Reports............... | 
| 39d20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 39d40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 6c 69 6e 65 20 20 36 29 0a 2a 20 43 2d  | ..................(line..6).*.C- | 
| 39d60 |  63 20 43 2d 6f 20 43 2d 72 3a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | c.C-o.C-r:...................... | 
| 39d80 |  20 20 20 20 20 52 65 70 6f 72 74 73 2e 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 6c 69 6e 65  | .....Reports...............(line | 
| 39da0 |  20 20 36 29 0a 2a 20 43 2d 63 20 43 2d 6f 20 43    2d 72 20 3c 31 3e 3a 20 20 20 20 20 20 20 20 20  | ..6).*.C-c.C-o.C-r.<1>:......... | 
| 39dc0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 52 75    6e 6e 69 6e 67 20 42 61 73 69 63 20 52 65 70 6f  | ..............Running.Basic.Repo | 
| 39de0 |  72 74 73 2e 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | rts............................. | 
| 39e00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 39e20 |  20 20 20 20 28 6c 69 6e 65 20 20 36 29 0a 2a 20    43 2d 63 20 43 2d 70 3a 20 20 20 20 20 20 20 20  | ....(line..6).*.C-c.C-p:........ | 
| 39e40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 51 75 69 63 6b 20 42 61 6c  | .......................Quick.Bal | 
| 39e60 |  61 6e 63 65 20 44 69 73 70 6c 61 79 2e 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ance.Display.................... | 
| 39e80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 39ea0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69    6e 65 20 20 36 29 0a 2a 20 43 2d 63 20 43 2d 72  | .............(line..6).*.C-c.C-r | 
| 39ec0 |  3a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | :............................... | 
| 39ee0 |  52 65 63 6f 6e 63 69 6c 69 61 74 69 6f 6e 2e 20    20 20 20 20 20 20 28 6c 69 6e 65 20 20 36 29 0a  | Reconciliation........(line..6). | 
| 39f00 |  2a 20 43 2d 63 20 43 2d 72 20 3c 31 3e 3a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | *.C-c.C-r.<1>:.................. | 
| 39f20 |  20 20 20 20 20 20 20 20 20 53 74 61 72 74 69 6e    67 20 61 20 52 65 63 6f 6e 63 69 6c 69 61 74 69  | .........Starting.a.Reconciliati | 
| 39f40 |  6f 6e 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | on.............................. | 
| 39f60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 39f80 |  20 20 20 28 6c 69 6e 65 20 20 36 29 0a 2a 20 43    2d 63 20 43 2d 73 3a 20 20 20 20 20 20 20 20 20  | ...(line..6).*.C-c.C-s:......... | 
| 39fa0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 53 6f 72 74 69 6e 67 20 54 72  | ......................Sorting.Tr | 
| 39fc0 |  61 6e 73 61 63 74 69 6f 6e 73 2e 20 28 6c 69 6e    65 20 20 36 29 0a 2a 20 43 2d 63 20 43 2d 74 3a  | ansactions..(line..6).*.C-c.C-t: | 
| 39fe0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 53  | ...............................S | 
| 3a000 |  65 74 74 69 6e 67 20 61 20 54 72 61 6e 73 61 63    74 69 6f 6e 73 20 45 66 66 65 63 74 69 76 65 20  | etting.a.Transactions.Effective. | 
| 3a020 |  44 61 74 65 2e 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | Date............................ | 
| 3a040 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 3a060 |  20 20 20 20 20 28 6c 69 6e 65 20 20 36 29 0a 2a    20 43 2d 63 20 54 41 42 3a 20 20 20 20 20 20 20  | .....(line..6).*.C-c.TAB:....... | 
| 3a080 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 51 75 69 63 6b 20 41 64  | ........................Quick.Ad | 
| 3a0a0 |  64 2e 20 20 20 20 20 20 20 20 20 20 20 20 28 6c    69 6e 65 20 20 36 29 0a 2a 20 64 3a 20 20 20 20  | d.............(line..6).*.d:.... | 
| 3a0c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 3a0e0 |  20 41 64 64 69 6e 67 20 61 6e 64 20 44 65 6c 65    74 69 6e 67 20 54 72 61 6e 73 61 63 74 69 6f 6e  | .Adding.and.Deleting.Transaction | 
| 3a100 |  73 20 64 75 72 69 6e 67 20 52 65 63 6f 6e 63 69    6c 69 61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20  | s.during.Reconciliation......... | 
| 3a120 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 3a140 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 28 6c 69 6e 65 20 20 36  | ........................(line..6 | 
| 3a160 |  29 0a 2a 20 65 3a 20 20 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:.......................... | 
| 3a180 |  20 20 20 20 20 20 20 20 20 20 20 41 64 64 69 6e    67 20 61 6e 64 20 45 64 69 74 69 6e 67 20 52 65  | ...........Adding.and.Editing.Re | 
| 3a1a0 |  70 6f 72 74 73 2e 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ports........................... | 
| 3a1c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 3a1e0 |  20 20 20 20 20 20 28 6c 69 6e 65 20 20 36 29 0a    2a 20 67 3a 20 20 20 20 20 20 20 20 20 20 20 20  | ......(line..6).*.g:............ | 
| 3a200 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 43 68 61 6e 67 69 6e  | .........................Changin | 
| 3a220 |  67 20 52 65 63 6f 6e 63 69 6c 69 61 74 69 6f 6e    20 41 63 63 6f 75 6e 74 2e 0a 20 20 20 20 20 20  | g.Reconciliation.Account........ | 
| 3a240 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 3a260 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 28 6c 69 6e 65 20 20  | .........................(line.. | 
| 3a280 |  36 29 0a 2a 20 4d 2d 31 20 43 2d 63 20 43 2d 6f    20 43 2d 72 3a 20 20 20 20 20 20 20 20 20 20 20  | 6).*.M-1.C-c.C-o.C-r:........... | 
| 3a2a0 |  20 20 20 20 20 20 20 20 20 20 20 20 41 64 64 69    6e 67 20 61 6e 64 20 45 64 69 74 69 6e 67 20 52  | ............Adding.and.Editing.R | 
| 3a2c0 |  65 70 6f 72 74 73 2e 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | eports.......................... | 
| 3a2e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 3a300 |  20 20 20 20 20 20 20 28 6c 69 6e 65 20 20 36 29    0a 2a 20 4d 2d 6e 3a 20 20 20 20 20 20 20 20 20  | .......(line..6).*.M-n:......... | 
| 3a320 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 4e 61 76 69 67 61  | ..........................Naviga | 
| 3a340 |  74 69 6e 67 20 54 72 61 6e 73 61 63 74 69 6f 6e    73 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | ting.Transactions............... | 
| 3a360 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 3a380 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 6c 69 6e 65 20 20 36 29 0a 2a 20 4d 2d  | ..................(line..6).*.M- | 
| 3a3a0 |  70 3a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | p:.............................. | 
| 3a3c0 |  20 20 20 20 20 4e 61 76 69 67 61 74 69 6e 67 20    54 72 61 6e 73 61 63 74 69 6f 6e 73 2e 0a 20 20  | .....Navigating.Transactions.... | 
| 3a3e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 3a400 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69  | .............................(li | 
| 3a420 |  6e 65 20 20 36 29 0a 2a 20 71 3a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ne..6).*.q:..................... | 
| 3a440 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    52 65 63 6f 6e 63 69 6c 69 61 74 69 6f 6e 2e 20  | ................Reconciliation.. | 
| 3a460 |  20 20 20 20 20 20 28 6c 69 6e 65 20 20 36 29 0a    2a 20 71 20 3c 31 3e 3a 20 20 20 20 20 20 20 20  | ......(line..6).*.q.<1>:........ | 
| 3a480 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 46 69 6e 61 6c 69 7a  | .........................Finaliz | 
| 3a4a0 |  65 20 52 65 63 6f 6e 63 69 6c 69 61 74 69 6f 6e    2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | e.Reconciliation................ | 
| 3a4c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 3a4e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 6c 69 6e 65 20 20 36 29 0a 2a 20 52 3a 20  | .................(line..6).*.R:. | 
| 3a500 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 3a520 |  20 20 20 20 52 65 76 65 72 73 69 6e 67 20 52 65    70 6f 72 74 20 4f 72 64 65 72 2e 0a 20 20 20 20  | ....Reversing.Report.Order...... | 
| 3a540 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 3a560 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 6c 69 6e 65  | ...........................(line | 
| 3a580 |  20 20 36 29 0a 2a 20 52 45 54 3a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ..6).*.RET:..................... | 
| 3a5a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 64    69 74 20 54 72 61 6e 73 61 63 74 69 6f 6e 73 20  | ..............Edit.Transactions. | 
| 3a5c0 |  44 75 72 69 6e 67 20 52 65 63 6f 6e 63 69 6c 69    61 74 69 6f 6e 2e 0a 20 20 20 20 20 20 20 20 20  | During.Reconciliation........... | 
| 3a5e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 3a600 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 6c 69 6e 65 20 20 36 29 0a  | ......................(line..6). | 
| 3a620 |  2a 20 53 3a 20 20 20 20 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:............................ | 
| 3a640 |  20 20 20 20 20 20 20 20 20 41 64 64 69 6e 67 20    61 6e 64 20 45 64 69 74 69 6e 67 20 52 65 70 6f  | .........Adding.and.Editing.Repo | 
| 3a660 |  72 74 73 2e 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | rts............................. | 
| 3a680 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 3a6a0 |  20 20 20 20 28 6c 69 6e 65 20 20 36 29 0a 2a 20    53 50 43 3a 20 20 20 20 20 20 20 20 20 20 20 20  | ....(line..6).*.SPC:............ | 
| 3a6c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 52 65 63 6f 6e 63 69 6c 69  | .......................Reconcili | 
| 3a6e0 |  61 74 69 6f 6e 2e 20 20 20 20 20 20 20 28 6c 69    6e 65 20 20 36 29 0a 2a 20 53 50 43 20 3c 31 3e  | ation........(line..6).*.SPC.<1> | 
| 3a700 |  3a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | :............................... | 
| 3a720 |  4d 61 72 6b 20 54 72 61 6e 73 61 63 74 69 6f 6e    73 20 50 65 6e 64 69 6e 67 2e 0a 20 20 20 20 20  | Mark.Transactions.Pending....... | 
| 3a740 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 3a760 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 6c 69 6e 65 20  | ..........................(line. | 
| 3a780 |  20 36 29 0a 2a 20 74 3a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .6).*.t:........................ | 
| 3a7a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 43 68 61    6e 67 69 6e 67 20 52 65 63 6f 6e 63 69 6c 69 61  | .............Changing.Reconcilia | 
| 3a7c0 |  74 69 6f 6e 20 54 61 72 67 65 74 2e 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | tion.Target..................... | 
| 3a7e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 3a800 |  20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 6e    65 20 20 36 29 0a 2a 20 54 41 42 3a 20 20 20 20  | ............(line..6).*.TAB:.... | 
| 3a820 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41  | ...............................A | 
| 3a840 |  64 64 69 6e 67 20 54 72 61 6e 73 61 63 74 69 6f    6e 73 2e 20 20 28 6c 69 6e 65 20 20 36 29 0a 2a  | dding.Transactions...(line..6).* | 
| 3a860 |  20 79 3a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .y:............................. | 
| 3a880 |  20 20 20 20 20 20 20 20 45 64 69 74 69 6e 67 20    41 6d 6f 75 6e 74 73 2e 20 20 20 20 20 20 28 6c  | ........Editing.Amounts.......(l | 
| 3a8a0 |  69 6e 65 20 20 36 29 0a 0a 0a 1f 0a 54 61 67 20    54 61 62 6c 65 3a 0a 4e 6f 64 65 3a 20 54 6f 70  | ine..6).....Tag.Table:.Node:.Top | 
| 3a8c0 |  7f 31 37 34 32 0a 4e 6f 64 65 3a 20 49 6e 74 72    6f 64 75 63 74 69 6f 6e 20 74 6f 20 4c 65 64 67  | .1742.Node:.Introduction.to.Ledg | 
| 3a8e0 |  65 72 2d 6d 6f 64 65 7f 32 35 35 35 0a 4e 6f 64    65 3a 20 51 75 69 63 6b 20 49 6e 73 74 61 6c 6c  | er-mode.2555.Node:.Quick.Install | 
| 3a900 |  61 74 69 6f 6e 7f 32 37 38 34 0a 4e 6f 64 65 3a    20 4d 65 6e 75 73 7f 33 37 31 36 0a 4e 6f 64 65  | ation.2784.Node:.Menus.3716.Node | 
| 3a920 |  3a 20 51 75 69 63 6b 20 44 65 6d 6f 7f 34 30 33    31 0a 4e 6f 64 65 3a 20 51 75 69 63 6b 20 41 64  | :.Quick.Demo.4031.Node:.Quick.Ad | 
| 3a940 |  64 7f 34 34 36 31 0a 4e 6f 64 65 3a 20 52 65 63    6f 6e 63 69 6c 69 61 74 69 6f 6e 7f 35 35 35 39  | d.4461.Node:.Reconciliation.5559 | 
| 3a960 |  0a 4e 6f 64 65 3a 20 52 65 70 6f 72 74 73 7f 37    32 34 33 0a 4e 6f 64 65 3a 20 4e 61 72 72 6f 77  | .Node:.Reports.7243.Node:.Narrow | 
| 3a980 |  69 6e 67 7f 38 32 37 33 0a 4e 6f 64 65 3a 20 54    68 65 20 4c 65 64 67 65 72 20 42 75 66 66 65 72  | ing.8273.Node:.The.Ledger.Buffer | 
| 3a9a0 |  7f 38 38 35 37 0a 4e 6f 64 65 3a 20 4e 61 76 69    67 61 74 69 6e 67 20 54 72 61 6e 73 61 63 74 69  | .8857.Node:.Navigating.Transacti | 
| 3a9c0 |  6f 6e 73 7f 39 32 36 33 0a 4e 6f 64 65 3a 20 41    64 64 69 6e 67 20 54 72 61 6e 73 61 63 74 69 6f  | ons.9263.Node:.Adding.Transactio | 
| 3a9e0 |  6e 73 7f 39 38 32 33 0a 4e 6f 64 65 3a 20 53 65    74 74 69 6e 67 20 61 20 54 72 61 6e 73 61 63 74  | ns.9823.Node:.Setting.a.Transact | 
| 3aa00 |  69 6f 6e 73 20 45 66 66 65 63 74 69 76 65 20 44    61 74 65 7f 31 31 33 32 32 0a 4e 6f 64 65 3a 20  | ions.Effective.Date.11322.Node:. | 
| 3aa20 |  51 75 69 63 6b 20 42 61 6c 61 6e 63 65 20 44 69    73 70 6c 61 79 7f 31 32 32 32 32 0a 4e 6f 64 65  | Quick.Balance.Display.12222.Node | 
| 3aa40 |  3a 20 43 6f 70 79 69 6e 67 20 54 72 61 6e 73 61    63 74 69 6f 6e 73 7f 31 32 37 35 34 0a 4e 6f 64  | :.Copying.Transactions.12754.Nod | 
| 3aa60 |  65 3a 20 45 64 69 74 69 6e 67 20 41 6d 6f 75 6e    74 73 7f 31 33 33 35 36 0a 4e 6f 64 65 3a 20 4d  | e:.Editing.Amounts.13356.Node:.M | 
| 3aa80 |  61 72 6b 69 6e 67 20 54 72 61 6e 73 61 63 74 69    6f 6e 73 7f 31 34 34 32 37 0a 4e 6f 64 65 3a 20  | arking.Transactions.14427.Node:. | 
| 3aaa0 |  46 6f 72 6d 61 74 74 69 6e 67 20 54 72 61 6e 73    61 63 74 69 6f 6e 73 7f 31 36 31 32 32 0a 4e 6f  | Formatting.Transactions.16122.No | 
| 3aac0 |  64 65 3a 20 44 65 6c 65 74 69 6e 67 20 54 72 61    6e 73 61 63 74 69 6f 6e 73 7f 31 36 37 32 30 0a  | de:.Deleting.Transactions.16720. | 
| 3aae0 |  4e 6f 64 65 3a 20 53 6f 72 74 69 6e 67 20 54 72    61 6e 73 61 63 74 69 6f 6e 73 7f 31 37 31 36 30  | Node:.Sorting.Transactions.17160 | 
| 3ab00 |  0a 4e 6f 64 65 3a 20 4e 61 72 72 6f 77 69 6e 67    20 54 72 61 6e 73 61 63 74 69 6f 6e 73 7f 31 38  | .Node:.Narrowing.Transactions.18 | 
| 3ab20 |  37 31 32 0a 4e 6f 64 65 3a 20 54 68 65 20 52 65    63 6f 6e 63 69 6c 65 20 42 75 66 66 65 72 7f 32  | 712.Node:.The.Reconcile.Buffer.2 | 
| 3ab40 |  30 35 36 32 0a 4e 6f 64 65 3a 20 42 61 73 69 63    73 20 6f 66 20 52 65 63 6f 6e 63 69 6c 69 61 74  | 0562.Node:.Basics.of.Reconciliat | 
| 3ab60 |  69 6f 6e 7f 32 31 30 32 37 0a 4e 6f 64 65 3a 20    53 74 61 72 74 69 6e 67 20 61 20 52 65 63 6f 6e  | ion.21027.Node:.Starting.a.Recon | 
| 3ab80 |  63 69 6c 69 61 74 69 6f 6e 7f 32 31 39 37 36 0a    4e 6f 64 65 3a 20 4d 61 72 6b 20 54 72 61 6e 73  | ciliation.21976.Node:.Mark.Trans | 
| 3aba0 |  61 63 74 69 6f 6e 73 20 50 65 6e 64 69 6e 67 7f    32 33 38 32 35 0a 4e 6f 64 65 3a 20 45 64 69 74  | actions.Pending.23825.Node:.Edit | 
| 3abc0 |  20 54 72 61 6e 73 61 63 74 69 6f 6e 73 20 44 75    72 69 6e 67 20 52 65 63 6f 6e 63 69 6c 69 61 74  | .Transactions.During.Reconciliat | 
| 3abe0 |  69 6f 6e 7f 32 34 34 39 34 0a 4e 6f 64 65 3a 20    46 69 6e 61 6c 69 7a 65 20 52 65 63 6f 6e 63 69  | ion.24494.Node:.Finalize.Reconci | 
| 3ac00 |  6c 69 61 74 69 6f 6e 7f 32 35 31 33 37 0a 4e 6f    64 65 3a 20 41 64 64 69 6e 67 20 61 6e 64 20 44  | liation.25137.Node:.Adding.and.D | 
| 3ac20 |  65 6c 65 74 69 6e 67 20 54 72 61 6e 73 61 63 74    69 6f 6e 73 20 64 75 72 69 6e 67 20 52 65 63 6f  | eleting.Transactions.during.Reco | 
| 3ac40 |  6e 63 69 6c 69 61 74 69 6f 6e 7f 32 35 37 39 34    0a 4e 6f 64 65 3a 20 43 68 61 6e 67 69 6e 67 20  | nciliation.25794.Node:.Changing. | 
| 3ac60 |  52 65 63 6f 6e 63 69 6c 69 61 74 69 6f 6e 20 41    63 63 6f 75 6e 74 7f 32 36 33 37 38 0a 4e 6f 64  | Reconciliation.Account.26378.Nod | 
| 3ac80 |  65 3a 20 43 68 61 6e 67 69 6e 67 20 52 65 63 6f    6e 63 69 6c 69 61 74 69 6f 6e 20 54 61 72 67 65  | e:.Changing.Reconciliation.Targe | 
| 3aca0 |  74 7f 32 36 39 32 38 0a 4e 6f 64 65 3a 20 54 68    65 20 52 65 70 6f 72 74 20 42 75 66 66 65 72 7f  | t.26928.Node:.The.Report.Buffer. | 
| 3acc0 |  32 37 32 34 36 0a 4e 6f 64 65 3a 20 52 75 6e 6e    69 6e 67 20 42 61 73 69 63 20 52 65 70 6f 72 74  | 27246.Node:.Running.Basic.Report | 
| 3ace0 |  73 7f 32 37 35 30 34 0a 4e 6f 64 65 3a 20 41 64    64 69 6e 67 20 61 6e 64 20 45 64 69 74 69 6e 67  | s.27504.Node:.Adding.and.Editing | 
| 3ad00 |  20 52 65 70 6f 72 74 73 7f 32 38 39 33 37 0a 4e    6f 64 65 3a 20 45 78 70 61 6e 73 69 6f 6e 20 46  | .Reports.28937.Node:.Expansion.F | 
| 3ad20 |  6f 72 6d 61 74 73 7f 33 30 33 32 34 0a 4e 6f 64    65 3a 20 4d 61 6b 65 20 52 65 70 6f 72 74 20 54  | ormats.30324.Node:.Make.Report.T | 
| 3ad40 |  72 61 6e 73 61 63 74 69 6f 6e 73 20 41 63 74 69    76 65 7f 33 31 39 36 35 0a 4e 6f 64 65 3a 20 52  | ransactions.Active.31965.Node:.R | 
| 3ad60 |  65 76 65 72 73 69 6e 67 20 52 65 70 6f 72 74 20    4f 72 64 65 72 7f 33 32 36 37 32 0a 4e 6f 64 65  | eversing.Report.Order.32672.Node | 
| 3ad80 |  3a 20 53 63 68 65 64 75 6c 69 6e 67 20 54 72 61    6e 73 61 63 74 69 6f 6e 73 7f 33 33 33 36 35 0a  | :.Scheduling.Transactions.33365. | 
| 3ada0 |  4e 6f 64 65 3a 20 53 70 65 63 69 66 79 69 6e 67    20 55 70 63 6f 6d 69 6e 67 20 54 72 61 6e 73 61  | Node:.Specifying.Upcoming.Transa | 
| 3adc0 |  63 74 69 6f 6e 73 7f 33 34 32 32 31 0a 4e 6f 64    65 3a 20 54 72 61 6e 73 61 63 74 69 6f 6e 73 20  | ctions.34221.Node:.Transactions. | 
| 3ade0 |  74 68 61 74 20 6f 63 63 75 72 20 6f 6e 20 73 70    65 63 69 66 69 63 20 64 61 74 65 73 7f 33 34 37  | that.occur.on.specific.dates.347 | 
| 3ae00 |  39 35 0a 4e 6f 64 65 3a 20 54 72 61 6e 73 61 63    74 69 6f 6e 73 20 74 68 61 74 20 6f 63 63 75 72  | 95.Node:.Transactions.that.occur | 
| 3ae20 |  20 6f 6e 20 73 70 65 63 69 66 69 63 20 64 61 79    73 7f 33 35 38 33 36 0a 4e 6f 64 65 3a 20 43 75  | .on.specific.days.35836.Node:.Cu | 
| 3ae40 |  73 74 6f 6d 69 7a 69 6e 67 20 4c 65 64 67 65 72    2d 6d 6f 64 65 7f 33 36 39 36 35 0a 4e 6f 64 65  | stomizing.Ledger-mode.36965.Node | 
| 3ae60 |  3a 20 4c 65 64 67 65 72 2d 6d 6f 64 65 20 43 75    73 74 6f 6d 69 7a 61 74 69 6f 6e 7f 33 37 32 32  | :.Ledger-mode.Customization.3722 | 
| 3ae80 |  39 0a 4e 6f 64 65 3a 20 43 75 73 74 6f 6d 69 7a    61 74 69 6f 6e 20 56 61 72 69 61 62 6c 65 73 7f  | 9.Node:.Customization.Variables. | 
| 3aea0 |  33 37 39 31 34 0a 4e 6f 64 65 3a 20 4c 65 64 67    65 72 20 43 75 73 74 6f 6d 69 7a 61 74 69 6f 6e  | 37914.Node:.Ledger.Customization | 
| 3aec0 |  20 47 72 6f 75 70 7f 33 38 33 39 34 0a 4e 6f 64    65 3a 20 4c 65 64 67 65 72 20 52 65 63 6f 6e 63  | .Group.38394.Node:.Ledger.Reconc | 
| 3aee0 |  69 6c 65 20 43 75 73 74 6f 6d 69 7a 61 74 69 6f    6e 20 47 72 6f 75 70 7f 33 39 30 33 34 0a 4e 6f  | ile.Customization.Group.39034.No | 
| 3af00 |  64 65 3a 20 4c 65 64 67 65 72 20 52 65 70 6f 72    74 20 43 75 73 74 6f 6d 69 7a 61 74 69 6f 6e 20  | de:.Ledger.Report.Customization. | 
| 3af20 |  47 72 6f 75 70 7f 34 31 39 38 35 0a 4e 6f 64 65    3a 20 4c 65 64 67 65 72 20 46 61 63 65 73 20 43  | Group.41985.Node:.Ledger.Faces.C | 
| 3af40 |  75 73 74 6f 6d 69 7a 61 74 69 6f 6e 20 47 72 6f    75 70 7f 34 32 37 30 34 0a 4e 6f 64 65 3a 20 4c  | ustomization.Group.42704.Node:.L | 
| 3af60 |  65 64 67 65 72 20 50 6f 73 74 20 43 75 73 74 6f    6d 69 7a 61 74 69 6f 6e 20 47 72 6f 75 70 7f 34  | edger.Post.Customization.Group.4 | 
| 3af80 |  34 34 35 31 0a 4e 6f 64 65 3a 20 4c 65 64 67 65    72 20 45 78 65 63 20 43 75 73 74 6f 6d 69 7a 61  | 4451.Node:.Ledger.Exec.Customiza | 
| 3afa0 |  74 69 6f 6e 20 47 72 6f 75 70 7f 34 35 32 37 38    0a 4e 6f 64 65 3a 20 4c 65 64 67 65 72 20 54 65  | tion.Group.45278.Node:.Ledger.Te | 
| 3afc0 |  73 74 20 43 75 73 74 6f 6d 69 7a 61 74 69 6f 6e    20 47 72 6f 75 70 7f 34 35 37 37 37 0a 4e 6f 64  | st.Customization.Group.45777.Nod | 
| 3afe0 |  65 3a 20 4c 65 64 67 65 72 20 54 65 78 69 20 43    75 73 74 6f 6d 69 7a 61 74 69 6f 6e 20 47 72 6f  | e:.Ledger.Texi.Customization.Gro | 
| 3b000 |  75 70 7f 34 36 31 37 39 0a 4e 6f 64 65 3a 20 47    65 6e 65 72 61 74 69 6e 67 20 4c 65 64 67 65 72  | up.46179.Node:.Generating.Ledger | 
| 3b020 |  20 52 65 67 72 65 73 73 69 6f 6e 20 54 65 73 74    73 7f 34 36 36 37 31 0a 4e 6f 64 65 3a 20 45 6d  | .Regression.Tests.46671.Node:.Em | 
| 3b040 |  62 65 64 64 69 6e 67 20 45 78 61 6d 70 6c 65 20    72 65 73 75 6c 74 73 20 69 6e 20 4c 65 64 67 65  | bedding.Example.results.in.Ledge | 
| 3b060 |  72 20 44 6f 63 75 6d 65 6e 74 61 74 69 6f 6e 7f    34 36 39 33 34 0a 4e 6f 64 65 3a 20 48 61 63 6b  | r.Documentation.46934.Node:.Hack | 
| 3b080 |  69 6e 67 20 4c 65 64 67 65 72 2d 6d 6f 64 65 7f    34 37 32 32 33 0a 4e 6f 64 65 3a 20 55 73 65 20  | ing.Ledger-mode.47223.Node:.Use. | 
| 3b0a0 |  6f 72 67 2d 6c 69 6b 65 20 6f 75 74 6c 69 6e 65    73 7f 34 37 34 34 38 0a 4e 6f 64 65 3a 20 43 6f  | org-like.outlines.47448.Node:.Co | 
| 3b0c0 |  6e 63 65 70 74 20 49 6e 64 65 78 7f 34 38 31 31    33 0a 4e 6f 64 65 3a 20 43 6f 6d 6d 61 6e 64 20  | ncept.Index.48113.Node:.Command. | 
| 3b0e0 |  26 20 56 61 72 69 61 62 6c 65 20 49 6e 64 65 78    7f 35 33 36 32 39 0a 4e 6f 64 65 3a 20 4b 65 79  | &.Variable.Index.53629.Node:.Key | 
| 3b100 |  73 74 72 6f 6b 65 20 49 6e 64 65 78 7f 36 31 37    33 39 0a 1f 0a 45 6e 64 20 54 61 67 20 54 61 62  | stroke.Index.61739...End.Tag.Tab | 
| 3b120 |  6c 65 0a 0a 1f 0a 4c 6f 63 61 6c 20 56 61 72 69    61 62 6c 65 73 3a 0a 63 6f 64 69 6e 67 3a 20 75  | le....Local.Variables:.coding:.u | 
| 3b140 |  74 66 2d 38 0a 45 6e 64 3a 0a 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | tf-8.End:....................... | 
| 3b160 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 3b180 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 3b1a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 3b1c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 3b1e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 3b200 |  6c 65 64 67 65 72 2d 6d 6f 64 65 2d 32 30 32 34    30 34 31 36 2e 34 31 36 2f 6c 65 64 67 65 72 2d  | ledger-mode-20240416.416/ledger- | 
| 3b220 |  72 65 63 6f 6e 63 69 6c 65 2e 65 6c 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | reconcile.el.................... | 
| 3b240 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 3b260 |  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 | 
| 3b280 |  30 30 37 30 34 36 34 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 36 36 35 32 00 20 30 00 00 00  | 0070464.00000000000.016652..0... | 
| 3b2a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 3b2c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 3b2e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 3b300 |  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................... | 
| 3b320 |  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................... | 
| 3b340 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 3b360 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 3b380 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 3b3a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 3b3c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 3b3e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 3b400 |  3b 3b 3b 20 6c 65 64 67 65 72 2d 72 65 63 6f 6e    63 69 6c 65 2e 65 6c 20 2d 2d 2d 20 48 65 6c 70  | ;;;.ledger-reconcile.el.---.Help | 
| 3b420 |  65 72 20 63 6f 64 65 20 66 6f 72 20 75 73 65 20    77 69 74 68 20 74 68 65 20 22 6c 65 64 67 65 72  | er.code.for.use.with.the."ledger | 
| 3b440 |  22 20 63 6f 6d 6d 61 6e 64 2d 6c 69 6e 65 20 74    6f 6f 6c 20 20 2d 2a 2d 20 6c 65 78 69 63 61 6c  | ".command-line.tool..-*-.lexical | 
| 3b460 |  2d 62 69 6e 64 69 6e 67 3a 20 74 3b 20 2d 2a 2d    0a 0a 3b 3b 20 43 6f 70 79 72 69 67 68 74 20 28  | -binding:.t;.-*-..;;.Copyright.( | 
| 3b480 |  43 29 20 32 30 30 33 2d 32 30 31 36 20 4a 6f 68    6e 20 57 69 65 67 6c 65 79 20 28 6a 6f 68 6e 77  | C).2003-2016.John.Wiegley.(johnw | 
| 3b4a0 |  20 41 54 20 67 6e 75 20 44 4f 54 20 6f 72 67 29    0a 0a 3b 3b 20 54 68 69 73 20 66 69 6c 65 20 69  | .AT.gnu.DOT.org)..;;.This.file.i | 
| 3b4c0 |  73 20 6e 6f 74 20 70 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  | s.not.part.of.GNU.Emacs...;;.Thi | 
| 3b4e0 |  73 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 69  | s.is.free.software;.you.can.redi | 
| 3b500 |  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 20 69 74 20 75 6e 64  | stribute.it.and/or.modify.it.und | 
| 3b520 |  65 72 0a 3b 3b 20 74 68 65 20 74 65 72 6d 73 20    6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e 65 72  | er.;;.the.terms.of.the.GNU.Gener | 
| 3b540 |  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 62  | al.Public.License.as.published.b | 
| 3b560 |  79 20 74 68 65 20 46 72 65 65 0a 3b 3b 20 53 6f    66 74 77 61 72 65 20 46 6f 75 6e 64 61 74 69 6f  | y.the.Free.;;.Software.Foundatio | 
| 3b580 |  6e 3b 20 65 69 74 68 65 72 20 76 65 72 73 69 6f    6e 20 32 2c 20 6f 72 20 28 61 74 20 79 6f 75 72  | n;.either.version.2,.or.(at.your | 
| 3b5a0 |  20 6f 70 74 69 6f 6e 29 20 61 6e 79 20 6c 61 74    65 72 0a 3b 3b 20 76 65 72 73 69 6f 6e 2e 0a 3b  | .option).any.later.;;.version..; | 
| 3b5c0 |  3b 0a 3b 3b 20 54 68 69 73 20 69 73 20 64 69 73    74 72 69 62 75 74 65 64 20 69 6e 20 74 68 65 20  | ;.;;.This.is.distributed.in.the. | 
| 3b5e0 |  68 6f 70 65 20 74 68 61 74 20 69 74 20 77 69 6c    6c 20 62 65 20 75 73 65 66 75 6c 2c 20 62 75 74  | hope.that.it.will.be.useful,.but | 
| 3b600 |  20 57 49 54 48 4f 55 54 0a 3b 3b 20 41 4e 59 20    57 41 52 52 41 4e 54 59 3b 20 77 69 74 68 6f 75  | .WITHOUT.;;.ANY.WARRANTY;.withou | 
| 3b620 |  74 20 65 76 65 6e 20 74 68 65 20 69 6d 70 6c 69    65 64 20 77 61 72 72 61 6e 74 79 20 6f 66 20 4d  | t.even.the.implied.warranty.of.M | 
| 3b640 |  45 52 43 48 41 4e 54 41 42 49 4c 49 54 59 20 6f    72 0a 3b 3b 20 46 49 54 4e 45 53 53 20 46 4f 52  | ERCHANTABILITY.or.;;.FITNESS.FOR | 
| 3b660 |  20 41 20 50 41 52 54 49 43 55 4c 41 52 20 50 55    52 50 4f 53 45 2e 20 20 53 65 65 20 74 68 65 20  | .A.PARTICULAR.PURPOSE...See.the. | 
| 3b680 |  47 4e 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c    69 63 20 4c 69 63 65 6e 73 65 0a 3b 3b 20 66 6f  | GNU.General.Public.License.;;.fo | 
| 3b6a0 |  72 20 6d 6f 72 65 20 64 65 74 61 69 6c 73 2e 0a    3b 3b 0a 3b 3b 20 59 6f 75 20 73 68 6f 75 6c 64  | r.more.details..;;.;;.You.should | 
| 3b6c0 |  20 68 61 76 65 20 72 65 63 65 69 76 65 64 20 61    20 63 6f 70 79 20 6f 66 20 74 68 65 20 47 4e 55  | .have.received.a.copy.of.the.GNU | 
| 3b6e0 |  20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20    4c 69 63 65 6e 73 65 0a 3b 3b 20 61 6c 6f 6e 67  | .General.Public.License.;;.along | 
| 3b700 |  20 77 69 74 68 20 47 4e 55 20 45 6d 61 63 73 3b    20 73 65 65 20 74 68 65 20 66 69 6c 65 20 43 4f  | .with.GNU.Emacs;.see.the.file.CO | 
| 3b720 |  50 59 49 4e 47 2e 20 20 49 66 20 6e 6f 74 2c 20    77 72 69 74 65 20 74 6f 20 74 68 65 0a 3b 3b 20  | PYING...If.not,.write.to.the.;;. | 
| 3b740 |  46 72 65 65 20 53 6f 66 74 77 61 72 65 20 46 6f    75 6e 64 61 74 69 6f 6e 2c 20 49 6e 63 2e 2c 20  | Free.Software.Foundation,.Inc.,. | 
| 3b760 |  35 31 20 46 72 61 6e 6b 6c 69 6e 20 53 74 72 65    65 74 2c 20 46 69 66 74 68 20 46 6c 6f 6f 72 2c  | 51.Franklin.Street,.Fifth.Floor, | 
| 3b780 |  20 42 6f 73 74 6f 6e 2c 0a 3b 3b 20 4d 41 20 30    32 31 31 30 2d 31 33 30 31 20 55 53 41 2e 0a 0a  | .Boston,.;;.MA.02110-1301.USA... | 
| 3b7a0 |  3b 3b 20 52 65 63 6f 6e 63 69 6c 65 20 6d 6f 64    65 0a 0a 0a 3b 3b 3b 20 43 6f 6d 6d 65 6e 74 61  | ;;.Reconcile.mode...;;;.Commenta | 
| 3b7c0 |  72 79 3a 0a 3b 3b 20 43 6f 64 65 20 74 6f 20 68    61 6e 64 6c 65 20 72 65 63 6f 6e 63 69 6c 69 6e  | ry:.;;.Code.to.handle.reconcilin | 
| 3b7e0 |  67 20 4c 65 64 67 65 72 20 66 69 6c 65 73 20 77    69 74 68 20 6f 75 74 73 69 64 65 20 73 6f 75 72  | g.Ledger.files.with.outside.sour | 
| 3b800 |  63 65 73 0a 0a 3b 3b 3b 20 43 6f 64 65 3a 0a 0a    28 72 65 71 75 69 72 65 20 27 65 61 73 79 6d 65  | ces..;;;.Code:..(require.'easyme | 
| 3b820 |  6e 75 29 0a 28 72 65 71 75 69 72 65 20 27 6c 65    64 67 65 72 2d 69 6e 69 74 29 0a 0a 28 72 65 71  | nu).(require.'ledger-init)..(req | 
| 3b840 |  75 69 72 65 20 27 6c 65 64 67 65 72 2d 78 61 63    74 29 0a 28 72 65 71 75 69 72 65 20 27 6c 65 64  | uire.'ledger-xact).(require.'led | 
| 3b860 |  67 65 72 2d 6f 63 63 75 72 29 0a 28 72 65 71 75    69 72 65 20 27 6c 65 64 67 65 72 2d 63 6f 6d 6d  | ger-occur).(require.'ledger-comm | 
| 3b880 |  6f 64 69 74 69 65 73 29 0a 28 72 65 71 75 69 72    65 20 27 6c 65 64 67 65 72 2d 65 78 65 63 29 0a  | odities).(require.'ledger-exec). | 
| 3b8a0 |  28 72 65 71 75 69 72 65 20 27 6c 65 64 67 65 72    2d 6e 61 76 69 67 61 74 65 29 0a 28 72 65 71 75  | (require.'ledger-navigate).(requ | 
| 3b8c0 |  69 72 65 20 27 6c 65 64 67 65 72 2d 73 74 61 74    65 29 0a 28 64 65 63 6c 61 72 65 2d 66 75 6e 63  | ire.'ledger-state).(declare-func | 
| 3b8e0 |  74 69 6f 6e 20 6c 65 64 67 65 72 2d 69 6e 73 65    72 74 2d 65 66 66 65 63 74 69 76 65 2d 64 61 74  | tion.ledger-insert-effective-dat | 
| 3b900 |  65 20 22 6c 65 64 67 65 72 2d 6d 6f 64 65 22 20    28 26 6f 70 74 69 6f 6e 61 6c 20 64 61 74 65 29  | e."ledger-mode".(&optional.date) | 
| 3b920 |  29 0a 28 64 65 63 6c 61 72 65 2d 66 75 6e 63 74    69 6f 6e 20 6c 65 64 67 65 72 2d 72 65 61 64 2d  | ).(declare-function.ledger-read- | 
| 3b940 |  61 63 63 6f 75 6e 74 2d 77 69 74 68 2d 70 72 6f    6d 70 74 20 22 6c 65 64 67 65 72 2d 6d 6f 64 65  | account-with-prompt."ledger-mode | 
| 3b960 |  22 20 28 70 72 6f 6d 70 74 29 29 0a 28 64 65 63    6c 61 72 65 2d 66 75 6e 63 74 69 6f 6e 20 6c 65  | ".(prompt)).(declare-function.le | 
| 3b980 |  64 67 65 72 2d 72 65 61 64 2d 64 61 74 65 20 22    6c 65 64 67 65 72 2d 6d 6f 64 65 22 20 28 70 72  | dger-read-date."ledger-mode".(pr | 
| 3b9a0 |  6f 6d 70 74 29 29 0a 0a 28 64 65 66 76 61 72 2d    6c 6f 63 61 6c 20 6c 65 64 67 65 72 2d 72 65 63  | ompt))..(defvar-local.ledger-rec | 
| 3b9c0 |  6f 6e 63 69 6c 65 2d 6c 65 64 67 65 72 2d 62 75    66 20 6e 69 6c 0a 20 20 22 42 75 66 66 65 72 20  | oncile-ledger-buf.nil..."Buffer. | 
| 3b9e0 |  66 72 6f 6d 20 77 68 69 63 68 20 74 68 65 20 63    75 72 72 65 6e 74 20 72 65 63 6f 6e 63 69 6c 65  | from.which.the.current.reconcile | 
| 3ba00 |  20 62 75 66 66 65 72 20 77 61 73 20 63 72 65 61    74 65 64 2e 22 29 0a 0a 28 64 65 66 76 61 72 2d  | .buffer.was.created.")..(defvar- | 
| 3ba20 |  6c 6f 63 61 6c 20 6c 65 64 67 65 72 2d 72 65 63    6f 6e 63 69 6c 65 2d 61 63 63 6f 75 6e 74 20 6e  | local.ledger-reconcile-account.n | 
| 3ba40 |  69 6c 0a 20 20 22 41 63 63 6f 75 6e 74 20 62 65    69 6e 67 20 72 65 63 6f 6e 63 69 6c 65 64 20 69  | il..."Account.being.reconciled.i | 
| 3ba60 |  6e 20 74 68 65 20 63 75 72 72 65 6e 74 20 62 75    66 66 65 72 2e 22 29 0a 0a 28 64 65 66 76 61 72  | n.the.current.buffer.")..(defvar | 
| 3ba80 |  2d 6c 6f 63 61 6c 20 6c 65 64 67 65 72 2d 72 65    63 6f 6e 63 69 6c 65 2d 74 61 72 67 65 74 20 6e  | -local.ledger-reconcile-target.n | 
| 3baa0 |  69 6c 0a 20 20 22 54 61 72 67 65 74 20 61 6d 6f    75 6e 74 20 66 6f 72 20 74 68 69 73 20 72 65 63  | il..."Target.amount.for.this.rec | 
| 3bac0 |  6f 6e 63 69 6c 69 61 74 69 6f 6e 20 70 72 6f 63    65 73 73 2e 22 29 0a 0a 28 64 65 66 67 72 6f 75  | onciliation.process.")..(defgrou | 
| 3bae0 |  70 20 6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69    6c 65 20 6e 69 6c 0a 20 20 22 4f 70 74 69 6f 6e  | p.ledger-reconcile.nil..."Option | 
| 3bb00 |  73 20 66 6f 72 20 4c 65 64 67 65 72 2d 6d 6f 64    65 20 72 65 63 6f 6e 63 69 6c 69 61 74 69 6f 6e  | s.for.Ledger-mode.reconciliation | 
| 3bb20 |  22 0a 20 20 3a 67 72 6f 75 70 20 27 6c 65 64 67    65 72 29 0a 0a 28 64 65 66 69 6e 65 2d 6f 62 73  | "...:group.'ledger)..(define-obs | 
| 3bb40 |  6f 6c 65 74 65 2d 76 61 72 69 61 62 6c 65 2d 61    6c 69 61 73 0a 20 20 27 6c 65 64 67 65 72 2d 72  | olete-variable-alias...'ledger-r | 
| 3bb60 |  65 63 6f 6e 2d 62 75 66 66 65 72 2d 6e 61 6d 65    0a 20 20 27 6c 65 64 67 65 72 2d 72 65 63 6f 6e  | econ-buffer-name...'ledger-recon | 
| 3bb80 |  63 69 6c 65 2d 62 75 66 66 65 72 2d 6e 61 6d 65    0a 20 20 22 32 30 32 33 2d 31 32 2d 31 35 22 29  | cile-buffer-name..."2023-12-15") | 
| 3bba0 |  0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6c 65 64    67 65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d 62 75  | ..(defcustom.ledger-reconcile-bu | 
| 3bbc0 |  66 66 65 72 2d 6e 61 6d 65 20 22 2a 52 65 63 6f    6e 63 69 6c 65 2a 22 0a 20 20 22 4e 61 6d 65 20  | ffer-name."*Reconcile*"..."Name. | 
| 3bbe0 |  74 6f 20 75 73 65 20 66 6f 72 20 72 65 63 6f 6e    63 69 6c 69 61 74 69 6f 6e 20 62 75 66 66 65 72  | to.use.for.reconciliation.buffer | 
| 3bc00 |  2e 22 0a 20 20 3a 74 79 70 65 20 27 73 74 72 69    6e 67 0a 20 20 3a 67 72 6f 75 70 20 27 6c 65 64  | ."...:type.'string...:group.'led | 
| 3bc20 |  67 65 72 2d 72 65 63 6f 6e 63 69 6c 65 29 0a 0a    28 64 65 66 63 75 73 74 6f 6d 20 6c 65 64 67 65  | ger-reconcile)..(defcustom.ledge | 
| 3bc40 |  72 2d 6e 61 72 72 6f 77 2d 6f 6e 2d 72 65 63 6f    6e 63 69 6c 65 20 74 0a 20 20 22 49 66 20 74 2c  | r-narrow-on-reconcile.t..."If.t, | 
| 3bc60 |  20 73 68 6f 77 20 6f 6e 6c 79 20 74 72 61 6e 73    61 63 74 69 6f 6e 73 20 6d 61 74 63 68 69 6e 67  | .show.only.transactions.matching | 
| 3bc80 |  20 74 68 65 20 72 65 63 6f 6e 63 69 6c 65 20 72    65 67 65 78 20 69 6e 20 74 68 65 20 6d 61 69 6e  | .the.reconcile.regex.in.the.main | 
| 3bca0 |  20 62 75 66 66 65 72 2e 22 0a 20 20 3a 74 79 70    65 20 27 62 6f 6f 6c 65 61 6e 0a 20 20 3a 67 72  | .buffer."...:type.'boolean...:gr | 
| 3bcc0 |  6f 75 70 20 27 6c 65 64 67 65 72 2d 72 65 63 6f    6e 63 69 6c 65 29 0a 0a 28 64 65 66 63 75 73 74  | oup.'ledger-reconcile)..(defcust | 
| 3bce0 |  6f 6d 20 6c 65 64 67 65 72 2d 62 75 66 66 65 72    2d 74 72 61 63 6b 73 2d 72 65 63 6f 6e 63 69 6c  | om.ledger-buffer-tracks-reconcil | 
| 3bd00 |  65 2d 62 75 66 66 65 72 20 74 0a 20 20 22 49 66    20 74 2c 20 6d 6f 76 65 20 70 6f 69 6e 74 20 69  | e-buffer.t..."If.t,.move.point.i | 
| 3bd20 |  6e 20 74 68 65 20 6c 65 64 67 65 72 20 62 75 66    66 65 72 20 77 68 65 6e 20 69 74 20 6d 6f 76 65  | n.the.ledger.buffer.when.it.move | 
| 3bd40 |  73 20 69 6e 20 74 68 65 20 72 65 63 6f 6e 63 69    6c 65 20 62 75 66 66 65 72 2e 0a 57 68 65 6e 20  | s.in.the.reconcile.buffer..When. | 
| 3bd60 |  74 68 65 20 63 75 72 73 6f 72 20 69 73 20 6d 6f    76 65 64 20 74 6f 20 61 20 6e 65 77 20 74 72 61  | the.cursor.is.moved.to.a.new.tra | 
| 3bd80 |  6e 73 61 63 74 69 6f 6e 20 69 6e 20 74 68 65 20    72 65 63 6f 6e 63 69 6c 65 0a 62 75 66 66 65 72  | nsaction.in.the.reconcile.buffer | 
| 3bda0 |  20 74 68 65 6e 20 74 68 61 74 20 74 72 61 6e 73    61 63 74 69 6f 6e 20 77 69 6c 6c 20 62 65 20 73  | .then.that.transaction.will.be.s | 
| 3bdc0 |  68 6f 77 6e 20 69 6e 20 69 74 73 20 73 6f 75 72    63 65 20 62 75 66 66 65 72 2e 22 0a 20 20 3a 74  | hown.in.its.source.buffer."...:t | 
| 3bde0 |  79 70 65 20 27 62 6f 6f 6c 65 61 6e 0a 20 20 3a    67 72 6f 75 70 20 27 6c 65 64 67 65 72 2d 72 65  | ype.'boolean...:group.'ledger-re | 
| 3be00 |  63 6f 6e 63 69 6c 65 29 0a 0a 28 64 65 66 63 75    73 74 6f 6d 20 6c 65 64 67 65 72 2d 72 65 63 6f  | concile)..(defcustom.ledger-reco | 
| 3be20 |  6e 63 69 6c 65 2d 66 6f 72 63 65 2d 77 69 6e 64    6f 77 2d 62 6f 74 74 6f 6d 20 6e 69 6c 0a 20 20  | ncile-force-window-bottom.nil... | 
| 3be40 |  22 49 66 20 74 2c 20 73 68 6f 77 20 74 68 65 20    72 65 63 6f 6e 63 69 6c 65 20 77 69 6e 64 6f 77  | "If.t,.show.the.reconcile.window | 
| 3be60 |  20 62 65 6c 6f 77 20 74 68 65 20 72 65 67 69 73    74 65 72 20 77 69 6e 64 6f 77 20 61 6e 64 20 72  | .below.the.register.window.and.r | 
| 3be80 |  65 73 69 7a 65 2e 22 0a 20 20 3a 74 79 70 65 20    27 62 6f 6f 6c 65 61 6e 0a 20 20 3a 67 72 6f 75  | esize."...:type.'boolean...:grou | 
| 3bea0 |  70 20 27 6c 65 64 67 65 72 2d 72 65 63 6f 6e 63    69 6c 65 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d  | p.'ledger-reconcile)..(defcustom | 
| 3bec0 |  20 6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69 6c    65 2d 74 6f 67 67 6c 65 2d 74 6f 2d 70 65 6e 64  | .ledger-reconcile-toggle-to-pend | 
| 3bee0 |  69 6e 67 20 74 0a 20 20 22 49 66 20 74 2c 20 74    68 65 6e 20 74 6f 67 67 6c 65 20 62 65 74 77 65  | ing.t..."If.t,.then.toggle.betwe | 
| 3bf00 |  65 6e 20 75 6e 63 6c 65 61 72 65 64 20 61 6e 64    20 70 65 6e 64 69 6e 67 2e 0a 72 65 63 6f 6e 63  | en.uncleared.and.pending..reconc | 
| 3bf20 |  69 6c 65 2d 66 69 6e 69 73 68 20 77 69 6c 6c 20    6d 61 72 6b 20 61 6c 6c 20 70 65 6e 64 69 6e 67  | ile-finish.will.mark.all.pending | 
| 3bf40 |  20 70 6f 73 74 69 6e 67 20 63 6c 65 61 72 65 64    2e 22 0a 20 20 3a 74 79 70 65 20 27 62 6f 6f 6c  | .posting.cleared."...:type.'bool | 
| 3bf60 |  65 61 6e 0a 20 20 3a 67 72 6f 75 70 20 27 6c 65    64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65 29 0a  | ean...:group.'ledger-reconcile). | 
| 3bf80 |  0a 28 64 65 66 63 75 73 74 6f 6d 20 6c 65 64 67    65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d 64 65 66  | .(defcustom.ledger-reconcile-def | 
| 3bfa0 |  61 75 6c 74 2d 64 61 74 65 2d 66 6f 72 6d 61 74    20 6c 65 64 67 65 72 2d 64 65 66 61 75 6c 74 2d  | ault-date-format.ledger-default- | 
| 3bfc0 |  64 61 74 65 2d 66 6f 72 6d 61 74 0a 20 20 22 44    61 74 65 20 66 6f 72 6d 61 74 20 66 6f 72 20 74  | date-format..."Date.format.for.t | 
| 3bfe0 |  68 65 20 72 65 63 6f 6e 63 69 6c 65 20 62 75 66    66 65 72 2e 0a 44 65 66 61 75 6c 74 20 69 73 20  | he.reconcile.buffer..Default.is. | 
| 3c000 |  60 6c 65 64 67 65 72 2d 64 65 66 61 75 6c 74 2d    64 61 74 65 2d 66 6f 72 6d 61 74 27 2e 22 0a 20  | `ledger-default-date-format'.".. | 
| 3c020 |  20 3a 74 79 70 65 20 27 73 74 72 69 6e 67 0a 20    20 3a 67 72 6f 75 70 20 27 6c 65 64 67 65 72 2d  | .:type.'string...:group.'ledger- | 
| 3c040 |  72 65 63 6f 6e 63 69 6c 65 29 0a 0a 28 64 65 66    63 75 73 74 6f 6d 20 6c 65 64 67 65 72 2d 72 65  | reconcile)..(defcustom.ledger-re | 
| 3c060 |  63 6f 6e 63 69 6c 65 2d 74 61 72 67 65 74 2d 70    72 6f 6d 70 74 2d 73 74 72 69 6e 67 20 22 54 61  | concile-target-prompt-string."Ta | 
| 3c080 |  72 67 65 74 20 61 6d 6f 75 6e 74 20 66 6f 72 20    72 65 63 6f 6e 63 69 6c 69 61 74 69 6f 6e 20 22  | rget.amount.for.reconciliation." | 
| 3c0a0 |  0a 20 20 22 50 72 6f 6d 70 74 20 66 6f 72 20 72    65 63 6f 6e 63 69 6c 65 20 74 61 72 67 65 74 2e  | ..."Prompt.for.reconcile.target. | 
| 3c0c0 |  22 0a 20 20 3a 74 79 70 65 20 27 73 74 72 69 6e    67 0a 20 20 3a 67 72 6f 75 70 20 27 6c 65 64 67  | "...:type.'string...:group.'ledg | 
| 3c0e0 |  65 72 2d 72 65 63 6f 6e 63 69 6c 65 29 0a 0a 28    64 65 66 63 75 73 74 6f 6d 20 6c 65 64 67 65 72  | er-reconcile)..(defcustom.ledger | 
| 3c100 |  2d 72 65 63 6f 6e 63 69 6c 65 2d 62 75 66 66 65    72 2d 68 65 61 64 65 72 20 22 52 65 63 6f 6e 63  | -reconcile-buffer-header."Reconc | 
| 3c120 |  69 6c 69 6e 67 20 61 63 63 6f 75 6e 74 20 25 73    5c 6e 5c 6e 22 0a 20 20 22 44 65 66 61 75 6c 74  | iling.account.%s\n\n"..."Default | 
| 3c140 |  20 68 65 61 64 65 72 20 73 74 72 69 6e 67 20 66    6f 72 20 74 68 65 20 72 65 63 6f 6e 63 69 6c 65  | .header.string.for.the.reconcile | 
| 3c160 |  20 62 75 66 66 65 72 2e 0a 0a 49 66 20 6e 6f 6e    2d 6e 69 6c 2c 20 74 68 65 20 6e 61 6d 65 20 6f  | .buffer...If.non-nil,.the.name.o | 
| 3c180 |  66 20 74 68 65 20 61 63 63 6f 75 6e 74 20 62 65    69 6e 67 20 72 65 63 6f 6e 63 69 6c 65 64 20 77  | f.the.account.being.reconciled.w | 
| 3c1a0 |  69 6c 6c 20 62 65 20 73 75 62 73 74 69 74 75 74    65 64 0a 20 20 20 20 20 20 20 20 69 6e 74 6f 20  | ill.be.substituted.........into. | 
| 3c1c0 |  74 68 65 20 27 25 73 27 2e 20 20 49 66 20 6e 69    6c 2c 20 6e 6f 20 68 65 61 64 65 72 20 77 69 6c  | the.'%s'...If.nil,.no.header.wil | 
| 3c1e0 |  6c 20 62 65 20 64 69 73 70 6c 61 79 65 64 2e 22    0a 20 20 3a 74 79 70 65 20 27 73 74 72 69 6e 67  | l.be.displayed."...:type.'string | 
| 3c200 |  0a 20 20 3a 67 72 6f 75 70 20 27 6c 65 64 67 65    72 2d 72 65 63 6f 6e 63 69 6c 65 29 0a 0a 28 64  | ...:group.'ledger-reconcile)..(d | 
| 3c220 |  65 66 63 75 73 74 6f 6d 20 6c 65 64 67 65 72 2d    72 65 63 6f 6e 63 69 6c 65 2d 62 75 66 66 65 72  | efcustom.ledger-reconcile-buffer | 
| 3c240 |  2d 6c 69 6e 65 2d 66 6f 72 6d 61 74 20 22 25 28    64 61 74 65 29 73 20 25 2d 34 28 63 6f 64 65 29  | -line-format."%(date)s.%-4(code) | 
| 3c260 |  73 20 25 2d 35 30 28 70 61 79 65 65 29 73 20 25    2d 33 30 28 61 63 63 6f 75 6e 74 29 73 20 25 31  | s.%-50(payee)s.%-30(account)s.%1 | 
| 3c280 |  35 28 61 6d 6f 75 6e 74 29 73 5c 6e 22 0a 20 20    22 46 6f 72 6d 61 74 20 73 74 72 69 6e 67 20 66  | 5(amount)s\n"..."Format.string.f | 
| 3c2a0 |  6f 72 20 74 68 65 20 6c 65 64 67 65 72 20 72 65    63 6f 6e 63 69 6c 65 20 70 6f 73 74 69 6e 67 20  | or.the.ledger.reconcile.posting. | 
| 3c2c0 |  66 6f 72 6d 61 74 2e 0a 41 76 61 69 6c 61 62 6c    65 20 66 69 65 6c 64 73 20 61 72 65 20 64 61 74  | format..Available.fields.are.dat | 
| 3c2e0 |  65 2c 20 73 74 61 74 75 73 2c 20 63 6f 64 65 2c    20 70 61 79 65 65 2c 20 61 63 63 6f 75 6e 74 2c  | e,.status,.code,.payee,.account, | 
| 3c300 |  0a 61 6d 6f 75 6e 74 2e 20 20 54 68 65 20 66 6f    72 6d 61 74 20 66 6f 72 20 65 61 63 68 20 66 69  | .amount...The.format.for.each.fi | 
| 3c320 |  65 6c 64 20 69 73 20 25 57 49 44 54 48 28 46 49    45 4c 44 29 2c 20 57 49 44 54 48 20 63 61 6e 20  | eld.is.%WIDTH(FIELD),.WIDTH.can. | 
| 3c340 |  62 65 0a 70 72 65 63 65 64 65 64 20 62 79 20 61    20 6d 69 6e 75 73 20 73 69 67 6e 20 77 68 69 63  | be.preceded.by.a.minus.sign.whic | 
| 3c360 |  68 20 6d 65 61 6e 20 74 6f 20 6c 65 66 74 20 6a    75 73 74 69 66 79 20 61 6e 64 20 70 61 64 20 74  | h.mean.to.left.justify.and.pad.t | 
| 3c380 |  68 65 0a 66 69 65 6c 64 2e 20 20 57 49 44 54 48    20 69 73 20 74 68 65 20 6d 69 6e 69 6d 75 6d 20  | he.field...WIDTH.is.the.minimum. | 
| 3c3a0 |  6e 75 6d 62 65 72 20 6f 66 20 63 68 61 72 61 63    74 65 72 73 20 74 6f 20 64 69 73 70 6c 61 79 3b  | number.of.characters.to.display; | 
| 3c3c0 |  0a 69 66 20 73 74 72 69 6e 67 20 69 73 20 6c 6f    6e 67 65 72 2c 20 69 74 20 69 73 20 6e 6f 74 20  | .if.string.is.longer,.it.is.not. | 
| 3c3e0 |  74 72 75 6e 63 61 74 65 64 20 75 6e 6c 65 73 73    0a 60 6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69  | truncated.unless.`ledger-reconci | 
| 3c400 |  6c 65 2d 62 75 66 66 65 72 2d 70 61 79 65 65 2d    6d 61 78 2d 63 68 61 72 73 27 20 6f 72 0a 60 6c  | le-buffer-payee-max-chars'.or.`l | 
| 3c420 |  65 64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d    62 75 66 66 65 72 2d 61 63 63 6f 75 6e 74 2d 6d  | edger-reconcile-buffer-account-m | 
| 3c440 |  61 78 2d 63 68 61 72 73 27 20 69 73 20 64 65 66    69 6e 65 64 2e 22 0a 20 20 3a 74 79 70 65 20 27  | ax-chars'.is.defined."...:type.' | 
| 3c460 |  73 74 72 69 6e 67 0a 20 20 3a 67 72 6f 75 70 20    27 6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69 6c  | string...:group.'ledger-reconcil | 
| 3c480 |  65 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6c    65 64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d  | e)..(defcustom.ledger-reconcile- | 
| 3c4a0 |  62 75 66 66 65 72 2d 70 61 79 65 65 2d 6d 61 78    2d 63 68 61 72 73 20 2d 31 0a 20 20 22 49 66 20  | buffer-payee-max-chars.-1..."If. | 
| 3c4c0 |  70 6f 73 69 74 69 76 65 2c 20 74 72 75 6e 63 61    74 65 20 70 61 79 65 65 20 6e 61 6d 65 20 72 69  | positive,.truncate.payee.name.ri | 
| 3c4e0 |  67 68 74 20 73 69 64 65 20 74 6f 20 6d 61 78 20    6e 75 6d 62 65 72 20 6f 66 20 63 68 61 72 61 63  | ght.side.to.max.number.of.charac | 
| 3c500 |  74 65 72 73 2e 22 0a 20 20 3a 74 79 70 65 20 27    69 6e 74 65 67 65 72 0a 20 20 3a 67 72 6f 75 70  | ters."...:type.'integer...:group | 
| 3c520 |  20 27 6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69    6c 65 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20  | .'ledger-reconcile)..(defcustom. | 
| 3c540 |  6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65    2d 62 75 66 66 65 72 2d 61 63 63 6f 75 6e 74 2d  | ledger-reconcile-buffer-account- | 
| 3c560 |  6d 61 78 2d 63 68 61 72 73 20 2d 31 0a 20 20 22    49 66 20 70 6f 73 69 74 69 76 65 2c 20 74 72 75  | max-chars.-1..."If.positive,.tru | 
| 3c580 |  6e 63 61 74 65 20 61 63 63 6f 75 6e 74 20 6e 61    6d 65 20 6c 65 66 74 20 73 69 64 65 20 74 6f 20  | ncate.account.name.left.side.to. | 
| 3c5a0 |  6d 61 78 20 6e 75 6d 62 65 72 20 6f 66 20 63 68    61 72 61 63 74 65 72 73 2e 22 0a 20 20 3a 74 79  | max.number.of.characters."...:ty | 
| 3c5c0 |  70 65 20 27 69 6e 74 65 67 65 72 0a 20 20 3a 67    72 6f 75 70 20 27 6c 65 64 67 65 72 2d 72 65 63  | pe.'integer...:group.'ledger-rec | 
| 3c5e0 |  6f 6e 63 69 6c 65 29 0a 0a 28 64 65 66 63 75 73    74 6f 6d 20 6c 65 64 67 65 72 2d 72 65 63 6f 6e  | oncile)..(defcustom.ledger-recon | 
| 3c600 |  63 69 6c 65 2d 73 6f 72 74 2d 6b 65 79 20 22 28    30 29 22 0a 20 20 22 4b 65 79 20 66 6f 72 20 73  | cile-sort-key."(0)"..."Key.for.s | 
| 3c620 |  6f 72 74 69 6e 67 20 72 65 63 6f 6e 63 69 6c 65    20 62 75 66 66 65 72 2e 0a 0a 50 6f 73 73 69 62  | orting.reconcile.buffer...Possib | 
| 3c640 |  6c 65 20 76 61 6c 75 65 73 20 61 72 65 20 5c 22    28 64 61 74 65 29 5c 22 2c 20 5c 22 28 61 6d 6f  | le.values.are.\"(date)\",.\"(amo | 
| 3c660 |  75 6e 74 29 5c 22 2c 20 5c 22 28 70 61 79 65 65    29 5c 22 20 6f 72 20 5c 22 28 30 29 5c 22 20 66  | unt)\",.\"(payee)\".or.\"(0)\".f | 
| 3c680 |  6f 72 0a 6e 6f 20 73 6f 72 74 69 6e 67 2c 20 69    2e 65 2e 20 75 73 69 6e 67 20 6c 65 64 67 65 72  | or.no.sorting,.i.e..using.ledger | 
| 3c6a0 |  20 66 69 6c 65 20 6f 72 64 65 72 2e 22 0a 20 20    3a 74 79 70 65 20 27 73 74 72 69 6e 67 0a 20 20  | .file.order."...:type.'string... | 
| 3c6c0 |  3a 67 72 6f 75 70 20 27 6c 65 64 67 65 72 2d 72    65 63 6f 6e 63 69 6c 65 29 0a 0a 28 64 65 66 63  | :group.'ledger-reconcile)..(defc | 
| 3c6e0 |  75 73 74 6f 6d 20 6c 65 64 67 65 72 2d 72 65 63    6f 6e 63 69 6c 65 2d 69 6e 73 65 72 74 2d 65 66  | ustom.ledger-reconcile-insert-ef | 
| 3c700 |  66 65 63 74 69 76 65 2d 64 61 74 65 20 6e 69 6c    0a 20 20 22 49 66 20 74 2c 20 70 72 6f 6d 70 74  | fective-date.nil..."If.t,.prompt | 
| 3c720 |  20 66 6f 72 20 65 66 66 65 63 74 69 76 65 20 64    61 74 65 20 77 68 65 6e 20 63 6c 65 61 72 69 6e  | .for.effective.date.when.clearin | 
| 3c740 |  67 20 74 72 61 6e 73 61 63 74 69 6f 6e 73 2e 0a    0a 49 66 20 74 68 69 73 20 69 73 20 61 20 66 75  | g.transactions...If.this.is.a.fu | 
| 3c760 |  6e 63 74 69 6f 6e 2c 20 69 74 20 69 73 20 63 61    6c 6c 65 64 20 77 69 74 68 20 6e 6f 20 61 72 67  | nction,.it.is.called.with.no.arg | 
| 3c780 |  75 6d 65 6e 74 73 20 77 69 74 68 20 70 6f 69 6e    74 0a 61 74 20 74 68 65 20 70 6f 73 74 69 6e 67  | uments.with.point.at.the.posting | 
| 3c7a0 |  20 74 6f 20 62 65 20 63 6c 65 61 72 65 64 2e 20    20 54 68 65 20 72 65 74 75 72 6e 20 76 61 6c 75  | .to.be.cleared...The.return.valu | 
| 3c7c0 |  65 20 69 73 20 74 68 65 6e 20 75 73 65 64 20 61    73 0a 64 65 73 63 72 69 62 65 64 20 61 62 6f 76  | e.is.then.used.as.described.abov | 
| 3c7e0 |  65 2e 22 0a 20 20 3a 74 79 70 65 20 27 28 63 68    6f 69 63 65 20 62 6f 6f 6c 65 61 6e 20 66 75 6e  | e."...:type.'(choice.boolean.fun | 
| 3c800 |  63 74 69 6f 6e 29 0a 20 20 3a 67 72 6f 75 70 20    27 6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69 6c  | ction)...:group.'ledger-reconcil | 
| 3c820 |  65 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 6c    65 64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d  | e)..(defcustom.ledger-reconcile- | 
| 3c840 |  66 69 6e 69 73 68 2d 66 6f 72 63 65 2d 71 75 69    74 20 6e 69 6c 0a 20 20 22 49 66 20 74 2c 20 77  | finish-force-quit.nil..."If.t,.w | 
| 3c860 |  69 6c 6c 20 66 6f 72 63 65 20 63 6c 6f 73 69 6e    67 20 72 65 63 6f 6e 63 69 6c 65 20 77 69 6e 64  | ill.force.closing.reconcile.wind | 
| 3c880 |  6f 77 20 61 66 74 65 72 20 5c 5c 5b 6c 65 64 67    65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d 66 69 6e  | ow.after.\\[ledger-reconcile-fin | 
| 3c8a0 |  69 73 68 5d 2e 22 0a 20 20 3a 74 79 70 65 20 27    62 6f 6f 6c 65 61 6e 0a 20 20 3a 67 72 6f 75 70  | ish]."...:type.'boolean...:group | 
| 3c8c0 |  20 27 6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69    6c 65 29 0a 0a 28 64 65 66 76 61 72 2d 6c 6f 63  | .'ledger-reconcile)..(defvar-loc | 
| 3c8e0 |  61 6c 20 6c 65 64 67 65 72 2d 72 65 63 6f 6e 63    69 6c 65 2d 6c 61 73 74 2d 62 61 6c 61 6e 63 65  | al.ledger-reconcile-last-balance | 
| 3c900 |  2d 6d 65 73 73 61 67 65 20 6e 69 6c 29 0a 28 64    65 66 76 61 72 2d 6c 6f 63 61 6c 20 6c 65 64 67  | -message.nil).(defvar-local.ledg | 
| 3c920 |  65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d 6c 61 73    74 2d 62 61 6c 61 6e 63 65 2d 65 71 75 61 6c 73  | er-reconcile-last-balance-equals | 
| 3c940 |  2d 74 61 72 67 65 74 20 6e 69 6c 29 0a 0a 28 64    65 66 66 61 63 65 20 6c 65 64 67 65 72 2d 72 65  | -target.nil)..(defface.ledger-re | 
| 3c960 |  63 6f 6e 63 69 6c 65 2d 6c 61 73 74 2d 62 61 6c    61 6e 63 65 2d 65 71 75 61 6c 73 2d 74 61 72 67  | concile-last-balance-equals-targ | 
| 3c980 |  65 74 2d 66 61 63 65 0a 20 20 27 28 28 74 20 3a    69 6e 68 65 72 69 74 20 68 65 61 64 65 72 2d 6c  | et-face...'((t.:inherit.header-l | 
| 3c9a0 |  69 6e 65 20 3a 66 6f 72 65 67 72 6f 75 6e 64 20    22 67 72 65 65 6e 33 22 29 29 0a 20 20 22 46 61  | ine.:foreground."green3"))..."Fa | 
| 3c9c0 |  63 65 20 75 73 65 64 20 66 6f 72 20 68 65 61 64    65 72 20 6c 69 6e 65 20 77 68 65 6e 20 63 6c 65  | ce.used.for.header.line.when.cle | 
| 3c9e0 |  61 72 65 64 2d 6f 72 2d 70 65 6e 64 69 6e 67 20    62 61 6c 61 6e 63 65 20 65 71 75 61 6c 73 20 74  | ared-or-pending.balance.equals.t | 
| 3ca00 |  68 65 20 74 61 72 67 65 74 2e 22 0a 20 20 3a 67    72 6f 75 70 20 27 6c 65 64 67 65 72 2d 72 65 63  | he.target."...:group.'ledger-rec | 
| 3ca20 |  6f 6e 63 69 6c 65 29 0a 0a 3b 3b 20 73 2d 66 75    6e 63 74 69 6f 6e 73 20 62 65 6c 6f 77 20 61 72  | oncile)..;;.s-functions.below.ar | 
| 3ca40 |  65 20 63 6f 70 69 65 64 20 66 72 6f 6d 20 4d 61    67 6e 61 72 73 27 20 73 2e 65 6c 0a 3b 3b 20 70  | e.copied.from.Magnars'.s.el.;;.p | 
| 3ca60 |  72 65 66 69 78 20 6c 65 64 67 65 72 2d 72 65 63    6f 6e 63 69 6c 65 2d 20 69 73 20 61 64 64 65 64  | refix.ledger-reconcile-.is.added | 
| 3ca80 |  20 74 6f 20 6e 6f 74 20 63 6f 6e 66 6c 69 63 74    20 77 69 74 68 20 73 2e 65 6c 0a 28 64 65 66 75  | .to.not.conflict.with.s.el.(defu | 
| 3caa0 |  6e 20 6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69    6c 65 2d 73 2d 70 61 64 2d 6c 65 66 74 20 28 6c  | n.ledger-reconcile-s-pad-left.(l | 
| 3cac0 |  65 6e 20 70 61 64 64 69 6e 67 20 73 29 0a 20 20    22 49 66 20 53 20 69 73 20 73 68 6f 72 74 65 72  | en.padding.s)..."If.S.is.shorter | 
| 3cae0 |  20 74 68 61 6e 20 4c 45 4e 2c 20 70 61 64 20 69    74 20 77 69 74 68 20 50 41 44 44 49 4e 47 20 6f  | .than.LEN,.pad.it.with.PADDING.o | 
| 3cb00 |  6e 20 74 68 65 20 6c 65 66 74 2e 22 0a 20 20 28    6c 65 74 20 28 28 65 78 74 72 61 20 28 6d 61 78  | n.the.left."...(let.((extra.(max | 
| 3cb20 |  20 30 20 28 2d 20 6c 65 6e 20 28 6c 65 6e 67 74    68 20 73 29 29 29 29 29 0a 20 20 20 20 28 63 6f  | .0.(-.len.(length.s))))).....(co | 
| 3cb40 |  6e 63 61 74 20 28 6d 61 6b 65 2d 73 74 72 69 6e    67 20 65 78 74 72 61 20 28 73 74 72 69 6e 67 2d  | ncat.(make-string.extra.(string- | 
| 3cb60 |  74 6f 2d 63 68 61 72 20 70 61 64 64 69 6e 67 29    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 73 29  | to-char.padding)).............s) | 
| 3cb80 |  29 29 0a 28 64 65 66 75 6e 20 6c 65 64 67 65 72    2d 72 65 63 6f 6e 63 69 6c 65 2d 73 2d 70 61 64  | )).(defun.ledger-reconcile-s-pad | 
| 3cba0 |  2d 72 69 67 68 74 20 28 6c 65 6e 20 70 61 64 64    69 6e 67 20 73 29 0a 20 20 22 49 66 20 53 20 69  | -right.(len.padding.s)..."If.S.i | 
| 3cbc0 |  73 20 73 68 6f 72 74 65 72 20 74 68 61 6e 20 4c    45 4e 2c 20 70 61 64 20 69 74 20 77 69 74 68 20  | s.shorter.than.LEN,.pad.it.with. | 
| 3cbe0 |  50 41 44 44 49 4e 47 20 6f 6e 20 74 68 65 20 72    69 67 68 74 2e 22 0a 20 20 28 6c 65 74 20 28 28  | PADDING.on.the.right."...(let.(( | 
| 3cc00 |  65 78 74 72 61 20 28 6d 61 78 20 30 20 28 2d 20    6c 65 6e 20 28 6c 65 6e 67 74 68 20 73 29 29 29  | extra.(max.0.(-.len.(length.s))) | 
| 3cc20 |  29 29 0a 20 20 20 20 28 63 6f 6e 63 61 74 20 73    0a 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 61  | )).....(concat.s.............(ma | 
| 3cc40 |  6b 65 2d 73 74 72 69 6e 67 20 65 78 74 72 61 20    28 73 74 72 69 6e 67 2d 74 6f 2d 63 68 61 72 20  | ke-string.extra.(string-to-char. | 
| 3cc60 |  70 61 64 64 69 6e 67 29 29 29 29 29 0a 28 64 65    66 75 6e 20 6c 65 64 67 65 72 2d 72 65 63 6f 6e  | padding))))).(defun.ledger-recon | 
| 3cc80 |  63 69 6c 65 2d 73 2d 6c 65 66 74 20 28 6c 65 6e    20 73 29 0a 20 20 22 52 65 74 75 72 6e 20 75 70  | cile-s-left.(len.s)..."Return.up | 
| 3cca0 |  20 74 6f 20 74 68 65 20 4c 45 4e 20 66 69 72 73    74 20 63 68 61 72 73 20 6f 66 20 53 2e 22 0a 20  | .to.the.LEN.first.chars.of.S.".. | 
| 3ccc0 |  20 28 69 66 20 28 3e 20 28 6c 65 6e 67 74 68 20    73 29 20 6c 65 6e 29 0a 20 20 20 20 20 20 28 73  | .(if.(>.(length.s).len).......(s | 
| 3cce0 |  75 62 73 74 72 69 6e 67 20 73 20 30 20 6c 65 6e    29 0a 20 20 20 20 73 29 29 0a 28 64 65 66 75 6e  | ubstring.s.0.len).....s)).(defun | 
| 3cd00 |  20 6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69 6c    65 2d 73 2d 72 69 67 68 74 20 28 6c 65 6e 20 73  | .ledger-reconcile-s-right.(len.s | 
| 3cd20 |  29 0a 20 20 22 52 65 74 75 72 6e 20 75 70 20 74    6f 20 74 68 65 20 4c 45 4e 20 6c 61 73 74 20 63  | )..."Return.up.to.the.LEN.last.c | 
| 3cd40 |  68 61 72 73 20 6f 66 20 53 2e 22 0a 20 20 28 6c    65 74 20 28 28 6c 20 28 6c 65 6e 67 74 68 20 73  | hars.of.S."...(let.((l.(length.s | 
| 3cd60 |  29 29 29 0a 20 20 20 20 28 69 66 20 28 3e 20 6c    20 6c 65 6e 29 0a 20 20 20 20 20 20 20 20 28 73  | ))).....(if.(>.l.len).........(s | 
| 3cd80 |  75 62 73 74 72 69 6e 67 20 73 20 28 2d 20 6c 20    6c 65 6e 29 20 6c 29 0a 20 20 20 20 20 20 73 29  | ubstring.s.(-.l.len).l).......s) | 
| 3cda0 |  29 29 0a 0a 28 64 65 66 75 6e 20 6c 65 64 67 65    72 2d 72 65 63 6f 6e 63 69 6c 65 2d 74 72 75 6e  | ))..(defun.ledger-reconcile-trun | 
| 3cdc0 |  63 61 74 65 2d 72 69 67 68 74 20 28 73 74 72 20    6c 65 6e 29 0a 20 20 22 54 72 75 6e 63 61 74 65  | cate-right.(str.len)..."Truncate | 
| 3cde0 |  20 53 54 52 20 72 69 67 68 74 20 73 69 64 65 20    77 69 74 68 20 6d 61 78 20 4c 45 4e 20 63 68 61  | .STR.right.side.with.max.LEN.cha | 
| 3ce00 |  72 61 63 74 65 72 73 2c 20 61 6e 64 20 70 61 64    20 77 69 74 68 20 27 e2 80 a6 27 20 69 66 20 74  | racters,.and.pad.with.'...'.if.t | 
| 3ce20 |  72 75 6e 63 61 74 65 64 2e 22 0a 20 20 28 69 66    20 28 61 6e 64 20 28 3e 3d 20 6c 65 6e 20 30 29  | runcated."...(if.(and.(>=.len.0) | 
| 3ce40 |  20 28 3e 20 28 6c 65 6e 67 74 68 20 73 74 72 29    20 6c 65 6e 29 29 0a 20 20 20 20 20 20 28 6c 65  | .(>.(length.str).len)).......(le | 
| 3ce60 |  64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d 73    2d 70 61 64 2d 72 69 67 68 74 20 6c 65 6e 20 22  | dger-reconcile-s-pad-right.len." | 
| 3ce80 |  e2 80 a6 22 20 28 6c 65 64 67 65 72 2d 72 65 63    6f 6e 63 69 6c 65 2d 73 2d 6c 65 66 74 20 28 2d  | ...".(ledger-reconcile-s-left.(- | 
| 3cea0 |  20 6c 65 6e 20 31 29 20 73 74 72 29 29 0a 20 20    20 20 73 74 72 29 29 0a 0a 28 64 65 66 75 6e 20  | .len.1).str)).....str))..(defun. | 
| 3cec0 |  6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65    2d 74 72 75 6e 63 61 74 65 2d 6c 65 66 74 20 28  | ledger-reconcile-truncate-left.( | 
| 3cee0 |  73 74 72 20 6c 65 6e 29 0a 20 20 22 54 72 75 6e    63 61 74 65 20 53 54 52 20 6c 65 66 74 20 73 69  | str.len)..."Truncate.STR.left.si | 
| 3cf00 |  64 65 20 77 69 74 68 20 6d 61 78 20 4c 45 4e 20    63 68 61 72 61 63 74 65 72 73 2c 20 61 6e 64 20  | de.with.max.LEN.characters,.and. | 
| 3cf20 |  70 61 64 20 77 69 74 68 20 27 e2 80 a6 27 20 69    66 20 74 72 75 6e 63 61 74 65 64 2e 22 0a 20 20  | pad.with.'...'.if.truncated."... | 
| 3cf40 |  28 69 66 20 28 61 6e 64 20 28 3e 3d 20 6c 65 6e    20 30 29 20 28 3e 20 28 6c 65 6e 67 74 68 20 73  | (if.(and.(>=.len.0).(>.(length.s | 
| 3cf60 |  74 72 29 20 6c 65 6e 29 29 0a 20 20 20 20 20 20    28 6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69 6c  | tr).len)).......(ledger-reconcil | 
| 3cf80 |  65 2d 73 2d 70 61 64 2d 6c 65 66 74 20 6c 65 6e    20 22 e2 80 a6 22 20 28 6c 65 64 67 65 72 2d 72  | e-s-pad-left.len."...".(ledger-r | 
| 3cfa0 |  65 63 6f 6e 63 69 6c 65 2d 73 2d 72 69 67 68 74    20 28 2d 20 6c 65 6e 20 31 29 20 73 74 72 29 29  | econcile-s-right.(-.len.1).str)) | 
| 3cfc0 |  0a 20 20 20 20 73 74 72 29 29 0a 0a 28 64 65 66    75 6e 20 6c 65 64 67 65 72 2d 72 65 63 6f 6e 63  | .....str))..(defun.ledger-reconc | 
| 3cfe0 |  69 6c 65 2d 67 65 74 2d 63 6c 65 61 72 65 64 2d    6f 72 2d 70 65 6e 64 69 6e 67 2d 62 61 6c 61 6e  | ile-get-cleared-or-pending-balan | 
| 3d000 |  63 65 20 28 62 75 66 66 65 72 20 61 63 63 6f 75    6e 74 29 0a 20 20 22 55 73 65 20 42 55 46 46 45  | ce.(buffer.account)..."Use.BUFFE | 
| 3d020 |  52 20 74 6f 20 43 61 6c 63 75 6c 61 74 65 20 74    68 65 20 63 6c 65 61 72 65 64 20 6f 72 20 70 65  | R.to.Calculate.the.cleared.or.pe | 
| 3d040 |  6e 64 69 6e 67 20 62 61 6c 61 6e 63 65 20 6f 66    20 74 68 65 20 41 43 43 4f 55 4e 54 2e 22 0a 0a  | nding.balance.of.the.ACCOUNT.".. | 
| 3d060 |  20 20 3b 3b 20 74 68 65 73 65 20 76 61 72 73 20    61 72 65 20 62 75 66 66 65 72 20 6c 6f 63 61 6c  | ..;;.these.vars.are.buffer.local | 
| 3d080 |  2c 20 6e 65 65 64 20 74 6f 20 68 6f 6c 64 20 74    68 65 6d 20 66 6f 72 20 75 73 65 20 69 6e 20 74  | ,.need.to.hold.them.for.use.in.t | 
| 3d0a0 |  68 65 0a 20 20 3b 3b 20 74 65 6d 70 20 62 75 66    66 65 72 20 62 65 6c 6f 77 0a 0a 20 20 28 77 69  | he...;;.temp.buffer.below....(wi | 
| 3d0c0 |  74 68 2d 74 65 6d 70 2d 62 75 66 66 65 72 0a 20    20 20 20 3b 3b 20 6e 6f 74 65 20 74 68 61 74 20  | th-temp-buffer.....;;.note.that. | 
| 3d0e0 |  69 6e 20 74 68 65 20 6c 69 6e 65 20 62 65 6c 6f    77 2c 20 74 68 65 20 2d 2d 66 6f 72 6d 61 74 20  | in.the.line.below,.the.--format. | 
| 3d100 |  6f 70 74 69 6f 6e 20 69 73 0a 20 20 20 20 3b 3b    20 73 65 70 61 72 61 74 65 64 20 66 72 6f 6d 20  | option.is.....;;.separated.from. | 
| 3d120 |  74 68 65 20 61 63 74 75 61 6c 20 66 6f 72 6d 61    74 20 73 74 72 69 6e 67 2e 20 20 65 6d 61 63 73  | the.actual.format.string...emacs | 
| 3d140 |  20 64 6f 65 73 20 6e 6f 74 0a 20 20 20 20 3b 3b    20 73 70 6c 69 74 20 61 72 67 75 6d 65 6e 74 73  | .does.not.....;;.split.arguments | 
| 3d160 |  20 6c 69 6b 65 20 74 68 65 20 73 68 65 6c 6c 20    64 6f 65 73 2c 20 73 6f 20 79 6f 75 20 6e 65 65  | .like.the.shell.does,.so.you.nee | 
| 3d180 |  64 20 74 6f 0a 20 20 20 20 3b 3b 20 73 70 65 63    69 66 79 20 74 68 65 20 69 6e 64 69 76 69 64 75  | d.to.....;;.specify.the.individu | 
| 3d1a0 |  61 6c 20 66 69 65 6c 64 73 20 69 6e 20 74 68 65    20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 2e 0a 20  | al.fields.in.the.command.line... | 
| 3d1c0 |  20 20 20 28 6c 65 64 67 65 72 2d 65 78 65 63 2d    6c 65 64 67 65 72 20 62 75 66 66 65 72 20 28 63  | ...(ledger-exec-ledger.buffer.(c | 
| 3d1e0 |  75 72 72 65 6e 74 2d 62 75 66 66 65 72 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | urrent-buffer).................. | 
| 3d200 |  20 20 20 20 20 20 20 22 62 61 6c 61 6e 63 65 22    20 22 2d 2d 72 65 61 6c 22 20 22 2d 2d 6c 69 6d  | ......."balance"."--real"."--lim | 
| 3d220 |  69 74 22 20 22 63 6c 65 61 72 65 64 20 6f 72 20    70 65 6e 64 69 6e 67 22 20 22 2d 2d 65 6d 70 74  | it"."cleared.or.pending"."--empt | 
| 3d240 |  79 22 20 22 2d 2d 63 6f 6c 6c 61 70 73 65 22 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | y"."--collapse"................. | 
| 3d260 |  20 20 20 20 20 20 20 20 22 2d 2d 66 6f 72 6d 61    74 22 20 22 25 28 73 63 72 75 62 28 64 69 73 70  | ........"--format"."%(scrub(disp | 
| 3d280 |  6c 61 79 5f 74 6f 74 61 6c 29 29 22 20 61 63 63    6f 75 6e 74 29 0a 20 20 20 20 28 6c 65 64 67 65  | lay_total))".account).....(ledge | 
| 3d2a0 |  72 2d 73 70 6c 69 74 2d 63 6f 6d 6d 6f 64 69 74    79 2d 73 74 72 69 6e 67 0a 20 20 20 20 20 28 62  | r-split-commodity-string......(b | 
| 3d2c0 |  75 66 66 65 72 2d 73 75 62 73 74 72 69 6e 67 2d    6e 6f 2d 70 72 6f 70 65 72 74 69 65 73 20 28 70  | uffer-substring-no-properties.(p | 
| 3d2e0 |  6f 69 6e 74 2d 6d 69 6e 29 20 28 70 6f 69 6e 74    2d 6d 61 78 29 29 29 29 29 0a 0a 28 64 65 66 75  | oint-min).(point-max)))))..(defu | 
| 3d300 |  6e 20 6c 65 64 67 65 72 2d 64 69 73 70 6c 61 79    2d 62 61 6c 61 6e 63 65 20 28 29 0a 20 20 22 44  | n.ledger-display-balance.()..."D | 
| 3d320 |  69 73 70 6c 61 79 20 74 68 65 20 63 6c 65 61 72    65 64 2d 6f 72 2d 70 65 6e 64 69 6e 67 20 62 61  | isplay.the.cleared-or-pending.ba | 
| 3d340 |  6c 61 6e 63 65 2e 0a 41 6e 64 20 63 61 6c 63 75    6c 61 74 65 20 74 68 65 20 74 61 72 67 65 74 2d  | lance..And.calculate.the.target- | 
| 3d360 |  64 65 6c 74 61 20 6f 66 20 74 68 65 20 61 63 63    6f 75 6e 74 20 62 65 69 6e 67 20 72 65 63 6f 6e  | delta.of.the.account.being.recon | 
| 3d380 |  63 69 6c 65 64 2e 22 0a 20 20 28 69 6e 74 65 72    61 63 74 69 76 65 29 0a 20 20 28 77 68 65 6e 2d  | ciled."...(interactive)...(when- | 
| 3d3a0 |  6c 65 74 20 28 70 65 6e 64 69 6e 67 20 28 6c 65    64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d 67  | let.(pending.(ledger-reconcile-g | 
| 3d3c0 |  65 74 2d 63 6c 65 61 72 65 64 2d 6f 72 2d 70 65    6e 64 69 6e 67 2d 62 61 6c 61 6e 63 65 20 6c 65  | et-cleared-or-pending-balance.le | 
| 3d3e0 |  64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d 6c    65 64 67 65 72 2d 62 75 66 20 6c 65 64 67 65 72  | dger-reconcile-ledger-buf.ledger | 
| 3d400 |  2d 72 65 63 6f 6e 63 69 6c 65 2d 61 63 63 6f 75    6e 74 29 29 0a 20 20 20 20 28 6c 65 74 20 28 28  | -reconcile-account)).....(let.(( | 
| 3d420 |  6d 65 73 73 61 67 65 0a 20 20 20 20 20 20 20 20    20 20 20 28 69 66 2d 6c 65 74 20 28 64 69 66 66  | message............(if-let.(diff | 
| 3d440 |  20 28 61 6e 64 20 6c 65 64 67 65 72 2d 72 65 63    6f 6e 63 69 6c 65 2d 74 61 72 67 65 74 20 28 6c  | .(and.ledger-reconcile-target.(l | 
| 3d460 |  65 64 67 65 72 2d 73 75 62 74 72 61 63 74 2d 63    6f 6d 6d 6f 64 69 74 79 20 6c 65 64 67 65 72 2d  | edger-subtract-commodity.ledger- | 
| 3d480 |  72 65 63 6f 6e 63 69 6c 65 2d 74 61 72 67 65 74    20 70 65 6e 64 69 6e 67 29 29 29 0a 20 20 20 20  | reconcile-target.pending)))..... | 
| 3d4a0 |  20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 67    6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ...........(progn............... | 
| 3d4c0 |  20 20 20 28 73 65 74 71 20 6c 65 64 67 65 72 2d    72 65 63 6f 6e 63 69 6c 65 2d 6c 61 73 74 2d 62  | ...(setq.ledger-reconcile-last-b | 
| 3d4e0 |  61 6c 61 6e 63 65 2d 65 71 75 61 6c 73 2d 74 61    72 67 65 74 20 28 7a 65 72 6f 70 20 28 63 61 72  | alance-equals-target.(zerop.(car | 
| 3d500 |  20 64 69 66 66 29 29 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 66 6f 72 6d 61  | .diff)))..................(forma | 
| 3d520 |  74 2d 6d 65 73 73 61 67 65 20 22 43 6c 65 61 72    65 64 20 61 6e 64 20 50 65 6e 64 69 6e 67 20 62  | t-message."Cleared.and.Pending.b | 
| 3d540 |  61 6c 61 6e 63 65 3a 20 25 73 2c 20 20 20 44 69    66 66 65 72 65 6e 63 65 20 66 72 6f 6d 20 74 61  | alance:.%s,...Difference.from.ta | 
| 3d560 |  72 67 65 74 3a 20 25 73 22 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | rget:.%s"....................... | 
| 3d580 |  20 20 20 20 20 20 20 20 20 20 20 28 6c 65 64 67    65 72 2d 63 6f 6d 6d 6f 64 69 74 79 2d 74 6f 2d  | ...........(ledger-commodity-to- | 
| 3d5a0 |  73 74 72 69 6e 67 20 70 65 6e 64 69 6e 67 29 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | string.pending)................. | 
| 3d5c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 6c 65 64 67 65 72 2d 63 6f 6d 6d 6f 64 69  | .................(ledger-commodi | 
| 3d5e0 |  74 79 2d 74 6f 2d 73 74 72 69 6e 67 20 64 69 66    66 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20  | ty-to-string.diff)))............ | 
| 3d600 |  20 20 28 66 6f 72 6d 61 74 2d 6d 65 73 73 61 67    65 20 22 50 65 6e 64 69 6e 67 20 62 61 6c 61 6e  | ..(format-message."Pending.balan | 
| 3d620 |  63 65 3a 20 25 73 22 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ce:.%s"......................... | 
| 3d640 |  20 20 20 20 20 28 6c 65 64 67 65 72 2d 63 6f 6d    6d 6f 64 69 74 79 2d 74 6f 2d 73 74 72 69 6e 67  | .....(ledger-commodity-to-string | 
| 3d660 |  20 70 65 6e 64 69 6e 67 29 29 29 29 29 0a 20 20    20 20 20 20 28 73 65 74 71 20 6c 65 64 67 65 72  | .pending))))).......(setq.ledger | 
| 3d680 |  2d 72 65 63 6f 6e 63 69 6c 65 2d 6c 61 73 74 2d    62 61 6c 61 6e 63 65 2d 6d 65 73 73 61 67 65 20  | -reconcile-last-balance-message. | 
| 3d6a0 |  6d 65 73 73 61 67 65 29 0a 20 20 20 20 20 20 28    6d 65 73 73 61 67 65 20 22 25 73 22 20 6d 65 73  | message).......(message."%s".mes | 
| 3d6c0 |  73 61 67 65 29 29 29 29 0a 0a 28 64 65 66 75 6e    20 6c 65 64 67 65 72 2d 69 73 2d 73 74 64 69 6e  | sage))))..(defun.ledger-is-stdin | 
| 3d6e0 |  20 28 66 69 6c 65 29 0a 20 20 22 54 72 75 65 20    69 66 20 6c 65 64 67 65 72 20 46 49 4c 45 20 69  | .(file)..."True.if.ledger.FILE.i | 
| 3d700 |  73 20 73 74 61 6e 64 61 72 64 20 69 6e 70 75 74    2e 22 0a 20 20 28 6f 72 0a 20 20 20 28 65 71 75  | s.standard.input."...(or....(equ | 
| 3d720 |  61 6c 20 66 69 6c 65 20 22 22 29 0a 20 20 20 28    65 71 75 61 6c 20 66 69 6c 65 20 22 3c 73 74 64  | al.file."")....(equal.file."<std | 
| 3d740 |  69 6e 3e 22 29 0a 20 20 20 28 65 71 75 61 6c 20    66 69 6c 65 20 22 2f 64 65 76 2f 73 74 64 69 6e  | in>")....(equal.file."/dev/stdin | 
| 3d760 |  22 29 29 29 0a 0a 28 64 65 66 75 6e 20 6c 65 64    67 65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d 67 65  | ")))..(defun.ledger-reconcile-ge | 
| 3d780 |  74 2d 62 75 66 66 65 72 20 28 77 68 65 72 65 29    0a 20 20 22 52 65 74 75 72 6e 20 61 20 62 75 66  | t-buffer.(where)..."Return.a.buf | 
| 3d7a0 |  66 65 72 20 66 72 6f 6d 20 57 48 45 52 45 20 74    68 65 20 74 72 61 6e 73 61 63 74 69 6f 6e 20 69  | fer.from.WHERE.the.transaction.i | 
| 3d7c0 |  73 2e 22 0a 20 20 28 69 66 20 28 62 75 66 66 65    72 70 20 28 63 61 72 20 77 68 65 72 65 29 29 0a  | s."...(if.(bufferp.(car.where)). | 
| 3d7e0 |  20 20 20 20 20 20 28 63 61 72 20 77 68 65 72 65    29 0a 20 20 20 20 28 65 72 72 6f 72 20 22 46 75  | ......(car.where).....(error."Fu | 
| 3d800 |  6e 63 74 69 6f 6e 20 6c 65 64 67 65 72 2d 72 65    63 6f 6e 63 69 6c 65 2d 67 65 74 2d 62 75 66 66  | nction.ledger-reconcile-get-buff | 
| 3d820 |  65 72 3a 20 42 75 66 66 65 72 20 6e 6f 74 20 73    65 74 22 29 29 29 0a 0a 28 64 65 66 75 6e 20 6c  | er:.Buffer.not.set")))..(defun.l | 
| 3d840 |  65 64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d    69 6e 73 65 72 74 2d 65 66 66 65 63 74 69 76 65  | edger-reconcile-insert-effective | 
| 3d860 |  2d 64 61 74 65 20 28 29 0a 20 20 22 50 72 6f 6d    70 74 20 66 6f 72 20 61 6e 20 65 66 66 65 63 74  | -date.()..."Prompt.for.an.effect | 
| 3d880 |  69 76 65 20 64 61 74 65 20 61 6e 64 20 69 6e 73    65 72 74 20 69 74 20 61 74 20 70 6f 69 6e 74 2c  | ive.date.and.insert.it.at.point, | 
| 3d8a0 |  20 69 66 20 65 6e 61 62 6c 65 64 2e 0a 0a 49 66    20 74 68 65 20 76 61 6c 75 65 20 6f 66 20 76 61  | .if.enabled...If.the.value.of.va | 
| 3d8c0 |  72 69 61 62 6c 65 20 60 6c 65 64 67 65 72 2d 72    65 63 6f 6e 63 69 6c 65 2d 69 6e 73 65 72 74 2d  | riable.`ledger-reconcile-insert- | 
| 3d8e0 |  65 66 66 65 63 74 69 76 65 2d 64 61 74 65 27 0a    69 73 20 61 20 66 75 6e 63 74 69 6f 6e 2c 20 69  | effective-date'.is.a.function,.i | 
| 3d900 |  74 20 69 73 20 63 61 6c 6c 65 64 20 77 69 74 68    20 74 68 65 20 70 6f 69 6e 74 20 77 68 65 72 65  | t.is.called.with.the.point.where | 
| 3d920 |  20 74 68 65 20 65 66 66 65 63 74 69 76 65 0a 64    61 74 65 20 77 6f 75 6c 64 20 62 65 20 69 6e 73  | .the.effective.date.would.be.ins | 
| 3d940 |  65 72 74 65 64 2e 20 20 49 66 20 69 74 20 72 65    74 75 72 6e 73 20 6e 6f 6e 2d 6e 69 6c 2c 20 70  | erted...If.it.returns.non-nil,.p | 
| 3d960 |  72 6f 6d 70 74 20 66 6f 72 20 61 6e 0a 65 66 66    65 63 74 69 76 65 20 64 61 74 65 20 61 6e 64 20  | rompt.for.an.effective.date.and. | 
| 3d980 |  69 6e 73 65 72 74 20 69 74 20 61 74 20 70 6f 69    6e 74 2e 20 20 49 66 20 69 74 20 69 73 20 6e 6f  | insert.it.at.point...If.it.is.no | 
| 3d9a0 |  74 20 61 20 66 75 6e 63 74 69 6f 6e 2c 0a 64 6f    20 74 68 65 20 73 61 6d 65 20 69 66 20 69 74 73  | t.a.function,.do.the.same.if.its | 
| 3d9c0 |  20 76 61 6c 75 65 20 69 73 20 6e 6f 6e 2d 6e 69    6c 2e 22 0a 20 20 28 77 68 65 6e 20 28 69 66 20  | .value.is.non-nil."...(when.(if. | 
| 3d9e0 |  28 66 75 6e 63 74 69 6f 6e 70 20 6c 65 64 67 65    72 2d 72 65 63 6f 6e 63 69 6c 65 2d 69 6e 73 65  | (functionp.ledger-reconcile-inse | 
| 3da00 |  72 74 2d 65 66 66 65 63 74 69 76 65 2d 64 61 74    65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28  | rt-effective-date).............( | 
| 3da20 |  73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e 20 28    66 75 6e 63 61 6c 6c 20 6c 65 64 67 65 72 2d 72  | save-excursion.(funcall.ledger-r | 
| 3da40 |  65 63 6f 6e 63 69 6c 65 2d 69 6e 73 65 72 74 2d    65 66 66 65 63 74 69 76 65 2d 64 61 74 65 29 29  | econcile-insert-effective-date)) | 
| 3da60 |  0a 20 20 20 20 20 20 20 20 20 20 6c 65 64 67 65    72 2d 72 65 63 6f 6e 63 69 6c 65 2d 69 6e 73 65  | ...........ledger-reconcile-inse | 
| 3da80 |  72 74 2d 65 66 66 65 63 74 69 76 65 2d 64 61 74    65 29 0a 20 20 20 20 28 6c 65 64 67 65 72 2d 69  | rt-effective-date).....(ledger-i | 
| 3daa0 |  6e 73 65 72 74 2d 65 66 66 65 63 74 69 76 65 2d    64 61 74 65 29 29 29 0a 0a 28 64 65 66 75 6e 20  | nsert-effective-date)))..(defun. | 
| 3dac0 |  6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65    2d 74 6f 67 67 6c 65 20 28 29 0a 20 20 22 54 6f  | ledger-reconcile-toggle.()..."To | 
| 3dae0 |  67 67 6c 65 20 74 68 65 20 63 75 72 72 65 6e 74    20 74 72 61 6e 73 61 63 74 69 6f 6e 2c 20 61 6e  | ggle.the.current.transaction,.an | 
| 3db00 |  64 20 6d 61 72 6b 20 74 68 65 20 72 65 63 6f 6e    63 69 6c 65 20 77 69 6e 64 6f 77 2e 22 0a 20 20  | d.mark.the.reconcile.window."... | 
| 3db20 |  28 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20    28 62 65 67 69 6e 6e 69 6e 67 2d 6f 66 2d 6c 69  | (interactive)...(beginning-of-li | 
| 3db40 |  6e 65 29 0a 20 20 28 6c 65 74 20 28 28 77 68 65    72 65 20 28 67 65 74 2d 74 65 78 74 2d 70 72 6f  | ne)...(let.((where.(get-text-pro | 
| 3db60 |  70 65 72 74 79 20 28 70 6f 69 6e 74 29 20 27 77    68 65 72 65 29 29 0a 20 20 20 20 20 20 20 20 28  | perty.(point).'where)).........( | 
| 3db80 |  69 6e 68 69 62 69 74 2d 72 65 61 64 2d 6f 6e 6c    79 20 74 29 0a 20 20 20 20 20 20 20 20 73 74 61  | inhibit-read-only.t).........sta | 
| 3dba0 |  74 75 73 29 0a 20 20 20 20 28 77 68 65 6e 20 28    6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65  | tus).....(when.(ledger-reconcile | 
| 3dbc0 |  2d 67 65 74 2d 62 75 66 66 65 72 20 77 68 65 72    65 29 0a 20 20 20 20 20 20 28 77 69 74 68 2d 63  | -get-buffer.where).......(with-c | 
| 3dbe0 |  75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 28 6c    65 64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d  | urrent-buffer.(ledger-reconcile- | 
| 3dc00 |  67 65 74 2d 62 75 66 66 65 72 20 77 68 65 72 65    29 0a 20 20 20 20 20 20 20 20 28 6c 65 64 67 65  | get-buffer.where).........(ledge | 
| 3dc20 |  72 2d 6e 61 76 69 67 61 74 65 2d 74 6f 2d 6c 69    6e 65 20 28 63 64 72 20 77 68 65 72 65 29 29 0a  | r-navigate-to-line.(cdr.where)). | 
| 3dc40 |  20 20 20 20 20 20 20 20 28 66 6f 72 77 61 72 64    2d 63 68 61 72 29 0a 20 20 20 20 20 20 20 20 28  | ........(forward-char).........( | 
| 3dc60 |  73 65 74 71 20 73 74 61 74 75 73 20 28 6c 65 64    67 65 72 2d 74 6f 67 67 6c 65 2d 63 75 72 72 65  | setq.status.(ledger-toggle-curre | 
| 3dc80 |  6e 74 20 28 69 66 20 6c 65 64 67 65 72 2d 72 65    63 6f 6e 63 69 6c 65 2d 74 6f 67 67 6c 65 2d 74  | nt.(if.ledger-reconcile-toggle-t | 
| 3dca0 |  6f 2d 70 65 6e 64 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  | o-pending....................... | 
| 3dcc0 |  20 20 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 70 65 6e 64 69  | ..........................'pendi | 
| 3dce0 |  6e 67 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ng.............................. | 
| 3dd00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 27 63 6c 65 61 72 65 64 29 29 29 0a 20 20 20  | .................'cleared))).... | 
| 3dd20 |  20 20 20 20 20 3b 3b 20 41 73 6b 20 66 6f 72 20    65 66 66 65 63 74 69 76 65 20 64 61 74 65 20 26  | .....;;.Ask.for.effective.date.& | 
| 3dd40 |  20 69 6e 73 65 72 74 20 69 74 2c 20 69 66 20 65    6e 61 62 6c 65 64 0a 20 20 20 20 20 20 20 20 28  | .insert.it,.if.enabled.........( | 
| 3dd60 |  6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65    2d 69 6e 73 65 72 74 2d 65 66 66 65 63 74 69 76  | ledger-reconcile-insert-effectiv | 
| 3dd80 |  65 2d 64 61 74 65 29 29 0a 20 20 20 20 20 20 3b    3b 20 72 65 6d 6f 76 65 20 74 68 65 20 65 78 69  | e-date)).......;;.remove.the.exi | 
| 3dda0 |  73 74 69 6e 67 20 66 61 63 65 20 61 6e 64 20 61    64 64 20 74 68 65 20 6e 65 77 20 66 61 63 65 0a  | sting.face.and.add.the.new.face. | 
| 3ddc0 |  20 20 20 20 20 20 28 72 65 6d 6f 76 65 2d 74 65    78 74 2d 70 72 6f 70 65 72 74 69 65 73 20 28 6c  | ......(remove-text-properties.(l | 
| 3dde0 |  69 6e 65 2d 62 65 67 69 6e 6e 69 6e 67 2d 70 6f    73 69 74 69 6f 6e 29 0a 20 20 20 20 20 20 20 20  | ine-beginning-position)......... | 
| 3de00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 6c 69 6e 65 2d 65 6e 64 2d  | ......................(line-end- | 
| 3de20 |  70 6f 73 69 74 69 6f 6e 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | position)....................... | 
| 3de40 |  20 20 20 20 20 20 20 20 28 6c 69 73 74 20 27 66    6f 6e 74 2d 6c 6f 63 6b 2d 66 61 63 65 29 29 0a  | ........(list.'font-lock-face)). | 
| 3de60 |  20 20 20 20 20 20 28 63 6f 6e 64 20 28 28 65 71    20 73 74 61 74 75 73 20 27 70 65 6e 64 69 6e 67  | ......(cond.((eq.status.'pending | 
| 3de80 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28    61 64 64 2d 74 65 78 74 2d 70 72 6f 70 65 72 74  | )..............(add-text-propert | 
| 3dea0 |  69 65 73 20 28 6c 69 6e 65 2d 62 65 67 69 6e 6e    69 6e 67 2d 70 6f 73 69 74 69 6f 6e 29 0a 20 20  | ies.(line-beginning-position)... | 
| 3dec0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 3dee0 |  28 6c 69 6e 65 2d 65 6e 64 2d 70 6f 73 69 74 69    6f 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | (line-end-position)............. | 
| 3df00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 6c 69 73 74 20 27 66 6f 6e  | ......................(list.'fon | 
| 3df20 |  74 2d 6c 6f 63 6b 2d 66 61 63 65 20 27 6c 65 64    67 65 72 2d 66 6f 6e 74 2d 72 65 63 6f 6e 63 69  | t-lock-face.'ledger-font-reconci | 
| 3df40 |  6c 65 72 2d 70 65 6e 64 69 6e 67 2d 66 61 63 65    20 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20  | ler-pending-face.)))............ | 
| 3df60 |  20 28 28 65 71 20 73 74 61 74 75 73 20 27 63 6c    65 61 72 65 64 29 0a 20 20 20 20 20 20 20 20 20  | .((eq.status.'cleared).......... | 
| 3df80 |  20 20 20 20 28 61 64 64 2d 74 65 78 74 2d 70 72    6f 70 65 72 74 69 65 73 20 28 6c 69 6e 65 2d 62  | ....(add-text-properties.(line-b | 
| 3dfa0 |  65 67 69 6e 6e 69 6e 67 2d 70 6f 73 69 74 69 6f    6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | eginning-position).............. | 
| 3dfc0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 6c 69 6e 65 2d 65 6e 64 2d 70  | .....................(line-end-p | 
| 3dfe0 |  6f 73 69 74 69 6f 6e 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | osition)........................ | 
| 3e000 |  20 20 20 20 20 20 20 20 20 20 20 28 6c 69 73 74    20 27 66 6f 6e 74 2d 6c 6f 63 6b 2d 66 61 63 65  | ...........(list.'font-lock-face | 
| 3e020 |  20 27 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 72 65    63 6f 6e 63 69 6c 65 72 2d 63 6c 65 61 72 65 64  | .'ledger-font-reconciler-cleared | 
| 3e040 |  2d 66 61 63 65 20 29 29 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 28 74 0a 20 20 20 20 20 20 20  | -face.))).............(t........ | 
| 3e060 |  20 20 20 20 20 20 28 61 64 64 2d 74 65 78 74 2d    70 72 6f 70 65 72 74 69 65 73 20 28 6c 69 6e 65  | ......(add-text-properties.(line | 
| 3e080 |  2d 62 65 67 69 6e 6e 69 6e 67 2d 70 6f 73 69 74    69 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20  | -beginning-position)............ | 
| 3e0a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 28 6c 69 6e 65 2d 65 6e 64  | .......................(line-end | 
| 3e0c0 |  2d 70 6f 73 69 74 69 6f 6e 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | -position)...................... | 
| 3e0e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69    73 74 20 27 66 6f 6e 74 2d 6c 6f 63 6b 2d 66 61  | .............(list.'font-lock-fa | 
| 3e100 |  63 65 20 27 6c 65 64 67 65 72 2d 66 6f 6e 74 2d    72 65 63 6f 6e 63 69 6c 65 72 2d 75 6e 63 6c 65  | ce.'ledger-font-reconciler-uncle | 
| 3e120 |  61 72 65 64 2d 66 61 63 65 20 29 29 29 29 29 0a    20 20 20 20 28 66 6f 72 77 61 72 64 2d 6c 69 6e  | ared-face.))))).....(forward-lin | 
| 3e140 |  65 29 0a 20 20 20 20 28 62 65 67 69 6e 6e 69 6e    67 2d 6f 66 2d 6c 69 6e 65 29 0a 20 20 20 20 28  | e).....(beginning-of-line).....( | 
| 3e160 |  6c 65 64 67 65 72 2d 64 69 73 70 6c 61 79 2d 62    61 6c 61 6e 63 65 29 29 29 0a 0a 28 64 65 66 75  | ledger-display-balance)))..(defu | 
| 3e180 |  6e 20 6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69    6c 65 2d 72 65 66 72 65 73 68 20 28 29 0a 20 20  | n.ledger-reconcile-refresh.()... | 
| 3e1a0 |  22 46 6f 72 63 65 20 74 68 65 20 72 65 63 6f 6e    63 69 6c 69 61 74 69 6f 6e 20 77 69 6e 64 6f 77  | "Force.the.reconciliation.window | 
| 3e1c0 |  20 74 6f 20 72 65 66 72 65 73 68 2e 0a 52 65 74    75 72 6e 20 74 68 65 20 6e 75 6d 62 65 72 20 6f  | .to.refresh..Return.the.number.o | 
| 3e1e0 |  66 20 75 6e 63 6c 65 61 72 65 64 20 78 61 63 74    73 20 66 6f 75 6e 64 2e 22 0a 20 20 28 69 6e 74  | f.uncleared.xacts.found."...(int | 
| 3e200 |  65 72 61 63 74 69 76 65 29 0a 20 20 28 6c 65 74    20 28 28 69 6e 68 69 62 69 74 2d 72 65 61 64 2d  | eractive)...(let.((inhibit-read- | 
| 3e220 |  6f 6e 6c 79 20 74 29 0a 20 20 20 20 20 20 20 20    28 6c 69 6e 65 20 28 63 6f 75 6e 74 2d 6c 69 6e  | only.t).........(line.(count-lin | 
| 3e240 |  65 73 20 28 70 6f 69 6e 74 2d 6d 69 6e 29 20 28    70 6f 69 6e 74 29 29 29 29 0a 20 20 20 20 28 65  | es.(point-min).(point)))).....(e | 
| 3e260 |  72 61 73 65 2d 62 75 66 66 65 72 29 0a 20 20 20    20 28 70 72 6f 67 31 0a 20 20 20 20 20 20 20 20  | rase-buffer).....(prog1......... | 
| 3e280 |  28 6c 65 64 67 65 72 2d 64 6f 2d 72 65 63 6f 6e    63 69 6c 65 20 6c 65 64 67 65 72 2d 72 65 63 6f  | (ledger-do-reconcile.ledger-reco | 
| 3e2a0 |  6e 63 69 6c 65 2d 73 6f 72 74 2d 6b 65 79 29 0a    20 20 20 20 20 20 28 73 65 74 2d 62 75 66 66 65  | ncile-sort-key).......(set-buffe | 
| 3e2c0 |  72 2d 6d 6f 64 69 66 69 65 64 2d 70 20 74 29 0a    20 20 20 20 20 20 28 6c 65 64 67 65 72 2d 72 65  | r-modified-p.t).......(ledger-re | 
| 3e2e0 |  63 6f 6e 63 69 6c 65 2d 65 6e 73 75 72 65 2d 78    61 63 74 73 2d 76 69 73 69 62 6c 65 29 0a 20 20  | concile-ensure-xacts-visible)... | 
| 3e300 |  20 20 20 20 28 6c 65 64 67 65 72 2d 64 69 73 70    6c 61 79 2d 62 61 6c 61 6e 63 65 29 0a 20 20 20  | ....(ledger-display-balance).... | 
| 3e320 |  20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 70    6f 69 6e 74 2d 6d 69 6e 29 29 0a 20 20 20 20 20  | ...(goto-char.(point-min))...... | 
| 3e340 |  20 28 66 6f 72 77 61 72 64 2d 6c 69 6e 65 20 6c    69 6e 65 29 29 29 29 0a 0a 28 64 65 66 75 6e 20  | .(forward-line.line))))..(defun. | 
| 3e360 |  6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65    2d 72 65 66 72 65 73 68 2d 61 66 74 65 72 2d 73  | ledger-reconcile-refresh-after-s | 
| 3e380 |  61 76 65 20 28 29 0a 20 20 22 52 65 66 72 65 73    68 20 74 68 65 20 72 65 63 6f 6e 63 69 6c 65 20  | ave.()..."Refresh.the.reconcile. | 
| 3e3a0 |  77 69 6e 64 6f 77 20 61 66 74 65 72 20 74 68 65    20 6c 65 64 67 65 72 20 62 75 66 66 65 72 20 69  | window.after.the.ledger.buffer.i | 
| 3e3c0 |  73 20 73 61 76 65 64 2e 22 0a 20 20 28 6c 65 74    20 28 28 63 75 72 62 75 66 77 69 6e 20 28 67 65  | s.saved."...(let.((curbufwin.(ge | 
| 3e3e0 |  74 2d 62 75 66 66 65 72 2d 77 69 6e 64 6f 77 20    28 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 29  | t-buffer-window.(current-buffer) | 
| 3e400 |  29 29 0a 20 20 20 20 20 20 20 20 28 63 75 72 70    6f 69 6e 74 20 28 70 6f 69 6e 74 29 29 0a 20 20  | )).........(curpoint.(point))... | 
| 3e420 |  20 20 20 20 20 20 28 72 65 63 6f 6e 63 69 6c 65    2d 62 75 66 20 28 67 65 74 2d 62 75 66 66 65 72  | ......(reconcile-buf.(get-buffer | 
| 3e440 |  20 6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69 6c    65 2d 62 75 66 66 65 72 2d 6e 61 6d 65 29 29 29  | .ledger-reconcile-buffer-name))) | 
| 3e460 |  0a 20 20 20 20 28 77 68 65 6e 20 28 62 75 66 66    65 72 2d 6c 69 76 65 2d 70 20 72 65 63 6f 6e 63  | .....(when.(buffer-live-p.reconc | 
| 3e480 |  69 6c 65 2d 62 75 66 29 0a 20 20 20 20 20 20 28    77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66  | ile-buf).......(with-current-buf | 
| 3e4a0 |  66 65 72 20 72 65 63 6f 6e 63 69 6c 65 2d 62 75    66 0a 20 20 20 20 20 20 20 20 28 6c 65 64 67 65  | fer.reconcile-buf.........(ledge | 
| 3e4c0 |  72 2d 72 65 63 6f 6e 63 69 6c 65 2d 72 65 66 72    65 73 68 29 0a 20 20 20 20 20 20 20 20 28 73 65  | r-reconcile-refresh).........(se | 
| 3e4e0 |  74 2d 62 75 66 66 65 72 2d 6d 6f 64 69 66 69 65    64 2d 70 20 6e 69 6c 29 29 0a 20 20 20 20 20 20  | t-buffer-modified-p.nil))....... | 
| 3e500 |  28 77 68 65 6e 20 63 75 72 62 75 66 77 69 6e 0a    20 20 20 20 20 20 20 20 28 73 65 6c 65 63 74 2d  | (when.curbufwin.........(select- | 
| 3e520 |  77 69 6e 64 6f 77 20 63 75 72 62 75 66 77 69 6e    29 0a 20 20 20 20 20 20 20 20 28 67 6f 74 6f 2d  | window.curbufwin).........(goto- | 
| 3e540 |  63 68 61 72 20 63 75 72 70 6f 69 6e 74 29 0a 20    20 20 20 20 20 20 20 28 72 65 63 65 6e 74 65 72  | char.curpoint).........(recenter | 
| 3e560 |  29 0a 20 20 20 20 20 20 20 20 28 6c 65 64 67 65    72 2d 68 69 67 68 6c 69 67 68 74 2d 78 61 63 74  | ).........(ledger-highlight-xact | 
| 3e580 |  2d 75 6e 64 65 72 2d 70 6f 69 6e 74 29 29 29 29    29 0a 0a 28 64 65 66 75 6e 20 6c 65 64 67 65 72  | -under-point)))))..(defun.ledger | 
| 3e5a0 |  2d 72 65 63 6f 6e 63 69 6c 65 2d 61 64 64 20 28    64 61 74 65 20 78 61 63 74 29 0a 20 20 22 55 73  | -reconcile-add.(date.xact)..."Us | 
| 3e5c0 |  65 20 6c 65 64 67 65 72 20 78 61 63 74 20 74 6f    20 61 64 64 20 61 20 6e 65 77 20 74 72 61 6e 73  | e.ledger.xact.to.add.a.new.trans | 
| 3e5e0 |  61 63 74 69 6f 6e 2e 0a 0a 57 68 65 6e 20 63 61    6c 6c 65 64 20 69 6e 74 65 72 61 63 74 69 76 65  | action...When.called.interactive | 
| 3e600 |  6c 79 2c 20 70 72 6f 6d 70 74 20 66 6f 72 20 44    41 54 45 2c 20 74 68 65 6e 20 58 41 43 54 2e 22  | ly,.prompt.for.DATE,.then.XACT." | 
| 3e620 |  0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 0a    20 20 20 28 6c 69 73 74 20 28 6c 65 64 67 65 72  | ...(interactive....(list.(ledger | 
| 3e640 |  2d 72 65 61 64 2d 64 61 74 65 20 22 44 61 74 65    3a 20 22 29 0a 20 20 20 20 20 20 20 20 20 28 72  | -read-date."Date:.")..........(r | 
| 3e660 |  65 61 64 2d 73 74 72 69 6e 67 20 22 54 72 61 6e    73 61 63 74 69 6f 6e 3a 20 22 20 6e 69 6c 20 27  | ead-string."Transaction:.".nil.' | 
| 3e680 |  6c 65 64 67 65 72 2d 6d 69 6e 69 62 75 66 66 65    72 2d 68 69 73 74 6f 72 79 29 29 29 0a 20 20 28  | ledger-minibuffer-history)))...( | 
| 3e6a0 |  77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66    66 65 72 20 6c 65 64 67 65 72 2d 72 65 63 6f 6e  | with-current-buffer.ledger-recon | 
| 3e6c0 |  63 69 6c 65 2d 6c 65 64 67 65 72 2d 62 75 66 0a    20 20 20 20 28 6c 65 64 67 65 72 2d 61 64 64 2d  | cile-ledger-buf.....(ledger-add- | 
| 3e6e0 |  74 72 61 6e 73 61 63 74 69 6f 6e 20 28 63 6f 6e    63 61 74 20 64 61 74 65 20 22 20 22 20 78 61 63  | transaction.(concat.date.".".xac | 
| 3e700 |  74 29 29 29 0a 20 20 28 6c 65 64 67 65 72 2d 72    65 63 6f 6e 63 69 6c 65 2d 72 65 66 72 65 73 68  | t)))...(ledger-reconcile-refresh | 
| 3e720 |  29 29 0a 0a 28 64 65 66 75 6e 20 6c 65 64 67 65    72 2d 72 65 63 6f 6e 63 69 6c 65 2d 64 65 6c 65  | ))..(defun.ledger-reconcile-dele | 
| 3e740 |  74 65 20 28 29 0a 20 20 22 44 65 6c 65 74 65 20    74 68 65 20 74 72 61 6e 73 61 63 74 69 6f 6e 73  | te.()..."Delete.the.transactions | 
| 3e760 |  20 70 6f 69 6e 74 65 64 20 74 6f 20 69 6e 20 74    68 65 20 72 65 63 6f 6e 63 69 6c 65 20 77 69 6e  | .pointed.to.in.the.reconcile.win | 
| 3e780 |  64 6f 77 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 77  | dow."...(interactive)...(let.((w | 
| 3e7a0 |  68 65 72 65 20 28 67 65 74 2d 74 65 78 74 2d 70    72 6f 70 65 72 74 79 20 28 70 6f 69 6e 74 29 20  | here.(get-text-property.(point). | 
| 3e7c0 |  27 77 68 65 72 65 29 29 29 0a 20 20 20 20 28 77    68 65 6e 20 28 6c 65 64 67 65 72 2d 72 65 63 6f  | 'where))).....(when.(ledger-reco | 
| 3e7e0 |  6e 63 69 6c 65 2d 67 65 74 2d 62 75 66 66 65 72    20 77 68 65 72 65 29 0a 20 20 20 20 20 20 28 77  | ncile-get-buffer.where).......(w | 
| 3e800 |  69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66    65 72 20 28 6c 65 64 67 65 72 2d 72 65 63 6f 6e  | ith-current-buffer.(ledger-recon | 
| 3e820 |  63 69 6c 65 2d 67 65 74 2d 62 75 66 66 65 72 20    77 68 65 72 65 29 0a 20 20 20 20 20 20 20 20 28  | cile-get-buffer.where).........( | 
| 3e840 |  6c 65 64 67 65 72 2d 6e 61 76 69 67 61 74 65 2d    74 6f 2d 6c 69 6e 65 20 28 63 64 72 20 77 68 65  | ledger-navigate-to-line.(cdr.whe | 
| 3e860 |  72 65 29 29 0a 20 20 20 20 20 20 20 20 28 6c 65    64 67 65 72 2d 64 65 6c 65 74 65 2d 63 75 72 72  | re)).........(ledger-delete-curr | 
| 3e880 |  65 6e 74 2d 74 72 61 6e 73 61 63 74 69 6f 6e 20    28 70 6f 69 6e 74 29 29 29 0a 20 20 20 20 20 20  | ent-transaction.(point)))....... | 
| 3e8a0 |  28 6c 65 74 20 28 28 69 6e 68 69 62 69 74 2d 72    65 61 64 2d 6f 6e 6c 79 20 74 29 29 0a 20 20 20  | (let.((inhibit-read-only.t)).... | 
| 3e8c0 |  20 20 20 20 20 28 64 65 6c 65 74 65 2d 72 65 67    69 6f 6e 20 28 6c 69 6e 65 2d 62 65 67 69 6e 6e  | .....(delete-region.(line-beginn | 
| 3e8e0 |  69 6e 67 2d 70 6f 73 69 74 69 6f 6e 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ing-position)................... | 
| 3e900 |  20 20 20 20 20 28 6d 69 6e 20 28 31 2b 20 28 6c    69 6e 65 2d 65 6e 64 2d 70 6f 73 69 74 69 6f 6e  | .....(min.(1+.(line-end-position | 
| 3e920 |  29 29 20 28 70 6f 69 6e 74 2d 6d 61 78 29 29 29    0a 20 20 20 20 20 20 20 20 28 73 65 74 2d 62 75  | )).(point-max))).........(set-bu | 
| 3e940 |  66 66 65 72 2d 6d 6f 64 69 66 69 65 64 2d 70 20    74 29 29 0a 20 20 20 20 20 20 28 6c 65 64 67 65  | ffer-modified-p.t)).......(ledge | 
| 3e960 |  72 2d 72 65 63 6f 6e 63 69 6c 65 2d 72 65 66 72    65 73 68 29 0a 20 20 20 20 20 20 28 6c 65 64 67  | r-reconcile-refresh).......(ledg | 
| 3e980 |  65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d 76 69 73    69 74 20 74 29 29 29 29 0a 0a 28 64 65 66 75 6e  | er-reconcile-visit.t))))..(defun | 
| 3e9a0 |  20 6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69 6c    65 2d 76 69 73 69 74 20 28 26 6f 70 74 69 6f 6e  | .ledger-reconcile-visit.(&option | 
| 3e9c0 |  61 6c 20 63 6f 6d 65 2d 62 61 63 6b 29 0a 20 20    22 52 65 63 65 6e 74 65 72 20 6c 65 64 67 65 72  | al.come-back)..."Recenter.ledger | 
| 3e9e0 |  20 62 75 66 66 65 72 20 6f 6e 20 74 72 61 6e 73    61 63 74 69 6f 6e 20 61 6e 64 20 43 4f 4d 45 2d  | .buffer.on.transaction.and.COME- | 
| 3ea00 |  42 41 43 4b 20 69 66 20 6e 6f 6e 2d 6e 69 6c 2e    22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65  | BACK.if.non-nil."...(interactive | 
| 3ea20 |  29 0a 20 20 28 62 65 67 69 6e 6e 69 6e 67 2d 6f    66 2d 6c 69 6e 65 29 0a 20 20 28 6c 65 74 2a 20  | )...(beginning-of-line)...(let*. | 
| 3ea40 |  28 28 77 68 65 72 65 20 28 67 65 74 2d 74 65 78    74 2d 70 72 6f 70 65 72 74 79 20 28 31 2b 20 28  | ((where.(get-text-property.(1+.( | 
| 3ea60 |  70 6f 69 6e 74 29 29 20 27 77 68 65 72 65 29 29    0a 20 20 20 20 20 20 20 20 20 28 74 61 72 67 65  | point)).'where))..........(targe | 
| 3ea80 |  74 2d 62 75 66 66 65 72 20 28 69 66 20 77 68 65    72 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | t-buffer.(if.where.............. | 
| 3eaa0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65  | ...............(ledger-reconcile | 
| 3eac0 |  2d 67 65 74 2d 62 75 66 66 65 72 20 77 68 65 72    65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | -get-buffer.where).............. | 
| 3eae0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 6e 69 6c    29 29 0a 20 20 20 20 20 20 20 20 20 28 63 75 72  | .............nil))..........(cur | 
| 3eb00 |  2d 77 69 6e 20 28 67 65 74 2d 62 75 66 66 65 72    2d 77 69 6e 64 6f 77 20 28 67 65 74 2d 62 75 66  | -win.(get-buffer-window.(get-buf | 
| 3eb20 |  66 65 72 20 6c 65 64 67 65 72 2d 72 65 63 6f 6e    63 69 6c 65 2d 62 75 66 66 65 72 2d 6e 61 6d 65  | fer.ledger-reconcile-buffer-name | 
| 3eb40 |  29 29 29 29 0a 20 20 20 20 28 77 68 65 6e 20 74    61 72 67 65 74 2d 62 75 66 66 65 72 0a 20 20 20  | )))).....(when.target-buffer.... | 
| 3eb60 |  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 2d 77 69 6e 64 6f  | ...(switch-to-buffer-other-windo | 
| 3eb80 |  77 20 74 61 72 67 65 74 2d 62 75 66 66 65 72 29    0a 20 20 20 20 20 20 28 6c 65 64 67 65 72 2d 6e  | w.target-buffer).......(ledger-n | 
| 3eba0 |  61 76 69 67 61 74 65 2d 74 6f 2d 6c 69 6e 65 20    28 63 64 72 20 77 68 65 72 65 29 29 0a 20 20 20  | avigate-to-line.(cdr.where)).... | 
| 3ebc0 |  20 20 20 28 66 6f 72 77 61 72 64 2d 63 68 61 72    29 0a 20 20 20 20 20 20 28 72 65 63 65 6e 74 65  | ...(forward-char).......(recente | 
| 3ebe0 |  72 29 0a 20 20 20 20 20 20 28 6c 65 64 67 65 72    2d 68 69 67 68 6c 69 67 68 74 2d 78 61 63 74 2d  | r).......(ledger-highlight-xact- | 
| 3ec00 |  75 6e 64 65 72 2d 70 6f 69 6e 74 29 0a 20 20 20    20 20 20 28 66 6f 72 77 61 72 64 2d 63 68 61 72  | under-point).......(forward-char | 
| 3ec20 |  20 2d 31 29 0a 20 20 20 20 20 20 28 77 68 65 6e    20 28 61 6e 64 20 63 6f 6d 65 2d 62 61 63 6b 20  | .-1).......(when.(and.come-back. | 
| 3ec40 |  63 75 72 2d 77 69 6e 29 0a 20 20 20 20 20 20 20    20 28 73 65 6c 65 63 74 2d 77 69 6e 64 6f 77 20  | cur-win).........(select-window. | 
| 3ec60 |  63 75 72 2d 77 69 6e 29 0a 20 20 20 20 20 20 20    20 28 67 65 74 2d 62 75 66 66 65 72 20 6c 65 64  | cur-win).........(get-buffer.led | 
| 3ec80 |  67 65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d 62 75    66 66 65 72 2d 6e 61 6d 65 29 29 29 29 29 0a 0a  | ger-reconcile-buffer-name))))).. | 
| 3eca0 |  0a 28 64 65 66 75 6e 20 6c 65 64 67 65 72 2d 72    65 63 6f 6e 63 69 6c 65 2d 73 61 76 65 20 28 29  | .(defun.ledger-reconcile-save.() | 
| 3ecc0 |  0a 20 20 22 53 61 76 65 20 74 68 65 20 6c 65 64    67 65 72 20 62 75 66 66 65 72 2e 22 0a 20 20 28  | ..."Save.the.ledger.buffer."...( | 
| 3ece0 |  69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20 28    77 69 74 68 2d 73 65 6c 65 63 74 65 64 2d 77 69  | interactive)...(with-selected-wi | 
| 3ed00 |  6e 64 6f 77 20 28 73 65 6c 65 63 74 65 64 2d 77    69 6e 64 6f 77 29 20 3b 20 72 65 73 74 6f 72 69  | ndow.(selected-window).;.restori | 
| 3ed20 |  6e 67 20 77 69 6e 64 6f 77 20 69 73 20 6e 65 65    64 65 64 20 62 65 63 61 75 73 65 20 61 66 74 65  | ng.window.is.needed.because.afte | 
| 3ed40 |  72 2d 73 61 76 65 2d 68 6f 6f 6b 20 77 69 6c 6c    20 6d 6f 64 69 66 79 20 77 69 6e 64 6f 77 20 61  | r-save-hook.will.modify.window.a | 
| 3ed60 |  6e 64 20 62 75 66 66 65 72 73 0a 20 20 20 20 28    77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66  | nd.buffers.....(with-current-buf | 
| 3ed80 |  66 65 72 20 6c 65 64 67 65 72 2d 72 65 63 6f 6e    63 69 6c 65 2d 6c 65 64 67 65 72 2d 62 75 66 0a  | fer.ledger-reconcile-ledger-buf. | 
| 3eda0 |  20 20 20 20 20 20 28 62 61 73 69 63 2d 73 61 76    65 2d 62 75 66 66 65 72 29 29 29 29 0a 0a 0a 28  | ......(basic-save-buffer))))...( | 
| 3edc0 |  64 65 66 75 6e 20 6c 65 64 67 65 72 2d 72 65 63    6f 6e 63 69 6c 65 2d 66 69 6e 69 73 68 20 28 29  | defun.ledger-reconcile-finish.() | 
| 3ede0 |  0a 20 20 22 4d 61 72 6b 20 61 6c 6c 20 70 65 6e    64 69 6e 67 20 70 6f 73 74 69 6e 67 20 6f 72 20  | ..."Mark.all.pending.posting.or. | 
| 3ee00 |  74 72 61 6e 73 61 63 74 69 6f 6e 73 20 61 73 20    63 6c 65 61 72 65 64 2e 0a 44 65 70 65 6e 64 73  | transactions.as.cleared..Depends | 
| 3ee20 |  20 6f 6e 20 6c 65 64 67 65 72 2d 63 6c 65 61 72    2d 77 68 6f 6c 65 2d 74 72 61 6e 73 61 63 74 69  | .on.ledger-clear-whole-transacti | 
| 3ee40 |  6f 6e 73 2c 20 73 61 76 65 20 74 68 65 20 62 75    66 66 65 72 73 20 61 6e 64 0a 65 78 69 74 20 72  | ons,.save.the.buffers.and.exit.r | 
| 3ee60 |  65 63 6f 6e 63 69 6c 65 20 6d 6f 64 65 20 69 66    20 60 6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69  | econcile.mode.if.`ledger-reconci | 
| 3ee80 |  6c 65 2d 66 69 6e 69 73 68 2d 66 6f 72 63 65 2d    71 75 69 74 27 22 0a 20 20 28 69 6e 74 65 72 61  | le-finish-force-quit'"...(intera | 
| 3eea0 |  63 74 69 76 65 29 0a 20 20 28 73 61 76 65 2d 65    78 63 75 72 73 69 6f 6e 0a 20 20 20 20 28 67 6f  | ctive)...(save-excursion.....(go | 
| 3eec0 |  74 6f 2d 63 68 61 72 20 28 70 6f 69 6e 74 2d 6d    69 6e 29 29 0a 20 20 20 20 28 77 68 69 6c 65 20  | to-char.(point-min)).....(while. | 
| 3eee0 |  28 6e 6f 74 20 28 65 6f 62 70 29 29 0a 20 20 20    20 20 20 28 6c 65 74 20 28 28 77 68 65 72 65 20  | (not.(eobp)).......(let.((where. | 
| 3ef00 |  28 67 65 74 2d 74 65 78 74 2d 70 72 6f 70 65 72    74 79 20 28 70 6f 69 6e 74 29 20 27 77 68 65 72  | (get-text-property.(point).'wher | 
| 3ef20 |  65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    28 66 61 63 65 20 20 28 67 65 74 2d 74 65 78 74  | e)).............(face..(get-text | 
| 3ef40 |  2d 70 72 6f 70 65 72 74 79 20 28 70 6f 69 6e 74    29 20 27 66 6f 6e 74 2d 6c 6f 63 6b 2d 66 61 63  | -property.(point).'font-lock-fac | 
| 3ef60 |  65 29 29 29 0a 20 20 20 20 20 20 20 20 28 69 66    20 28 65 71 20 66 61 63 65 20 27 6c 65 64 67 65  | e))).........(if.(eq.face.'ledge | 
| 3ef80 |  72 2d 66 6f 6e 74 2d 72 65 63 6f 6e 63 69 6c 65    72 2d 70 65 6e 64 69 6e 67 2d 66 61 63 65 29 0a  | r-font-reconciler-pending-face). | 
| 3efa0 |  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 75 66 66 65 72  | ............(with-current-buffer | 
| 3efc0 |  20 28 6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69    6c 65 2d 67 65 74 2d 62 75 66 66 65 72 20 77 68  | .(ledger-reconcile-get-buffer.wh | 
| 3efe0 |  65 72 65 29 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 6c 65 64 67 65 72 2d 6e 61 76 69 67  | ere)...............(ledger-navig | 
| 3f000 |  61 74 65 2d 74 6f 2d 6c 69 6e 65 20 28 63 64 72    20 77 68 65 72 65 29 29 0a 20 20 20 20 20 20 20  | ate-to-line.(cdr.where))........ | 
| 3f020 |  20 20 20 20 20 20 20 28 6c 65 64 67 65 72 2d 74    6f 67 67 6c 65 2d 63 75 72 72 65 6e 74 20 27 63  | .......(ledger-toggle-current.'c | 
| 3f040 |  6c 65 61 72 65 64 29 29 29 29 0a 20 20 20 20 20    20 28 66 6f 72 77 61 72 64 2d 6c 69 6e 65 20 31  | leared)))).......(forward-line.1 | 
| 3f060 |  29 29 29 0a 20 20 28 6c 65 64 67 65 72 2d 72 65    63 6f 6e 63 69 6c 65 2d 73 61 76 65 29 0a 20 20  | )))...(ledger-reconcile-save)... | 
| 3f080 |  28 77 68 65 6e 20 6c 65 64 67 65 72 2d 72 65 63    6f 6e 63 69 6c 65 2d 66 69 6e 69 73 68 2d 66 6f  | (when.ledger-reconcile-finish-fo | 
| 3f0a0 |  72 63 65 2d 71 75 69 74 0a 20 20 20 20 28 6c 65    64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d 71  | rce-quit.....(ledger-reconcile-q | 
| 3f0c0 |  75 69 74 29 29 29 0a 0a 0a 28 64 65 66 75 6e 20    6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65  | uit)))...(defun.ledger-reconcile | 
| 3f0e0 |  2d 71 75 69 74 20 28 29 0a 20 20 22 51 75 69 74    20 74 68 65 20 72 65 63 6f 6e 63 69 6c 65 20 77  | -quit.()..."Quit.the.reconcile.w | 
| 3f100 |  69 6e 64 6f 77 20 77 69 74 68 6f 75 74 20 73 61    76 69 6e 67 20 6c 65 64 67 65 72 20 62 75 66 66  | indow.without.saving.ledger.buff | 
| 3f120 |  65 72 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 72 65  | er."...(interactive)...(let.((re | 
| 3f140 |  63 6f 6e 63 69 6c 65 2d 62 75 66 20 28 67 65 74    2d 62 75 66 66 65 72 20 6c 65 64 67 65 72 2d 72  | concile-buf.(get-buffer.ledger-r | 
| 3f160 |  65 63 6f 6e 63 69 6c 65 2d 62 75 66 66 65 72 2d    6e 61 6d 65 29 29 0a 20 20 20 20 20 20 20 20 62  | econcile-buffer-name)).........b | 
| 3f180 |  75 66 29 0a 20 20 20 20 28 69 66 20 72 65 63 6f    6e 63 69 6c 65 2d 62 75 66 0a 20 20 20 20 20 20  | uf).....(if.reconcile-buf....... | 
| 3f1a0 |  20 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d    62 75 66 66 65 72 20 72 65 63 6f 6e 63 69 6c 65  | ..(with-current-buffer.reconcile | 
| 3f1c0 |  2d 62 75 66 0a 20 20 20 20 20 20 20 20 20 20 28    6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65  | -buf...........(ledger-reconcile | 
| 3f1e0 |  2d 71 75 69 74 2d 63 6c 65 61 6e 75 70 29 0a 20    20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 62  | -quit-cleanup)...........(setq.b | 
| 3f200 |  75 66 20 6c 65 64 67 65 72 2d 72 65 63 6f 6e 63    69 6c 65 2d 6c 65 64 67 65 72 2d 62 75 66 29 0a  | uf.ledger-reconcile-ledger-buf). | 
| 3f220 |  20 20 20 20 20 20 20 20 20 20 3b 3b 20 4d 61 6b    65 20 73 75 72 65 20 79 6f 75 20 64 65 6c 65 74  | ..........;;.Make.sure.you.delet | 
| 3f240 |  65 20 74 68 65 20 77 69 6e 64 6f 77 20 62 65 66    6f 72 65 20 79 6f 75 20 64 65 6c 65 74 65 20 74  | e.the.window.before.you.delete.t | 
| 3f260 |  68 65 20 62 75 66 66 65 72 2c 0a 20 20 20 20 20    20 20 20 20 20 3b 3b 20 6f 74 68 65 72 77 69 73  | he.buffer,...........;;.otherwis | 
| 3f280 |  65 2c 20 6d 61 64 6e 65 73 73 20 65 6e 73 75 65    73 0a 20 20 20 20 20 20 20 20 20 20 28 64 65 6c  | e,.madness.ensues...........(del | 
| 3f2a0 |  65 74 65 2d 77 69 6e 64 6f 77 20 28 67 65 74 2d    62 75 66 66 65 72 2d 77 69 6e 64 6f 77 20 72 65  | ete-window.(get-buffer-window.re | 
| 3f2c0 |  63 6f 6e 63 69 6c 65 2d 62 75 66 29 29 0a 20 20    20 20 20 20 20 20 20 20 28 6b 69 6c 6c 2d 62 75  | concile-buf))...........(kill-bu | 
| 3f2e0 |  66 66 65 72 20 72 65 63 6f 6e 63 69 6c 65 2d 62    75 66 29 0a 20 20 20 20 20 20 20 20 20 20 28 73  | ffer.reconcile-buf)...........(s | 
| 3f300 |  65 74 2d 77 69 6e 64 6f 77 2d 62 75 66 66 65 72    20 28 73 65 6c 65 63 74 65 64 2d 77 69 6e 64 6f  | et-window-buffer.(selected-windo | 
| 3f320 |  77 29 20 62 75 66 29 29 29 29 29 0a 0a 28 64 65    66 75 6e 20 6c 65 64 67 65 72 2d 72 65 63 6f 6e  | w).buf)))))..(defun.ledger-recon | 
| 3f340 |  63 69 6c 65 2d 71 75 69 74 2d 63 6c 65 61 6e 75    70 20 28 29 0a 20 20 22 43 6c 65 61 6e 75 70 20  | cile-quit-cleanup.()..."Cleanup. | 
| 3f360 |  61 6c 6c 20 68 6f 6f 6b 73 20 65 73 74 61 62 6c    69 73 68 65 64 20 62 79 20 72 65 63 6f 6e 63 69  | all.hooks.established.by.reconci | 
| 3f380 |  6c 65 20 6d 6f 64 65 2e 22 0a 20 20 28 69 6e 74    65 72 61 63 74 69 76 65 29 0a 20 20 28 6c 65 74  | le.mode."...(interactive)...(let | 
| 3f3a0 |  20 28 28 62 75 66 20 6c 65 64 67 65 72 2d 72 65    63 6f 6e 63 69 6c 65 2d 6c 65 64 67 65 72 2d 62  | .((buf.ledger-reconcile-ledger-b | 
| 3f3c0 |  75 66 29 29 0a 20 20 20 20 28 69 66 20 28 62 75    66 66 65 72 2d 6c 69 76 65 2d 70 20 62 75 66 29  | uf)).....(if.(buffer-live-p.buf) | 
| 3f3e0 |  0a 20 20 20 20 20 20 20 20 28 77 69 74 68 2d 63    75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 62 75  | .........(with-current-buffer.bu | 
| 3f400 |  66 0a 20 20 20 20 20 20 20 20 20 20 28 72 65 6d    6f 76 65 2d 68 6f 6f 6b 20 27 61 66 74 65 72 2d  | f...........(remove-hook.'after- | 
| 3f420 |  73 61 76 65 2d 68 6f 6f 6b 20 27 6c 65 64 67 65    72 2d 72 65 63 6f 6e 63 69 6c 65 2d 72 65 66 72  | save-hook.'ledger-reconcile-refr | 
| 3f440 |  65 73 68 2d 61 66 74 65 72 2d 73 61 76 65 20 74    29 0a 20 20 20 20 20 20 20 20 20 20 28 77 68 65  | esh-after-save.t)...........(whe | 
| 3f460 |  6e 20 6c 65 64 67 65 72 2d 6e 61 72 72 6f 77 2d    6f 6e 2d 72 65 63 6f 6e 63 69 6c 65 0a 20 20 20  | n.ledger-narrow-on-reconcile.... | 
| 3f480 |  20 20 20 20 20 20 20 20 20 28 6c 65 64 67 65 72    2d 6f 63 63 75 72 2d 6d 6f 64 65 20 2d 31 29 0a  | .........(ledger-occur-mode.-1). | 
| 3f4a0 |  20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 64    67 65 72 2d 68 69 67 68 6c 69 67 68 74 2d 78 61  | ............(ledger-highlight-xa | 
| 3f4c0 |  63 74 2d 75 6e 64 65 72 2d 70 6f 69 6e 74 29 29    29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6c 65 64  | ct-under-point))))))..(defun.led | 
| 3f4e0 |  67 65 72 2d 6d 61 72 6b 65 72 2d 77 68 65 72 65    2d 78 61 63 74 2d 69 73 20 28 65 6d 61 63 73 2d  | ger-marker-where-xact-is.(emacs- | 
| 3f500 |  78 61 63 74 20 70 6f 73 74 69 6e 67 29 0a 20 20    22 46 69 6e 64 20 74 68 65 20 70 6f 73 69 74 69  | xact.posting)..."Find.the.positi | 
| 3f520 |  6f 6e 20 6f 66 20 74 68 65 20 45 4d 41 43 53 2d    58 41 43 54 20 69 6e 20 74 68 65 20 60 6c 65 64  | on.of.the.EMACS-XACT.in.the.`led | 
| 3f540 |  67 65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d 6c 65    64 67 65 72 2d 62 75 66 27 2e 0a 50 4f 53 54 49  | ger-reconcile-ledger-buf'..POSTI | 
| 3f560 |  4e 47 20 69 73 20 75 73 65 64 20 69 6e 20 60 6c    65 64 67 65 72 2d 63 6c 65 61 72 2d 77 68 6f 6c  | NG.is.used.in.`ledger-clear-whol | 
| 3f580 |  65 2d 74 72 61 6e 73 61 63 74 69 6f 6e 73 27 20    69 73 20 6e 69 6c 2e 22 0a 20 20 28 6c 65 74 20  | e-transactions'.is.nil."...(let. | 
| 3f5a0 |  28 28 62 75 66 20 28 69 66 20 28 6c 65 64 67 65    72 2d 69 73 2d 73 74 64 69 6e 20 28 6e 74 68 20  | ((buf.(if.(ledger-is-stdin.(nth. | 
| 3f5c0 |  30 20 65 6d 61 63 73 2d 78 61 63 74 29 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | 0.emacs-xact)).................. | 
| 3f5e0 |  6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65    2d 6c 65 64 67 65 72 2d 62 75 66 0a 20 20 20 20  | ledger-reconcile-ledger-buf..... | 
| 3f600 |  20 20 20 20 20 20 20 20 20 20 20 28 66 69 6e 64    2d 66 69 6c 65 2d 6e 6f 73 65 6c 65 63 74 20 28  | ...........(find-file-noselect.( | 
| 3f620 |  6e 74 68 20 30 20 65 6d 61 63 73 2d 78 61 63 74    29 29 29 29 29 0a 20 20 20 20 28 63 6f 6e 73 0a  | nth.0.emacs-xact))))).....(cons. | 
| 3f640 |  20 20 20 20 20 62 75 66 0a 20 20 20 20 20 28 69    66 20 28 6f 72 20 6c 65 64 67 65 72 2d 63 6c 65  | .....buf......(if.(or.ledger-cle | 
| 3f660 |  61 72 2d 77 68 6f 6c 65 2d 74 72 61 6e 73 61 63    74 69 6f 6e 73 0a 20 20 20 20 20 20 20 20 20 20  | ar-whole-transactions........... | 
| 3f680 |  20 20 20 3b 3b 20 54 68 65 20 70 6f 73 74 69 6e    67 20 6d 69 67 68 74 20 6e 6f 74 20 62 65 20 70  | ...;;.The.posting.might.not.be.p | 
| 3f6a0 |  61 72 74 20 6f 66 20 74 68 65 20 6c 65 64 67 65    72 20 62 75 66 66 65 72 2e 20 54 68 69 73 20 63  | art.of.the.ledger.buffer..This.c | 
| 3f6c0 |  61 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    3b 3b 20 68 61 70 70 65 6e 20 69 66 20 74 68 65  | an..............;;.happen.if.the | 
| 3f6e0 |  20 61 63 63 6f 75 6e 74 20 74 6f 20 72 65 63 6f    6e 63 69 6c 65 20 69 73 20 74 68 65 20 64 65 66  | .account.to.reconcile.is.the.def | 
| 3f700 |  61 75 6c 74 20 61 63 63 6f 75 6e 74 2e 20 49 6e    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b  | ault.account..In..............;; | 
| 3f720 |  20 74 68 61 74 20 63 61 73 65 2c 20 77 65 20 6a    75 73 74 20 62 65 68 61 76 65 20 61 73 20 69 66  | .that.case,.we.just.behave.as.if | 
| 3f740 |  20 6c 65 64 67 65 72 2d 63 6c 65 61 72 2d 77 68    6f 6c 65 2d 74 72 61 6e 73 61 63 74 69 6f 6e 73  | .ledger-clear-whole-transactions | 
| 3f760 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b    20 77 61 73 20 74 75 72 6e 65 64 20 6f 6e 2e 20  | ..............;;.was.turned.on.. | 
| 3f780 |  53 65 65 20 23 35 38 20 66 6f 72 20 6d 6f 72 65    20 69 6e 66 6f 2e 0a 20 20 20 20 20 20 20 20 20  | See.#58.for.more.info........... | 
| 3f7a0 |  20 20 20 20 28 3d 20 2d 31 20 28 6e 74 68 20 30    20 70 6f 73 74 69 6e 67 29 29 29 0a 20 20 20 20  | ....(=.-1.(nth.0.posting)))..... | 
| 3f7c0 |  20 20 20 20 20 28 6e 74 68 20 31 20 65 6d 61 63    73 2d 78 61 63 74 29 20 20 3b 3b 20 72 65 74 75  | .....(nth.1.emacs-xact)..;;.retu | 
| 3f7e0 |  72 6e 20 6c 69 6e 65 2d 6e 6f 20 6f 66 20 78 61    63 74 0a 20 20 20 20 20 20 20 28 6e 74 68 20 30  | rn.line-no.of.xact........(nth.0 | 
| 3f800 |  20 70 6f 73 74 69 6e 67 29 29 29 29 29 20 3b 3b    20 72 65 74 75 72 6e 20 6c 69 6e 65 2d 6e 6f 20  | .posting))))).;;.return.line-no. | 
| 3f820 |  6f 66 20 70 6f 73 74 69 6e 67 0a 0a 28 64 65 66    75 6e 20 6c 65 64 67 65 72 2d 72 65 63 6f 6e 63  | of.posting..(defun.ledger-reconc | 
| 3f840 |  69 6c 65 2d 63 6f 6d 70 69 6c 65 2d 66 6f 72 6d    61 74 2d 73 74 72 69 6e 67 20 28 66 73 74 72 29  | ile-compile-format-string.(fstr) | 
| 3f860 |  0a 20 20 22 52 65 74 75 72 6e 20 61 20 66 75 6e    63 74 69 6f 6e 20 74 68 61 74 20 69 6d 70 6c 65  | ..."Return.a.function.that.imple | 
| 3f880 |  6d 65 6e 74 73 20 74 68 65 20 66 6f 72 6d 61 74    20 73 74 72 69 6e 67 20 69 6e 20 46 53 54 52 2e  | ments.the.format.string.in.FSTR. | 
| 3f8a0 |  22 0a 20 20 28 6c 65 74 20 28 66 69 65 6c 64 73    0a 20 20 20 20 20 20 20 20 28 73 74 61 72 74 20  | "...(let.(fields.........(start. | 
| 3f8c0 |  30 29 29 0a 20 20 20 20 28 77 68 69 6c 65 20 28    73 74 72 69 6e 67 2d 6d 61 74 63 68 20 22 28 5c  | 0)).....(while.(string-match."(\ | 
| 3f8e0 |  5c 28 2e 2a 3f 5c 5c 29 29 22 20 66 73 74 72 20    73 74 61 72 74 29 0a 20 20 20 20 20 20 28 73 65  | \(.*?\\))".fstr.start).......(se | 
| 3f900 |  74 71 20 66 69 65 6c 64 73 20 28 63 6f 6e 73 20    28 69 6e 74 65 72 6e 20 28 6d 61 74 63 68 2d 73  | tq.fields.(cons.(intern.(match-s | 
| 3f920 |  74 72 69 6e 67 20 31 20 66 73 74 72 29 29 20 66    69 65 6c 64 73 29 29 0a 20 20 20 20 20 20 28 73  | tring.1.fstr)).fields)).......(s | 
| 3f940 |  65 74 71 20 73 74 61 72 74 20 28 6d 61 74 63 68    2d 65 6e 64 20 30 29 29 29 0a 20 20 20 20 28 73  | etq.start.(match-end.0))).....(s | 
| 3f960 |  65 74 71 20 66 69 65 6c 64 73 20 28 63 6c 2d 6c    69 73 74 2a 20 27 66 6f 72 6d 61 74 20 28 72 65  | etq.fields.(cl-list*.'format.(re | 
| 3f980 |  70 6c 61 63 65 2d 72 65 67 65 78 70 2d 69 6e 2d    73 74 72 69 6e 67 20 22 28 2e 2a 3f 29 22 20 22  | place-regexp-in-string."(.*?)"." | 
| 3f9a0 |  22 20 66 73 74 72 29 20 28 6e 72 65 76 65 72 73    65 20 66 69 65 6c 64 73 29 29 29 0a 20 20 20 20  | ".fstr).(nreverse.fields)))..... | 
| 3f9c0 |  60 28 6c 61 6d 62 64 61 20 28 64 61 74 65 20 63    6f 64 65 20 73 74 61 74 75 73 20 70 61 79 65 65  | `(lambda.(date.code.status.payee | 
| 3f9e0 |  20 61 63 63 6f 75 6e 74 20 61 6d 6f 75 6e 74 29    0a 20 20 20 20 20 20 20 2c 66 69 65 6c 64 73 29  | .account.amount)........,fields) | 
| 3fa00 |  29 29 0a 0a 0a 0a 28 64 65 66 75 6e 20 6c 65 64    67 65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d 66 6f  | ))....(defun.ledger-reconcile-fo | 
| 3fa20 |  72 6d 61 74 2d 70 6f 73 74 69 6e 67 20 28 62 65    67 20 77 68 65 72 65 20 66 6d 74 20 64 61 74 65  | rmat-posting.(beg.where.fmt.date | 
| 3fa40 |  20 63 6f 64 65 20 73 74 61 74 75 73 20 70 61 79    65 65 20 61 63 63 6f 75 6e 74 20 61 6d 6f 75 6e  | .code.status.payee.account.amoun | 
| 3fa60 |  74 29 0a 20 20 22 46 6f 72 6d 61 74 20 70 6f 73    74 69 6e 67 20 66 6f 72 20 74 68 65 20 72 65 63  | t)..."Format.posting.for.the.rec | 
| 3fa80 |  6f 6e 63 69 6c 65 20 62 75 66 66 65 72 2e 22 0a    20 20 28 69 6e 73 65 72 74 20 28 66 75 6e 63 61  | oncile.buffer."...(insert.(funca | 
| 3faa0 |  6c 6c 20 66 6d 74 20 64 61 74 65 20 63 6f 64 65    20 73 74 61 74 75 73 20 70 61 79 65 65 20 61 63  | ll.fmt.date.code.status.payee.ac | 
| 3fac0 |  63 6f 75 6e 74 20 61 6d 6f 75 6e 74 29 29 0a 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | count.amount)).................. | 
| 3fae0 |  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 20 53 65 74 20 66 61  | ........................;.Set.fa | 
| 3fb00 |  63 65 20 64 65 70 65 6e 64 69 6e 67 20 6f 6e 20    63 6c 65 61 72 65 64 20 73 74 61 74 75 73 0a 20  | ce.depending.on.cleared.status.. | 
| 3fb20 |  20 28 69 66 20 73 74 61 74 75 73 0a 20 20 20 20    20 20 28 69 66 20 28 65 71 20 73 74 61 74 75 73  | .(if.status.......(if.(eq.status | 
| 3fb40 |  20 27 70 65 6e 64 69 6e 67 29 0a 20 20 20 20 20    20 20 20 20 20 28 73 65 74 2d 74 65 78 74 2d 70  | .'pending)...........(set-text-p | 
| 3fb60 |  72 6f 70 65 72 74 69 65 73 20 62 65 67 20 28 31    2d 20 28 70 6f 69 6e 74 29 29 0a 20 20 20 20 20  | roperties.beg.(1-.(point))...... | 
| 3fb80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 6c 69 73 74 20  | ..........................(list. | 
| 3fba0 |  27 66 6f 6e 74 2d 6c 6f 63 6b 2d 66 61 63 65 20    27 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 72 65 63  | 'font-lock-face.'ledger-font-rec | 
| 3fbc0 |  6f 6e 63 69 6c 65 72 2d 70 65 6e 64 69 6e 67 2d    66 61 63 65 0a 20 20 20 20 20 20 20 20 20 20 20  | onciler-pending-face............ | 
| 3fbe0 |  20 20 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 77 68 65 72 65  | ..........................'where | 
| 3fc00 |  20 77 68 65 72 65 29 29 0a 20 20 20 20 20 20 20    20 28 73 65 74 2d 74 65 78 74 2d 70 72 6f 70 65  | .where)).........(set-text-prope | 
| 3fc20 |  72 74 69 65 73 20 62 65 67 20 28 31 2d 20 28 70    6f 69 6e 74 29 29 0a 20 20 20 20 20 20 20 20 20  | rties.beg.(1-.(point)).......... | 
| 3fc40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 28 6c 69 73 74 20 27 66 6f 6e 74 2d  | ....................(list.'font- | 
| 3fc60 |  6c 6f 63 6b 2d 66 61 63 65 20 27 6c 65 64 67 65    72 2d 66 6f 6e 74 2d 72 65 63 6f 6e 63 69 6c 65  | lock-face.'ledger-font-reconcile | 
| 3fc80 |  72 2d 63 6c 65 61 72 65 64 2d 66 61 63 65 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | r-cleared-face.................. | 
| 3fca0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 27 77 68 65 72 65 20 77 68 65 72 65 29 29  | ..................'where.where)) | 
| 3fcc0 |  29 0a 20 20 20 20 28 73 65 74 2d 74 65 78 74 2d    70 72 6f 70 65 72 74 69 65 73 20 62 65 67 20 28  | ).....(set-text-properties.beg.( | 
| 3fce0 |  31 2d 20 28 70 6f 69 6e 74 29 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | 1-.(point))..................... | 
| 3fd00 |  20 20 20 20 20 28 6c 69 73 74 20 27 66 6f 6e 74    2d 6c 6f 63 6b 2d 66 61 63 65 20 27 6c 65 64 67  | .....(list.'font-lock-face.'ledg | 
| 3fd20 |  65 72 2d 66 6f 6e 74 2d 72 65 63 6f 6e 63 69 6c    65 72 2d 75 6e 63 6c 65 61 72 65 64 2d 66 61 63  | er-font-reconciler-uncleared-fac | 
| 3fd40 |  65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | e............................... | 
| 3fd60 |  20 27 77 68 65 72 65 20 77 68 65 72 65 29 29 29    29 0a 0a 28 64 65 66 75 6e 20 6c 65 64 67 65 72  | .'where.where))))..(defun.ledger | 
| 3fd80 |  2d 72 65 63 6f 6e 63 69 6c 65 2d 66 6f 72 6d 61    74 2d 78 61 63 74 20 28 78 61 63 74 20 66 6d 74  | -reconcile-format-xact.(xact.fmt | 
| 3fda0 |  29 0a 20 20 22 46 6f 72 6d 61 74 20 58 41 43 54    20 75 73 69 6e 67 20 46 4d 54 2e 22 0a 20 20 28  | )..."Format.XACT.using.FMT."...( | 
| 3fdc0 |  64 6f 6c 69 73 74 20 28 70 6f 73 74 69 6e 67 20    28 6e 74 68 63 64 72 20 35 20 78 61 63 74 29 29  | dolist.(posting.(nthcdr.5.xact)) | 
| 3fde0 |  0a 20 20 20 20 28 6c 65 74 20 28 28 62 65 67 20    28 70 6f 69 6e 74 29 29 0a 20 20 20 20 20 20 20  | .....(let.((beg.(point))........ | 
| 3fe00 |  20 20 20 28 77 68 65 72 65 20 28 6c 65 64 67 65    72 2d 6d 61 72 6b 65 72 2d 77 68 65 72 65 2d 78  | ...(where.(ledger-marker-where-x | 
| 3fe20 |  61 63 74 2d 69 73 20 78 61 63 74 20 70 6f 73 74    69 6e 67 29 29 29 0a 20 20 20 20 20 20 28 6c 65  | act-is.xact.posting))).......(le | 
| 3fe40 |  64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d 66    6f 72 6d 61 74 2d 70 6f 73 74 69 6e 67 20 62 65  | dger-reconcile-format-posting.be | 
| 3fe60 |  67 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | g............................... | 
| 3fe80 |  20 20 20 20 20 20 20 20 20 77 68 65 72 65 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .........where.................. | 
| 3fea0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 66 6d 74 0a 20 20 20 20 20 20  | ......................fmt....... | 
| 3fec0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 3fee0 |  20 28 6c 65 64 67 65 72 2d 66 6f 72 6d 61 74 2d    64 61 74 65 0a 20 20 20 20 20 20 20 20 20 20 20  | .(ledger-format-date............ | 
| 3ff00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e 74  | .............................(nt | 
| 3ff20 |  68 20 32 20 78 61 63 74 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | h.2.xact)....................... | 
| 3ff40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69  | ..................ledger-reconci | 
| 3ff60 |  6c 65 2d 64 65 66 61 75 6c 74 2d 64 61 74 65 2d    66 6f 72 6d 61 74 29 20 3b 20 64 61 74 65 0a 20  | le-default-date-format).;.date.. | 
| 3ff80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 3ffa0 |  20 20 20 20 20 20 28 69 66 20 28 6e 74 68 20 33    20 78 61 63 74 29 20 28 6e 74 68 20 33 20 78 61  | ......(if.(nth.3.xact).(nth.3.xa | 
| 3ffc0 |  63 74 29 20 22 22 29 20 3b 20 63 6f 64 65 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ct)."").;.code.................. | 
| 3ffe0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 6e 74 68 20 33 20 70 6f 73  | ......................(nth.3.pos | 
| 40000 |  74 69 6e 67 29 20 20 3b 20 73 74 61 74 75 73 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ting)..;.status................. | 
| 40020 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 28 6c 65 64 67 65 72 2d 72  | .......................(ledger-r | 
| 40040 |  65 63 6f 6e 63 69 6c 65 2d 74 72 75 6e 63 61 74    65 2d 72 69 67 68 74 0a 20 20 20 20 20 20 20 20  | econcile-truncate-right......... | 
| 40060 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 40080 |  28 6e 74 68 20 34 20 78 61 63 74 29 20 20 3b 20    70 61 79 65 65 0a 20 20 20 20 20 20 20 20 20 20  | (nth.4.xact)..;.payee........... | 
| 400a0 |  20 20 20 20 20 20 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 65  | ..............................le | 
| 400c0 |  64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d 62    75 66 66 65 72 2d 70 61 79 65 65 2d 6d 61 78 2d  | dger-reconcile-buffer-payee-max- | 
| 400e0 |  63 68 61 72 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  | chars).......................... | 
| 40100 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c    65 64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d  | ..............(ledger-reconcile- | 
| 40120 |  74 72 75 6e 63 61 74 65 2d 6c 65 66 74 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | truncate-left................... | 
| 40140 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 6e 74 68 20 31 20 70 6f 73  | ......................(nth.1.pos | 
| 40160 |  74 69 6e 67 29 20 20 3b 20 61 63 63 6f 75 6e 74    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ting)..;.account................ | 
| 40180 |  20 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 65 64 67 65 72 2d  | .........................ledger- | 
| 401a0 |  72 65 63 6f 6e 63 69 6c 65 2d 62 75 66 66 65 72    2d 61 63 63 6f 75 6e 74 2d 6d 61 78 2d 63 68 61  | reconcile-buffer-account-max-cha | 
| 401c0 |  72 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  | rs)............................. | 
| 401e0 |  20 20 20 20 20 20 20 20 20 20 20 28 6e 74 68 20    32 20 70 6f 73 74 69 6e 67 29 29 29 29 29 20 20  | ...........(nth.2.posting))))).. | 
| 40200 |  3b 20 61 6d 6f 75 6e 74 0a 0a 28 64 65 66 75 6e    20 6c 65 64 67 65 72 2d 64 6f 2d 72 65 63 6f 6e  | ;.amount..(defun.ledger-do-recon | 
| 40220 |  63 69 6c 65 20 28 26 6f 70 74 69 6f 6e 61 6c 20    73 6f 72 74 29 0a 20 20 22 53 4f 52 54 20 74 68  | cile.(&optional.sort)..."SORT.th | 
| 40240 |  65 20 75 6e 63 6c 65 61 72 65 64 20 74 72 61 6e    73 61 63 74 69 6f 6e 73 20 69 6e 20 74 68 65 20  | e.uncleared.transactions.in.the. | 
| 40260 |  61 63 63 6f 75 6e 74 2e 0a 54 68 65 20 73 6f 72    74 65 64 20 72 65 73 75 6c 74 73 20 61 72 65 20  | account..The.sorted.results.are. | 
| 40280 |  64 69 73 70 6c 61 79 65 64 20 69 6e 20 69 6e 20    74 68 65 20 2a 52 65 63 6f 6e 63 69 6c 65 2a 20  | displayed.in.in.the.*Reconcile*. | 
| 402a0 |  62 75 66 66 65 72 2e 0a 52 65 74 75 72 6e 20 61    20 63 6f 75 6e 74 20 6f 66 20 74 68 65 20 75 6e  | buffer..Return.a.count.of.the.un | 
| 402c0 |  63 6c 65 61 72 65 64 20 74 72 61 6e 73 61 63 74    69 6f 6e 73 2e 22 0a 20 20 28 6c 65 74 2a 20 28  | cleared.transactions."...(let*.( | 
| 402e0 |  28 62 75 66 20 6c 65 64 67 65 72 2d 72 65 63 6f    6e 63 69 6c 65 2d 6c 65 64 67 65 72 2d 62 75 66  | (buf.ledger-reconcile-ledger-buf | 
| 40300 |  29 0a 20 20 20 20 20 20 20 20 20 28 61 63 63 6f    75 6e 74 20 6c 65 64 67 65 72 2d 72 65 63 6f 6e  | )..........(account.ledger-recon | 
| 40320 |  63 69 6c 65 2d 61 63 63 6f 75 6e 74 29 0a 20 20    20 20 20 20 20 20 20 28 73 6f 72 74 2d 62 79 20  | cile-account)..........(sort-by. | 
| 40340 |  28 69 66 20 73 6f 72 74 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73  | (if.sort.......................s | 
| 40360 |  6f 72 74 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 22 28 64 61 74 65 29 22  | ort....................."(date)" | 
| 40380 |  29 29 0a 20 20 20 20 20 20 20 20 20 28 78 61 63    74 73 0a 20 20 20 20 20 20 20 20 20 20 28 77 69  | ))..........(xacts...........(wi | 
| 403a0 |  74 68 2d 74 65 6d 70 2d 62 75 66 66 65 72 0a 20    20 20 20 20 20 20 20 20 20 20 20 28 6c 65 64 67  | th-temp-buffer.............(ledg | 
| 403c0 |  65 72 2d 65 78 65 63 2d 6c 65 64 67 65 72 20 62    75 66 20 28 63 75 72 72 65 6e 74 2d 62 75 66 66  | er-exec-ledger.buf.(current-buff | 
| 403e0 |  65 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | er)............................. | 
| 40400 |  20 20 20 20 22 2d 2d 75 6e 63 6c 65 61 72 65 64    22 20 22 2d 2d 72 65 61 6c 22 20 22 65 6d 61 63  | ...."--uncleared"."--real"."emac | 
| 40420 |  73 22 20 22 2d 2d 73 6f 72 74 22 20 73 6f 72 74    2d 62 79 20 61 63 63 6f 75 6e 74 29 0a 20 20 20  | s"."--sort".sort-by.account).... | 
| 40440 |  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 2d 6d 69 6e 29 29  | .........(goto-char.(point-min)) | 
| 40460 |  0a 20 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 74 20 28 65 6f  | .............(when.(and.(not.(eo | 
| 40480 |  62 70 29 29 20 28 6c 6f 6f 6b 69 6e 67 2d 61 74    20 22 28 22 29 29 0a 20 20 20 20 20 20 20 20 20  | bp)).(looking-at."(")).......... | 
| 404a0 |  20 20 20 20 20 28 72 65 61 64 20 28 63 75 72 72    65 6e 74 2d 62 75 66 66 65 72 29 29 29 29 29 0a  | .....(read.(current-buffer))))). | 
| 404c0 |  20 20 20 20 20 20 20 20 20 28 66 6d 74 20 28 6c    65 64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d  | .........(fmt.(ledger-reconcile- | 
| 404e0 |  63 6f 6d 70 69 6c 65 2d 66 6f 72 6d 61 74 2d 73    74 72 69 6e 67 20 6c 65 64 67 65 72 2d 72 65 63  | compile-format-string.ledger-rec | 
| 40500 |  6f 6e 63 69 6c 65 2d 62 75 66 66 65 72 2d 6c 69    6e 65 2d 66 6f 72 6d 61 74 29 29 29 0a 20 20 20  | oncile-buffer-line-format))).... | 
| 40520 |  20 28 69 66 20 28 6e 75 6c 6c 20 78 61 63 74 73    29 0a 20 20 20 20 20 20 20 20 28 69 6e 73 65 72  | .(if.(null.xacts).........(inser | 
| 40540 |  74 20 28 63 6f 6e 63 61 74 20 22 54 68 65 72 65    20 61 72 65 20 6e 6f 20 75 6e 63 6c 65 61 72 65  | t.(concat."There.are.no.uncleare | 
| 40560 |  64 20 65 6e 74 72 69 65 73 20 66 6f 72 20 22 20    61 63 63 6f 75 6e 74 29 29 0a 20 20 20 20 20 20  | d.entries.for.".account))....... | 
| 40580 |  28 69 66 20 6c 65 64 67 65 72 2d 72 65 63 6f 6e    63 69 6c 65 2d 62 75 66 66 65 72 2d 68 65 61 64  | (if.ledger-reconcile-buffer-head | 
| 405a0 |  65 72 0a 20 20 20 20 20 20 20 20 20 20 28 69 6e    73 65 72 74 20 28 66 6f 72 6d 61 74 20 6c 65 64  | er...........(insert.(format.led | 
| 405c0 |  67 65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d 62 75    66 66 65 72 2d 68 65 61 64 65 72 20 61 63 63 6f  | ger-reconcile-buffer-header.acco | 
| 405e0 |  75 6e 74 29 29 29 0a 20 20 20 20 20 20 28 64 6f    6c 69 73 74 20 28 78 61 63 74 20 78 61 63 74 73  | unt))).......(dolist.(xact.xacts | 
| 40600 |  29 0a 20 20 20 20 20 20 20 20 28 6c 65 64 67 65    72 2d 72 65 63 6f 6e 63 69 6c 65 2d 66 6f 72 6d  | ).........(ledger-reconcile-form | 
| 40620 |  61 74 2d 78 61 63 74 20 78 61 63 74 20 66 6d 74    29 29 0a 20 20 20 20 20 20 28 67 6f 74 6f 2d 63  | at-xact.xact.fmt)).......(goto-c | 
| 40640 |  68 61 72 20 28 70 6f 69 6e 74 2d 6d 61 78 29 29    0a 20 20 20 20 20 20 28 64 65 6c 65 74 65 2d 63  | har.(point-max)).......(delete-c | 
| 40660 |  68 61 72 20 2d 31 29 29 20 3b 67 65 74 73 20 72    69 64 20 6f 66 20 74 68 65 20 65 78 74 72 61 20  | har.-1)).;gets.rid.of.the.extra. | 
| 40680 |  6c 69 6e 65 20 66 65 65 64 20 61 74 20 74 68 65    20 62 6f 74 74 6f 6d 20 6f 66 20 74 68 65 20 6c  | line.feed.at.the.bottom.of.the.l | 
| 406a0 |  69 73 74 0a 20 20 20 20 28 67 6f 74 6f 2d 63 68    61 72 20 28 70 6f 69 6e 74 2d 6d 69 6e 29 29 0a  | ist.....(goto-char.(point-min)). | 
| 406c0 |  20 20 20 20 28 73 65 74 2d 62 75 66 66 65 72 2d    6d 6f 64 69 66 69 65 64 2d 70 20 6e 69 6c 29 0a  | ....(set-buffer-modified-p.nil). | 
| 406e0 |  20 20 20 20 28 73 65 74 71 20 62 75 66 66 65 72    2d 72 65 61 64 2d 6f 6e 6c 79 20 74 29 0a 0a 20  | ....(setq.buffer-read-only.t)... | 
| 40700 |  20 20 20 28 6c 65 6e 67 74 68 20 78 61 63 74 73    29 29 29 0a 0a 28 64 65 66 75 6e 20 6c 65 64 67  | ...(length.xacts)))..(defun.ledg | 
| 40720 |  65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d 65 6e 73    75 72 65 2d 78 61 63 74 73 2d 76 69 73 69 62 6c  | er-reconcile-ensure-xacts-visibl | 
| 40740 |  65 20 28 29 0a 20 20 22 45 6e 73 75 72 65 20 74    68 65 20 6c 61 73 74 20 6f 66 20 74 68 65 20 76  | e.()..."Ensure.the.last.of.the.v | 
| 40760 |  69 73 69 62 6c 65 20 74 72 61 6e 73 61 63 74 69    6f 6e 73 20 69 6e 20 74 68 65 20 6c 65 64 67 65  | isible.transactions.in.the.ledge | 
| 40780 |  72 20 62 75 66 66 65 72 20 69 73 20 76 69 73 69    62 6c 65 2e 0a 54 68 69 73 20 69 73 20 61 63 68  | r.buffer.is.visible..This.is.ach | 
| 407a0 |  69 65 76 65 64 20 62 79 20 70 6c 61 63 69 6e 67    20 74 68 61 74 20 74 72 61 6e 73 61 63 74 69 6f  | ieved.by.placing.that.transactio | 
| 407c0 |  6e 20 61 74 20 74 68 65 20 62 6f 74 74 6f 6d 20    6f 66 20 74 68 65 20 6d 61 69 6e 20 77 69 6e 64  | n.at.the.bottom.of.the.main.wind | 
| 407e0 |  6f 77 2e 0a 54 68 65 20 6b 65 79 20 74 6f 20 74    68 69 73 20 69 73 20 74 6f 20 65 6e 73 75 72 65  | ow..The.key.to.this.is.to.ensure | 
| 40800 |  20 74 68 65 20 77 69 6e 64 6f 77 20 69 73 20 73    65 6c 65 63 74 65 64 20 77 68 65 6e 20 74 68 65  | .the.window.is.selected.when.the | 
| 40820 |  20 62 75 66 66 65 72 20 70 6f 69 6e 74 20 69 73    0a 6d 6f 76 65 64 20 61 6e 64 20 72 65 63 65 6e  | .buffer.point.is.moved.and.recen | 
| 40840 |  74 65 72 65 64 2e 20 20 49 66 20 74 68 65 79 20    61 72 65 6e 27 74 20 73 74 72 61 6e 67 65 20 74  | tered...If.they.aren't.strange.t | 
| 40860 |  68 69 6e 67 73 20 68 61 70 70 65 6e 2e 22 0a 20    20 28 6c 65 74 20 28 28 72 65 63 6f 6e 63 69 6c  | hings.happen."...(let.((reconcil | 
| 40880 |  65 2d 77 69 6e 64 6f 77 20 28 67 65 74 2d 62 75    66 66 65 72 2d 77 69 6e 64 6f 77 20 28 67 65 74  | e-window.(get-buffer-window.(get | 
| 408a0 |  2d 62 75 66 66 65 72 20 6c 65 64 67 65 72 2d 72    65 63 6f 6e 63 69 6c 65 2d 62 75 66 66 65 72 2d  | -buffer.ledger-reconcile-buffer- | 
| 408c0 |  6e 61 6d 65 29 29 29 29 0a 20 20 20 20 28 77 68    65 6e 20 72 65 63 6f 6e 63 69 6c 65 2d 77 69 6e  | name)))).....(when.reconcile-win | 
| 408e0 |  64 6f 77 0a 20 20 20 20 20 20 28 66 69 74 2d 77    69 6e 64 6f 77 2d 74 6f 2d 62 75 66 66 65 72 20  | dow.......(fit-window-to-buffer. | 
| 40900 |  72 65 63 6f 6e 63 69 6c 65 2d 77 69 6e 64 6f 77    29 0a 20 20 20 20 20 20 28 77 69 74 68 2d 63 75  | reconcile-window).......(with-cu | 
| 40920 |  72 72 65 6e 74 2d 62 75 66 66 65 72 20 6c 65 64    67 65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d 6c 65  | rrent-buffer.ledger-reconcile-le | 
| 40940 |  64 67 65 72 2d 62 75 66 0a 20 20 20 20 20 20 20    20 28 61 64 64 2d 68 6f 6f 6b 20 27 6b 69 6c 6c  | dger-buf.........(add-hook.'kill | 
| 40960 |  2d 62 75 66 66 65 72 2d 68 6f 6f 6b 20 27 6c 65    64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d 71  | -buffer-hook.'ledger-reconcile-q | 
| 40980 |  75 69 74 20 6e 69 6c 20 74 29 0a 20 20 20 20 20    20 20 20 28 69 66 20 28 67 65 74 2d 62 75 66 66  | uit.nil.t).........(if.(get-buff | 
| 409a0 |  65 72 2d 77 69 6e 64 6f 77 20 6c 65 64 67 65 72    2d 72 65 63 6f 6e 63 69 6c 65 2d 6c 65 64 67 65  | er-window.ledger-reconcile-ledge | 
| 409c0 |  72 2d 62 75 66 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 28 73 65 6c 65 63 74 2d 77 69 6e 64 6f  | r-buf).............(select-windo | 
| 409e0 |  77 20 28 67 65 74 2d 62 75 66 66 65 72 2d 77 69    6e 64 6f 77 20 6c 65 64 67 65 72 2d 72 65 63 6f  | w.(get-buffer-window.ledger-reco | 
| 40a00 |  6e 63 69 6c 65 2d 6c 65 64 67 65 72 2d 62 75 66    29 29 29 0a 20 20 20 20 20 20 20 20 28 72 65 63  | ncile-ledger-buf))).........(rec | 
| 40a20 |  65 6e 74 65 72 29 29 0a 20 20 20 20 20 20 28 73    65 6c 65 63 74 2d 77 69 6e 64 6f 77 20 72 65 63  | enter)).......(select-window.rec | 
| 40a40 |  6f 6e 63 69 6c 65 2d 77 69 6e 64 6f 77 29 0a 20    20 20 20 20 20 28 6c 65 64 67 65 72 2d 72 65 63  | oncile-window).......(ledger-rec | 
| 40a60 |  6f 6e 63 69 6c 65 2d 76 69 73 69 74 20 74 29 29    0a 20 20 20 20 28 77 69 74 68 2d 63 75 72 72 65  | oncile-visit.t)).....(with-curre | 
| 40a80 |  6e 74 2d 62 75 66 66 65 72 20 6c 65 64 67 65 72    2d 72 65 63 6f 6e 63 69 6c 65 2d 6c 65 64 67 65  | nt-buffer.ledger-reconcile-ledge | 
| 40aa0 |  72 2d 62 75 66 0a 20 20 20 20 20 20 28 77 68 65    6e 20 6c 65 64 67 65 72 2d 6f 63 63 75 72 2d 6d  | r-buf.......(when.ledger-occur-m | 
| 40ac0 |  6f 64 65 0a 20 20 20 20 20 20 20 20 28 6c 65 64    67 65 72 2d 6f 63 63 75 72 2d 72 65 66 72 65 73  | ode.........(ledger-occur-refres | 
| 40ae0 |  68 29 29 29 0a 20 20 20 20 28 61 64 64 2d 68 6f    6f 6b 20 27 70 6f 73 74 2d 63 6f 6d 6d 61 6e 64  | h))).....(add-hook.'post-command | 
| 40b00 |  2d 68 6f 6f 6b 20 27 6c 65 64 67 65 72 2d 72 65    63 6f 6e 63 69 6c 65 2d 74 72 61 63 6b 2d 78 61  | -hook.'ledger-reconcile-track-xa | 
| 40b20 |  63 74 20 6e 69 6c 20 74 29 29 29 0a 0a 28 64 65    66 75 6e 20 6c 65 64 67 65 72 2d 72 65 63 6f 6e  | ct.nil.t)))..(defun.ledger-recon | 
| 40b40 |  63 69 6c 65 2d 74 72 61 63 6b 2d 78 61 63 74 20    28 29 0a 20 20 22 52 65 63 65 6e 74 65 72 20 74  | cile-track-xact.()..."Recenter.t | 
| 40b60 |  68 65 20 6c 65 64 67 65 72 20 62 75 66 66 65 72    20 6f 6e 20 74 68 65 20 74 72 61 6e 73 61 63 74  | he.ledger.buffer.on.the.transact | 
| 40b80 |  69 6f 6e 20 61 74 20 70 6f 69 6e 74 20 69 6e 20    74 68 65 20 72 65 63 6f 6e 63 69 6c 65 20 62 75  | ion.at.point.in.the.reconcile.bu | 
| 40ba0 |  66 66 65 72 2e 22 0a 20 20 28 69 66 20 28 61 6e    64 20 6c 65 64 67 65 72 2d 62 75 66 66 65 72 2d  | ffer."...(if.(and.ledger-buffer- | 
| 40bc0 |  74 72 61 63 6b 73 2d 72 65 63 6f 6e 63 69 6c 65    2d 62 75 66 66 65 72 0a 20 20 20 20 20 20 20 20  | tracks-reconcile-buffer......... | 
| 40be0 |  20 20 20 28 6d 65 6d 62 65 72 20 74 68 69 73 2d    63 6f 6d 6d 61 6e 64 20 28 6c 69 73 74 20 27 6e  | ...(member.this-command.(list.'n | 
| 40c00 |  65 78 74 2d 6c 69 6e 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  | ext-line........................ | 
| 40c20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27    70 72 65 76 69 6f 75 73 2d 6c 69 6e 65 0a 20 20  | ...............'previous-line... | 
| 40c40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 40c60 |  20 20 20 20 27 6d 6f 75 73 65 2d 73 65 74 2d 70    6f 69 6e 74 0a 20 20 20 20 20 20 20 20 20 20 20  | ....'mouse-set-point............ | 
| 40c80 |  20 20 20 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 6c 65 64 67  | ...........................'ledg | 
| 40ca0 |  65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d 74 6f 67    67 6c 65 0a 20 20 20 20 20 20 20 20 20 20 20 20  | er-reconcile-toggle............. | 
| 40cc0 |  20 20 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 65 6e 64 2d 6f  | ..........................'end-o | 
| 40ce0 |  66 2d 62 75 66 66 65 72 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | f-buffer........................ | 
| 40d00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27    62 65 67 69 6e 6e 69 6e 67 2d 6f 66 2d 62 75 66  | ...............'beginning-of-buf | 
| 40d20 |  66 65 72 29 29 29 0a 20 20 20 20 20 20 28 73 61    76 65 2d 65 78 63 75 72 73 69 6f 6e 0a 20 20 20  | fer))).......(save-excursion.... | 
| 40d40 |  20 20 20 20 20 28 6c 65 64 67 65 72 2d 72 65 63    6f 6e 63 69 6c 65 2d 76 69 73 69 74 20 74 29 29  | .....(ledger-reconcile-visit.t)) | 
| 40d60 |  29 29 0a 0a 28 64 65 66 75 6e 20 6c 65 64 67 65    72 2d 72 65 63 6f 6e 63 69 6c 65 2d 6f 70 65 6e  | ))..(defun.ledger-reconcile-open | 
| 40d80 |  2d 77 69 6e 64 6f 77 73 20 28 62 75 66 20 72 62    75 66 29 0a 20 20 22 45 6e 73 75 72 65 20 74 68  | -windows.(buf.rbuf)..."Ensure.th | 
| 40da0 |  61 74 20 74 68 65 20 6c 65 64 67 65 72 20 62 75    66 66 65 72 20 42 55 46 20 69 73 20 73 70 6c 69  | at.the.ledger.buffer.BUF.is.spli | 
| 40dc0 |  74 20 62 79 20 52 42 55 46 2e 22 0a 20 20 28 69    66 20 6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69  | t.by.RBUF."...(if.ledger-reconci | 
| 40de0 |  6c 65 2d 66 6f 72 63 65 2d 77 69 6e 64 6f 77 2d    62 6f 74 74 6f 6d 0a 20 20 20 20 20 20 3b 3b 63  | le-force-window-bottom.......;;c | 
| 40e00 |  72 65 61 74 65 20 74 68 65 20 2a 52 65 63 6f 6e    63 69 6c 65 2a 20 77 69 6e 64 6f 77 20 64 69 72  | reate.the.*Reconcile*.window.dir | 
| 40e20 |  65 63 74 6c 79 20 62 65 6c 6f 77 20 74 68 65 20    6c 65 64 67 65 72 20 62 75 66 66 65 72 2e 0a 20  | ectly.below.the.ledger.buffer... | 
| 40e40 |  20 20 20 20 20 28 73 65 74 2d 77 69 6e 64 6f 77    2d 62 75 66 66 65 72 20 28 73 70 6c 69 74 2d 77  | .....(set-window-buffer.(split-w | 
| 40e60 |  69 6e 64 6f 77 20 28 67 65 74 2d 62 75 66 66 65    72 2d 77 69 6e 64 6f 77 20 62 75 66 29 20 6e 69  | indow.(get-buffer-window.buf).ni | 
| 40e80 |  6c 20 6e 69 6c 29 20 72 62 75 66 29 0a 20 20 20    20 28 70 6f 70 2d 74 6f 2d 62 75 66 66 65 72 20  | l.nil).rbuf).....(pop-to-buffer. | 
| 40ea0 |  72 62 75 66 29 29 29 0a 0a 28 64 65 66 75 6e 20    6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65  | rbuf)))..(defun.ledger-reconcile | 
| 40ec0 |  2d 63 68 65 63 6b 2d 76 61 6c 69 64 2d 61 63 63    6f 75 6e 74 20 28 61 63 63 6f 75 6e 74 29 0a 20  | -check-valid-account.(account).. | 
| 40ee0 |  20 22 43 68 65 63 6b 20 74 6f 20 73 65 65 20 69    66 20 41 43 43 4f 55 4e 54 20 65 78 69 73 74 73  | ."Check.to.see.if.ACCOUNT.exists | 
| 40f00 |  20 69 6e 20 74 68 65 20 6c 65 64 67 65 72 20 66    69 6c 65 2e 22 0a 20 20 28 69 66 20 28 3e 20 28  | .in.the.ledger.file."...(if.(>.( | 
| 40f20 |  6c 65 6e 67 74 68 20 61 63 63 6f 75 6e 74 29 20    30 29 0a 20 20 20 20 20 20 28 73 61 76 65 2d 65  | length.account).0).......(save-e | 
| 40f40 |  78 63 75 72 73 69 6f 6e 0a 20 20 20 20 20 20 20    20 28 67 6f 74 6f 2d 63 68 61 72 20 28 70 6f 69  | xcursion.........(goto-char.(poi | 
| 40f60 |  6e 74 2d 6d 69 6e 29 29 0a 20 20 20 20 20 20 20    20 28 73 65 61 72 63 68 2d 66 6f 72 77 61 72 64  | nt-min)).........(search-forward | 
| 40f80 |  20 61 63 63 6f 75 6e 74 20 6e 69 6c 20 74 29 29    29 29 0a 0a 28 64 65 66 75 6e 20 6c 65 64 67 65  | .account.nil.t))))..(defun.ledge | 
| 40fa0 |  72 2d 72 65 63 6f 6e 63 69 6c 65 20 28 26 6f 70    74 69 6f 6e 61 6c 20 61 63 63 6f 75 6e 74 20 74  | r-reconcile.(&optional.account.t | 
| 40fc0 |  61 72 67 65 74 29 0a 20 20 22 53 74 61 72 74 20    72 65 63 6f 6e 63 69 6c 69 6e 67 2c 20 70 72 6f  | arget)..."Start.reconciling,.pro | 
| 40fe0 |  6d 70 74 20 66 6f 72 20 41 43 43 4f 55 4e 54 2e    0a 0a 49 66 20 54 41 52 47 45 54 20 69 73 20 6e  | mpt.for.ACCOUNT...If.TARGET.is.n | 
| 41000 |  6f 6e 2d 6e 69 6c 2c 20 69 74 20 69 73 20 75 73    65 64 20 61 73 20 74 68 65 20 69 6e 69 74 69 61  | on-nil,.it.is.used.as.the.initia | 
| 41020 |  6c 20 74 61 72 67 65 74 20 66 6f 72 0a 72 65 63    6f 6e 63 69 6c 69 61 74 69 6f 6e 2c 20 6f 74 68  | l.target.for.reconciliation,.oth | 
| 41040 |  65 72 77 69 73 65 20 70 72 6f 6d 70 74 20 66 6f    72 20 54 41 52 47 45 54 2e 22 0a 20 20 28 69 6e  | erwise.prompt.for.TARGET."...(in | 
| 41060 |  74 65 72 61 63 74 69 76 65 29 0a 20 20 28 6c 65    74 20 28 28 61 63 63 6f 75 6e 74 20 28 6f 72 20  | teractive)...(let.((account.(or. | 
| 41080 |  61 63 63 6f 75 6e 74 20 28 6c 65 64 67 65 72 2d    72 65 61 64 2d 61 63 63 6f 75 6e 74 2d 77 69 74  | account.(ledger-read-account-wit | 
| 410a0 |  68 2d 70 72 6f 6d 70 74 20 22 41 63 63 6f 75 6e    74 20 74 6f 20 72 65 63 6f 6e 63 69 6c 65 22 29  | h-prompt."Account.to.reconcile") | 
| 410c0 |  29 29 0a 20 20 20 20 20 20 20 20 28 62 75 66 20    28 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 29  | )).........(buf.(current-buffer) | 
| 410e0 |  29 0a 20 20 20 20 20 20 20 20 28 72 62 75 66 20    28 67 65 74 2d 62 75 66 66 65 72 20 6c 65 64 67  | ).........(rbuf.(get-buffer.ledg | 
| 41100 |  65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d 62 75 66    66 65 72 2d 6e 61 6d 65 29 29 29 0a 0a 20 20 20  | er-reconcile-buffer-name)))..... | 
| 41120 |  20 28 77 68 65 6e 20 28 6c 65 64 67 65 72 2d 72    65 63 6f 6e 63 69 6c 65 2d 63 68 65 63 6b 2d 76  | .(when.(ledger-reconcile-check-v | 
| 41140 |  61 6c 69 64 2d 61 63 63 6f 75 6e 74 20 61 63 63    6f 75 6e 74 29 0a 20 20 20 20 20 20 28 69 66 20  | alid-account.account).......(if. | 
| 41160 |  72 62 75 66 20 3b 3b 20 2a 52 65 63 6f 6e 63 69    6c 65 2a 20 61 6c 72 65 61 64 79 20 65 78 69 73  | rbuf.;;.*Reconcile*.already.exis | 
| 41180 |  74 73 0a 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 75 66 66 65  | ts...........(with-current-buffe | 
| 411a0 |  72 20 72 62 75 66 0a 20 20 20 20 20 20 20 20 20    20 20 20 28 73 65 74 71 20 6c 65 64 67 65 72 2d  | r.rbuf.............(setq.ledger- | 
| 411c0 |  72 65 63 6f 6e 63 69 6c 65 2d 61 63 63 6f 75 6e    74 20 61 63 63 6f 75 6e 74 29 0a 20 20 20 20 20  | reconcile-account.account)...... | 
| 411e0 |  20 20 20 20 20 20 20 28 77 68 65 6e 20 28 6e 6f    74 20 28 65 71 20 62 75 66 20 72 62 75 66 29 29  | .......(when.(not.(eq.buf.rbuf)) | 
| 41200 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b    3b 20 63 61 6c 6c 65 64 20 66 72 6f 6d 20 73 6f  | ...............;;.called.from.so | 
| 41220 |  6d 65 20 6f 74 68 65 72 20 6c 65 64 67 65 72 2d    6d 6f 64 65 20 62 75 66 66 65 72 0a 20 20 20 20  | me.other.ledger-mode.buffer..... | 
| 41240 |  20 20 20 20 20 20 20 20 20 20 28 6c 65 64 67 65    72 2d 72 65 63 6f 6e 63 69 6c 65 2d 71 75 69 74  | ..........(ledger-reconcile-quit | 
| 41260 |  2d 63 6c 65 61 6e 75 70 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 28 73 65 74 71 20 6c 65  | -cleanup)...............(setq.le | 
| 41280 |  64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d 6c    65 64 67 65 72 2d 62 75 66 20 62 75 66 29 29 0a  | dger-reconcile-ledger-buf.buf)). | 
| 412a0 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 28 75 6e    6c 65 73 73 20 28 67 65 74 2d 62 75 66 66 65 72  | .............(unless.(get-buffer | 
| 412c0 |  2d 77 69 6e 64 6f 77 20 72 62 75 66 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 64  | -window.rbuf)...............(led | 
| 412e0 |  67 65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d 6f 70    65 6e 2d 77 69 6e 64 6f 77 73 20 62 75 66 20 72  | ger-reconcile-open-windows.buf.r | 
| 41300 |  62 75 66 29 29 29 0a 0a 20 20 20 20 20 20 20 20    3b 3b 20 6e 6f 20 72 65 63 6f 6e 63 69 6c 65 2d  | buf)))..........;;.no.reconcile- | 
| 41320 |  62 75 66 66 65 72 2c 20 73 74 61 72 74 69 6e 67    20 66 72 6f 6d 20 73 63 72 61 74 63 68 2e 0a 0a  | buffer,.starting.from.scratch... | 
| 41340 |  20 20 20 20 20 20 20 20 28 77 69 74 68 2d 63 75    72 72 65 6e 74 2d 62 75 66 66 65 72 20 28 73 65  | ........(with-current-buffer.(se | 
| 41360 |  74 71 20 72 62 75 66 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  | tq.rbuf......................... | 
| 41380 |  20 20 20 20 20 20 20 20 20 20 20 28 67 65 74 2d    62 75 66 66 65 72 2d 63 72 65 61 74 65 20 6c 65  | ...........(get-buffer-create.le | 
| 413a0 |  64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d 62    75 66 66 65 72 2d 6e 61 6d 65 29 29 0a 20 20 20  | dger-reconcile-buffer-name)).... | 
| 413c0 |  20 20 20 20 20 20 20 28 6c 65 64 67 65 72 2d 72    65 63 6f 6e 63 69 6c 65 2d 6f 70 65 6e 2d 77 69  | .......(ledger-reconcile-open-wi | 
| 413e0 |  6e 64 6f 77 73 20 62 75 66 20 72 62 75 66 29 0a    20 20 20 20 20 20 20 20 20 20 28 6c 65 64 67 65  | ndows.buf.rbuf)...........(ledge | 
| 41400 |  72 2d 72 65 63 6f 6e 63 69 6c 65 2d 6d 6f 64 65    29 0a 20 20 20 20 20 20 20 20 20 20 28 73 65 74  | r-reconcile-mode)...........(set | 
| 41420 |  71 20 6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69    6c 65 2d 6c 65 64 67 65 72 2d 62 75 66 20 62 75  | q.ledger-reconcile-ledger-buf.bu | 
| 41440 |  66 29 0a 20 20 20 20 20 20 20 20 20 20 28 73 65    74 71 20 6c 65 64 67 65 72 2d 72 65 63 6f 6e 63  | f)...........(setq.ledger-reconc | 
| 41460 |  69 6c 65 2d 61 63 63 6f 75 6e 74 20 61 63 63 6f    75 6e 74 29 29 29 0a 0a 20 20 20 20 20 20 28 61  | ile-account.account)))........(a | 
| 41480 |  64 64 2d 68 6f 6f 6b 20 27 61 66 74 65 72 2d 73    61 76 65 2d 68 6f 6f 6b 20 27 6c 65 64 67 65 72  | dd-hook.'after-save-hook.'ledger | 
| 414a0 |  2d 72 65 63 6f 6e 63 69 6c 65 2d 72 65 66 72 65    73 68 2d 61 66 74 65 72 2d 73 61 76 65 20 6e 69  | -reconcile-refresh-after-save.ni | 
| 414c0 |  6c 20 74 29 0a 0a 20 20 20 20 20 20 3b 3b 20 4e    61 72 72 6f 77 20 74 68 65 20 6c 65 64 67 65 72  | l.t)........;;.Narrow.the.ledger | 
| 414e0 |  20 62 75 66 66 65 72 0a 20 20 20 20 20 20 28 69    66 20 6c 65 64 67 65 72 2d 6e 61 72 72 6f 77 2d  | .buffer.......(if.ledger-narrow- | 
| 41500 |  6f 6e 2d 72 65 63 6f 6e 63 69 6c 65 0a 20 20 20    20 20 20 20 20 20 20 28 6c 65 64 67 65 72 2d 6f  | on-reconcile...........(ledger-o | 
| 41520 |  63 63 75 72 20 28 72 65 67 65 78 70 2d 71 75 6f    74 65 20 61 63 63 6f 75 6e 74 29 29 29 0a 0a 20  | ccur.(regexp-quote.account)))... | 
| 41540 |  20 20 20 20 20 28 73 65 74 71 20 6c 65 64 67 65    72 2d 72 65 63 6f 6e 63 69 6c 65 2d 6c 61 73 74  | .....(setq.ledger-reconcile-last | 
| 41560 |  2d 62 61 6c 61 6e 63 65 2d 6d 65 73 73 61 67 65    20 6e 69 6c 29 0a 20 20 20 20 20 20 28 73 65 74  | -balance-message.nil).......(set | 
| 41580 |  71 20 6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69    6c 65 2d 6c 61 73 74 2d 62 61 6c 61 6e 63 65 2d  | q.ledger-reconcile-last-balance- | 
| 415a0 |  65 71 75 61 6c 73 2d 74 61 72 67 65 74 20 6e 69    6c 29 0a 0a 20 20 20 20 20 20 28 77 69 74 68 2d  | equals-target.nil)........(with- | 
| 415c0 |  63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 72    62 75 66 0a 20 20 20 20 20 20 20 20 28 69 66 20  | current-buffer.rbuf.........(if. | 
| 415e0 |  28 3e 20 28 6c 65 64 67 65 72 2d 72 65 63 6f 6e    63 69 6c 65 2d 72 65 66 72 65 73 68 29 20 30 29  | (>.(ledger-reconcile-refresh).0) | 
| 41600 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65    64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d 63  | .............(ledger-reconcile-c | 
| 41620 |  68 61 6e 67 65 2d 74 61 72 67 65 74 20 74 61 72    67 65 74 29 0a 20 20 20 20 20 20 20 20 20 20 28  | hange-target.target)...........( | 
| 41640 |  6c 65 64 67 65 72 2d 64 69 73 70 6c 61 79 2d 62    61 6c 61 6e 63 65 29 29 29 29 29 29 0a 0a 28 64  | ledger-display-balance))))))..(d | 
| 41660 |  65 66 76 61 72 20 6c 65 64 67 65 72 2d 72 65 63    6f 6e 63 69 6c 65 2d 6d 6f 64 65 2d 61 62 62 72  | efvar.ledger-reconcile-mode-abbr | 
| 41680 |  65 76 2d 74 61 62 6c 65 29 0a 0a 28 64 65 66 75    6e 20 6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69  | ev-table)..(defun.ledger-reconci | 
| 416a0 |  6c 65 2d 63 68 61 6e 67 65 2d 74 61 72 67 65 74    20 28 26 6f 70 74 69 6f 6e 61 6c 20 74 61 72 67  | le-change-target.(&optional.targ | 
| 416c0 |  65 74 29 0a 20 20 22 43 68 61 6e 67 65 20 74 68    65 20 54 41 52 47 45 54 20 61 6d 6f 75 6e 74 20  | et)..."Change.the.TARGET.amount. | 
| 416e0 |  66 6f 72 20 74 68 65 20 72 65 63 6f 6e 63 69 6c    69 61 74 69 6f 6e 20 70 72 6f 63 65 73 73 2e 22  | for.the.reconciliation.process." | 
| 41700 |  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 6c 65 64 67 65 72 2d  | ...(interactive)...(setq.ledger- | 
| 41720 |  72 65 63 6f 6e 63 69 6c 65 2d 74 61 72 67 65 74    20 28 6f 72 20 74 61 72 67 65 74 20 28 6c 65 64  | reconcile-target.(or.target.(led | 
| 41740 |  67 65 72 2d 72 65 61 64 2d 63 6f 6d 6d 6f 64 69    74 79 2d 73 74 72 69 6e 67 20 6c 65 64 67 65 72  | ger-read-commodity-string.ledger | 
| 41760 |  2d 72 65 63 6f 6e 63 69 6c 65 2d 74 61 72 67 65    74 2d 70 72 6f 6d 70 74 2d 73 74 72 69 6e 67 29  | -reconcile-target-prompt-string) | 
| 41780 |  29 29 0a 20 20 28 6c 65 64 67 65 72 2d 64 69 73    70 6c 61 79 2d 62 61 6c 61 6e 63 65 29 29 0a 0a  | ))...(ledger-display-balance)).. | 
| 417a0 |  28 64 65 66 6d 61 63 72 6f 20 6c 65 64 67 65 72    2d 72 65 63 6f 6e 63 69 6c 65 2d 63 68 61 6e 67  | (defmacro.ledger-reconcile-chang | 
| 417c0 |  65 2d 73 6f 72 74 2d 6b 65 79 2d 61 6e 64 2d 72    65 66 72 65 73 68 20 28 73 6f 72 74 2d 62 79 29  | e-sort-key-and-refresh.(sort-by) | 
| 417e0 |  0a 20 20 22 53 65 74 20 74 68 65 20 73 6f 72 74    2d 6b 65 79 20 74 6f 20 53 4f 52 54 2d 42 59 2e  | ..."Set.the.sort-key.to.SORT-BY. | 
| 41800 |  22 0a 20 20 60 28 6c 61 6d 62 64 61 20 28 29 0a    20 20 20 20 20 28 69 6e 74 65 72 61 63 74 69 76  | "...`(lambda.()......(interactiv | 
| 41820 |  65 29 0a 0a 20 20 20 20 20 28 73 65 74 71 20 6c    65 64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d  | e).......(setq.ledger-reconcile- | 
| 41840 |  73 6f 72 74 2d 6b 65 79 20 2c 73 6f 72 74 2d 62    79 29 0a 20 20 20 20 20 28 6c 65 64 67 65 72 2d  | sort-key.,sort-by)......(ledger- | 
| 41860 |  72 65 63 6f 6e 63 69 6c 65 2d 72 65 66 72 65 73    68 29 29 29 0a 0a 28 64 65 66 76 61 72 20 6c 65  | reconcile-refresh)))..(defvar.le | 
| 41880 |  64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d 6d    6f 64 65 2d 6d 61 70 0a 20 20 28 6c 65 74 20 28  | dger-reconcile-mode-map...(let.( | 
| 418a0 |  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 20  | (map.(make-sparse-keymap)))..... | 
| 418c0 |  28 64 65 66 69 6e 65 2d 6b 65 79 20 6d 61 70 20    28 6b 62 64 20 22 43 2d 6d 22 29 20 23 27 6c 65  | (define-key.map.(kbd."C-m").#'le | 
| 418e0 |  64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d 76    69 73 69 74 29 0a 20 20 20 20 28 64 65 66 69 6e  | dger-reconcile-visit).....(defin | 
| 41900 |  65 2d 6b 65 79 20 6d 61 70 20 28 6b 62 64 20 22    3c 72 65 74 75 72 6e 3e 22 29 20 23 27 6c 65 64  | e-key.map.(kbd."<return>").#'led | 
| 41920 |  67 65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d 76 69    73 69 74 29 0a 20 20 20 20 28 64 65 66 69 6e 65  | ger-reconcile-visit).....(define | 
| 41940 |  2d 6b 65 79 20 6d 61 70 20 28 6b 62 64 20 22 43    2d 78 20 43 2d 73 22 29 20 23 27 6c 65 64 67 65  | -key.map.(kbd."C-x.C-s").#'ledge | 
| 41960 |  72 2d 72 65 63 6f 6e 63 69 6c 65 2d 73 61 76 65    29 0a 20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65  | r-reconcile-save).....(define-ke | 
| 41980 |  79 20 6d 61 70 20 28 6b 62 64 20 22 43 2d 6c 22    29 20 23 27 6c 65 64 67 65 72 2d 72 65 63 6f 6e  | y.map.(kbd."C-l").#'ledger-recon | 
| 419a0 |  63 69 6c 65 2d 72 65 66 72 65 73 68 29 0a 20 20    20 20 28 64 65 66 69 6e 65 2d 6b 65 79 20 6d 61  | cile-refresh).....(define-key.ma | 
| 419c0 |  70 20 28 6b 62 64 20 22 43 2d 63 20 43 2d 63 22    29 20 23 27 6c 65 64 67 65 72 2d 72 65 63 6f 6e  | p.(kbd."C-c.C-c").#'ledger-recon | 
| 419e0 |  63 69 6c 65 2d 66 69 6e 69 73 68 29 0a 20 20 20    20 28 64 65 66 69 6e 65 2d 6b 65 79 20 6d 61 70  | cile-finish).....(define-key.map | 
| 41a00 |  20 28 6b 62 64 20 22 53 50 43 22 29 20 23 27 6c    65 64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d  | .(kbd."SPC").#'ledger-reconcile- | 
| 41a20 |  74 6f 67 67 6c 65 29 0a 20 20 20 20 28 64 65 66    69 6e 65 2d 6b 65 79 20 6d 61 70 20 28 6b 62 64  | toggle).....(define-key.map.(kbd | 
| 41a40 |  20 22 61 22 29 20 23 27 6c 65 64 67 65 72 2d 72    65 63 6f 6e 63 69 6c 65 2d 61 64 64 29 0a 20 20  | ."a").#'ledger-reconcile-add)... | 
| 41a60 |  20 20 28 64 65 66 69 6e 65 2d 6b 65 79 20 6d 61    70 20 28 6b 62 64 20 22 64 22 29 20 23 27 6c 65  | ..(define-key.map.(kbd."d").#'le | 
| 41a80 |  64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d 64    65 6c 65 74 65 29 0a 20 20 20 20 28 64 65 66 69  | dger-reconcile-delete).....(defi | 
| 41aa0 |  6e 65 2d 6b 65 79 20 6d 61 70 20 28 6b 62 64 20    22 67 22 29 20 23 27 6c 65 64 67 65 72 2d 72 65  | ne-key.map.(kbd."g").#'ledger-re | 
| 41ac0 |  63 6f 6e 63 69 6c 65 29 3b 0a 20 20 20 20 28 64    65 66 69 6e 65 2d 6b 65 79 20 6d 61 70 20 28 6b  | concile);.....(define-key.map.(k | 
| 41ae0 |  62 64 20 22 6e 22 29 20 23 27 6e 65 78 74 2d 6c    69 6e 65 29 0a 20 20 20 20 28 64 65 66 69 6e 65  | bd."n").#'next-line).....(define | 
| 41b00 |  2d 6b 65 79 20 6d 61 70 20 28 6b 62 64 20 22 70    22 29 20 23 27 70 72 65 76 69 6f 75 73 2d 6c 69  | -key.map.(kbd."p").#'previous-li | 
| 41b20 |  6e 65 29 0a 20 20 20 20 28 64 65 66 69 6e 65 2d    6b 65 79 20 6d 61 70 20 28 6b 62 64 20 22 74 22  | ne).....(define-key.map.(kbd."t" | 
| 41b40 |  29 20 23 27 6c 65 64 67 65 72 2d 72 65 63 6f 6e    63 69 6c 65 2d 63 68 61 6e 67 65 2d 74 61 72 67  | ).#'ledger-reconcile-change-targ | 
| 41b60 |  65 74 29 0a 20 20 20 20 28 64 65 66 69 6e 65 2d    6b 65 79 20 6d 61 70 20 28 6b 62 64 20 22 73 22  | et).....(define-key.map.(kbd."s" | 
| 41b80 |  29 20 23 27 6c 65 64 67 65 72 2d 72 65 63 6f 6e    63 69 6c 65 2d 73 61 76 65 29 0a 20 20 20 20 28  | ).#'ledger-reconcile-save).....( | 
| 41ba0 |  64 65 66 69 6e 65 2d 6b 65 79 20 6d 61 70 20 28    6b 62 64 20 22 71 22 29 20 23 27 6c 65 64 67 65  | define-key.map.(kbd."q").#'ledge | 
| 41bc0 |  72 2d 72 65 63 6f 6e 63 69 6c 65 2d 71 75 69 74    29 0a 20 20 20 20 28 64 65 66 69 6e 65 2d 6b 65  | r-reconcile-quit).....(define-ke | 
| 41be0 |  79 20 6d 61 70 20 28 6b 62 64 20 22 62 22 29 20    23 27 6c 65 64 67 65 72 2d 64 69 73 70 6c 61 79  | y.map.(kbd."b").#'ledger-display | 
| 41c00 |  2d 62 61 6c 61 6e 63 65 29 0a 20 20 20 20 28 64    65 66 69 6e 65 2d 6b 65 79 20 6d 61 70 20 28 6b  | -balance).....(define-key.map.(k | 
| 41c20 |  62 64 20 22 42 22 29 20 23 27 6c 65 64 67 65 72    2d 72 65 63 6f 6e 63 69 6c 65 2d 64 69 73 70 6c  | bd."B").#'ledger-reconcile-displ | 
| 41c40 |  61 79 2d 62 61 6c 61 6e 63 65 2d 69 6e 2d 68 65    61 64 65 72 2d 6d 6f 64 65 29 0a 0a 20 20 20 20  | ay-balance-in-header-mode)...... | 
| 41c60 |  28 64 65 66 69 6e 65 2d 6b 65 79 20 6d 61 70 20    28 6b 62 64 20 22 43 2d 63 20 43 2d 6f 22 29 20  | (define-key.map.(kbd."C-c.C-o"). | 
| 41c80 |  28 6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69 6c    65 2d 63 68 61 6e 67 65 2d 73 6f 72 74 2d 6b 65  | (ledger-reconcile-change-sort-ke | 
| 41ca0 |  79 2d 61 6e 64 2d 72 65 66 72 65 73 68 20 22 28    30 29 22 29 29 0a 0a 20 20 20 20 28 64 65 66 69  | y-and-refresh."(0)"))......(defi | 
| 41cc0 |  6e 65 2d 6b 65 79 20 6d 61 70 20 28 6b 62 64 20    22 43 2d 63 20 43 2d 61 22 29 20 28 6c 65 64 67  | ne-key.map.(kbd."C-c.C-a").(ledg | 
| 41ce0 |  65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d 63 68 61    6e 67 65 2d 73 6f 72 74 2d 6b 65 79 2d 61 6e 64  | er-reconcile-change-sort-key-and | 
| 41d00 |  2d 72 65 66 72 65 73 68 20 22 28 61 6d 6f 75 6e    74 29 22 29 29 0a 0a 20 20 20 20 28 64 65 66 69  | -refresh."(amount)"))......(defi | 
| 41d20 |  6e 65 2d 6b 65 79 20 6d 61 70 20 28 6b 62 64 20    22 43 2d 63 20 43 2d 64 22 29 20 28 6c 65 64 67  | ne-key.map.(kbd."C-c.C-d").(ledg | 
| 41d40 |  65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d 63 68 61    6e 67 65 2d 73 6f 72 74 2d 6b 65 79 2d 61 6e 64  | er-reconcile-change-sort-key-and | 
| 41d60 |  2d 72 65 66 72 65 73 68 20 22 28 64 61 74 65 29    22 29 29 0a 0a 20 20 20 20 28 64 65 66 69 6e 65  | -refresh."(date)"))......(define | 
| 41d80 |  2d 6b 65 79 20 6d 61 70 20 28 6b 62 64 20 22 43    2d 63 20 43 2d 70 22 29 20 28 6c 65 64 67 65 72  | -key.map.(kbd."C-c.C-p").(ledger | 
| 41da0 |  2d 72 65 63 6f 6e 63 69 6c 65 2d 63 68 61 6e 67    65 2d 73 6f 72 74 2d 6b 65 79 2d 61 6e 64 2d 72  | -reconcile-change-sort-key-and-r | 
| 41dc0 |  65 66 72 65 73 68 20 22 28 70 61 79 65 65 29 22    29 29 0a 20 20 20 20 6d 61 70 29 0a 20 20 22 4b  | efresh."(payee)")).....map)..."K | 
| 41de0 |  65 79 6d 61 70 20 66 6f 72 20 60 6c 65 64 67 65    72 2d 72 65 63 6f 6e 63 69 6c 65 2d 6d 6f 64 65  | eymap.for.`ledger-reconcile-mode | 
| 41e00 |  27 2e 22 29 0a 0a 28 65 61 73 79 2d 6d 65 6e 75    2d 64 65 66 69 6e 65 20 6c 65 64 67 65 72 2d 72  | '.")..(easy-menu-define.ledger-r | 
| 41e20 |  65 63 6f 6e 63 69 6c 65 2d 6d 6f 64 65 2d 6d 65    6e 75 20 6c 65 64 67 65 72 2d 72 65 63 6f 6e 63  | econcile-mode-menu.ledger-reconc | 
| 41e40 |  69 6c 65 2d 6d 6f 64 65 2d 6d 61 70 0a 20 20 22    4c 65 64 67 65 72 20 72 65 63 6f 6e 63 69 6c 65  | ile-mode-map..."Ledger.reconcile | 
| 41e60 |  20 6d 65 6e 75 22 0a 20 20 60 28 22 52 65 63 6f    6e 63 69 6c 65 22 0a 20 20 20 20 5b 22 53 61 76  | .menu"...`("Reconcile".....["Sav | 
| 41e80 |  65 22 20 6c 65 64 67 65 72 2d 72 65 63 6f 6e 63    69 6c 65 2d 73 61 76 65 5d 0a 20 20 20 20 5b 22  | e".ledger-reconcile-save].....[" | 
| 41ea0 |  52 65 66 72 65 73 68 22 20 6c 65 64 67 65 72 2d    72 65 63 6f 6e 63 69 6c 65 2d 72 65 66 72 65 73  | Refresh".ledger-reconcile-refres | 
| 41ec0 |  68 5d 0a 20 20 20 20 5b 22 46 69 6e 69 73 68 22    20 6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69 6c  | h].....["Finish".ledger-reconcil | 
| 41ee0 |  65 2d 66 69 6e 69 73 68 5d 0a 20 20 20 20 22 2d    2d 2d 22 0a 20 20 20 20 5b 22 52 65 63 6f 6e 63  | e-finish]....."---".....["Reconc | 
| 41f00 |  69 6c 65 20 4e 65 77 20 41 63 63 6f 75 6e 74 22    20 6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69 6c  | ile.New.Account".ledger-reconcil | 
| 41f20 |  65 5d 0a 20 20 20 20 22 2d 2d 2d 22 0a 20 20 20    20 5b 22 43 68 61 6e 67 65 20 54 61 72 67 65 74  | e]....."---".....["Change.Target | 
| 41f40 |  20 42 61 6c 61 6e 63 65 22 20 6c 65 64 67 65 72    2d 72 65 63 6f 6e 63 69 6c 65 2d 63 68 61 6e 67  | .Balance".ledger-reconcile-chang | 
| 41f60 |  65 2d 74 61 72 67 65 74 5d 0a 20 20 20 20 5b 22    53 68 6f 77 20 43 6c 65 61 72 65 64 20 42 61 6c  | e-target].....["Show.Cleared.Bal | 
| 41f80 |  61 6e 63 65 22 20 6c 65 64 67 65 72 2d 64 69 73    70 6c 61 79 2d 62 61 6c 61 6e 63 65 5d 0a 20 20  | ance".ledger-display-balance]... | 
| 41fa0 |  20 20 22 2d 2d 2d 22 0a 20 20 20 20 5b 22 53 6f    72 74 20 62 79 20 70 61 79 65 65 22 20 2c 28 6c  | .."---".....["Sort.by.payee".,(l | 
| 41fc0 |  65 64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d    63 68 61 6e 67 65 2d 73 6f 72 74 2d 6b 65 79 2d  | edger-reconcile-change-sort-key- | 
| 41fe0 |  61 6e 64 2d 72 65 66 72 65 73 68 20 22 28 70 61    79 65 65 29 22 29 5d 0a 20 20 20 20 5b 22 53 6f  | and-refresh."(payee)")].....["So | 
| 42000 |  72 74 20 62 79 20 64 61 74 65 22 20 2c 28 6c 65    64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d 63  | rt.by.date".,(ledger-reconcile-c | 
| 42020 |  68 61 6e 67 65 2d 73 6f 72 74 2d 6b 65 79 2d 61    6e 64 2d 72 65 66 72 65 73 68 20 22 28 64 61 74  | hange-sort-key-and-refresh."(dat | 
| 42040 |  65 29 22 29 5d 0a 20 20 20 20 5b 22 53 6f 72 74    20 62 79 20 61 6d 6f 75 6e 74 22 20 2c 28 6c 65  | e)")].....["Sort.by.amount".,(le | 
| 42060 |  64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d 63    68 61 6e 67 65 2d 73 6f 72 74 2d 6b 65 79 2d 61  | dger-reconcile-change-sort-key-a | 
| 42080 |  6e 64 2d 72 65 66 72 65 73 68 20 22 28 61 6d 6f    75 6e 74 29 22 29 5d 0a 20 20 20 20 5b 22 53 6f  | nd-refresh."(amount)")].....["So | 
| 420a0 |  72 74 20 62 79 20 66 69 6c 65 20 6f 72 64 65 72    22 20 2c 28 6c 65 64 67 65 72 2d 72 65 63 6f 6e  | rt.by.file.order".,(ledger-recon | 
| 420c0 |  63 69 6c 65 2d 63 68 61 6e 67 65 2d 73 6f 72 74    2d 6b 65 79 2d 61 6e 64 2d 72 65 66 72 65 73 68  | cile-change-sort-key-and-refresh | 
| 420e0 |  20 22 28 30 29 22 29 5d 0a 20 20 20 20 22 2d 2d    2d 22 0a 20 20 20 20 5b 22 54 6f 67 67 6c 65 20  | ."(0)")]....."---".....["Toggle. | 
| 42100 |  45 6e 74 72 79 22 20 6c 65 64 67 65 72 2d 72 65    63 6f 6e 63 69 6c 65 2d 74 6f 67 67 6c 65 5d 0a  | Entry".ledger-reconcile-toggle]. | 
| 42120 |  20 20 20 20 5b 22 41 64 64 20 45 6e 74 72 79 22    20 6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69 6c  | ....["Add.Entry".ledger-reconcil | 
| 42140 |  65 2d 61 64 64 5d 0a 20 20 20 20 5b 22 44 65 6c    65 74 65 20 45 6e 74 72 79 22 20 6c 65 64 67 65  | e-add].....["Delete.Entry".ledge | 
| 42160 |  72 2d 72 65 63 6f 6e 63 69 6c 65 2d 64 65 6c 65    74 65 5d 0a 20 20 20 20 22 2d 2d 2d 22 0a 20 20  | r-reconcile-delete]....."---"... | 
| 42180 |  20 20 5b 22 4e 65 78 74 20 45 6e 74 72 79 22 20    6e 65 78 74 2d 6c 69 6e 65 5d 0a 20 20 20 20 5b  | ..["Next.Entry".next-line].....[ | 
| 421a0 |  22 56 69 73 69 74 20 53 6f 75 72 63 65 22 20 6c    65 64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d  | "Visit.Source".ledger-reconcile- | 
| 421c0 |  76 69 73 69 74 5d 0a 20 20 20 20 5b 22 50 72 65    76 69 6f 75 73 20 45 6e 74 72 79 22 20 70 72 65  | visit].....["Previous.Entry".pre | 
| 421e0 |  76 69 6f 75 73 2d 6c 69 6e 65 5d 0a 20 20 20 20    22 2d 2d 2d 22 0a 20 20 20 20 5b 22 51 75 69 74  | vious-line]....."---".....["Quit | 
| 42200 |  22 20 6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69    6c 65 2d 71 75 69 74 5d 0a 20 20 20 20 29 29 0a  | ".ledger-reconcile-quit].....)). | 
| 42220 |  0a 28 64 65 66 69 6e 65 2d 64 65 72 69 76 65 64    2d 6d 6f 64 65 20 6c 65 64 67 65 72 2d 72 65 63  | .(define-derived-mode.ledger-rec | 
| 42240 |  6f 6e 63 69 6c 65 2d 6d 6f 64 65 20 74 65 78 74    2d 6d 6f 64 65 20 22 52 65 63 6f 6e 63 69 6c 65  | oncile-mode.text-mode."Reconcile | 
| 42260 |  22 0a 20 20 22 41 20 6d 6f 64 65 20 66 6f 72 20    72 65 63 6f 6e 63 69 6c 69 6e 67 20 6c 65 64 67  | "..."A.mode.for.reconciling.ledg | 
| 42280 |  65 72 20 65 6e 74 72 69 65 73 2e 22 29 0a 0a 28    64 65 66 69 6e 65 2d 6d 69 6e 6f 72 2d 6d 6f 64  | er.entries.")..(define-minor-mod | 
| 422a0 |  65 20 6c 65 64 67 65 72 2d 72 65 63 6f 6e 63 69    6c 65 2d 64 69 73 70 6c 61 79 2d 62 61 6c 61 6e  | e.ledger-reconcile-display-balan | 
| 422c0 |  63 65 2d 69 6e 2d 68 65 61 64 65 72 2d 6d 6f 64    65 0a 20 20 22 57 68 65 6e 20 65 6e 61 62 6c 65  | ce-in-header-mode..."When.enable | 
| 422e0 |  64 2c 20 64 69 73 70 6c 61 79 20 74 68 65 20 63    6c 65 61 72 65 64 2d 6f 72 2d 70 65 6e 64 69 6e  | d,.display.the.cleared-or-pendin | 
| 42300 |  67 20 62 61 6c 61 6e 63 65 20 69 6e 20 74 68 65    20 68 65 61 64 65 72 2e 22 0a 20 20 3a 67 72 6f  | g.balance.in.the.header."...:gro | 
| 42320 |  75 70 20 27 6c 65 64 67 65 72 2d 72 65 63 6f 6e    63 69 6c 65 0a 20 20 28 69 66 20 6c 65 64 67 65  | up.'ledger-reconcile...(if.ledge | 
| 42340 |  72 2d 72 65 63 6f 6e 63 69 6c 65 2d 64 69 73 70    6c 61 79 2d 62 61 6c 61 6e 63 65 2d 69 6e 2d 68  | r-reconcile-display-balance-in-h | 
| 42360 |  65 61 64 65 72 2d 6d 6f 64 65 0a 20 20 20 20 20    20 28 73 65 74 71 20 68 65 61 64 65 72 2d 6c 69  | eader-mode.......(setq.header-li | 
| 42380 |  6e 65 2d 66 6f 72 6d 61 74 20 27 28 6c 65 64 67    65 72 2d 72 65 63 6f 6e 63 69 6c 65 2d 6c 61 73  | ne-format.'(ledger-reconcile-las | 
| 423a0 |  74 2d 62 61 6c 61 6e 63 65 2d 65 71 75 61 6c 73    2d 74 61 72 67 65 74 0a 20 20 20 20 20 20 20 20  | t-balance-equals-target......... | 
| 423c0 |  20 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 3a 70 72 6f 70 65  | .........................(:prope | 
| 423e0 |  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 20 20  | rtize........................... | 
| 42400 |  20 20 20 20 20 20 20 20 6c 65 64 67 65 72 2d 72    65 63 6f 6e 63 69 6c 65 2d 6c 61 73 74 2d 62 61  | ........ledger-reconcile-last-ba | 
| 42420 |  6c 61 6e 63 65 2d 6d 65 73 73 61 67 65 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | lance-message................... | 
| 42440 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    66 61 63 65 20 6c 65 64 67 65 72 2d 72 65 63 6f  | ................face.ledger-reco | 
| 42460 |  6e 63 69 6c 65 2d 6c 61 73 74 2d 62 61 6c 61 6e    63 65 2d 65 71 75 61 6c 73 2d 74 61 72 67 65 74  | ncile-last-balance-equals-target | 
| 42480 |  2d 66 61 63 65 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | -face).......................... | 
| 424a0 |  20 20 20 20 20 20 20 20 6c 65 64 67 65 72 2d 72    65 63 6f 6e 63 69 6c 65 2d 6c 61 73 74 2d 62 61  | ........ledger-reconcile-last-ba | 
| 424c0 |  6c 61 6e 63 65 2d 6d 65 73 73 61 67 65 29 29 0a    20 20 20 20 28 73 65 74 71 20 68 65 61 64 65 72  | lance-message)).....(setq.header | 
| 424e0 |  2d 6c 69 6e 65 2d 66 6f 72 6d 61 74 20 6e 69 6c    29 29 29 0a 0a 28 70 72 6f 76 69 64 65 20 27 6c  | -line-format.nil)))..(provide.'l | 
| 42500 |  65 64 67 65 72 2d 72 65 63 6f 6e 63 69 6c 65 29    0a 0a 3b 3b 3b 20 6c 65 64 67 65 72 2d 72 65 63  | edger-reconcile)..;;;.ledger-rec | 
| 42520 |  6f 6e 63 69 6c 65 2e 65 6c 20 65 6e 64 73 20 68    65 72 65 0a 00 00 00 00 00 00 00 00 00 00 00 00  | oncile.el.ends.here............. | 
| 42540 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 42560 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 42580 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 425a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 425c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 425e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 42600 |  6c 65 64 67 65 72 2d 6d 6f 64 65 2d 32 30 32 34    30 34 31 36 2e 34 31 36 2f 64 69 72 00 00 00 00  | ledger-mode-20240416.416/dir.... | 
| 42620 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 42640 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 42660 |  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 | 
| 42680 |  30 30 30 31 31 33 34 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 33 36 31 32 00 20 30 00 00 00  | 0001134.00000000000.013612..0... | 
| 426a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 426c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 426e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 42700 |  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................... | 
| 42720 |  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................... | 
| 42740 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 42760 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 42780 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 427a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 427c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 427e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 42800 |  54 68 69 73 20 69 73 20 74 68 65 20 66 69 6c 65    20 2e 2e 2e 2f 69 6e 66 6f 2f 64 69 72 2c 20 77  | This.is.the.file..../info/dir,.w | 
| 42820 |  68 69 63 68 20 63 6f 6e 74 61 69 6e 73 20 74 68    65 0a 74 6f 70 6d 6f 73 74 20 6e 6f 64 65 20 6f  | hich.contains.the.topmost.node.o | 
| 42840 |  66 20 74 68 65 20 49 6e 66 6f 20 68 69 65 72 61    72 63 68 79 2c 20 63 61 6c 6c 65 64 20 28 64 69  | f.the.Info.hierarchy,.called.(di | 
| 42860 |  72 29 54 6f 70 2e 0a 54 68 65 20 66 69 72 73 74    20 74 69 6d 65 20 79 6f 75 20 69 6e 76 6f 6b 65  | r)Top..The.first.time.you.invoke | 
| 42880 |  20 49 6e 66 6f 20 79 6f 75 20 73 74 61 72 74 20    6f 66 66 20 6c 6f 6f 6b 69 6e 67 20 61 74 20 74  | .Info.you.start.off.looking.at.t | 
| 428a0 |  68 69 73 20 6e 6f 64 65 2e 0a 1f 0a 46 69 6c 65    3a 20 64 69 72 2c 09 4e 6f 64 65 3a 20 54 6f 70  | his.node....File:.dir,.Node:.Top | 
| 428c0 |  09 54 68 69 73 20 69 73 20 74 68 65 20 74 6f 70    20 6f 66 20 74 68 65 20 49 4e 46 4f 20 74 72 65  | .This.is.the.top.of.the.INFO.tre | 
| 428e0 |  65 0a 0a 20 20 54 68 69 73 20 28 74 68 65 20 44    69 72 65 63 74 6f 72 79 20 6e 6f 64 65 29 20 67  | e....This.(the.Directory.node).g | 
| 42900 |  69 76 65 73 20 61 20 6d 65 6e 75 20 6f 66 20 6d    61 6a 6f 72 20 74 6f 70 69 63 73 2e 0a 20 20 54  | ives.a.menu.of.major.topics....T | 
| 42920 |  79 70 69 6e 67 20 22 71 22 20 65 78 69 74 73 2c    20 22 48 22 20 6c 69 73 74 73 20 61 6c 6c 20 49  | yping."q".exits,."H".lists.all.I | 
| 42940 |  6e 66 6f 20 63 6f 6d 6d 61 6e 64 73 2c 20 22 64    22 20 72 65 74 75 72 6e 73 20 68 65 72 65 2c 0a  | nfo.commands,."d".returns.here,. | 
| 42960 |  20 20 22 68 22 20 67 69 76 65 73 20 61 20 70 72    69 6d 65 72 20 66 6f 72 20 66 69 72 73 74 2d 74  | .."h".gives.a.primer.for.first-t | 
| 42980 |  69 6d 65 72 73 2c 0a 20 20 22 6d 45 6d 61 63 73    3c 52 65 74 75 72 6e 3e 22 20 76 69 73 69 74 73  | imers,..."mEmacs<Return>".visits | 
| 429a0 |  20 74 68 65 20 45 6d 61 63 73 20 6d 61 6e 75 61    6c 2c 20 65 74 63 2e 0a 0a 20 20 49 6e 20 45 6d  | .the.Emacs.manual,.etc.....In.Em | 
| 429c0 |  61 63 73 2c 20 79 6f 75 20 63 61 6e 20 63 6c 69    63 6b 20 6d 6f 75 73 65 20 62 75 74 74 6f 6e 20  | acs,.you.can.click.mouse.button. | 
| 429e0 |  32 20 6f 6e 20 61 20 6d 65 6e 75 20 69 74 65 6d    20 6f 72 20 63 72 6f 73 73 20 72 65 66 65 72 65  | 2.on.a.menu.item.or.cross.refere | 
| 42a00 |  6e 63 65 0a 20 20 74 6f 20 73 65 6c 65 63 74 20    69 74 2e 0a 0a 2a 20 4d 65 6e 75 3a 0a 0a 45 6d  | nce...to.select.it...*.Menu:..Em | 
| 42a20 |  61 63 73 0a 2a 20 4c 65 64 67 65 72 20 4d 6f 64    65 3a 20 28 6c 65 64 67 65 72 2d 6d 6f 64 65 29  | acs.*.Ledger.Mode:.(ledger-mode) | 
| 42a40 |  2e 20 20 20 43 6f 6d 6d 61 6e 64 2d 4c 69 6e 65    20 41 63 63 6f 75 6e 74 69 6e 67 0a 00 00 00 00  | ....Command-Line.Accounting..... | 
| 42a60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 42a80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 42aa0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 42ac0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 42ae0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 42b00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 42b20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 42b40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 42b60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 42b80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 42ba0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 42bc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 42be0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 42c00 |  6c 65 64 67 65 72 2d 6d 6f 64 65 2d 32 30 32 34    30 34 31 36 2e 34 31 36 2f 6c 65 64 67 65 72 2d  | ledger-mode-20240416.416/ledger- | 
| 42c20 |  72 65 67 65 78 2e 65 6c 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | regex.el........................ | 
| 42c40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 42c60 |  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 | 
| 42c80 |  30 30 33 33 30 36 37 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 36 30 31 37 00 20 30 00 00 00  | 0033067.00000000000.016017..0... | 
| 42ca0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 42cc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 42ce0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 42d00 |  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................... | 
| 42d20 |  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................... | 
| 42d40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 42d60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 42d80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 42da0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 42dc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 42de0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 42e00 |  3b 3b 3b 20 6c 65 64 67 65 72 2d 72 65 67 65 78    2e 65 6c 20 2d 2d 2d 20 48 65 6c 70 65 72 20 63  | ;;;.ledger-regex.el.---.Helper.c | 
| 42e20 |  6f 64 65 20 66 6f 72 20 75 73 65 20 77 69 74 68    20 74 68 65 20 22 6c 65 64 67 65 72 22 20 63 6f  | ode.for.use.with.the."ledger".co | 
| 42e40 |  6d 6d 61 6e 64 2d 6c 69 6e 65 20 74 6f 6f 6c 20    20 2d 2a 2d 20 6c 65 78 69 63 61 6c 2d 62 69 6e  | mmand-line.tool..-*-.lexical-bin | 
| 42e60 |  64 69 6e 67 3a 20 74 3b 20 2d 2a 2d 0a 0a 3b 3b    20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32  | ding:.t;.-*-..;;.Copyright.(C).2 | 
| 42e80 |  30 30 33 2d 32 30 31 36 20 4a 6f 68 6e 20 57 69    65 67 6c 65 79 20 28 6a 6f 68 6e 77 20 41 54 20  | 003-2016.John.Wiegley.(johnw.AT. | 
| 42ea0 |  67 6e 75 20 44 4f 54 20 6f 72 67 29 0a 0a 3b 3b    20 54 68 69 73 20 66 69 6c 65 20 69 73 20 6e 6f  | gnu.DOT.org)..;;.This.file.is.no | 
| 42ec0 |  74 20 70 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 69 73  | t.part.of.GNU.Emacs...;;.This.is | 
| 42ee0 |  20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3b 20    79 6f 75 20 63 61 6e 20 72 65 64 69 73 74 72 69  | .free.software;.you.can.redistri | 
| 42f00 |  62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d    6f 64 69 66 79 20 69 74 20 75 6e 64 65 72 0a 3b  | bute.it.and/or.modify.it.under.; | 
| 42f20 |  3b 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74    68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50  | ;.the.terms.of.the.GNU.General.P | 
| 42f40 |  75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 61 73    20 70 75 62 6c 69 73 68 65 64 20 62 79 20 74 68  | ublic.License.as.published.by.th | 
| 42f60 |  65 20 46 72 65 65 0a 3b 3b 20 53 6f 66 74 77 61    72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 3b 20 65  | e.Free.;;.Software.Foundation;.e | 
| 42f80 |  69 74 68 65 72 20 76 65 72 73 69 6f 6e 20 32 2c    20 6f 72 20 28 61 74 20 79 6f 75 72 20 6f 70 74  | ither.version.2,.or.(at.your.opt | 
| 42fa0 |  69 6f 6e 29 20 61 6e 79 20 6c 61 74 65 72 0a 3b    3b 20 76 65 72 73 69 6f 6e 2e 0a 3b 3b 0a 3b 3b  | ion).any.later.;;.version..;;.;; | 
| 42fc0 |  20 54 68 69 73 20 69 73 20 64 69 73 74 72 69 62    75 74 65 64 20 69 6e 20 74 68 65 20 68 6f 70 65  | .This.is.distributed.in.the.hope | 
| 42fe0 |  20 74 68 61 74 20 69 74 20 77 69 6c 6c 20 62 65    20 75 73 65 66 75 6c 2c 20 62 75 74 20 57 49 54  | .that.it.will.be.useful,.but.WIT | 
| 43000 |  48 4f 55 54 0a 3b 3b 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  | HOUT.;;.ANY.WARRANTY;.without.ev | 
| 43020 |  65 6e 20 74 68 65 20 69 6d 70 6c 69 65 64 20 77    61 72 72 61 6e 74 79 20 6f 66 20 4d 45 52 43 48  | en.the.implied.warranty.of.MERCH | 
| 43040 |  41 4e 54 41 42 49 4c 49 54 59 20 6f 72 0a 3b 3b    20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50  | ANTABILITY.or.;;.FITNESS.FOR.A.P | 
| 43060 |  41 52 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53    45 2e 20 20 53 65 65 20 74 68 65 20 47 4e 55 20  | ARTICULAR.PURPOSE...See.the.GNU. | 
| 43080 |  47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c    69 63 65 6e 73 65 0a 3b 3b 20 66 6f 72 20 6d 6f  | General.Public.License.;;.for.mo | 
| 430a0 |  72 65 20 64 65 74 61 69 6c 73 2e 0a 3b 3b 0a 3b    3b 20 59 6f 75 20 73 68 6f 75 6c 64 20 68 61 76  | re.details..;;.;;.You.should.hav | 
| 430c0 |  65 20 72 65 63 65 69 76 65 64 20 61 20 63 6f 70    79 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e  | e.received.a.copy.of.the.GNU.Gen | 
| 430e0 |  65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65    6e 73 65 0a 3b 3b 20 61 6c 6f 6e 67 20 77 69 74  | eral.Public.License.;;.along.wit | 
| 43100 |  68 20 47 4e 55 20 45 6d 61 63 73 3b 20 73 65 65    20 74 68 65 20 66 69 6c 65 20 43 4f 50 59 49 4e  | h.GNU.Emacs;.see.the.file.COPYIN | 
| 43120 |  47 2e 20 20 49 66 20 6e 6f 74 2c 20 77 72 69 74    65 20 74 6f 20 74 68 65 0a 3b 3b 20 46 72 65 65  | G...If.not,.write.to.the.;;.Free | 
| 43140 |  20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61    74 69 6f 6e 2c 20 49 6e 63 2e 2c 20 35 31 20 46  | .Software.Foundation,.Inc.,.51.F | 
| 43160 |  72 61 6e 6b 6c 69 6e 20 53 74 72 65 65 74 2c 20    46 69 66 74 68 20 46 6c 6f 6f 72 2c 20 42 6f 73  | ranklin.Street,.Fifth.Floor,.Bos | 
| 43180 |  74 6f 6e 2c 0a 3b 3b 20 4d 41 20 30 32 31 31 30    2d 31 33 30 31 20 55 53 41 2e 0a 0a 0a 3b 3b 3b  | ton,.;;.MA.02110-1301.USA....;;; | 
| 431a0 |  20 43 6f 6d 6d 65 6e 74 61 72 79 3a 0a 3b 3b 20    52 65 67 75 6c 61 72 20 65 78 70 72 65 73 73 69  | .Commentary:.;;.Regular.expressi | 
| 431c0 |  6f 6e 73 20 75 73 65 64 20 62 79 20 6c 65 64 67    65 72 2d 6d 6f 64 65 2e 0a 0a 3b 3b 3b 20 43 6f  | ons.used.by.ledger-mode...;;;.Co | 
| 431e0 |  64 65 3a 0a 0a 28 72 65 71 75 69 72 65 20 27 72    78 29 0a 28 72 65 71 75 69 72 65 20 27 63 6c 2d  | de:..(require.'rx).(require.'cl- | 
| 43200 |  6c 69 62 29 0a 0a 28 64 65 66 76 61 72 20 6c 65    64 67 65 72 2d 69 73 6f 2d 64 61 74 65 2d 72 65  | lib)..(defvar.ledger-iso-date-re | 
| 43220 |  67 65 78 70 29 0a 0a 28 64 65 66 63 6f 6e 73 74    20 6c 65 64 67 65 72 2d 61 6d 6f 75 6e 74 2d 64  | gexp)..(defconst.ledger-amount-d | 
| 43240 |  65 63 69 6d 61 6c 2d 63 6f 6d 6d 61 2d 72 65 67    65 78 0a 20 20 22 2d 3f 5c 5c 28 3f 3a 5b 31 2d  | ecimal-comma-regex..."-?\\(?:[1- | 
| 43260 |  39 5d 5b 30 2d 39 2e 5d 5c 5c 7c 30 5c 5c 29 2a    5b 2c 5d 3f 5b 30 2d 39 5d 2a 22 29 0a 0a 28 64  | 9][0-9.]\\|0\\)*[,]?[0-9]*")..(d | 
| 43280 |  65 66 63 6f 6e 73 74 20 6c 65 64 67 65 72 2d 61    6d 6f 75 6e 74 2d 64 65 63 69 6d 61 6c 2d 70 65  | efconst.ledger-amount-decimal-pe | 
| 432a0 |  72 69 6f 64 2d 72 65 67 65 78 0a 20 20 22 2d 3f    5c 5c 28 3f 3a 5b 31 2d 39 5d 5b 30 2d 39 2c 5d  | riod-regex..."-?\\(?:[1-9][0-9,] | 
| 432c0 |  2a 5c 5c 7c 30 5c 5c 29 5b 2e 5d 3f 5b 30 2d 39    5d 2a 22 29 0a 0a 28 64 65 66 63 6f 6e 73 74 20  | *\\|0\\)[.]?[0-9]*")..(defconst. | 
| 432e0 |  6c 65 64 67 65 72 2d 6f 74 68 65 72 2d 65 6e 74    72 69 65 73 2d 72 65 67 65 78 0a 20 20 22 5c 5c  | ledger-other-entries-regex..."\\ | 
| 43300 |  28 5e 5b 7e 3d 41 2d 5a 61 2d 7a 5d 2e 2b 5c 5c    29 2b 22 29 0a 0a 28 64 65 66 63 6f 6e 73 74 20  | (^[~=A-Za-z].+\\)+")..(defconst. | 
| 43320 |  6c 65 64 67 65 72 2d 63 6f 6d 6d 65 6e 74 2d 72    65 67 65 78 0a 20 20 22 5e 5b 3b 23 7c 5c 5c 2a  | ledger-comment-regex..."^[;#|\\* | 
| 43340 |  25 5d 2e 2a 5c 5c 7c 5b 20 5c 74 5d 2b 3b 2e 2a    22 29 0a 0a 28 64 65 66 63 6f 6e 73 74 20 6c 65  | %].*\\|[.\t]+;.*")..(defconst.le | 
| 43360 |  64 67 65 72 2d 6d 75 6c 74 69 6c 69 6e 65 2d 63    6f 6d 6d 65 6e 74 2d 73 74 61 72 74 2d 72 65 67  | dger-multiline-comment-start-reg | 
| 43380 |  65 78 0a 20 20 22 5e 21 63 6f 6d 6d 65 6e 74 24    22 29 0a 28 64 65 66 63 6f 6e 73 74 20 6c 65 64  | ex..."^!comment$").(defconst.led | 
| 433a0 |  67 65 72 2d 6d 75 6c 74 69 6c 69 6e 65 2d 63 6f    6d 6d 65 6e 74 2d 65 6e 64 2d 72 65 67 65 78 0a  | ger-multiline-comment-end-regex. | 
| 433c0 |  20 20 22 5e 21 65 6e 64 5f 63 6f 6d 6d 65 6e 74    24 22 29 0a 28 64 65 66 63 6f 6e 73 74 20 6c 65  | .."^!end_comment$").(defconst.le | 
| 433e0 |  64 67 65 72 2d 6d 75 6c 74 69 6c 69 6e 65 2d 63    6f 6d 6d 65 6e 74 2d 72 65 67 65 78 0a 20 20 22  | dger-multiline-comment-regex..." | 
| 43400 |  5e 21 63 6f 6d 6d 65 6e 74 5c 6e 5c 5c 28 2e 2a    5c 6e 5c 5c 29 2a 3f 21 65 6e 64 5f 63 6f 6d 6d  | ^!comment\n\\(.*\n\\)*?!end_comm | 
| 43420 |  65 6e 74 24 22 29 0a 0a 28 64 65 66 63 6f 6e 73    74 20 6c 65 64 67 65 72 2d 70 61 79 65 65 2d 61  | ent$")..(defconst.ledger-payee-a | 
| 43440 |  6e 79 2d 73 74 61 74 75 73 2d 72 65 67 65 78 0a    20 20 22 5e 5b 30 2d 39 5d 2b 5b 2d 2f 5d 5b 2d  | ny-status-regex..."^[0-9]+[-/][- | 
| 43460 |  2f 2e 3d 30 2d 39 5d 2b 5c 5c 28 3f 3a 5c 5c 73    2d 2b 5c 5c 2a 5c 5c 29 3f 5c 5c 28 3f 3a 5c 5c  | /.=0-9]+\\(?:\\s-+\\*\\)?\\(?:\\ | 
| 43480 |  73 2d 2b 28 2e 2a 3f 29 5c 5c 29 3f 5c 5c 73 2d    2b 5c 5c 28 2e 2b 3f 5c 5c 29 5c 5c 73 2d 2a 5c  | s-+(.*?)\\)?\\s-+\\(.+?\\)\\s-*\ | 
| 434a0 |  5c 28 3f 3a 3b 5c 5c 7c 24 5c 5c 29 22 29 0a 0a    28 64 65 66 63 6f 6e 73 74 20 6c 65 64 67 65 72  | \(?:;\\|$\\)")..(defconst.ledger | 
| 434c0 |  2d 70 61 79 65 65 2d 70 65 6e 64 69 6e 67 2d 72    65 67 65 78 0a 20 20 22 5e 5b 30 2d 39 5d 2b 5b  | -payee-pending-regex..."^[0-9]+[ | 
| 434e0 |  2d 2f 5d 5b 2d 2f 2e 3d 30 2d 39 5d 2b 5c 5c 73    2d 21 5c 5c 73 2d 2b 5c 5c 28 28 5b 5e 29 5d 2b  | -/][-/.=0-9]+\\s-!\\s-+\\(([^)]+ | 
| 43500 |  29 5c 5c 73 2d 2b 5c 5c 29 3f 5c 5c 28 5b 5e 2a    5d 2e 2b 3f 5c 5c 29 5c 5c 73 2d 2a 5c 5c 28 3b  | )\\s-+\\)?\\([^*].+?\\)\\s-*\\(; | 
| 43520 |  5c 5c 7c 24 5c 5c 29 22 29 0a 0a 28 64 65 66 63    6f 6e 73 74 20 6c 65 64 67 65 72 2d 70 61 79 65  | \\|$\\)")..(defconst.ledger-paye | 
| 43540 |  65 2d 63 6c 65 61 72 65 64 2d 72 65 67 65 78 0a    20 20 22 5e 5b 30 2d 39 5d 2b 5b 2d 2f 5d 5b 2d  | e-cleared-regex..."^[0-9]+[-/][- | 
| 43560 |  2f 2e 3d 30 2d 39 5d 2b 5c 5c 73 2d 5c 5c 2a 5c    5c 73 2d 2b 5c 5c 28 28 5b 5e 29 5d 2b 29 5c 5c  | /.=0-9]+\\s-\\*\\s-+\\(([^)]+)\\ | 
| 43580 |  73 2d 2b 5c 5c 29 3f 5c 5c 28 5b 5e 2a 5d 2e 2b    3f 5c 5c 29 5c 5c 73 2d 2a 5c 5c 28 3b 5c 5c 7c  | s-+\\)?\\([^*].+?\\)\\s-*\\(;\\| | 
| 435a0 |  24 5c 5c 29 22 29 0a 0a 28 64 65 66 63 6f 6e 73    74 20 6c 65 64 67 65 72 2d 70 61 79 65 65 2d 75  | $\\)")..(defconst.ledger-payee-u | 
| 435c0 |  6e 63 6c 65 61 72 65 64 2d 72 65 67 65 78 0a 20    20 22 5e 5b 30 2d 39 5d 2b 5b 2d 2f 5d 5b 2d 2f  | ncleared-regex..."^[0-9]+[-/][-/ | 
| 435e0 |  2e 3d 30 2d 39 5d 2b 5c 5c 73 2d 2b 5c 5c 28 28    5b 5e 29 5d 2b 29 5c 5c 73 2d 2b 5c 5c 29 3f 5c  | .=0-9]+\\s-+\\(([^)]+)\\s-+\\)?\ | 
| 43600 |  5c 28 5b 5e 2a 5d 2e 2b 3f 5c 5c 29 5c 5c 73 2d    2a 5c 5c 28 3b 5c 5c 7c 24 5c 5c 29 22 29 0a 0a  | \([^*].+?\\)\\s-*\\(;\\|$\\)").. | 
| 43620 |  28 64 65 66 63 6f 6e 73 74 20 6c 65 64 67 65 72    2d 70 61 79 65 65 2d 64 69 72 65 63 74 69 76 65  | (defconst.ledger-payee-directive | 
| 43640 |  2d 72 65 67 65 78 0a 20 20 28 63 6f 6e 63 61 74    20 22 5e 70 61 79 65 65 5b 20 5c 74 5d 2b 5c 5c  | -regex...(concat."^payee[.\t]+\\ | 
| 43660 |  28 2e 2a 3f 5c 5c 29 5b 20 5c 74 5d 2a 24 22 29    29 0a 0a 28 64 65 66 63 6f 6e 73 74 20 6c 65 64  | (.*?\\)[.\t]*$"))..(defconst.led | 
| 43680 |  67 65 72 2d 70 61 79 65 65 2d 6e 61 6d 65 2d 6f    72 2d 64 69 72 65 63 74 69 76 65 2d 72 65 67 65  | ger-payee-name-or-directive-rege | 
| 436a0 |  78 0a 20 20 28 66 6f 72 6d 61 74 20 22 5c 5c 28    3f 3a 25 73 5c 5c 7c 25 73 5c 5c 29 22 20 6c 65  | x...(format."\\(?:%s\\|%s\\)".le | 
| 436c0 |  64 67 65 72 2d 70 61 79 65 65 2d 61 6e 79 2d 73    74 61 74 75 73 2d 72 65 67 65 78 20 6c 65 64 67  | dger-payee-any-status-regex.ledg | 
| 436e0 |  65 72 2d 70 61 79 65 65 2d 64 69 72 65 63 74 69    76 65 2d 72 65 67 65 78 29 29 0a 0a 28 64 65 66  | er-payee-directive-regex))..(def | 
| 43700 |  63 6f 6e 73 74 20 6c 65 64 67 65 72 2d 69 6e 69    74 2d 73 74 72 69 6e 67 2d 72 65 67 65 78 0a 20  | const.ledger-init-string-regex.. | 
| 43720 |  20 22 5e 2d 2d 2e 2b 3f 5c 5c 28 24 5c 5c 7c 5b    20 5d 5c 5c 29 22 29 0a 0a 28 64 65 66 63 6f 6e  | ."^--.+?\\($\\|[.]\\)")..(defcon | 
| 43740 |  73 74 20 6c 65 64 67 65 72 2d 61 63 63 6f 75 6e    74 2d 6e 61 6d 65 2d 72 65 67 65 78 0a 20 20 22  | st.ledger-account-name-regex..." | 
| 43760 |  5c 5c 28 3f 31 3a 5b 5e 5d 5b 28 29 3b 20 5c 74    5c 72 5c 6e 5d 2b 5c 5c 28 3f 3a 20 5b 5e 5d 5b  | \\(?1:[^][();.\t\r\n]+\\(?:.[^][ | 
| 43780 |  28 29 3b 20 5c 74 5c 72 5c 6e 5d 2b 5c 5c 29 2a    5c 5c 29 22 29 0a 0a 28 64 65 66 63 6f 6e 73 74  | ();.\t\r\n]+\\)*\\)")..(defconst | 
| 437a0 |  20 6c 65 64 67 65 72 2d 61 63 63 6f 75 6e 74 2d    64 69 72 65 63 74 69 76 65 2d 72 65 67 65 78 0a  | .ledger-account-directive-regex. | 
| 437c0 |  20 20 28 63 6f 6e 63 61 74 20 22 5e 61 63 63 6f    75 6e 74 5b 20 5c 74 5d 2b 22 20 6c 65 64 67 65  | ..(concat."^account[.\t]+".ledge | 
| 437e0 |  72 2d 61 63 63 6f 75 6e 74 2d 6e 61 6d 65 2d 72    65 67 65 78 29 29 0a 0a 28 64 65 66 63 6f 6e 73  | r-account-name-regex))..(defcons | 
| 43800 |  74 20 6c 65 64 67 65 72 2d 61 63 63 6f 75 6e 74    2d 6e 61 6d 65 2d 6d 61 79 62 65 2d 76 69 72 74  | t.ledger-account-name-maybe-virt | 
| 43820 |  75 61 6c 2d 72 65 67 65 78 0a 20 20 28 63 6f 6e    63 61 74 20 22 5b 5b 28 5d 3f 22 20 6c 65 64 67  | ual-regex...(concat."[[(]?".ledg | 
| 43840 |  65 72 2d 61 63 63 6f 75 6e 74 2d 6e 61 6d 65 2d    72 65 67 65 78 20 22 5b 5d 29 5d 3f 22 29 29 0a  | er-account-name-regex."[])]?")). | 
| 43860 |  0a 28 64 65 66 63 6f 6e 73 74 20 6c 65 64 67 65    72 2d 61 63 63 6f 75 6e 74 2d 61 6e 79 2d 73 74  | .(defconst.ledger-account-any-st | 
| 43880 |  61 74 75 73 2d 72 65 67 65 78 0a 20 20 28 63 6f    6e 63 61 74 20 22 5e 5b 20 5c 74 5d 2b 5c 5c 28  | atus-regex...(concat."^[.\t]+\\( | 
| 438a0 |  3f 3a 5b 21 2a 5d 5b 20 5c 74 5d 2a 5c 5c 29 3f    22 20 6c 65 64 67 65 72 2d 61 63 63 6f 75 6e 74  | ?:[!*][.\t]*\\)?".ledger-account | 
| 438c0 |  2d 6e 61 6d 65 2d 6d 61 79 62 65 2d 76 69 72 74    75 61 6c 2d 72 65 67 65 78 29 29 0a 0a 3b 3b 20  | -name-maybe-virtual-regex))..;;. | 
| 438e0 |  54 68 69 73 20 77 6f 75 6c 64 20 69 6e 63 6f 72    72 65 63 74 6c 79 20 6d 61 74 63 68 20 22 61 63  | This.would.incorrectly.match."ac | 
| 43900 |  63 6f 75 6e 74 20 28 66 6f 6f 29 22 2c 20 62 75    74 20 77 72 69 74 69 6e 67 20 74 68 65 20 72 65  | count.(foo)",.but.writing.the.re | 
| 43920 |  67 65 78 70 20 74 68 69 73 20 77 61 79 0a 3b 3b    20 61 6c 6c 6f 77 73 20 75 73 20 74 6f 20 68 61  | gexp.this.way.;;.allows.us.to.ha | 
| 43940 |  76 65 20 6a 75 73 74 20 6f 6e 65 20 6d 61 74 63    68 20 72 65 73 75 6c 74 0a 28 64 65 66 63 6f 6e  | ve.just.one.match.result.(defcon | 
| 43960 |  73 74 20 6c 65 64 67 65 72 2d 61 63 63 6f 75 6e    74 2d 6e 61 6d 65 2d 6f 72 2d 64 69 72 65 63 74  | st.ledger-account-name-or-direct | 
| 43980 |  69 76 65 2d 72 65 67 65 78 0a 20 20 28 66 6f 72    6d 61 74 20 22 5c 5c 28 3f 3a 25 73 5c 5c 7c 25  | ive-regex...(format."\\(?:%s\\|% | 
| 439a0 |  73 5c 5c 29 22 20 6c 65 64 67 65 72 2d 61 63 63    6f 75 6e 74 2d 61 6e 79 2d 73 74 61 74 75 73 2d  | s\\)".ledger-account-any-status- | 
| 439c0 |  72 65 67 65 78 20 6c 65 64 67 65 72 2d 61 63 63    6f 75 6e 74 2d 64 69 72 65 63 74 69 76 65 2d 72  | regex.ledger-account-directive-r | 
| 439e0 |  65 67 65 78 29 29 0a 0a 28 64 65 66 63 6f 6e 73    74 20 6c 65 64 67 65 72 2d 61 63 63 6f 75 6e 74  | egex))..(defconst.ledger-account | 
| 43a00 |  2d 70 65 6e 64 69 6e 67 2d 72 65 67 65 78 0a 20    20 28 63 6f 6e 63 61 74 20 22 5c 5c 28 5e 5b 20  | -pending-regex...(concat."\\(^[. | 
| 43a20 |  5c 74 5d 2b 5c 5c 29 21 22 20 6c 65 64 67 65 72    2d 61 63 63 6f 75 6e 74 2d 6e 61 6d 65 2d 6d 61  | \t]+\\)!".ledger-account-name-ma | 
| 43a40 |  79 62 65 2d 76 69 72 74 75 61 6c 2d 72 65 67 65    78 29 29 0a 0a 28 64 65 66 63 6f 6e 73 74 20 6c  | ybe-virtual-regex))..(defconst.l | 
| 43a60 |  65 64 67 65 72 2d 61 63 63 6f 75 6e 74 2d 63 6c    65 61 72 65 64 2d 72 65 67 65 78 0a 20 20 28 63  | edger-account-cleared-regex...(c | 
| 43a80 |  6f 6e 63 61 74 20 22 5c 5c 28 5e 5b 20 5c 74 5d    2b 5c 5c 29 2a 22 20 6c 65 64 67 65 72 2d 61 63  | oncat."\\(^[.\t]+\\)*".ledger-ac | 
| 43aa0 |  63 6f 75 6e 74 2d 6e 61 6d 65 2d 6d 61 79 62 65    2d 76 69 72 74 75 61 6c 2d 72 65 67 65 78 29 29  | count-name-maybe-virtual-regex)) | 
| 43ac0 |  0a 0a 28 64 65 66 6d 61 63 72 6f 20 6c 65 64 67    65 72 2d 64 65 66 69 6e 65 2d 72 65 67 65 78 70  | ..(defmacro.ledger-define-regexp | 
| 43ae0 |  20 28 6e 61 6d 65 20 72 65 67 65 78 20 64 6f 63    73 20 26 72 65 73 74 20 61 72 67 73 29 0a 20 20  | .(name.regex.docs.&rest.args)... | 
| 43b00 |  22 53 69 6d 70 6c 69 66 79 20 74 68 65 20 63 72    65 61 74 69 6f 6e 20 6f 66 20 61 20 4c 65 64 67  | "Simplify.the.creation.of.a.Ledg | 
| 43b20 |  65 72 20 72 65 67 65 78 20 61 6e 64 20 68 65 6c    70 65 72 20 66 75 6e 63 74 69 6f 6e 73 2e 22 0a  | er.regex.and.helper.functions.". | 
| 43b40 |  20 20 28 6c 65 74 2a 20 28 28 72 65 67 65 78 20    28 65 76 61 6c 20 72 65 67 65 78 29 29 0a 20 20  | ..(let*.((regex.(eval.regex))... | 
| 43b60 |  20 20 20 20 20 20 20 28 67 72 6f 75 70 2d 63 6f    75 6e 74 20 28 72 65 67 65 78 70 2d 6f 70 74 2d  | .......(group-count.(regexp-opt- | 
| 43b80 |  64 65 70 74 68 20 72 65 67 65 78 29 29 0a 20 20    20 20 20 20 20 20 20 28 64 65 66 73 0a 20 20 20  | depth.regex))..........(defs.... | 
| 43ba0 |  20 20 20 20 20 20 20 20 28 6c 69 73 74 0a 20 20    20 20 20 20 20 20 20 20 20 20 60 28 64 65 66 63  | ........(list.............`(defc | 
| 43bc0 |  6f 6e 73 74 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 2c 28 69 6e 74 65 72 6e 20 28 63 6f  | onst................,(intern.(co | 
| 43be0 |  6e 63 61 74 20 22 6c 65 64 67 65 72 2d 22 20 28    73 79 6d 62 6f 6c 2d 6e 61 6d 65 20 6e 61 6d 65  | ncat."ledger-".(symbol-name.name | 
| 43c00 |  29 20 22 2d 72 65 67 65 78 70 22 29 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 2c 72 65  | )."-regexp"))................,re | 
| 43c20 |  67 65 78 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 2c 64 6f 63 73 29 0a 20 20 20 20 20 20  | gex................,docs)....... | 
| 43c40 |  20 20 20 20 20 20 60 28 64 65 66 63 6f 6e 73 74    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ......`(defconst................ | 
| 43c60 |  2c 28 69 6e 74 65 72 6e 20 28 63 6f 6e 63 61 74    20 22 6c 65 64 67 65 72 2d 72 65 67 65 78 2d 22  | ,(intern.(concat."ledger-regex-" | 
| 43c80 |  20 28 73 79 6d 62 6f 6c 2d 6e 61 6d 65 20 6e 61    6d 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | .(symbol-name.name)............. | 
| 43ca0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 22 2d 67 72 6f 75 70 2d 2d 63 6f 75  | ...................."-group--cou | 
| 43cc0 |  6e 74 22 29 29 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 2c 67 72 6f 75 70 2d 63 6f 75 6e  | nt"))................,group-coun | 
| 43ce0 |  74 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 61    64 64 65 6e 64 20 30 29 20 6c 61 73 74 2d 67 72  | t)))..........(addend.0).last-gr | 
| 43d00 |  6f 75 70 29 0a 20 20 20 20 28 69 66 20 28 6e 75    6c 6c 20 61 72 67 73 29 0a 20 20 20 20 20 20 20  | oup).....(if.(null.args)........ | 
| 43d20 |  20 28 70 72 6f 67 6e 0a 20 20 20 20 20 20 20 20    20 20 28 77 68 65 6e 20 28 63 6c 2d 70 6c 75 73  | .(progn...........(when.(cl-plus | 
| 43d40 |  70 20 67 72 6f 75 70 2d 63 6f 75 6e 74 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 28 6e 63 6f 6e  | p.group-count).............(ncon | 
| 43d60 |  63 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 64    65 66 73 0a 20 20 20 20 20 20 20 20 20 20 20 20  | c..............defs............. | 
| 43d80 |  20 28 6c 69 73 74 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 60 28 64 65 66 63 6f 6e 73 74 0a  | .(list...............`(defconst. | 
| 43da0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 2c 28 69 6e 74 65 72 6e 0a 20 20 20 20 20 20  | .................,(intern....... | 
| 43dc0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f    6e 63 61 74 20 22 6c 65 64 67 65 72 2d 72 65 67  | .............(concat."ledger-reg | 
| 43de0 |  65 78 2d 22 20 28 73 79 6d 62 6f 6c 2d 6e 61 6d    65 20 6e 61 6d 65 29 20 22 2d 67 72 6f 75 70 22  | ex-".(symbol-name.name)."-group" | 
| 43e00 |  29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 31 29 29 29 0a 20 20 20 20 20 20 20  | ))..................1)))........ | 
| 43e20 |  20 20 20 20 20 28 6e 63 6f 6e 63 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 64 65 66 73 0a 20 20  | .....(nconc..............defs... | 
| 43e40 |  20 20 20 20 20 20 20 20 20 20 20 28 6c 69 73 74    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 60  | ...........(list...............` | 
| 43e60 |  28 64 65 66 6d 61 63 72 6f 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 2c 28 69  | (defmacro....................,(i | 
| 43e80 |  6e 74 65 72 6e 20 28 63 6f 6e 63 61 74 20 22 6c    65 64 67 65 72 2d 72 65 67 65 78 2d 22 20 28 73  | ntern.(concat."ledger-regex-".(s | 
| 43ea0 |  79 6d 62 6f 6c 2d 6e 61 6d 65 20 6e 61 6d 65 29    29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | ymbol-name.name))).............. | 
| 43ec0 |  20 20 20 20 20 20 28 26 6f 70 74 69 6f 6e 61 6c    20 73 74 72 69 6e 67 29 0a 20 20 20 20 20 20 20  | ......(&optional.string)........ | 
| 43ee0 |  20 20 20 20 20 20 20 20 20 20 2c 28 66 6f 72 6d    61 74 20 22 52 65 74 75 72 6e 20 74 68 65 20 6d  | ..........,(format."Return.the.m | 
| 43f00 |  61 74 63 68 20 73 74 72 69 6e 67 20 66 6f 72 20    74 68 65 20 25 73 22 20 6e 61 6d 65 29 0a 20 20  | atch.string.for.the.%s".name)... | 
| 43f20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    6d 61 74 63 68 2d 73 74 72 69 6e 67 0a 20 20 20  | ...............(match-string.... | 
| 43f40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2c    28 69 6e 74 65 72 6e 20 28 63 6f 6e 63 61 74 20  | ...............,(intern.(concat. | 
| 43f60 |  22 6c 65 64 67 65 72 2d 72 65 67 65 78 2d 22 20    28 73 79 6d 62 6f 6c 2d 6e 61 6d 65 20 6e 61 6d  | "ledger-regex-".(symbol-name.nam | 
| 43f80 |  65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | e).............................. | 
| 43fa0 |  20 20 20 20 20 20 22 2d 67 72 6f 75 70 22 29 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ......"-group"))................ | 
| 43fc0 |  20 20 20 73 74 72 69 6e 67 29 29 29 29 29 29 0a    0a 20 20 20 20 20 20 28 77 68 69 6c 65 20 61 72  | ...string))))))........(while.ar | 
| 43fe0 |  67 73 0a 20 20 20 20 20 20 20 20 28 6c 65 74 20    28 61 72 67 20 76 61 72 20 67 72 6f 75 70 69 6e  | gs.........(let.(arg.var.groupin | 
| 44000 |  67 20 74 61 72 67 65 74 20 66 6f 72 63 65 2d 69    6e 63 72 65 6d 65 6e 74 29 0a 20 20 20 20 20 20  | g.target.force-increment)....... | 
| 44020 |  20 20 20 20 28 73 65 74 71 20 61 72 67 20 28 70    6f 70 20 61 72 67 73 29 29 0a 0a 20 20 20 20 20  | ....(setq.arg.(pop.args))....... | 
| 44040 |  20 20 20 20 20 28 77 68 65 6e 20 28 65 71 20 61    72 67 20 3a 73 65 70 61 72 61 74 65 29 0a 20 20  | .....(when.(eq.arg.:separate)... | 
| 44060 |  20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20    61 72 67 20 28 70 6f 70 20 61 72 67 73 29 29 0a  | ..........(setq.arg.(pop.args)). | 
| 44080 |  20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74    71 20 66 6f 72 63 65 2d 69 6e 63 72 65 6d 65 6e  | ............(setq.force-incremen | 
| 440a0 |  74 20 74 29 29 0a 0a 20 20 20 20 20 20 20 20 20    20 28 69 66 20 28 73 79 6d 62 6f 6c 70 20 61 72  | t.t))............(if.(symbolp.ar | 
| 440c0 |  67 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 73 65 74 71 20 76 61 72 20 61 72 67 20 74  | g)...............(setq.var.arg.t | 
| 440e0 |  61 72 67 65 74 20 61 72 67 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 28 63 6c 2d 61 73 73 65 72  | arget.arg).............(cl-asser | 
| 44100 |  74 20 28 6c 69 73 74 70 20 61 72 67 29 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28  | t.(listp.arg)).............(if.( | 
| 44120 |  3d 20 32 20 28 6c 65 6e 67 74 68 20 61 72 67 29    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | =.2.(length.arg))............... | 
| 44140 |  20 20 28 73 65 74 71 20 76 61 72 20 28 63 61 72    20 61 72 67 29 0a 20 20 20 20 20 20 20 20 20 20  | ..(setq.var.(car.arg)........... | 
| 44160 |  20 20 20 20 20 20 20 20 20 20 20 20 74 61 72 67    65 74 20 28 63 61 64 72 20 61 72 67 29 29 0a 20  | ............target.(cadr.arg)).. | 
| 44180 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65    74 71 20 76 61 72 20 28 63 61 72 20 61 72 67 29  | .............(setq.var.(car.arg) | 
| 441a0 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 67 72 6f 75 70 69 6e 67 20 28 63  | .....................grouping.(c | 
| 441c0 |  61 64 72 20 61 72 67 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 74 61 72  | adr.arg).....................tar | 
| 441e0 |  67 65 74 20 28 63 6c 2d 63 61 64 64 72 20 61 72    67 29 29 29 29 0a 0a 20 20 20 20 20 20 20 20 20  | get.(cl-caddr.arg))))........... | 
| 44200 |  20 28 69 66 20 28 61 6e 64 20 6c 61 73 74 2d 67    72 6f 75 70 0a 20 20 20 20 20 20 20 20 20 20 20  | .(if.(and.last-group............ | 
| 44220 |  20 20 20 20 20 20 20 20 28 6f 72 20 28 6e 6f 74    20 28 65 71 20 6c 61 73 74 2d 67 72 6f 75 70 20  | ........(or.(not.(eq.last-group. | 
| 44240 |  28 6f 72 20 67 72 6f 75 70 69 6e 67 20 74 61 72    67 65 74 29 29 29 0a 20 20 20 20 20 20 20 20 20  | (or.grouping.target))).......... | 
| 44260 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f    72 63 65 2d 69 6e 63 72 65 6d 65 6e 74 29 29 0a  | ..............force-increment)). | 
| 44280 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63    6c 2d 69 6e 63 66 20 61 64 64 65 6e 64 0a 20 20  | ..............(cl-incf.addend... | 
| 442a0 |  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 61 6c  | .....................(symbol-val | 
| 442c0 |  75 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 28 69 6e 74 65  | ue.........................(inte | 
| 442e0 |  72 6e 2d 73 6f 66 74 20 28 63 6f 6e 63 61 74 20    22 6c 65 64 67 65 72 2d 72 65 67 65 78 2d 22 0a  | rn-soft.(concat."ledger-regex-". | 
| 44300 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 44320 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 79    6d 62 6f 6c 2d 6e 61 6d 65 20 6c 61 73 74 2d 67  | .............(symbol-name.last-g | 
| 44340 |  72 6f 75 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  | roup)........................... | 
| 44360 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 22 2d 67 72 6f 75 70 2d 2d 63 6f 75 6e  | ..................."-group--coun | 
| 44380 |  74 22 29 29 29 29 29 0a 20 20 20 20 20 20 20 20    20 20 28 6e 63 6f 6e 63 0a 20 20 20 20 20 20 20  | t")))))...........(nconc........ | 
| 443a0 |  20 20 20 20 64 65 66 73 0a 20 20 20 20 20 20 20    20 20 20 20 28 6c 69 73 74 0a 20 20 20 20 20 20  | ....defs............(list....... | 
| 443c0 |  20 20 20 20 20 20 60 28 64 65 66 63 6f 6e 73 74    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ......`(defconst................ | 
| 443e0 |  2c 28 69 6e 74 65 72 6e 20 28 63 6f 6e 63 61 74    20 22 6c 65 64 67 65 72 2d 72 65 67 65 78 2d 22  | ,(intern.(concat."ledger-regex-" | 
| 44400 |  20 28 73 79 6d 62 6f 6c 2d 6e 61 6d 65 20 6e 61    6d 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | .(symbol-name.name)............. | 
| 44420 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 22 2d 67 72 6f 75 70 2d 22 20 28 73  | ...................."-group-".(s | 
| 44440 |  79 6d 62 6f 6c 2d 6e 61 6d 65 20 76 61 72 29 29    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ymbol-name.var)))............... | 
| 44460 |  20 2c 28 2b 20 61 64 64 65 6e 64 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28  | .,(+.addend....................( | 
| 44480 |  73 79 6d 62 6f 6c 2d 76 61 6c 75 65 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | symbol-value.................... | 
| 444a0 |  20 28 69 6e 74 65 72 6e 2d 73 6f 66 74 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .(intern-soft................... | 
| 444c0 |  20 20 20 28 69 66 20 67 72 6f 75 70 69 6e 67 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ...(if.grouping................. | 
| 444e0 |  20 20 20 20 20 20 20 20 20 28 63 6f 6e 63 61 74    20 22 6c 65 64 67 65 72 2d 72 65 67 65 78 2d 22  | .........(concat."ledger-regex-" | 
| 44500 |  20 28 73 79 6d 62 6f 6c 2d 6e 61 6d 65 20 67 72    6f 75 70 69 6e 67 29 0a 20 20 20 20 20 20 20 20  | .(symbol-name.grouping)......... | 
| 44520 |  20 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 2d 67 72 6f 75 70  | ........................."-group | 
| 44540 |  2d 22 20 28 73 79 6d 62 6f 6c 2d 6e 61 6d 65 20    74 61 72 67 65 74 29 29 0a 20 20 20 20 20 20 20  | -".(symbol-name.target))........ | 
| 44560 |  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 6c 65 64 67 65 72 2d  | ................(concat."ledger- | 
| 44580 |  72 65 67 65 78 2d 22 20 28 73 79 6d 62 6f 6c 2d    6e 61 6d 65 20 74 61 72 67 65 74 29 0a 20 20 20  | regex-".(symbol-name.target).... | 
| 445a0 |  20 20 20 20 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 2d 67 72  | ............................"-gr | 
| 445c0 |  6f 75 70 22 29 29 29 29 29 29 29 29 0a 20 20 20    20 20 20 20 20 20 20 28 6e 63 6f 6e 63 0a 20 20  | oup"))))))))...........(nconc... | 
| 445e0 |  20 20 20 20 20 20 20 20 20 64 65 66 73 0a 20 20    20 20 20 20 20 20 20 20 20 28 6c 69 73 74 0a 20  | .........defs............(list.. | 
| 44600 |  20 20 20 20 20 20 20 20 20 20 20 60 28 64 65 66    6d 61 63 72 6f 0a 20 20 20 20 20 20 20 20 20 20  | ...........`(defmacro........... | 
| 44620 |  20 20 20 20 20 20 20 2c 28 69 6e 74 65 72 6e 20    28 63 6f 6e 63 61 74 20 22 6c 65 64 67 65 72 2d  | .......,(intern.(concat."ledger- | 
| 44640 |  72 65 67 65 78 2d 22 20 28 73 79 6d 62 6f 6c 2d    6e 61 6d 65 20 6e 61 6d 65 29 0a 20 20 20 20 20  | regex-".(symbol-name.name)...... | 
| 44660 |  20 20 20 20 20 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 2d 22  | ............................."-" | 
| 44680 |  20 28 73 79 6d 62 6f 6c 2d 6e 61 6d 65 20 76 61    72 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20  | .(symbol-name.var)))............ | 
| 446a0 |  20 20 20 20 20 20 28 26 6f 70 74 69 6f 6e 61 6c    20 73 74 72 69 6e 67 29 0a 20 20 20 20 20 20 20  | ......(&optional.string)........ | 
| 446c0 |  20 20 20 20 20 20 20 20 2c 28 66 6f 72 6d 61 74    20 22 52 65 74 75 72 6e 20 74 68 65 20 73 75 62  | ........,(format."Return.the.sub | 
| 446e0 |  2d 67 72 6f 75 70 20 6d 61 74 63 68 20 66 6f 72    20 74 68 65 20 25 73 20 25 73 2e 22 0a 20 20 20  | -group.match.for.the.%s.%s.".... | 
| 44700 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 6e 61 6d 65 20 76 61 72 29 0a 20  | .....................name.var).. | 
| 44720 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d    61 74 63 68 2d 73 74 72 69 6e 67 0a 20 20 20 20  | ..............(match-string..... | 
| 44740 |  20 20 20 20 20 20 20 20 20 20 20 20 2c 28 69 6e    74 65 72 6e 20 28 63 6f 6e 63 61 74 20 22 6c 65  | ............,(intern.(concat."le | 
| 44760 |  64 67 65 72 2d 72 65 67 65 78 2d 22 20 28 73 79    6d 62 6f 6c 2d 6e 61 6d 65 20 6e 61 6d 65 29 0a  | dger-regex-".(symbol-name.name). | 
| 44780 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 447a0 |  20 22 2d 67 72 6f 75 70 2d 22 20 28 73 79 6d 62    6f 6c 2d 6e 61 6d 65 20 76 61 72 29 29 29 0a 20  | ."-group-".(symbol-name.var))).. | 
| 447c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 73    74 72 69 6e 67 29 29 29 29 0a 0a 20 20 20 20 20  | ...............string))))....... | 
| 447e0 |  20 20 20 20 20 28 73 65 74 71 20 6c 61 73 74 2d    67 72 6f 75 70 20 28 6f 72 20 67 72 6f 75 70 69  | .....(setq.last-group.(or.groupi | 
| 44800 |  6e 67 20 74 61 72 67 65 74 29 29 29 29 29 0a 0a    20 20 20 20 28 63 6f 6e 73 20 27 65 76 61 6c 2d  | ng.target)))))......(cons.'eval- | 
| 44820 |  61 6e 64 2d 63 6f 6d 70 69 6c 65 20 64 65 66 73    29 29 29 0a 0a 28 70 75 74 20 27 6c 65 64 67 65  | and-compile.defs)))..(put.'ledge | 
| 44840 |  72 2d 64 65 66 69 6e 65 2d 72 65 67 65 78 70 20    27 6c 69 73 70 2d 69 6e 64 65 6e 74 2d 66 75 6e  | r-define-regexp.'lisp-indent-fun | 
| 44860 |  63 74 69 6f 6e 20 31 29 0a 0a 28 6c 65 64 67 65    72 2d 64 65 66 69 6e 65 2d 72 65 67 65 78 70 20  | ction.1)..(ledger-define-regexp. | 
| 44880 |  69 73 6f 2d 64 61 74 65 0a 20 20 28 6c 65 74 20    28 28 73 65 70 20 27 28 6f 72 20 3f 2d 20 3f 2f  | iso-date...(let.((sep.'(or.?-.?/ | 
| 448a0 |  29 29 29 0a 20 20 20 20 28 72 78 20 28 67 72 6f    75 70 0a 20 20 20 20 20 20 20 20 20 28 61 6e 64  | ))).....(rx.(group..........(and | 
| 448c0 |  20 28 67 72 6f 75 70 20 28 3d 20 34 20 6e 75 6d    29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | .(group.(=.4.num)).............. | 
| 448e0 |  20 28 65 76 61 6c 20 73 65 70 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 67 72 6f 75 70  | .(eval.sep)...............(group | 
| 44900 |  20 28 61 6e 64 20 6e 75 6d 20 28 3f 20 6e 75 6d    29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | .(and.num.(?.num)))............. | 
| 44920 |  20 20 28 65 76 61 6c 20 73 65 70 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 67 72 6f 75  | ..(eval.sep)...............(grou | 
| 44940 |  70 20 28 61 6e 64 20 6e 75 6d 20 28 3f 20 6e 75    6d 29 29 29 29 29 29 29 0a 20 20 22 4d 61 74 63  | p.(and.num.(?.num)))))))..."Matc | 
| 44960 |  68 20 61 20 73 69 6e 67 6c 65 20 64 61 74 65 2c    20 69 6e 20 69 74 73 20 5c 22 77 72 69 74 74 65  | h.a.single.date,.in.its.\"writte | 
| 44980 |  6e 5c 22 20 66 6f 72 6d 2e 22 29 0a 0a 28 6c 65    64 67 65 72 2d 64 65 66 69 6e 65 2d 72 65 67 65  | n\".form.")..(ledger-define-rege | 
| 449a0 |  78 70 20 66 75 6c 6c 2d 64 61 74 65 0a 20 20 28    6d 61 63 72 6f 65 78 70 61 6e 64 0a 20 20 20 60  | xp.full-date...(macroexpand....` | 
| 449c0 |  28 72 78 20 28 61 6e 64 20 28 72 65 67 65 78 70    20 2c 6c 65 64 67 65 72 2d 69 73 6f 2d 64 61 74  | (rx.(and.(regexp.,ledger-iso-dat | 
| 449e0 |  65 2d 72 65 67 65 78 70 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 28 3f 20 28 61 6e 64 20 3f  | e-regexp)..............(?.(and.? | 
| 44a00 |  3d 20 28 72 65 67 65 78 70 20 2c 6c 65 64 67 65    72 2d 69 73 6f 2d 64 61 74 65 2d 72 65 67 65 78  | =.(regexp.,ledger-iso-date-regex | 
| 44a20 |  70 29 29 29 29 29 29 0a 20 20 22 4d 61 74 63 68    20 61 20 63 6f 6d 70 6f 75 6e 64 20 64 61 74 65  | p))))))..."Match.a.compound.date | 
| 44a40 |  2c 20 6f 66 20 74 68 65 20 66 6f 72 6d 20 41 43    54 55 41 4c 3d 45 46 46 45 43 54 49 56 45 22 0a  | ,.of.the.form.ACTUAL=EFFECTIVE". | 
| 44a60 |  20 20 28 61 63 74 75 61 6c 20 69 73 6f 2d 64 61    74 65 29 0a 20 20 3a 73 65 70 61 72 61 74 65 0a  | ..(actual.iso-date)...:separate. | 
| 44a80 |  20 20 28 65 66 66 65 63 74 69 76 65 20 69 73 6f    2d 64 61 74 65 29 29 0a 0a 28 6c 65 64 67 65 72  | ..(effective.iso-date))..(ledger | 
| 44aa0 |  2d 64 65 66 69 6e 65 2d 72 65 67 65 78 70 20 73    74 61 74 65 0a 20 20 28 72 78 20 28 67 72 6f 75  | -define-regexp.state...(rx.(grou | 
| 44ac0 |  70 20 28 61 6e 79 20 3f 21 20 3f 2a 29 29 29 0a    20 20 22 4d 61 74 63 68 20 61 20 74 72 61 6e 73  | p.(any.?!.?*)))..."Match.a.trans | 
| 44ae0 |  61 63 74 69 6f 6e 20 6f 72 20 70 6f 73 74 69 6e    67 27 73 20 5c 22 73 74 61 74 65 5c 22 20 63 68  | action.or.posting's.\"state\".ch | 
| 44b00 |  61 72 61 63 74 65 72 2e 22 29 0a 0a 28 6c 65 64    67 65 72 2d 64 65 66 69 6e 65 2d 72 65 67 65 78  | aracter.")..(ledger-define-regex | 
| 44b20 |  70 20 63 6f 64 65 0a 20 20 28 72 78 20 28 61 6e    64 20 3f 5c 28 20 28 67 72 6f 75 70 20 28 2b 3f  | p.code...(rx.(and.?\(.(group.(+? | 
| 44b40 |  20 28 6e 6f 74 20 28 61 6e 79 20 3f 5c 29 29 29    29 29 20 3f 5c 29 29 29 0a 20 20 22 4d 61 74 63  | .(not.(any.?\))))).?\)))..."Matc | 
| 44b60 |  68 20 74 68 65 20 74 72 61 6e 73 61 63 74 69 6f    6e 20 63 6f 64 65 2e 22 29 0a 0a 28 6c 65 64 67  | h.the.transaction.code.")..(ledg | 
| 44b80 |  65 72 2d 64 65 66 69 6e 65 2d 72 65 67 65 78 70    20 6c 6f 6e 67 2d 73 70 61 63 65 0a 20 20 28 72  | er-define-regexp.long-space...(r | 
| 44ba0 |  78 20 28 61 6e 64 20 28 2a 3f 20 62 6c 61 6e 6b    29 0a 20 20 20 20 20 20 20 20 20 20 20 28 6f 72  | x.(and.(*?.blank)............(or | 
| 44bc0 |  20 28 61 6e 64 20 3f 20 20 28 6f 72 20 3f 20 20    3f 5c 74 29 29 20 3f 5c 74 29 29 29 0a 20 20 22  | .(and.?..(or.?..?\t)).?\t)))..." | 
| 44be0 |  4d 61 74 63 68 20 61 20 5c 22 6c 6f 6e 67 20 73    70 61 63 65 5c 22 2e 22 29 0a 0a 28 6c 65 64 67  | Match.a.\"long.space\".")..(ledg | 
| 44c00 |  65 72 2d 64 65 66 69 6e 65 2d 72 65 67 65 78 70    20 6e 6f 74 65 0a 20 20 28 72 78 20 28 67 72 6f  | er-define-regexp.note...(rx.(gro | 
| 44c20 |  75 70 20 28 2b 20 6e 6f 6e 6c 29 29 29 0a 20 20    22 22 29 0a 0a 28 6c 65 64 67 65 72 2d 64 65 66  | up.(+.nonl)))..."")..(ledger-def | 
| 44c40 |  69 6e 65 2d 72 65 67 65 78 70 20 65 6e 64 2d 6e    6f 74 65 0a 20 20 28 6d 61 63 72 6f 65 78 70 61  | ine-regexp.end-note...(macroexpa | 
| 44c60 |  6e 64 0a 20 20 20 60 28 72 78 20 28 61 6e 64 20    28 72 65 67 65 78 70 20 2c 6c 65 64 67 65 72 2d  | nd....`(rx.(and.(regexp.,ledger- | 
| 44c80 |  6c 6f 6e 67 2d 73 70 61 63 65 2d 72 65 67 65 78    70 29 20 3f 5c 3b 0a 20 20 20 20 20 20 20 20 20  | long-space-regexp).?\;.......... | 
| 44ca0 |  20 20 20 20 28 72 65 67 65 78 70 20 2c 6c 65 64    67 65 72 2d 6e 6f 74 65 2d 72 65 67 65 78 70 29  | ....(regexp.,ledger-note-regexp) | 
| 44cc0 |  29 29 29 0a 20 20 22 22 29 0a 0a 28 6c 65 64 67    65 72 2d 64 65 66 69 6e 65 2d 72 65 67 65 78 70  | )))..."")..(ledger-define-regexp | 
| 44ce0 |  20 66 75 6c 6c 2d 6e 6f 74 65 0a 20 20 28 6d 61    63 72 6f 65 78 70 61 6e 64 0a 20 20 20 60 28 72  | .full-note...(macroexpand....`(r | 
| 44d00 |  78 20 28 61 6e 64 20 6c 69 6e 65 2d 73 74 61 72    74 20 28 2b 20 62 6c 61 6e 6b 29 0a 20 20 20 20  | x.(and.line-start.(+.blank)..... | 
| 44d20 |  20 20 20 20 20 20 20 20 20 3f 5c 3b 20 28 72 65    67 65 78 70 20 2c 6c 65 64 67 65 72 2d 6e 6f 74  | .........?\;.(regexp.,ledger-not | 
| 44d40 |  65 2d 72 65 67 65 78 70 29 29 29 29 0a 20 20 22    22 29 0a 0a 28 6c 65 64 67 65 72 2d 64 65 66 69  | e-regexp))))..."")..(ledger-defi | 
| 44d60 |  6e 65 2d 72 65 67 65 78 70 20 78 61 63 74 2d 6c    69 6e 65 0a 20 20 28 6d 61 63 72 6f 65 78 70 61  | ne-regexp.xact-line...(macroexpa | 
| 44d80 |  6e 64 0a 20 20 20 60 28 72 78 20 28 61 6e 64 20    6c 69 6e 65 2d 73 74 61 72 74 0a 20 20 20 20 20  | nd....`(rx.(and.line-start...... | 
| 44da0 |  20 20 20 20 20 20 20 20 28 72 65 67 65 78 70 20    2c 6c 65 64 67 65 72 2d 66 75 6c 6c 2d 64 61 74  | ........(regexp.,ledger-full-dat | 
| 44dc0 |  65 2d 72 65 67 65 78 70 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 28 3f 20 28 61 6e 64 20 28  | e-regexp)..............(?.(and.( | 
| 44de0 |  2b 20 62 6c 61 6e 6b 29 20 28 72 65 67 65 78 70    20 2c 6c 65 64 67 65 72 2d 73 74 61 74 65 2d 72  | +.blank).(regexp.,ledger-state-r | 
| 44e00 |  65 67 65 78 70 29 29 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 28 3f 20 28 61 6e 64 20 28 2b  | egexp)))..............(?.(and.(+ | 
| 44e20 |  20 62 6c 61 6e 6b 29 20 28 72 65 67 65 78 70 20    2c 6c 65 64 67 65 72 2d 63 6f 64 65 2d 72 65 67  | .blank).(regexp.,ledger-code-reg | 
| 44e40 |  65 78 70 29 29 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 28 2b 20 62 6c 61 6e 6b 29 20 28 2b  | exp)))..............(+.blank).(+ | 
| 44e60 |  3f 20 6e 6f 6e 6c 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 28 3f 20 28 72 65 67 65 78 70 20  | ?.nonl)..............(?.(regexp. | 
| 44e80 |  2c 6c 65 64 67 65 72 2d 65 6e 64 2d 6e 6f 74 65    2d 72 65 67 65 78 70 29 29 0a 20 20 20 20 20 20  | ,ledger-end-note-regexp))....... | 
| 44ea0 |  20 20 20 20 20 20 20 6c 69 6e 65 2d 65 6e 64 29    29 29 0a 20 20 22 4d 61 74 63 68 20 61 20 74 72  | .......line-end)))..."Match.a.tr | 
| 44ec0 |  61 6e 73 61 63 74 69 6f 6e 27 73 20 66 69 72 73    74 20 6c 69 6e 65 20 28 61 6e 64 20 6f 70 74 69  | ansaction's.first.line.(and.opti | 
| 44ee0 |  6f 6e 61 6c 20 6e 6f 74 65 73 29 2e 22 0a 20 20    28 61 63 74 75 61 6c 2d 64 61 74 65 20 66 75 6c  | onal.notes)."...(actual-date.ful | 
| 44f00 |  6c 2d 64 61 74 65 20 61 63 74 75 61 6c 29 0a 20    20 28 65 66 66 65 63 74 69 76 65 2d 64 61 74 65  | l-date.actual)...(effective-date | 
| 44f20 |  20 66 75 6c 6c 2d 64 61 74 65 20 65 66 66 65 63    74 69 76 65 29 0a 20 20 73 74 61 74 65 0a 20 20  | .full-date.effective)...state... | 
| 44f40 |  63 6f 64 65 0a 20 20 28 6e 6f 74 65 20 65 6e 64    2d 6e 6f 74 65 29 29 0a 0a 28 6c 65 64 67 65 72  | code...(note.end-note))..(ledger | 
| 44f60 |  2d 64 65 66 69 6e 65 2d 72 65 67 65 78 70 20 61    63 63 6f 75 6e 74 0a 20 20 28 72 78 20 28 67 72  | -define-regexp.account...(rx.(gr | 
| 44f80 |  6f 75 70 20 28 61 6e 64 20 28 6e 6f 74 20 28 61    6e 79 20 62 6c 61 6e 6b 20 3f 5c 5b 20 3f 5c 28  | oup.(and.(not.(any.blank.?\[.?\( | 
| 44fa0 |  20 3f 3a 20 3f 5c 3b 29 29 20 28 2a 3f 20 6e 6f    6e 6c 29 29 29 29 0a 20 20 22 22 29 0a 0a 28 6c  | .?:.?\;)).(*?.nonl))))..."")..(l | 
| 44fc0 |  65 64 67 65 72 2d 64 65 66 69 6e 65 2d 72 65 67    65 78 70 20 61 63 63 6f 75 6e 74 2d 6b 69 6e 64  | edger-define-regexp.account-kind | 
| 44fe0 |  0a 20 20 28 72 78 20 28 67 72 6f 75 70 20 28 3f    20 28 61 6e 79 20 3f 5c 5b 20 3f 5c 28 29 29 29  | ...(rx.(group.(?.(any.?\[.?\())) | 
| 45000 |  29 0a 20 20 22 22 29 0a 0a 28 6c 65 64 67 65 72    2d 64 65 66 69 6e 65 2d 72 65 67 65 78 70 20 66  | )..."")..(ledger-define-regexp.f | 
| 45020 |  75 6c 6c 2d 61 63 63 6f 75 6e 74 0a 20 20 28 6d    61 63 72 6f 65 78 70 61 6e 64 0a 20 20 20 60 28  | ull-account...(macroexpand....`( | 
| 45040 |  72 78 20 28 61 6e 64 20 28 72 65 67 65 78 70 20    2c 6c 65 64 67 65 72 2d 61 63 63 6f 75 6e 74 2d  | rx.(and.(regexp.,ledger-account- | 
| 45060 |  6b 69 6e 64 2d 72 65 67 65 78 70 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 28 72 65 67 65 78  | kind-regexp)..............(regex | 
| 45080 |  70 20 2c 6c 65 64 67 65 72 2d 61 63 63 6f 75 6e    74 2d 72 65 67 65 78 70 29 0a 20 20 20 20 20 20  | p.,ledger-account-regexp)....... | 
| 450a0 |  20 20 20 20 20 20 20 28 3f 20 28 61 6e 79 20 3f    5c 5d 20 3f 5c 29 29 29 29 29 29 0a 20 20 22 22  | .......(?.(any.?\].?\))))))..."" | 
| 450c0 |  0a 20 20 28 6b 69 6e 64 20 61 63 63 6f 75 6e 74    2d 6b 69 6e 64 29 0a 20 20 28 6e 61 6d 65 20 61  | ...(kind.account-kind)...(name.a | 
| 450e0 |  63 63 6f 75 6e 74 29 29 0a 0a 28 6c 65 64 67 65    72 2d 64 65 66 69 6e 65 2d 72 65 67 65 78 70 20  | ccount))..(ledger-define-regexp. | 
| 45100 |  63 6f 6d 6d 6f 64 69 74 79 2d 6e 6f 2d 67 72 6f    75 70 0a 20 20 28 72 78 20 28 6f 72 20 28 61 6e  | commodity-no-group...(rx.(or.(an | 
| 45120 |  64 20 3f 5c 22 20 28 2b 20 28 6e 6f 74 20 28 61    6e 79 20 3f 5c 22 29 29 29 20 3f 5c 22 29 0a 20  | d.?\".(+.(not.(any.?\"))).?\").. | 
| 45140 |  20 20 20 20 20 20 20 20 20 28 2b 20 28 6e 6f 74    20 28 61 6e 79 20 62 6c 61 6e 6b 20 3f 5c 6e 0a  | .........(+.(not.(any.blank.?\n. | 
| 45160 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 64 69 67 69 74 0a 20 20 20  | .......................digit.... | 
| 45180 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 3f 2d 20 3f 5c 5b 20 3f 5c 5d 0a 20  | ....................?-.?\[.?\].. | 
| 451a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 3f 2e 20 3f 2c 20 3f 5c 3b 20  | ......................?..?,.?\;. | 
| 451c0 |  3f 2b 20 3f 2a 20 3f 2f 20 3f 5e 20 3f 3f 20 3f    3a 20 3f 26 20 3f 7c 20 3f 21 20 3f 3d 0a 20 20  | ?+.?*.?/.?^.??.?:.?&.?|.?!.?=... | 
| 451e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 3f 5c 3c 20 3f 5c 3e 20 3f 5c 7b  | .....................?\<.?\>.?\{ | 
| 45200 |  20 3f 5c 7d 20 3f 5c 28 20 3f 5c 29 20 3f 40 29    29 29 29 29 0a 20 20 22 22 29 0a 0a 28 6c 65 64  | .?\}.?\(.?\).?@)))))..."")..(led | 
| 45220 |  67 65 72 2d 64 65 66 69 6e 65 2d 72 65 67 65 78    70 20 63 6f 6d 6d 6f 64 69 74 79 0a 20 20 28 6d  | ger-define-regexp.commodity...(m | 
| 45240 |  61 63 72 6f 65 78 70 61 6e 64 0a 20 20 20 60 28    72 78 20 28 67 72 6f 75 70 20 28 72 65 67 65 78  | acroexpand....`(rx.(group.(regex | 
| 45260 |  70 20 2c 6c 65 64 67 65 72 2d 63 6f 6d 6d 6f 64    69 74 79 2d 6e 6f 2d 67 72 6f 75 70 2d 72 65 67  | p.,ledger-commodity-no-group-reg | 
| 45280 |  65 78 70 29 29 29 29 0a 20 20 22 22 29 0a 0a 28    6c 65 64 67 65 72 2d 64 65 66 69 6e 65 2d 72 65  | exp))))..."")..(ledger-define-re | 
| 452a0 |  67 65 78 70 20 61 6d 6f 75 6e 74 2d 6e 6f 2d 67    72 6f 75 70 0a 20 20 28 72 78 20 28 61 6e 64 20  | gexp.amount-no-group...(rx.(and. | 
| 452c0 |  28 3f 20 3f 2d 29 0a 20 20 20 20 20 20 20 20 20    20 20 28 2b 20 64 69 67 69 74 29 0a 20 20 20 20  | (?.?-)............(+.digit)..... | 
| 452e0 |  20 20 20 20 20 20 20 28 2a 20 28 61 6e 64 20 28    61 6e 79 20 3f 2e 20 3f 2c 29 20 28 2b 20 64 69  | .......(*.(and.(any.?..?,).(+.di | 
| 45300 |  67 69 74 29 29 29 29 29 0a 20 20 22 22 29 0a 0a    28 6c 65 64 67 65 72 2d 64 65 66 69 6e 65 2d 72  | git)))))..."")..(ledger-define-r | 
| 45320 |  65 67 65 78 70 20 61 6d 6f 75 6e 74 0a 20 20 28    6d 61 63 72 6f 65 78 70 61 6e 64 0a 20 20 20 60  | egexp.amount...(macroexpand....` | 
| 45340 |  28 72 78 20 28 67 72 6f 75 70 20 28 72 65 67 65    78 70 20 2c 6c 65 64 67 65 72 2d 61 6d 6f 75 6e  | (rx.(group.(regexp.,ledger-amoun | 
| 45360 |  74 2d 6e 6f 2d 67 72 6f 75 70 2d 72 65 67 65 78    70 29 29 29 29 0a 20 20 22 22 29 0a 0a 28 6c 65  | t-no-group-regexp))))..."")..(le | 
| 45380 |  64 67 65 72 2d 64 65 66 69 6e 65 2d 72 65 67 65    78 70 20 63 6f 6d 6d 6f 64 69 74 69 7a 65 64 2d  | dger-define-regexp.commoditized- | 
| 453a0 |  61 6d 6f 75 6e 74 0a 20 20 28 6d 61 63 72 6f 65    78 70 61 6e 64 0a 20 20 20 60 28 72 78 20 28 67  | amount...(macroexpand....`(rx.(g | 
| 453c0 |  72 6f 75 70 0a 20 20 20 20 20 20 20 20 20 28 6f    72 20 28 61 6e 64 20 28 72 65 67 65 78 70 20 2c  | roup..........(or.(and.(regexp., | 
| 453e0 |  6c 65 64 67 65 72 2d 63 6f 6d 6d 6f 64 69 74 79    2d 6e 6f 2d 67 72 6f 75 70 2d 72 65 67 65 78 70  | ledger-commodity-no-group-regexp | 
| 45400 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 28 2a 3f 20 62 6c 61 6e 6b 29 0a 20  | )...................(*?.blank).. | 
| 45420 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 72 65 67 65 78 70 20 2c 6c 65 64 67 65 72  | .................(regexp.,ledger | 
| 45440 |  2d 61 6d 6f 75 6e 74 2d 6e 6f 2d 67 72 6f 75 70    2d 72 65 67 65 78 70 29 29 0a 20 20 20 20 20 20  | -amount-no-group-regexp))....... | 
| 45460 |  20 20 20 20 20 20 20 28 61 6e 64 20 28 72 65 67    65 78 70 20 2c 6c 65 64 67 65 72 2d 61 6d 6f 75  | .......(and.(regexp.,ledger-amou | 
| 45480 |  6e 74 2d 6e 6f 2d 67 72 6f 75 70 2d 72 65 67 65    78 70 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | nt-no-group-regexp)............. | 
| 454a0 |  20 20 20 20 20 20 28 2a 3f 20 62 6c 61 6e 6b 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ......(*?.blank)................ | 
| 454c0 |  20 20 20 28 72 65 67 65 78 70 20 2c 6c 65 64 67    65 72 2d 63 6f 6d 6d 6f 64 69 74 79 2d 6e 6f 2d  | ...(regexp.,ledger-commodity-no- | 
| 454e0 |  67 72 6f 75 70 2d 72 65 67 65 78 70 29 29 29 29    29 29 0a 20 20 22 22 29 0a 0a 28 6c 65 64 67 65  | group-regexp))))))..."")..(ledge | 
| 45500 |  72 2d 64 65 66 69 6e 65 2d 72 65 67 65 78 70 20    63 6f 6d 6d 6f 64 69 74 79 2d 61 6e 6e 6f 74 61  | r-define-regexp.commodity-annota | 
| 45520 |  74 69 6f 6e 73 0a 20 20 28 6d 61 63 72 6f 65 78    70 61 6e 64 0a 20 20 20 60 28 72 78 20 28 2a 20  | tions...(macroexpand....`(rx.(*. | 
| 45540 |  28 2b 20 62 6c 61 6e 6b 29 0a 20 20 20 20 20 20    20 20 20 20 20 28 6f 72 20 28 61 6e 64 20 3f 5c  | (+.blank)............(or.(and.?\ | 
| 45560 |  7b 20 28 72 65 67 65 78 70 20 2c 6c 65 64 67 65    72 2d 63 6f 6d 6d 6f 64 69 74 69 7a 65 64 2d 61  | {.(regexp.,ledger-commoditized-a | 
| 45580 |  6d 6f 75 6e 74 2d 72 65 67 65 78 70 29 20 3f 5c    7d 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | mount-regexp).?\}).............. | 
| 455a0 |  20 20 28 61 6e 64 20 3f 5c 5b 20 28 72 65 67 65    78 70 20 2c 6c 65 64 67 65 72 2d 69 73 6f 2d 64  | ..(and.?\[.(regexp.,ledger-iso-d | 
| 455c0 |  61 74 65 2d 72 65 67 65 78 70 29 20 3f 5c 5d 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ate-regexp).?\])................ | 
| 455e0 |  28 61 6e 64 20 3f 5c 28 20 28 6e 6f 74 20 28 61    6e 79 20 3f 5c 29 29 29 20 3f 5c 29 29 29 29 29  | (and.?\(.(not.(any.?\))).?\))))) | 
| 45600 |  29 0a 20 20 22 22 0a 20 20 63 6f 6d 6d 6f 64 69    74 69 7a 65 64 2d 61 6d 6f 75 6e 74 0a 20 20 69  | )...""...commoditized-amount...i | 
| 45620 |  73 6f 2d 64 61 74 65 29 0a 0a 28 6c 65 64 67 65    72 2d 64 65 66 69 6e 65 2d 72 65 67 65 78 70 20  | so-date)..(ledger-define-regexp. | 
| 45640 |  63 6f 73 74 0a 20 20 28 6d 61 63 72 6f 65 78 70    61 6e 64 0a 20 20 20 60 28 72 78 20 28 61 6e 64  | cost...(macroexpand....`(rx.(and | 
| 45660 |  20 28 6f 72 20 22 40 22 20 22 40 40 22 29 20 28    2b 20 62 6c 61 6e 6b 29 0a 20 20 20 20 20 20 20  | .(or."@"."@@").(+.blank)........ | 
| 45680 |  20 20 20 20 20 20 28 72 65 67 65 78 70 20 2c 6c    65 64 67 65 72 2d 63 6f 6d 6d 6f 64 69 74 69 7a  | ......(regexp.,ledger-commoditiz | 
| 456a0 |  65 64 2d 61 6d 6f 75 6e 74 2d 72 65 67 65 78 70    29 29 29 29 0a 20 20 22 22 29 0a 0a 28 6c 65 64  | ed-amount-regexp))))..."")..(led | 
| 456c0 |  67 65 72 2d 64 65 66 69 6e 65 2d 72 65 67 65 78    70 20 62 61 6c 61 6e 63 65 2d 61 73 73 65 72 74  | ger-define-regexp.balance-assert | 
| 456e0 |  69 6f 6e 0a 20 20 28 6d 61 63 72 6f 65 78 70 61    6e 64 0a 20 20 20 60 28 72 78 20 28 61 6e 64 20  | ion...(macroexpand....`(rx.(and. | 
| 45700 |  3f 3d 20 28 2b 20 62 6c 61 6e 6b 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 28 72 65 67 65 78  | ?=.(+.blank)..............(regex | 
| 45720 |  70 20 2c 6c 65 64 67 65 72 2d 63 6f 6d 6d 6f 64    69 74 69 7a 65 64 2d 61 6d 6f 75 6e 74 2d 72 65  | p.,ledger-commoditized-amount-re | 
| 45740 |  67 65 78 70 29 29 29 29 0a 20 20 22 22 29 0a 0a    28 6c 65 64 67 65 72 2d 64 65 66 69 6e 65 2d 72  | gexp))))..."")..(ledger-define-r | 
| 45760 |  65 67 65 78 70 20 66 75 6c 6c 2d 61 6d 6f 75 6e    74 0a 20 20 28 72 78 20 28 67 72 6f 75 70 20 28  | egexp.full-amount...(rx.(group.( | 
| 45780 |  2b 3f 20 28 6e 6f 74 20 28 61 6e 79 20 3f 5c 3b    29 29 29 29 29 0a 20 20 22 22 29 0a 0a 28 6c 65  | +?.(not.(any.?\;)))))..."")..(le | 
| 457a0 |  64 67 65 72 2d 64 65 66 69 6e 65 2d 72 65 67 65    78 70 20 70 6f 73 74 2d 6c 69 6e 65 0a 20 20 28  | dger-define-regexp.post-line...( | 
| 457c0 |  6d 61 63 72 6f 65 78 70 61 6e 64 0a 20 20 20 60    28 72 78 20 28 61 6e 64 20 6c 69 6e 65 2d 73 74  | macroexpand....`(rx.(and.line-st | 
| 457e0 |  61 72 74 20 28 2b 20 62 6c 61 6e 6b 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 28 3f 20 28 61  | art.(+.blank)..............(?.(a | 
| 45800 |  6e 64 20 28 72 65 67 65 78 70 20 2c 6c 65 64 67    65 72 2d 73 74 61 74 65 2d 72 65 67 65 78 70 29  | nd.(regexp.,ledger-state-regexp) | 
| 45820 |  20 28 2a 20 62 6c 61 6e 6b 29 29 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 28 72 65 67 65 78  | .(*.blank)))..............(regex | 
| 45840 |  70 20 2c 6c 65 64 67 65 72 2d 66 75 6c 6c 2d 61    63 63 6f 75 6e 74 2d 72 65 67 65 78 70 29 0a 20  | p.,ledger-full-account-regexp).. | 
| 45860 |  20 20 20 20 20 20 20 20 20 20 20 20 28 3f 20 28    61 6e 64 20 28 72 65 67 65 78 70 20 2c 6c 65 64  | ............(?.(and.(regexp.,led | 
| 45880 |  67 65 72 2d 6c 6f 6e 67 2d 73 70 61 63 65 2d 72    65 67 65 78 70 29 0a 20 20 20 20 20 20 20 20 20  | ger-long-space-regexp).......... | 
| 458a0 |  20 20 20 20 20 20 20 20 20 20 20 20 28 72 65 67    65 78 70 20 2c 6c 65 64 67 65 72 2d 66 75 6c 6c  | ............(regexp.,ledger-full | 
| 458c0 |  2d 61 6d 6f 75 6e 74 2d 72 65 67 65 78 70 29 29    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28  | -amount-regexp)))..............( | 
| 458e0 |  3f 20 28 72 65 67 65 78 70 20 2c 6c 65 64 67 65    72 2d 65 6e 64 2d 6e 6f 74 65 2d 72 65 67 65 78  | ?.(regexp.,ledger-end-note-regex | 
| 45900 |  70 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 6c 69 6e 65 2d 65 6e 64 29 29 29 0a 20 20 22  | p))..............line-end)))..." | 
| 45920 |  22 0a 20 20 73 74 61 74 65 0a 20 20 28 61 63 63    6f 75 6e 74 2d 6b 69 6e 64 20 66 75 6c 6c 2d 61  | "...state...(account-kind.full-a | 
| 45940 |  63 63 6f 75 6e 74 20 6b 69 6e 64 29 0a 20 20 28    61 63 63 6f 75 6e 74 20 66 75 6c 6c 2d 61 63 63  | ccount.kind)...(account.full-acc | 
| 45960 |  6f 75 6e 74 20 6e 61 6d 65 29 0a 20 20 28 61 6d    6f 75 6e 74 20 66 75 6c 6c 2d 61 6d 6f 75 6e 74  | ount.name)...(amount.full-amount | 
| 45980 |  29 0a 20 20 28 6e 6f 74 65 20 65 6e 64 2d 6e 6f    74 65 29 29 0a 0a 28 64 65 66 63 6f 6e 73 74 20  | )...(note.end-note))..(defconst. | 
| 459a0 |  6c 65 64 67 65 72 2d 61 6d 6f 75 6e 74 2d 72 65    67 65 78 0a 20 20 28 63 6f 6e 63 61 74 20 22 5c  | ledger-amount-regex...(concat."\ | 
| 459c0 |  5c 28 20 20 5c 5c 7c 5c 74 5c 5c 7c 20 5c 74 5c    5c 29 5b 20 5c 74 5d 2a 5b 2d 2b 3d 5d 3f 20 2a  | \(..\\|\t\\|.\t\\)[.\t]*[-+=]?.* | 
| 459e0 |  22 0a 20 20 20 20 20 20 20 20 20 20 22 5c 5c 28    3f 3a 22 20 6c 65 64 67 65 72 2d 63 6f 6d 6d 6f  | "..........."\\(?:".ledger-commo | 
| 45a00 |  64 69 74 79 2d 72 65 67 65 78 70 20 22 20 2a 5c    5c 29 3f 22 0a 20 20 20 20 20 20 20 20 20 20 3b  | dity-regexp.".*\\)?"...........; | 
| 45a20 |  3b 20 57 65 20 65 69 74 68 65 72 20 6d 61 74 63    68 20 6a 75 73 74 20 61 20 6e 75 6d 62 65 72 20  | ;.We.either.match.just.a.number. | 
| 45a40 |  61 66 74 65 72 20 74 68 65 20 63 6f 6d 6d 6f 64    69 74 79 20 77 69 74 68 20 6e 6f 0a 20 20 20 20  | after.the.commodity.with.no..... | 
| 45a60 |  20 20 20 20 20 20 3b 3b 20 64 65 63 69 6d 61 6c    20 6f 72 20 74 68 6f 75 73 61 6e 64 20 73 65 70  | ......;;.decimal.or.thousand.sep | 
| 45a80 |  61 72 61 74 6f 72 73 20 6f 72 20 61 20 6e 75 6d    62 65 72 20 77 69 74 68 20 74 68 6f 75 73 61 6e  | arators.or.a.number.with.thousan | 
| 45aa0 |  64 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 73    65 70 61 72 61 74 6f 72 73 2e 20 20 49 66 20 77  | d...........;;.separators...If.w | 
| 45ac0 |  65 20 68 61 76 65 20 61 20 64 65 63 69 6d 61 6c    20 70 61 72 74 20 73 74 61 72 74 69 6e 67 20 77  | e.have.a.decimal.part.starting.w | 
| 45ae0 |  69 74 68 20 60 2c 27 0a 20 20 20 20 20 20 20 20    20 20 3b 3b 20 6f 72 20 60 2e 27 2c 20 62 65 63  | ith.`,'...........;;.or.`.',.bec | 
| 45b00 |  61 75 73 65 20 74 68 65 20 6d 61 74 63 68 20 69    73 20 6e 6f 6e 2d 67 72 65 65 64 79 2c 20 69 74  | ause.the.match.is.non-greedy,.it | 
| 45b20 |  20 6d 75 73 74 20 6c 65 61 76 65 20 61 74 0a 20    20 20 20 20 20 20 20 20 20 3b 3b 20 6c 65 61 73  | .must.leave.at...........;;.leas | 
| 45b40 |  74 20 6f 6e 65 20 6f 66 20 74 68 6f 73 65 20 73    79 6d 62 6f 6c 73 20 66 6f 72 20 74 68 65 20 66  | t.one.of.those.symbols.for.the.f | 
| 45b60 |  6f 6c 6c 6f 77 69 6e 67 20 63 61 70 74 75 72 65    0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 67 72  | ollowing.capture...........;;.gr | 
| 45b80 |  6f 75 70 2c 20 77 68 69 63 68 20 74 68 65 6e 20    66 69 6e 69 73 68 65 73 20 74 68 65 20 64 65 63  | oup,.which.then.finishes.the.dec | 
| 45ba0 |  69 6d 61 6c 20 70 61 72 74 2e 0a 20 20 20 20 20    20 20 20 20 20 22 5c 5c 28 5b 2d 2b 3d 5d 3f 20  | imal.part............"\\([-+=]?. | 
| 45bc0 |  2a 5c 5c 28 3f 3a 5b 30 2d 39 5d 2b 5c 5c 7c 5b    30 2d 39 2c 2e 5d 2b 3f 5c 5c 29 5c 5c 29 22 0a  | *\\(?:[0-9]+\\|[0-9,.]+?\\)\\)". | 
| 45be0 |  20 20 20 20 20 20 20 20 20 20 22 5c 5c 28 5b 2c    2e 5d 5b 30 2d 39 29 5d 2b 5c 5c 29 3f 22 0a 20  | .........."\\([,.][0-9)]+\\)?".. | 
| 45c00 |  20 20 20 20 20 20 20 20 20 22 5c 5c 28 3f 3a 20    2a 22 20 6c 65 64 67 65 72 2d 63 6f 6d 6d 6f 64  | ........."\\(?:.*".ledger-commod | 
| 45c20 |  69 74 79 2d 72 65 67 65 78 70 20 22 5c 5c 29 3f    22 0a 20 20 20 20 20 20 20 20 20 20 22 5c 5c 28  | ity-regexp."\\)?"..........."\\( | 
| 45c40 |  5b 20 5c 74 5d 2a 5b 40 3d 7b 5d 40 3f 5b 5e 5c    6e 3b 5d 2b 3f 5c 5c 29 3f 22 0a 20 20 20 20 20  | [.\t]*[@={]@?[^\n;]+?\\)?"...... | 
| 45c60 |  20 20 20 20 20 22 5c 5c 28 5b 20 5c 74 5d 2b 3b    2e 2b 3f 5c 5c 7c 5b 20 5c 74 5d 2a 5c 5c 29 3f  | ....."\\([.\t]+;.+?\\|[.\t]*\\)? | 
| 45c80 |  24 22 29 29 0a 0a 28 6c 65 64 67 65 72 2d 64 65    66 69 6e 65 2d 72 65 67 65 78 70 20 79 65 61 72  | $"))..(ledger-define-regexp.year | 
| 45ca0 |  0a 20 20 28 72 78 20 28 67 72 6f 75 70 20 28 2b    20 28 61 6e 79 20 22 30 2d 39 22 29 29 29 29 0a  | ...(rx.(group.(+.(any."0-9")))). | 
| 45cc0 |  20 20 22 22 29 0a 0a 28 6c 65 64 67 65 72 2d 64    65 66 69 6e 65 2d 72 65 67 65 78 70 20 70 61 79  | .."")..(ledger-define-regexp.pay | 
| 45ce0 |  65 65 0a 20 20 28 72 78 20 28 67 72 6f 75 70 20    28 2b 3f 20 6e 6f 6e 6c 29 29 29 0a 20 20 22 22  | ee...(rx.(group.(+?.nonl)))..."" | 
| 45d00 |  29 0a 0a 28 6c 65 64 67 65 72 2d 64 65 66 69 6e    65 2d 72 65 67 65 78 70 20 69 74 65 72 61 74 65  | )..(ledger-define-regexp.iterate | 
| 45d20 |  0a 20 20 28 6d 61 63 72 6f 65 78 70 61 6e 64 20    60 28 72 78 20 20 28 6f 72 20 28 61 6e 64 20 28  | ...(macroexpand.`(rx..(or.(and.( | 
| 45d40 |  6f 72 20 22 59 22 20 22 79 65 61 72 22 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | or."Y"."year").................. | 
| 45d60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 2b 20    28 73 79 6e 74 61 78 20 3f 2d 29 29 0a 20 20 20  | .............(+.(syntax.?-)).... | 
| 45d80 |  20 20 20 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 | 
| 45da0 |  78 70 20 2c 6c 65 64 67 65 72 2d 79 65 61 72 2d    72 65 67 65 78 70 29 29 0a 20 20 20 20 20 20 20  | xp.,ledger-year-regexp))........ | 
| 45dc0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 61 6e 64 20 28 72 65 67 65 78 70 20 2c  | ..................(and.(regexp., | 
| 45de0 |  6c 65 64 67 65 72 2d 66 75 6c 6c 2d 64 61 74 65    2d 72 65 67 65 78 70 29 0a 20 20 20 20 20 20 20  | ledger-full-date-regexp)........ | 
| 45e00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 28 3f 20 28 61 6e 64 20 28  | .......................(?.(and.( | 
| 45e20 |  2b 20 62 6c 61 6e 6b 29 20 28 72 65 67 65 78 70    20 2c 6c 65 64 67 65 72 2d 73 74 61 74 65 2d 72  | +.blank).(regexp.,ledger-state-r | 
| 45e40 |  65 67 65 78 70 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  | egexp)))........................ | 
| 45e60 |  20 20 20 20 20 20 20 28 3f 20 28 61 6e 64 20 28    2b 20 62 6c 61 6e 6b 29 20 28 72 65 67 65 78 70  | .......(?.(and.(+.blank).(regexp | 
| 45e80 |  20 2c 6c 65 64 67 65 72 2d 63 6f 64 65 2d 72 65    67 65 78 70 29 29 29 0a 20 20 20 20 20 20 20 20  | .,ledger-code-regexp)))......... | 
| 45ea0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 2b 20 62 6c 61 6e 6b 29 0a  | ......................(+.blank). | 
| 45ec0 |  20 20 20 20 20 20 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  | ..............................(r | 
| 45ee0 |  65 67 65 78 70 20 2c 6c 65 64 67 65 72 2d 70 61    79 65 65 2d 72 65 67 65 78 70 29 0a 20 20 20 20  | egexp.,ledger-payee-regexp)..... | 
| 45f00 |  20 20 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 3f 20 28 72 65  | ..........................(?.(re | 
| 45f20 |  67 65 78 70 20 2c 6c 65 64 67 65 72 2d 65 6e 64    2d 6e 6f 74 65 2d 72 65 67 65 78 70 29 29 29 29  | gexp.,ledger-end-note-regexp)))) | 
| 45f40 |  29 29 0a 20 20 22 22 0a 20 20 79 65 61 72 0a 20    20 28 61 63 74 75 61 6c 2d 64 61 74 65 20 66 75  | ))...""...year...(actual-date.fu | 
| 45f60 |  6c 6c 2d 64 61 74 65 20 61 63 74 75 61 6c 29 0a    20 20 28 65 66 66 65 63 74 69 76 65 2d 64 61 74  | ll-date.actual)...(effective-dat | 
| 45f80 |  65 20 66 75 6c 6c 2d 64 61 74 65 20 65 66 66 65    63 74 69 76 65 29 0a 20 20 73 74 61 74 65 0a 20  | e.full-date.effective)...state.. | 
| 45fa0 |  20 63 6f 64 65 0a 20 20 70 61 79 65 65 0a 20 20    28 6e 6f 74 65 20 65 6e 64 2d 6e 6f 74 65 29 29  | .code...payee...(note.end-note)) | 
| 45fc0 |  0a 0a 28 64 65 66 63 6f 6e 73 74 20 6c 65 64 67    65 72 2d 69 6e 63 6f 6d 70 6c 65 74 65 2d 64 61  | ..(defconst.ledger-incomplete-da | 
| 45fe0 |  74 65 2d 72 65 67 65 78 70 0a 20 20 22 5c 5c 28    3f 3a 5c 5c 28 5b 30 2d 39 5d 5c 5c 7b 31 2c 32  | te-regexp..."\\(?:\\([0-9]\\{1,2 | 
| 46000 |  5c 5c 7d 5c 5c 29 5b 2d 2f 5d 5c 5c 29 3f 5c 5c    28 5b 30 2d 39 5d 5c 5c 7b 31 2c 32 5c 5c 7d 5c  | \\}\\)[-/]\\)?\\([0-9]\\{1,2\\}\ | 
| 46020 |  5c 29 22 29 0a 0a 28 64 65 66 63 6f 6e 73 74 20    6c 65 64 67 65 72 2d 78 61 63 74 2d 73 74 61 72  | \)")..(defconst.ledger-xact-star | 
| 46040 |  74 2d 72 65 67 65 78 0a 20 20 28 63 6f 6e 63 61    74 20 22 5e 22 20 6c 65 64 67 65 72 2d 69 73 6f  | t-regex...(concat."^".ledger-iso | 
| 46060 |  2d 64 61 74 65 2d 72 65 67 65 78 70 20 20 3b 3b    20 73 75 62 65 78 70 20 31 0a 20 20 20 20 20 20  | -date-regexp..;;.subexp.1....... | 
| 46080 |  20 20 20 20 22 5c 5c 28 3d 22 20 6c 65 64 67 65    72 2d 69 73 6f 2d 64 61 74 65 2d 72 65 67 65 78  | ...."\\(=".ledger-iso-date-regex | 
| 460a0 |  70 20 22 5c 5c 29 3f 22 0a 20 20 20 20 20 20 20    20 20 20 29 29 0a 0a 28 64 65 66 63 6f 6e 73 74  | p."\\)?"...........))..(defconst | 
| 460c0 |  20 6c 65 64 67 65 72 2d 78 61 63 74 2d 61 66 74    65 72 2d 64 61 74 65 2d 72 65 67 65 78 0a 20 20  | .ledger-xact-after-date-regex... | 
| 460e0 |  28 63 6f 6e 63 61 74 20 22 5c 5c 28 3f 3a 5b 20    5c 74 5d 2b 5c 5c 28 5b 2a 21 5d 5c 5c 29 5c 5c  | (concat."\\(?:[.\t]+\\([*!]\\)\\ | 
| 46100 |  29 3f 22 20 20 3b 3b 20 6d 61 72 6b 2c 20 73 75    62 65 78 70 20 31 0a 20 20 20 20 20 20 20 20 20  | )?"..;;.mark,.subexp.1.......... | 
| 46120 |  20 22 5c 5c 28 3f 3a 5b 20 5c 74 5d 2b 5c 5c 28    28 2e 2a 3f 29 5c 5c 29 5c 5c 29 3f 22 20 20 3b  | ."\\(?:[.\t]+\\((.*?)\\)\\)?"..; | 
| 46140 |  3b 20 63 6f 64 65 2c 20 73 75 62 65 78 70 20 32    0a 20 20 20 20 20 20 20 20 20 20 22 5c 5c 28 3f  | ;.code,.subexp.2..........."\\(? | 
| 46160 |  3a 5b 20 5c 74 5d 2b 5c 5c 28 2e 2b 3f 5c 5c 29    5c 5c 29 3f 22 20 20 20 3b 3b 20 64 65 73 63 2c  | :[.\t]+\\(.+?\\)\\)?"...;;.desc, | 
| 46180 |  20 73 75 62 65 78 70 20 33 0a 20 20 20 20 20 20    20 20 20 20 22 5c 5c 28 3f 3a 5c 5c 28 3f 3a 5c  | .subexp.3..........."\\(?:\\(?:\ | 
| 461a0 |  74 5c 5c 7c 5b 20 5c 74 5d 5c 5c 7b 32 2c 5c 5c    7d 5c 5c 29 5c 5c 28 3b 5b 5e 5c 6e 5d 2a 5c 5c  | t\\|[.\t]\\{2,\\}\\)\\(;[^\n]*\\ | 
| 461c0 |  29 5c 5c 29 3f 24 22 20 3b 3b 20 63 6f 6d 6d 65    6e 74 2c 20 73 75 62 65 78 70 20 34 0a 20 20 20  | )\\)?$".;;.comment,.subexp.4.... | 
| 461e0 |  20 20 20 20 20 20 20 29 29 0a 0a 28 64 65 66 63    6f 6e 73 74 20 6c 65 64 67 65 72 2d 70 6f 73 74  | .......))..(defconst.ledger-post | 
| 46200 |  69 6e 67 2d 72 65 67 65 78 0a 20 20 28 63 6f 6e    63 61 74 20 22 5e 5b 5b 3a 62 6c 61 6e 6b 3a 5d  | ing-regex...(concat."^[[:blank:] | 
| 46220 |  5d 2b 22 20 3b 20 69 6e 69 74 69 61 6c 20 77 68    69 74 65 20 73 70 61 63 65 0a 20 20 20 20 20 20  | ]+".;.initial.white.space....... | 
| 46240 |  20 20 20 20 3b 3b 20 73 74 61 74 65 20 61 6e 64    20 61 63 63 6f 75 6e 74 2c 20 73 75 62 65 78 70  | ....;;.state.and.account,.subexp | 
| 46260 |  20 31 0a 20 20 20 20 20 20 20 20 20 20 22 5c 5c    28 5c 5c 28 5b 2a 21 5d 5c 5c 29 3f 22 20 20 20  | .1..........."\\(\\([*!]\\)?"... | 
| 46280 |  20 20 20 20 20 20 20 20 20 3b 20 73 74 61 74 65    2c 20 20 20 73 75 62 65 78 70 20 32 0a 20 20 20  | .........;.state,...subexp.2.... | 
| 462a0 |  20 20 20 20 20 20 20 22 5b 5b 3a 62 6c 61 6e 6b    3a 5d 5d 2a 5c 5c 28 2e 2a 3f 5c 5c 29 5c 5c 29  | ......."[[:blank:]]*\\(.*?\\)\\) | 
| 462c0 |  3f 22 20 3b 20 61 63 63 6f 75 6e 74 2c 20 73 75    62 65 78 70 20 33 0a 20 20 20 20 20 20 20 20 20  | ?".;.account,.subexp.3.......... | 
| 462e0 |  20 22 5c 5c 28 3f 3a 5c 5c 28 3f 3a 5c 74 5c 5c    7c 5b 5b 3a 62 6c 61 6e 6b 3a 5d 5d 5c 5c 7b 32  | ."\\(?:\\(?:\t\\|[[:blank:]]\\{2 | 
| 46300 |  2c 5c 5c 7d 5c 5c 29 22 0a 20 20 20 20 20 20 20    20 20 20 22 5c 5c 28 5b 5e 3b 5c 6e 5d 2a 3f 5c  | ,\\}\\)"..........."\\([^;\n]*?\ | 
| 46320 |  5c 29 5c 5c 29 3f 22 20 20 20 20 20 20 20 20 3b    20 61 6d 6f 75 6e 74 2c 20 20 73 75 62 65 78 70  | \)\\)?"........;.amount,..subexp | 
| 46340 |  20 34 0a 20 20 20 20 20 20 20 20 20 20 22 5c 5c    28 3f 3a 5c 5c 28 3f 3a 5c 74 5c 5c 7c 5b 5b 3a  | .4..........."\\(?:\\(?:\t\\|[[: | 
| 46360 |  62 6c 61 6e 6b 3a 5d 5d 5c 5c 7b 32 2c 5c 5c 7d    5c 5c 29 22 0a 20 20 20 20 20 20 20 20 20 20 22  | blank:]]\\{2,\\}\\)"..........." | 
| 46380 |  5c 5c 28 3b 2e 2a 5c 5c 29 5c 5c 29 3f 24 22 20    20 20 20 20 20 20 20 20 20 20 20 3b 20 63 6f 6d  | \\(;.*\\)\\)?$"............;.com | 
| 463a0 |  6d 65 6e 74 2c 20 73 75 62 65 78 70 20 35 0a 20    20 20 20 20 20 20 20 20 20 29 29 0a 0a 0a 0a 28  | ment,.subexp.5...........))....( | 
| 463c0 |  64 65 66 63 6f 6e 73 74 20 6c 65 64 67 65 72 2d    64 69 72 65 63 74 69 76 65 2d 73 74 61 72 74 2d  | defconst.ledger-directive-start- | 
| 463e0 |  72 65 67 65 78 0a 20 20 22 5b 3d 7e 3b 23 25 7c    5c 5c 2a 5b 41 2d 5a 61 2d 7a 5d 22 29 0a 0a 0a  | regex..."[=~;#%|\\*[A-Za-z]")... | 
| 46400 |  28 70 72 6f 76 69 64 65 20 27 6c 65 64 67 65 72    2d 72 65 67 65 78 29 0a 0a 3b 3b 3b 20 6c 65 64  | (provide.'ledger-regex)..;;;.led | 
| 46420 |  67 65 72 2d 72 65 67 65 78 2e 65 6c 20 65 6e 64    73 20 68 65 72 65 0a 00 00 00 00 00 00 00 00 00  | ger-regex.el.ends.here.......... | 
| 46440 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 46460 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 46480 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 464a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 464c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 464e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 46500 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 46520 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 46540 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 46560 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 46580 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 465a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 465c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 465e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 46600 |  6c 65 64 67 65 72 2d 6d 6f 64 65 2d 32 30 32 34    30 34 31 36 2e 34 31 36 2f 6c 65 64 67 65 72 2d  | ledger-mode-20240416.416/ledger- | 
| 46620 |  73 74 61 74 65 2e 65 6c 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | state.el........................ | 
| 46640 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 46660 |  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 | 
| 46680 |  30 30 32 33 30 37 37 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 36 30 32 35 00 20 30 00 00 00  | 0023077.00000000000.016025..0... | 
| 466a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 466c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 466e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 46700 |  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................... | 
| 46720 |  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................... | 
| 46740 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 46760 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 46780 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 467a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 467c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 467e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 46800 |  3b 3b 3b 20 6c 65 64 67 65 72 2d 73 74 61 74 65    2e 65 6c 20 2d 2d 2d 20 48 65 6c 70 65 72 20 63  | ;;;.ledger-state.el.---.Helper.c | 
| 46820 |  6f 64 65 20 66 6f 72 20 75 73 65 20 77 69 74 68    20 74 68 65 20 22 6c 65 64 67 65 72 22 20 63 6f  | ode.for.use.with.the."ledger".co | 
| 46840 |  6d 6d 61 6e 64 2d 6c 69 6e 65 20 74 6f 6f 6c 20    20 2d 2a 2d 20 6c 65 78 69 63 61 6c 2d 62 69 6e  | mmand-line.tool..-*-.lexical-bin | 
| 46860 |  64 69 6e 67 3a 20 74 3b 20 2d 2a 2d 0a 0a 3b 3b    20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32  | ding:.t;.-*-..;;.Copyright.(C).2 | 
| 46880 |  30 30 33 2d 32 30 31 36 20 4a 6f 68 6e 20 57 69    65 67 6c 65 79 20 28 6a 6f 68 6e 77 20 41 54 20  | 003-2016.John.Wiegley.(johnw.AT. | 
| 468a0 |  67 6e 75 20 44 4f 54 20 6f 72 67 29 0a 0a 3b 3b    20 54 68 69 73 20 66 69 6c 65 20 69 73 20 6e 6f  | gnu.DOT.org)..;;.This.file.is.no | 
| 468c0 |  74 20 70 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 69 73  | t.part.of.GNU.Emacs...;;.This.is | 
| 468e0 |  20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3b 20    79 6f 75 20 63 61 6e 20 72 65 64 69 73 74 72 69  | .free.software;.you.can.redistri | 
| 46900 |  62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d    6f 64 69 66 79 20 69 74 20 75 6e 64 65 72 0a 3b  | bute.it.and/or.modify.it.under.; | 
| 46920 |  3b 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74    68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50  | ;.the.terms.of.the.GNU.General.P | 
| 46940 |  75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 61 73    20 70 75 62 6c 69 73 68 65 64 20 62 79 20 74 68  | ublic.License.as.published.by.th | 
| 46960 |  65 20 46 72 65 65 0a 3b 3b 20 53 6f 66 74 77 61    72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 3b 20 65  | e.Free.;;.Software.Foundation;.e | 
| 46980 |  69 74 68 65 72 20 76 65 72 73 69 6f 6e 20 32 2c    20 6f 72 20 28 61 74 20 79 6f 75 72 20 6f 70 74  | ither.version.2,.or.(at.your.opt | 
| 469a0 |  69 6f 6e 29 20 61 6e 79 20 6c 61 74 65 72 0a 3b    3b 20 76 65 72 73 69 6f 6e 2e 0a 3b 3b 0a 3b 3b  | ion).any.later.;;.version..;;.;; | 
| 469c0 |  20 54 68 69 73 20 69 73 20 64 69 73 74 72 69 62    75 74 65 64 20 69 6e 20 74 68 65 20 68 6f 70 65  | .This.is.distributed.in.the.hope | 
| 469e0 |  20 74 68 61 74 20 69 74 20 77 69 6c 6c 20 62 65    20 75 73 65 66 75 6c 2c 20 62 75 74 20 57 49 54  | .that.it.will.be.useful,.but.WIT | 
| 46a00 |  48 4f 55 54 0a 3b 3b 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  | HOUT.;;.ANY.WARRANTY;.without.ev | 
| 46a20 |  65 6e 20 74 68 65 20 69 6d 70 6c 69 65 64 20 77    61 72 72 61 6e 74 79 20 6f 66 20 4d 45 52 43 48  | en.the.implied.warranty.of.MERCH | 
| 46a40 |  41 4e 54 41 42 49 4c 49 54 59 20 6f 72 0a 3b 3b    20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50  | ANTABILITY.or.;;.FITNESS.FOR.A.P | 
| 46a60 |  41 52 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53    45 2e 20 20 53 65 65 20 74 68 65 20 47 4e 55 20  | ARTICULAR.PURPOSE...See.the.GNU. | 
| 46a80 |  47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c    69 63 65 6e 73 65 0a 3b 3b 20 66 6f 72 20 6d 6f  | General.Public.License.;;.for.mo | 
| 46aa0 |  72 65 20 64 65 74 61 69 6c 73 2e 0a 3b 3b 0a 3b    3b 20 59 6f 75 20 73 68 6f 75 6c 64 20 68 61 76  | re.details..;;.;;.You.should.hav | 
| 46ac0 |  65 20 72 65 63 65 69 76 65 64 20 61 20 63 6f 70    79 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e  | e.received.a.copy.of.the.GNU.Gen | 
| 46ae0 |  65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65    6e 73 65 0a 3b 3b 20 61 6c 6f 6e 67 20 77 69 74  | eral.Public.License.;;.along.wit | 
| 46b00 |  68 20 47 4e 55 20 45 6d 61 63 73 3b 20 73 65 65    20 74 68 65 20 66 69 6c 65 20 43 4f 50 59 49 4e  | h.GNU.Emacs;.see.the.file.COPYIN | 
| 46b20 |  47 2e 20 20 49 66 20 6e 6f 74 2c 20 77 72 69 74    65 20 74 6f 20 74 68 65 0a 3b 3b 20 46 72 65 65  | G...If.not,.write.to.the.;;.Free | 
| 46b40 |  20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61    74 69 6f 6e 2c 20 49 6e 63 2e 2c 20 35 31 20 46  | .Software.Foundation,.Inc.,.51.F | 
| 46b60 |  72 61 6e 6b 6c 69 6e 20 53 74 72 65 65 74 2c 20    46 69 66 74 68 20 46 6c 6f 6f 72 2c 20 42 6f 73  | ranklin.Street,.Fifth.Floor,.Bos | 
| 46b80 |  74 6f 6e 2c 0a 3b 3b 20 4d 41 20 30 32 31 31 30    2d 31 33 30 31 20 55 53 41 2e 0a 0a 0a 3b 3b 3b  | ton,.;;.MA.02110-1301.USA....;;; | 
| 46ba0 |  20 43 6f 6d 6d 65 6e 74 61 72 79 3a 0a 3b 3b 20    55 74 69 6c 69 74 69 65 73 20 66 6f 72 20 64 65  | .Commentary:.;;.Utilities.for.de | 
| 46bc0 |  61 6c 69 6e 67 20 77 69 74 68 20 74 72 61 6e 73    61 63 74 69 6f 6e 20 61 6e 64 20 70 6f 73 74 69  | aling.with.transaction.and.posti | 
| 46be0 |  6e 67 20 73 74 61 74 75 73 2e 0a 0a 3b 3b 3b 20    43 6f 64 65 3a 0a 28 72 65 71 75 69 72 65 20 27  | ng.status...;;;.Code:.(require.' | 
| 46c00 |  6c 65 64 67 65 72 2d 6e 61 76 69 67 61 74 65 29    0a 28 72 65 71 75 69 72 65 20 27 6c 65 64 67 65  | ledger-navigate).(require.'ledge | 
| 46c20 |  72 2d 63 6f 6e 74 65 78 74 29 0a 0a 28 64 65 66    63 75 73 74 6f 6d 20 6c 65 64 67 65 72 2d 63 6c  | r-context)..(defcustom.ledger-cl | 
| 46c40 |  65 61 72 2d 77 68 6f 6c 65 2d 74 72 61 6e 73 61    63 74 69 6f 6e 73 20 6e 69 6c 0a 20 20 22 49 66  | ear-whole-transactions.nil..."If | 
| 46c60 |  20 6e 6f 6e 2d 6e 69 6c 2c 20 63 6c 65 61 72 20    77 68 6f 6c 65 20 74 72 61 6e 73 61 63 74 69 6f  | .non-nil,.clear.whole.transactio | 
| 46c80 |  6e 73 2c 20 6e 6f 74 20 69 6e 64 69 76 69 64 75    61 6c 20 70 6f 73 74 69 6e 67 73 2e 22 0a 20 20  | ns,.not.individual.postings."... | 
| 46ca0 |  3a 74 79 70 65 20 27 62 6f 6f 6c 65 61 6e 0a 20    20 3a 67 72 6f 75 70 20 27 6c 65 64 67 65 72 29  | :type.'boolean...:group.'ledger) | 
| 46cc0 |  0a 0a 28 64 65 66 75 6e 20 6c 65 64 67 65 72 2d    74 72 61 6e 73 61 63 74 69 6f 6e 2d 73 74 61 74  | ..(defun.ledger-transaction-stat | 
| 46ce0 |  65 20 28 29 0a 20 20 22 52 65 74 75 72 6e 20 74    68 65 20 73 74 61 74 65 20 6f 66 20 74 68 65 20  | e.()..."Return.the.state.of.the. | 
| 46d00 |  74 72 61 6e 73 61 63 74 69 6f 6e 20 61 74 20 70    6f 69 6e 74 2e 22 0a 20 20 28 73 61 76 65 2d 65  | transaction.at.point."...(save-e | 
| 46d20 |  78 63 75 72 73 69 6f 6e 0a 20 20 20 20 28 77 68    65 6e 20 28 6f 72 20 28 6c 6f 6f 6b 69 6e 67 2d  | xcursion.....(when.(or.(looking- | 
| 46d40 |  61 74 20 22 5e 5b 30 2d 39 5d 22 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 72 65 2d 73  | at."^[0-9]")...............(re-s | 
| 46d60 |  65 61 72 63 68 2d 62 61 63 6b 77 61 72 64 20 22    5e 5b 30 2d 39 5d 22 20 6e 69 6c 20 74 29 29 0a  | earch-backward."^[0-9]".nil.t)). | 
| 46d80 |  20 20 20 20 20 20 28 73 6b 69 70 2d 63 68 61 72    73 2d 66 6f 72 77 61 72 64 20 22 30 2d 39 2e 2f  | ......(skip-chars-forward."0-9./ | 
| 46da0 |  3d 5c 5c 2d 22 29 0a 20 20 20 20 20 20 28 73 6b    69 70 2d 73 79 6e 74 61 78 2d 66 6f 72 77 61 72  | =\\-").......(skip-syntax-forwar | 
| 46dc0 |  64 20 22 20 22 29 0a 20 20 20 20 20 20 28 63 6f    6e 64 20 28 28 6c 6f 6f 6b 69 6e 67 2d 61 74 20  | d.".").......(cond.((looking-at. | 
| 46de0 |  22 21 5c 5c 73 2d 2a 22 29 20 27 70 65 6e 64 69    6e 67 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | "!\\s-*").'pending)............. | 
| 46e00 |  28 28 6c 6f 6f 6b 69 6e 67 2d 61 74 20 22 5c 5c    2a 5c 5c 73 2d 2a 22 29 20 27 63 6c 65 61 72 65  | ((looking-at."\\*\\s-*").'cleare | 
| 46e20 |  64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28    74 20 6e 69 6c 29 29 29 29 29 0a 0a 28 64 65 66  | d).............(t.nil)))))..(def | 
| 46e40 |  75 6e 20 6c 65 64 67 65 72 2d 70 6f 73 74 69 6e    67 2d 73 74 61 74 65 20 28 29 0a 20 20 22 52 65  | un.ledger-posting-state.()..."Re | 
| 46e60 |  74 75 72 6e 20 74 68 65 20 73 74 61 74 65 20 6f    66 20 74 68 65 20 70 6f 73 74 69 6e 67 2e 22 0a  | turn.the.state.of.the.posting.". | 
| 46e80 |  20 20 28 73 61 76 65 2d 65 78 63 75 72 73 69 6f    6e 0a 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72  | ..(save-excursion.....(goto-char | 
| 46ea0 |  20 28 6c 69 6e 65 2d 62 65 67 69 6e 6e 69 6e 67    2d 70 6f 73 69 74 69 6f 6e 29 29 0a 20 20 20 20  | .(line-beginning-position))..... | 
| 46ec0 |  28 73 6b 69 70 2d 73 79 6e 74 61 78 2d 66 6f 72    77 61 72 64 20 22 20 22 29 0a 20 20 20 20 28 63  | (skip-syntax-forward.".").....(c | 
| 46ee0 |  6f 6e 64 20 28 28 6c 6f 6f 6b 69 6e 67 2d 61 74    20 22 21 5c 5c 73 2d 2a 22 29 20 27 70 65 6e 64  | ond.((looking-at."!\\s-*").'pend | 
| 46f00 |  69 6e 67 29 0a 20 20 20 20 20 20 20 20 20 20 28    28 6c 6f 6f 6b 69 6e 67 2d 61 74 20 22 5c 5c 2a  | ing)...........((looking-at."\\* | 
| 46f20 |  5c 5c 73 2d 2a 22 29 20 27 63 6c 65 61 72 65 64    29 0a 20 20 20 20 20 20 20 20 20 20 28 74 20 28  | \\s-*").'cleared)...........(t.( | 
| 46f40 |  6c 65 64 67 65 72 2d 74 72 61 6e 73 61 63 74 69    6f 6e 2d 73 74 61 74 65 29 29 29 29 29 0a 0a 28  | ledger-transaction-state)))))..( | 
| 46f60 |  64 65 66 75 6e 20 6c 65 64 67 65 72 2d 63 68 61    72 2d 66 72 6f 6d 2d 73 74 61 74 65 20 28 73 74  | defun.ledger-char-from-state.(st | 
| 46f80 |  61 74 65 29 0a 20 20 22 52 65 74 75 72 6e 20 74    68 65 20 63 68 61 72 20 72 65 70 72 65 73 65 6e  | ate)..."Return.the.char.represen | 
| 46fa0 |  74 61 74 69 6f 6e 20 6f 66 20 53 54 41 54 45 2e    22 0a 20 20 28 69 66 20 73 74 61 74 65 0a 20 20  | tation.of.STATE."...(if.state... | 
| 46fc0 |  20 20 20 20 28 69 66 20 28 65 71 20 73 74 61 74    65 20 27 70 65 6e 64 69 6e 67 29 0a 20 20 20 20  | ....(if.(eq.state.'pending)..... | 
| 46fe0 |  20 20 20 20 20 20 22 21 22 0a 20 20 20 20 20 20    20 20 22 2a 22 29 0a 20 20 20 20 22 22 29 29 0a  | ......"!"........."*")....."")). | 
| 47000 |  0a 28 64 65 66 75 6e 20 6c 65 64 67 65 72 2d 73    74 61 74 65 2d 66 72 6f 6d 2d 63 68 61 72 20 28  | .(defun.ledger-state-from-char.( | 
| 47020 |  73 74 61 74 65 2d 63 68 61 72 29 0a 20 20 22 47    65 74 20 73 74 61 74 65 20 66 72 6f 6d 20 53 54  | state-char)..."Get.state.from.ST | 
| 47040 |  41 54 45 2d 43 48 41 52 2e 22 0a 20 20 28 63 6f    6e 64 20 28 28 65 71 6c 20 73 74 61 74 65 2d 63  | ATE-CHAR."...(cond.((eql.state-c | 
| 47060 |  68 61 72 20 3f 5c 21 29 20 27 70 65 6e 64 69 6e    67 29 0a 20 20 20 20 20 20 20 20 28 28 65 71 6c  | har.?\!).'pending).........((eql | 
| 47080 |  20 73 74 61 74 65 2d 63 68 61 72 20 3f 5c 2a 29    20 27 63 6c 65 61 72 65 64 29 0a 20 20 20 20 20  | .state-char.?\*).'cleared)...... | 
| 470a0 |  20 20 20 28 28 65 71 6c 20 73 74 61 74 65 2d 63    68 61 72 20 3f 5c 3b 29 20 27 63 6f 6d 6d 65 6e  | ...((eql.state-char.?\;).'commen | 
| 470c0 |  74 29 0a 20 20 20 20 20 20 20 20 28 74 20 6e 69    6c 29 29 29 0a 0a 0a 28 64 65 66 75 6e 20 6c 65  | t).........(t.nil)))...(defun.le | 
| 470e0 |  64 67 65 72 2d 73 74 61 74 65 2d 66 72 6f 6d 2d    73 74 72 69 6e 67 20 28 73 74 61 74 65 2d 73 74  | dger-state-from-string.(state-st | 
| 47100 |  72 69 6e 67 29 0a 20 20 22 47 65 74 20 73 74 61    74 65 20 66 72 6f 6d 20 53 54 41 54 45 2d 53 54  | ring)..."Get.state.from.STATE-ST | 
| 47120 |  52 49 4e 47 2e 22 0a 20 20 28 77 68 65 6e 20 73    74 61 74 65 2d 73 74 72 69 6e 67 0a 20 20 20 20  | RING."...(when.state-string..... | 
| 47140 |  28 63 6f 6e 64 0a 20 20 20 20 20 28 28 73 74 72    69 6e 67 2d 6d 61 74 63 68 20 22 21 22 20 73 74  | (cond......((string-match."!".st | 
| 47160 |  61 74 65 2d 73 74 72 69 6e 67 29 20 27 70 65 6e    64 69 6e 67 29 0a 20 20 20 20 20 28 28 73 74 72  | ate-string).'pending)......((str | 
| 47180 |  69 6e 67 2d 6d 61 74 63 68 20 22 5c 5c 2a 22 20    73 74 61 74 65 2d 73 74 72 69 6e 67 29 20 27 63  | ing-match."\\*".state-string).'c | 
| 471a0 |  6c 65 61 72 65 64 29 0a 20 20 20 20 20 28 28 73    74 72 69 6e 67 2d 6d 61 74 63 68 20 22 3b 22 20  | leared)......((string-match.";". | 
| 471c0 |  73 74 61 74 65 2d 73 74 72 69 6e 67 29 20 27 63    6f 6d 6d 65 6e 74 29 0a 20 20 20 20 20 28 74 20  | state-string).'comment)......(t. | 
| 471e0 |  6e 69 6c 29 29 29 29 0a 0a 28 64 65 66 75 6e 20    6c 65 64 67 65 72 2d 74 6f 67 67 6c 65 2d 63 75  | nil))))..(defun.ledger-toggle-cu | 
| 47200 |  72 72 65 6e 74 2d 70 6f 73 74 69 6e 67 20 28 26    6f 70 74 69 6f 6e 61 6c 20 73 74 79 6c 65 29 0a  | rrent-posting.(&optional.style). | 
| 47220 |  20 20 22 54 6f 67 67 6c 65 20 74 68 65 20 63 6c    65 61 72 65 64 20 73 74 61 74 75 73 20 6f 66 20  | .."Toggle.the.cleared.status.of. | 
| 47240 |  74 68 65 20 74 72 61 6e 73 61 63 74 69 6f 6e 20    75 6e 64 65 72 20 70 6f 69 6e 74 2e 0a 4f 70 74  | the.transaction.under.point..Opt | 
| 47260 |  69 6f 6e 61 6c 20 61 72 67 75 6d 65 6e 74 20 53    54 59 4c 45 20 6d 61 79 20 62 65 20 60 70 65 6e  | ional.argument.STYLE.may.be.`pen | 
| 47280 |  64 69 6e 67 27 20 6f 72 20 60 63 6c 65 61 72 65    64 27 2c 20 64 65 70 65 6e 64 69 6e 67 0a 6f 6e  | ding'.or.`cleared',.depending.on | 
| 472a0 |  20 77 68 69 63 68 20 74 79 70 65 20 6f 66 20 73    74 61 74 75 73 20 74 68 65 20 63 61 6c 6c 65 72  | .which.type.of.status.the.caller | 
| 472c0 |  20 77 69 73 68 65 73 20 74 6f 20 69 6e 64 69 63    61 74 65 20 28 64 65 66 61 75 6c 74 20 69 73 0a  | .wishes.to.indicate.(default.is. | 
| 472e0 |  60 63 6c 65 61 72 65 64 27 29 2e 20 20 52 65 74    75 72 6e 73 20 74 68 65 20 6e 65 77 20 73 74 61  | `cleared')...Returns.the.new.sta | 
| 47300 |  74 75 73 20 61 73 20 60 70 65 6e 64 69 6e 67 27    20 60 63 6c 65 61 72 65 64 27 20 6f 72 20 6e 69  | tus.as.`pending'.`cleared'.or.ni | 
| 47320 |  6c 2e 0a 54 68 69 73 20 66 75 6e 63 74 69 6f 6e    20 69 73 20 72 61 74 68 65 72 20 63 6f 6d 70 6c  | l..This.function.is.rather.compl | 
| 47340 |  69 63 61 74 65 64 20 62 65 63 61 75 73 65 20 69    74 20 6d 75 73 74 20 70 72 65 73 65 72 76 65 20  | icated.because.it.must.preserve. | 
| 47360 |  62 6f 74 68 0a 74 68 65 20 6f 76 65 72 61 6c 6c    20 66 6f 72 6d 61 74 74 69 6e 67 20 6f 66 20 74  | both.the.overall.formatting.of.t | 
| 47380 |  68 65 20 6c 65 64 67 65 72 20 78 61 63 74 2c 20    61 73 20 77 65 6c 6c 20 61 73 20 65 6e 73 75 72  | he.ledger.xact,.as.well.as.ensur | 
| 473a0 |  69 6e 67 0a 74 68 61 74 20 74 68 65 20 6d 6f 73    74 20 6d 69 6e 69 6d 61 6c 20 64 69 73 70 6c 61  | ing.that.the.most.minimal.displa | 
| 473c0 |  79 20 66 6f 72 6d 61 74 20 69 73 20 75 73 65 64    2e 20 20 54 68 69 73 20 63 6f 75 6c 64 20 62 65  | y.format.is.used...This.could.be | 
| 473e0 |  0a 61 63 68 69 65 76 65 64 20 6d 6f 72 65 20 63    65 72 74 61 69 6e 6c 79 20 62 79 20 70 61 73 73  | .achieved.more.certainly.by.pass | 
| 47400 |  69 6e 67 20 74 68 65 20 78 61 63 74 20 74 6f 20    6c 65 64 67 65 72 20 66 6f 72 0a 66 6f 72 6d 61  | ing.the.xact.to.ledger.for.forma | 
| 47420 |  74 74 69 6e 67 2c 20 62 75 74 20 64 6f 69 6e 67    20 73 6f 20 63 61 75 73 65 73 20 69 6e 6c 69 6e  | tting,.but.doing.so.causes.inlin | 
| 47440 |  65 20 6d 61 74 68 20 65 78 70 72 65 73 73 69 6f    6e 73 20 74 6f 20 62 65 0a 64 72 6f 70 70 65 64  | e.math.expressions.to.be.dropped | 
| 47460 |  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 62 6f 75 6e  | ."...(interactive)...(let.((boun | 
| 47480 |  64 73 20 28 6c 65 64 67 65 72 2d 6e 61 76 69 67    61 74 65 2d 66 69 6e 64 2d 78 61 63 74 2d 65 78  | ds.(ledger-navigate-find-xact-ex | 
| 474a0 |  74 65 6e 74 73 20 28 70 6f 69 6e 74 29 29 29 0a    20 20 20 20 20 20 20 20 6e 65 77 2d 73 74 61 74  | tents.(point))).........new-stat | 
| 474c0 |  75 73 20 63 75 72 2d 73 74 61 74 75 73 29 0a 20    20 20 20 3b 3b 20 55 6e 63 6f 6d 70 61 63 74 20  | us.cur-status).....;;.Uncompact. | 
| 474e0 |  74 68 65 20 78 61 63 74 2c 20 74 6f 20 6d 61 6b    65 20 69 74 20 65 61 73 69 65 72 20 74 6f 20 74  | the.xact,.to.make.it.easier.to.t | 
| 47500 |  6f 67 67 6c 65 20 74 68 65 0a 20 20 20 20 3b 3b    20 74 72 61 6e 73 61 63 74 69 6f 6e 0a 20 20 20  | oggle.the.....;;.transaction.... | 
| 47520 |  20 28 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e    20 20 3b 3b 20 74 68 69 73 20 65 78 63 75 72 73  | .(save-excursion..;;.this.excurs | 
| 47540 |  69 6f 6e 20 63 68 65 63 6b 73 20 73 74 61 74 65    20 6f 66 20 65 6e 74 69 72 65 0a 20 20 20 20 20  | ion.checks.state.of.entire...... | 
| 47560 |  20 3b 3b 20 74 72 61 6e 73 61 63 74 69 6f 6e 20    61 6e 64 20 75 6e 63 6c 65 61 72 73 20 69 66 20  | .;;.transaction.and.unclears.if. | 
| 47580 |  6d 61 72 6b 65 64 0a 20 20 20 20 20 20 28 67 6f    74 6f 2d 63 68 61 72 20 28 63 61 72 20 62 6f 75  | marked.......(goto-char.(car.bou | 
| 475a0 |  6e 64 73 29 29 20 20 3b 3b 20 62 65 67 69 6e 6e    69 6e 67 20 6f 66 20 78 61 63 74 0a 20 20 20 20  | nds))..;;.beginning.of.xact..... | 
| 475c0 |  20 20 28 73 6b 69 70 2d 63 68 61 72 73 2d 66 6f    72 77 61 72 64 20 22 30 2d 39 2e 2f 3d 5c 5c 2d  | ..(skip-chars-forward."0-9./=\\- | 
| 475e0 |  22 29 20 3b 3b 20 73 6b 69 70 20 74 68 65 20 64    61 74 65 0a 20 20 20 20 20 20 28 73 6b 69 70 2d  | ").;;.skip.the.date.......(skip- | 
| 47600 |  63 68 61 72 73 2d 66 6f 72 77 61 72 64 20 22 20    5c 74 22 29 20 3b 3b 20 73 6b 69 70 20 74 68 65  | chars-forward.".\t").;;.skip.the | 
| 47620 |  20 77 68 69 74 65 20 73 70 61 63 65 20 61 66 74    65 72 20 74 68 65 20 64 61 74 65 0a 20 20 20 20  | .white.space.after.the.date..... | 
| 47640 |  20 20 28 73 65 74 71 20 63 75 72 2d 73 74 61 74    75 73 20 28 61 6e 64 20 28 6d 65 6d 62 65 72 20  | ..(setq.cur-status.(and.(member. | 
| 47660 |  28 63 68 61 72 2d 61 66 74 65 72 29 20 27 28 3f    5c 2a 20 3f 5c 21 29 29 0a 20 20 20 20 20 20 20  | (char-after).'(?\*.?\!))........ | 
| 47680 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 6c 65 64 67 65 72 2d 73 74 61  | .....................(ledger-sta | 
| 476a0 |  74 65 2d 66 72 6f 6d 2d 63 68 61 72 20 28 63 68    61 72 2d 61 66 74 65 72 29 29 29 29 0a 20 20 20  | te-from-char.(char-after)))).... | 
| 476c0 |  20 20 20 3b 3b 69 66 20 63 75 72 2d 73 74 61 74    75 73 20 69 66 20 21 2c 20 6f 72 20 2a 20 74 68  | ...;;if.cur-status.if.!,.or.*.th | 
| 476e0 |  65 6e 20 64 65 6c 65 74 65 20 74 68 65 20 6d 61    72 6b 65 72 0a 20 20 20 20 20 20 28 77 68 65 6e  | en.delete.the.marker.......(when | 
| 47700 |  20 63 75 72 2d 73 74 61 74 75 73 0a 20 20 20 20    20 20 20 20 28 6c 65 74 20 28 28 68 65 72 65 20  | .cur-status.........(let.((here. | 
| 47720 |  28 70 6f 69 6e 74 29 29 29 0a 20 20 20 20 20 20    20 20 20 20 28 73 6b 69 70 2d 63 68 61 72 73 2d  | (point)))...........(skip-chars- | 
| 47740 |  66 6f 72 77 61 72 64 20 22 2a 21 20 22 29 0a 20    20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28  | forward."*!.")...........(let.(( | 
| 47760 |  77 69 64 74 68 20 28 2d 20 28 70 6f 69 6e 74 29    20 68 65 72 65 29 29 29 0a 20 20 20 20 20 20 20  | width.(-.(point).here)))........ | 
| 47780 |  20 20 20 20 20 28 77 68 65 6e 20 28 3e 20 77 69    64 74 68 20 30 29 0a 20 20 20 20 20 20 20 20 20  | .....(when.(>.width.0).......... | 
| 477a0 |  20 20 20 20 20 28 64 65 6c 65 74 65 2d 72 65 67    69 6f 6e 20 68 65 72 65 20 28 70 6f 69 6e 74 29  | .....(delete-region.here.(point) | 
| 477c0 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 69 66 20 28 73 65 61 72 63 68 2d 66 6f 72 77  | )...............(if.(search-forw | 
| 477e0 |  61 72 64 20 22 20 20 22 20 28 6c 69 6e 65 2d 65    6e 64 2d 70 6f 73 69 74 69 6f 6e 29 20 74 29 0a  | ard."..".(line-end-position).t). | 
| 47800 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 69 6e 73 65 72 74 20 28 6d 61 6b 65 2d  | ..................(insert.(make- | 
| 47820 |  73 74 72 69 6e 67 20 77 69 64 74 68 20 3f 20 29    29 29 29 29 29 0a 20 20 20 20 20 20 20 20 28 66  | string.width.?.)))))).........(f | 
| 47840 |  6f 72 77 61 72 64 2d 6c 69 6e 65 29 0a 20 20 20    20 20 20 20 20 3b 3b 20 53 68 69 66 74 20 74 68  | orward-line).........;;.Shift.th | 
| 47860 |  65 20 63 6c 65 61 72 65 64 2f 70 65 6e 64 69 6e    67 20 73 74 61 74 75 73 20 74 6f 20 74 68 65 20  | e.cleared/pending.status.to.the. | 
| 47880 |  70 6f 73 74 69 6e 67 73 0a 20 20 20 20 20 20 20    20 28 77 68 69 6c 65 20 28 6c 6f 6f 6b 69 6e 67  | postings.........(while.(looking | 
| 478a0 |  2d 61 74 20 22 5b 20 5c 74 5d 22 29 0a 20 20 20    20 20 20 20 20 20 20 28 73 6b 69 70 2d 63 68 61  | -at."[.\t]")...........(skip-cha | 
| 478c0 |  72 73 2d 66 6f 72 77 61 72 64 20 22 20 5c 74 22    29 0a 20 20 20 20 20 20 20 20 20 20 28 77 68 65  | rs-forward.".\t")...........(whe | 
| 478e0 |  6e 20 28 6e 6f 74 20 28 65 71 20 28 6c 65 64 67    65 72 2d 73 74 61 74 65 2d 66 72 6f 6d 2d 63 68  | n.(not.(eq.(ledger-state-from-ch | 
| 47900 |  61 72 20 28 63 68 61 72 2d 61 66 74 65 72 29 29    20 27 63 6f 6d 6d 65 6e 74 29 29 0a 20 20 20 20  | ar.(char-after)).'comment))..... | 
| 47920 |  20 20 20 20 20 20 20 20 28 69 6e 73 65 72 74 20    28 6c 65 64 67 65 72 2d 63 68 61 72 2d 66 72 6f  | ........(insert.(ledger-char-fro | 
| 47940 |  6d 2d 73 74 61 74 65 20 63 75 72 2d 73 74 61 74    75 73 29 20 22 20 22 29 0a 20 20 20 20 20 20 20  | m-state.cur-status).".")........ | 
| 47960 |  20 20 20 20 20 28 69 66 20 28 61 6e 64 20 28 73    65 61 72 63 68 2d 66 6f 72 77 61 72 64 20 22 20  | .....(if.(and.(search-forward.". | 
| 47980 |  20 22 20 28 6c 69 6e 65 2d 65 6e 64 2d 70 6f 73    69 74 69 6f 6e 29 20 74 29 0a 20 20 20 20 20 20  | .".(line-end-position).t)....... | 
| 479a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    6c 6f 6f 6b 69 6e 67 2d 61 74 20 22 20 20 22 29  | ...............(looking-at."..") | 
| 479c0 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 64 65 6c 65 74 65 2d 63 68 61 72 20 32  | ).................(delete-char.2 | 
| 479e0 |  29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 66    6f 72 77 61 72 64 2d 6c 69 6e 65 29 29 0a 20 20  | )))...........(forward-line))... | 
| 47a00 |  20 20 20 20 20 20 28 73 65 74 71 20 6e 65 77 2d    73 74 61 74 75 73 20 6e 69 6c 29 29 29 0a 0a 20  | ......(setq.new-status.nil)))... | 
| 47a20 |  20 20 20 3b 3b 74 68 69 73 20 65 78 63 75 72 73    69 6f 6e 20 74 6f 67 67 6c 65 73 20 74 68 65 20  | ...;;this.excursion.toggles.the. | 
| 47a40 |  70 6f 73 74 69 6e 67 20 73 74 61 74 75 73 0a 20    20 20 20 28 73 61 76 65 2d 65 78 63 75 72 73 69  | posting.status.....(save-excursi | 
| 47a60 |  6f 6e 0a 20 20 20 20 20 20 28 73 65 74 71 20 69    6e 68 69 62 69 74 2d 6d 6f 64 69 66 69 63 61 74  | on.......(setq.inhibit-modificat | 
| 47a80 |  69 6f 6e 2d 68 6f 6f 6b 73 20 74 29 0a 0a 20 20    20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28  | ion-hooks.t)........(goto-char.( | 
| 47aa0 |  6c 69 6e 65 2d 62 65 67 69 6e 6e 69 6e 67 2d 70    6f 73 69 74 69 6f 6e 29 29 0a 20 20 20 20 20 20  | line-beginning-position))....... | 
| 47ac0 |  28 77 68 65 6e 20 28 6c 6f 6f 6b 69 6e 67 2d 61    74 20 22 5b 20 5c 74 5d 22 29 0a 20 20 20 20 20  | (when.(looking-at."[.\t]")...... | 
| 47ae0 |  20 20 20 28 73 6b 69 70 2d 63 68 61 72 73 2d 66    6f 72 77 61 72 64 20 22 20 5c 74 22 29 0a 20 20  | ...(skip-chars-forward.".\t")... | 
| 47b00 |  20 20 20 20 20 20 28 6c 65 74 20 28 28 68 65 72    65 20 28 70 6f 69 6e 74 29 29 0a 20 20 20 20 20  | ......(let.((here.(point))...... | 
| 47b20 |  20 20 20 20 20 20 20 20 20 28 63 75 72 2d 73 74    61 74 75 73 20 28 6c 65 64 67 65 72 2d 73 74 61  | .........(cur-status.(ledger-sta | 
| 47b40 |  74 65 2d 66 72 6f 6d 2d 63 68 61 72 20 28 63 68    61 72 2d 61 66 74 65 72 29 29 29 29 0a 20 20 20  | te-from-char.(char-after)))).... | 
| 47b60 |  20 20 20 20 20 20 20 28 73 6b 69 70 2d 63 68 61    72 73 2d 66 6f 72 77 61 72 64 20 22 2a 21 20 22  | .......(skip-chars-forward."*!." | 
| 47b80 |  29 0a 20 20 20 20 20 20 20 20 20 20 28 6c 65 74    20 28 28 77 69 64 74 68 20 28 2d 20 28 70 6f 69  | )...........(let.((width.(-.(poi | 
| 47ba0 |  6e 74 29 20 68 65 72 65 29 29 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 3e  | nt).here))).............(when.(> | 
| 47bc0 |  20 77 69 64 74 68 20 30 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 28 64 65 6c 65 74 65 2d  | .width.0)...............(delete- | 
| 47be0 |  72 65 67 69 6f 6e 20 68 65 72 65 20 28 70 6f 69    6e 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20  | region.here.(point))............ | 
| 47c00 |  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 20 20 20 20 20  | ...(save-excursion.............. | 
| 47c20 |  20 20 20 28 69 66 20 28 73 65 61 72 63 68 2d 66    6f 72 77 61 72 64 20 22 20 20 22 20 28 6c 69 6e  | ...(if.(search-forward."..".(lin | 
| 47c40 |  65 2d 65 6e 64 2d 70 6f 73 69 74 69 6f 6e 29 20    74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | e-end-position).t).............. | 
| 47c60 |  20 20 20 20 20 20 20 28 69 6e 73 65 72 74 20 28    6d 61 6b 65 2d 73 74 72 69 6e 67 20 77 69 64 74  | .......(insert.(make-string.widt | 
| 47c80 |  68 20 3f 20 29 29 29 29 29 29 0a 20 20 20 20 20    20 20 20 20 20 28 6c 65 74 20 28 69 6e 73 65 72  | h.?.))))))...........(let.(inser | 
| 47ca0 |  74 65 64 29 0a 20 20 20 20 20 20 20 20 20 20 20    20 28 69 66 20 63 75 72 2d 73 74 61 74 75 73 0a  | ted).............(if.cur-status. | 
| 47cc0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 69 66 20 28 61 6e 64 20 73 74 79 6c 65 20 28  | ................(if.(and.style.( | 
| 47ce0 |  65 71 20 73 74 79 6c 65 20 27 63 6c 65 61 72 65    64 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | eq.style.'cleared))............. | 
| 47d00 |  20 20 20 20 20 20 20 20 28 70 72 6f 67 6e 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ........(progn.................. | 
| 47d20 |  20 20 20 20 20 28 69 6e 73 65 72 74 20 20 22 2a    20 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | .....(insert.."*.")............. | 
| 47d40 |  20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20    69 6e 73 65 72 74 65 64 20 27 63 6c 65 61 72 65  | ..........(setq.inserted.'cleare | 
| 47d60 |  64 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 69 66 20 28 61 6e 64 20 73 74 79 6c  | d)))...............(if.(and.styl | 
| 47d80 |  65 20 28 65 71 20 73 74 79 6c 65 20 27 70 65 6e    64 69 6e 67 29 29 0a 20 20 20 20 20 20 20 20 20  | e.(eq.style.'pending)).......... | 
| 47da0 |  20 20 20 20 20 20 20 20 20 28 70 72 6f 67 6e 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .........(progn................. | 
| 47dc0 |  20 20 20 20 28 69 6e 73 65 72 74 20 20 22 21 20    22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | ....(insert.."!.").............. | 
| 47de0 |  20 20 20 20 20 20 20 28 73 65 74 71 20 69 6e 73    65 72 74 65 64 20 27 70 65 6e 64 69 6e 67 29 29  | .......(setq.inserted.'pending)) | 
| 47e00 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 70 72 6f 67 6e 0a 20 20 20 20 20 20 20 20  | .................(progn......... | 
| 47e20 |  20 20 20 20 20 20 20 20 20 20 28 69 6e 73 65 72    74 20 20 22 2a 20 22 29 0a 20 20 20 20 20 20 20  | ..........(insert.."*.")........ | 
| 47e40 |  20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71    20 69 6e 73 65 72 74 65 64 20 27 63 6c 65 61 72  | ...........(setq.inserted.'clear | 
| 47e60 |  65 64 29 29 29 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 28 69 66 20 28 61 6e 64 20 69 6e 73 65  | ed)))).............(if.(and.inse | 
| 47e80 |  72 74 65 64 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 72 65 2d 73 65  | rted......................(re-se | 
| 47ea0 |  61 72 63 68 2d 66 6f 72 77 61 72 64 20 22 5c 5c    28 5c 74 5c 5c 7c 20 5b 20 5c 74 5d 5c 5c 29 22  | arch-forward."\\(\t\\|.[.\t]\\)" | 
| 47ec0 |  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  | ................................ | 
| 47ee0 |  20 20 20 20 20 20 20 20 20 28 6c 69 6e 65 2d 65    6e 64 2d 70 6f 73 69 74 69 6f 6e 29 20 74 29 29  | .........(line-end-position).t)) | 
| 47f00 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 63 6f 6e 64 0a 20 20 20 20 20 20 20 20 20  | .................(cond.......... | 
| 47f20 |  20 20 20 20 20 20 20 20 28 28 6c 6f 6f 6b 69 6e    67 2d 61 74 20 22 5c 74 22 29 0a 20 20 20 20 20  | ........((looking-at."\t")...... | 
| 47f40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 65    6c 65 74 65 2d 63 68 61 72 20 31 29 29 0a 20 20  | .............(delete-char.1))... | 
| 47f60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    28 6c 6f 6f 6b 69 6e 67 2d 61 74 20 22 20 5b 20  | ...............((looking-at.".[. | 
| 47f80 |  5c 74 5d 22 29 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 28 64 65 6c 65 74 65 2d  | \t]")...................(delete- | 
| 47fa0 |  63 68 61 72 20 32 29 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 28 6c 6f 6f 6b  | char.2))..................((look | 
| 47fc0 |  69 6e 67 2d 61 74 20 22 20 22 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64  | ing-at.".")...................(d | 
| 47fe0 |  65 6c 65 74 65 2d 63 68 61 72 20 31 29 29 29 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65  | elete-char.1)))).............(se | 
| 48000 |  74 71 20 6e 65 77 2d 73 74 61 74 75 73 20 69 6e    73 65 72 74 65 64 29 29 29 29 0a 20 20 20 20 20  | tq.new-status.inserted))))...... | 
| 48020 |  20 28 73 65 74 71 20 69 6e 68 69 62 69 74 2d 6d    6f 64 69 66 69 63 61 74 69 6f 6e 2d 68 6f 6f 6b  | .(setq.inhibit-modification-hook | 
| 48040 |  73 20 6e 69 6c 29 29 0a 0a 20 20 20 20 3b 3b 20    54 68 69 73 20 65 78 63 75 72 73 69 6f 6e 20 63  | s.nil))......;;.This.excursion.c | 
| 48060 |  6c 65 61 6e 73 20 75 70 20 74 68 65 20 78 61 63    74 20 73 6f 20 74 68 61 74 20 69 74 20 64 69 73  | leans.up.the.xact.so.that.it.dis | 
| 48080 |  70 6c 61 79 73 0a 20 20 20 20 3b 3b 20 6d 69 6e    69 6d 61 6c 6c 79 2e 20 20 54 68 69 73 20 6d 65  | plays.....;;.minimally...This.me | 
| 480a0 |  61 6e 73 20 74 68 61 74 20 69 66 20 61 6c 6c 20    70 6f 73 74 73 20 61 72 65 20 63 6c 65 61 72 65  | ans.that.if.all.posts.are.cleare | 
| 480c0 |  64 2c 20 72 65 6d 6f 76 65 0a 20 20 20 20 3b 3b    20 74 68 65 20 6d 61 72 6b 73 20 61 6e 64 20 63  | d,.remove.....;;.the.marks.and.c | 
| 480e0 |  6c 65 61 72 20 74 68 65 20 65 6e 74 69 72 65 20    74 72 61 6e 73 61 63 74 69 6f 6e 2e 0a 20 20 20  | lear.the.entire.transaction..... | 
| 48100 |  20 28 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e    0a 20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68 61  | .(save-excursion.......(goto-cha | 
| 48120 |  72 20 28 63 61 72 20 62 6f 75 6e 64 73 29 29 0a    20 20 20 20 20 20 28 66 6f 72 77 61 72 64 2d 6c  | r.(car.bounds)).......(forward-l | 
| 48140 |  69 6e 65 29 0a 20 20 20 20 20 20 28 6c 65 74 20    28 28 66 69 72 73 74 20 74 29 0a 20 20 20 20 20  | ine).......(let.((first.t)...... | 
| 48160 |  20 20 20 20 20 20 20 28 73 74 61 74 65 20 6e 69    6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28  | .......(state.nil).............( | 
| 48180 |  68 65 74 65 72 6f 20 6e 69 6c 29 29 0a 20 20 20    20 20 20 20 20 28 77 68 69 6c 65 20 28 61 6e 64  | hetero.nil)).........(while.(and | 
| 481a0 |  20 28 6e 6f 74 20 68 65 74 65 72 6f 29 20 28 6c    6f 6f 6b 69 6e 67 2d 61 74 20 22 5b 20 5c 74 5d  | .(not.hetero).(looking-at."[.\t] | 
| 481c0 |  22 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 73    6b 69 70 2d 63 68 61 72 73 2d 66 6f 72 77 61 72  | "))...........(skip-chars-forwar | 
| 481e0 |  64 20 22 20 5c 74 22 29 0a 20 20 20 20 20 20 20    20 20 20 28 6c 65 74 20 28 28 63 75 72 2d 73 74  | d.".\t")...........(let.((cur-st | 
| 48200 |  61 74 75 73 20 28 6c 65 64 67 65 72 2d 73 74 61    74 65 2d 66 72 6f 6d 2d 63 68 61 72 20 28 63 68  | atus.(ledger-state-from-char.(ch | 
| 48220 |  61 72 2d 61 66 74 65 72 29 29 29 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 28 69 66 20 28 6e 6f  | ar-after)))).............(if.(no | 
| 48240 |  74 20 28 65 71 20 63 75 72 2d 73 74 61 74 75 73    20 27 63 6f 6d 6d 65 6e 74 29 29 0a 20 20 20 20  | t.(eq.cur-status.'comment))..... | 
| 48260 |  20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20    66 69 72 73 74 0a 20 20 20 20 20 20 20 20 20 20  | ............(if.first........... | 
| 48280 |  20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20    73 74 61 74 65 20 63 75 72 2d 73 74 61 74 75 73  | ..........(setq.state.cur-status | 
| 482a0 |  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 69 72 73 74  | ...........................first | 
| 482c0 |  20 6e 69 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 6e 6f 74  | .nil)...................(if.(not | 
| 482e0 |  20 28 65 71 20 73 74 61 74 65 20 63 75 72 2d 73    74 61 74 75 73 29 29 0a 20 20 20 20 20 20 20 20  | .(eq.state.cur-status))......... | 
| 48300 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73    65 74 71 20 68 65 74 65 72 6f 20 74 29 29 29 29  | ..............(setq.hetero.t)))) | 
| 48320 |  29 0a 20 20 20 20 20 20 20 20 20 20 28 66 6f 72    77 61 72 64 2d 6c 69 6e 65 29 29 0a 20 20 20 20  | )...........(forward-line))..... | 
| 48340 |  20 20 20 20 28 77 68 65 6e 20 28 61 6e 64 20 28    6e 6f 74 20 68 65 74 65 72 6f 29 20 28 6e 6f 74  | ....(when.(and.(not.hetero).(not | 
| 48360 |  20 28 65 71 20 73 74 61 74 65 20 6e 69 6c 29 29    29 0a 20 20 20 20 20 20 20 20 20 20 28 67 6f 74  | .(eq.state.nil)))...........(got | 
| 48380 |  6f 2d 63 68 61 72 20 28 63 61 72 20 62 6f 75 6e    64 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 28  | o-char.(car.bounds))...........( | 
| 483a0 |  66 6f 72 77 61 72 64 2d 6c 69 6e 65 29 0a 20 20    20 20 20 20 20 20 20 20 28 77 68 69 6c 65 20 28  | forward-line)...........(while.( | 
| 483c0 |  6c 6f 6f 6b 69 6e 67 2d 61 74 20 22 5b 20 5c 74    5d 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | looking-at."[.\t]")............. | 
| 483e0 |  28 73 6b 69 70 2d 63 68 61 72 73 2d 66 6f 72 77    61 72 64 20 22 20 5c 74 22 29 0a 20 20 20 20 20  | (skip-chars-forward.".\t")...... | 
| 48400 |  20 20 20 20 20 20 20 28 6c 65 74 20 28 28 68 65    72 65 20 28 70 6f 69 6e 74 29 29 29 0a 20 20 20  | .......(let.((here.(point))).... | 
| 48420 |  20 20 20 20 20 20 20 20 20 20 20 28 73 6b 69 70    2d 63 68 61 72 73 2d 66 6f 72 77 61 72 64 20 22  | ...........(skip-chars-forward." | 
| 48440 |  2a 21 20 22 29 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 28 6c 65 74 20 28 28 77 69 64 74 68  | *!.")...............(let.((width | 
| 48460 |  20 28 2d 20 28 70 6f 69 6e 74 29 20 68 65 72 65    29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | .(-.(point).here)))............. | 
| 48480 |  20 20 20 20 28 77 68 65 6e 20 28 3e 20 77 69 64    74 68 20 30 29 0a 20 20 20 20 20 20 20 20 20 20  | ....(when.(>.width.0)........... | 
| 484a0 |  20 20 20 20 20 20 20 20 28 64 65 6c 65 74 65 2d    72 65 67 69 6f 6e 20 68 65 72 65 20 28 70 6f 69  | ........(delete-region.here.(poi | 
| 484c0 |  6e 74 29 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 72 65 2d 73  | nt))...................(if.(re-s | 
| 484e0 |  65 61 72 63 68 2d 66 6f 72 77 61 72 64 20 22 5c    5c 28 5c 74 5c 5c 7c 20 5b 20 5c 74 5d 5c 5c 29  | earch-forward."\\(\t\\|.[.\t]\\) | 
| 48500 |  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  | "............................... | 
| 48520 |  20 20 20 20 20 20 20 20 20 20 20 28 6c 69 6e 65    2d 65 6e 64 2d 70 6f 73 69 74 69 6f 6e 29 20 74  | ...........(line-end-position).t | 
| 48540 |  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 69 6e 73 65 72 74 20  | ).......................(insert. | 
| 48560 |  28 6d 61 6b 65 2d 73 74 72 69 6e 67 20 77 69 64    74 68 20 3f 20 29 29 29 29 29 29 0a 20 20 20 20  | (make-string.width.?.))))))..... | 
| 48580 |  20 20 20 20 20 20 20 20 28 66 6f 72 77 61 72 64    2d 6c 69 6e 65 29 29 0a 20 20 20 20 20 20 20 20  | ........(forward-line))......... | 
| 485a0 |  20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 63 61    72 20 62 6f 75 6e 64 73 29 29 0a 20 20 20 20 20  | ..(goto-char.(car.bounds))...... | 
| 485c0 |  20 20 20 20 20 28 73 6b 69 70 2d 63 68 61 72 73    2d 66 6f 72 77 61 72 64 20 22 30 2d 39 2e 2f 3d  | .....(skip-chars-forward."0-9./= | 
| 485e0 |  5c 5c 2d 22 29 20 3b 3b 20 53 6b 69 70 20 74 68    65 20 64 61 74 65 0a 20 20 20 20 20 20 20 20 20  | \\-").;;.Skip.the.date.......... | 
| 48600 |  20 28 73 6b 69 70 2d 63 68 61 72 73 2d 66 6f 72    77 61 72 64 20 22 20 5c 74 22 29 20 3b 3b 20 53  | .(skip-chars-forward.".\t").;;.S | 
| 48620 |  6b 69 70 20 74 68 65 20 77 68 69 74 65 20 73 70    61 63 65 0a 20 20 20 20 20 20 20 20 20 20 28 69  | kip.the.white.space...........(i | 
| 48640 |  6e 73 65 72 74 20 28 6c 65 64 67 65 72 2d 63 68    61 72 2d 66 72 6f 6d 2d 73 74 61 74 65 20 73 74  | nsert.(ledger-char-from-state.st | 
| 48660 |  61 74 65 29 20 22 20 22 29 0a 20 20 20 20 20 20    20 20 20 20 28 73 65 74 71 20 6e 65 77 2d 73 74  | ate).".")...........(setq.new-st | 
| 48680 |  61 74 75 73 20 73 74 61 74 65 29 0a 20 20 20 20    20 20 20 20 20 20 28 69 66 20 28 72 65 2d 73 65  | atus.state)...........(if.(re-se | 
| 486a0 |  61 72 63 68 2d 66 6f 72 77 61 72 64 20 22 5c 5c    28 5c 74 5c 5c 7c 20 5b 20 5c 74 5d 5c 5c 29 22  | arch-forward."\\(\t\\|.[.\t]\\)" | 
| 486c0 |  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  | ................................ | 
| 486e0 |  20 20 28 6c 69 6e 65 2d 65 6e 64 2d 70 6f 73 69    74 69 6f 6e 29 20 74 29 0a 20 20 20 20 20 20 20  | ..(line-end-position).t)........ | 
| 48700 |  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 28 28 6c 6f  | .......(cond................((lo | 
| 48720 |  6f 6b 69 6e 67 2d 61 74 20 22 5c 74 22 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28  | oking-at."\t").................( | 
| 48740 |  64 65 6c 65 74 65 2d 63 68 61 72 20 31 29 29 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28  | delete-char.1))................( | 
| 48760 |  28 6c 6f 6f 6b 69 6e 67 2d 61 74 20 22 20 5b 20    5c 74 5d 22 29 0a 20 20 20 20 20 20 20 20 20 20  | (looking-at.".[.\t]")........... | 
| 48780 |  20 20 20 20 20 20 28 64 65 6c 65 74 65 2d 63 68    61 72 20 32 29 29 0a 20 20 20 20 20 20 20 20 20  | ......(delete-char.2)).......... | 
| 487a0 |  20 20 20 20 20 20 28 28 6c 6f 6f 6b 69 6e 67 2d    61 74 20 22 20 22 29 0a 20 20 20 20 20 20 20 20  | ......((looking-at.".")......... | 
| 487c0 |  20 20 20 20 20 20 20 20 28 64 65 6c 65 74 65 2d    63 68 61 72 20 31 29 29 29 29 29 29 29 0a 20 20  | ........(delete-char.1)))))))... | 
| 487e0 |  20 20 6e 65 77 2d 73 74 61 74 75 73 29 29 0a 0a    28 64 65 66 75 6e 20 6c 65 64 67 65 72 2d 74 6f  | ..new-status))..(defun.ledger-to | 
| 48800 |  67 67 6c 65 2d 63 75 72 72 65 6e 74 20 28 26 6f    70 74 69 6f 6e 61 6c 20 73 74 79 6c 65 29 0a 20  | ggle-current.(&optional.style).. | 
| 48820 |  20 22 54 6f 67 67 6c 65 20 74 68 65 20 63 75 72    72 65 6e 74 20 74 68 69 6e 67 20 61 74 20 70 6f  | ."Toggle.the.current.thing.at.po | 
| 48840 |  69 6e 74 20 77 69 74 68 20 6f 70 74 69 6f 6e 61    6c 20 53 54 59 4c 45 2e 22 0a 20 20 28 69 6e 74  | int.with.optional.STYLE."...(int | 
| 48860 |  65 72 61 63 74 69 76 65 29 0a 20 20 28 6c 65 74    20 28 28 74 68 69 6e 67 20 28 6c 65 64 67 65 72  | eractive)...(let.((thing.(ledger | 
| 48880 |  2d 74 68 69 6e 67 2d 61 74 2d 70 6f 69 6e 74 29    29 29 0a 20 20 20 20 28 69 66 20 28 6f 72 20 28  | -thing-at-point))).....(if.(or.( | 
| 488a0 |  61 6e 64 20 6c 65 64 67 65 72 2d 63 6c 65 61 72    2d 77 68 6f 6c 65 2d 74 72 61 6e 73 61 63 74 69  | and.ledger-clear-whole-transacti | 
| 488c0 |  6f 6e 73 20 28 65 71 20 27 70 6f 73 74 69 6e 67    20 74 68 69 6e 67 29 29 0a 20 20 20 20 20 20 20  | ons.(eq.'posting.thing))........ | 
| 488e0 |  20 20 20 20 20 28 65 71 20 27 74 72 61 6e 73 61    63 74 69 6f 6e 20 74 68 69 6e 67 29 29 0a 20 20  | .....(eq.'transaction.thing))... | 
| 48900 |  20 20 20 20 20 20 28 6c 65 74 20 28 28 65 6e 64    20 28 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e  | ......(let.((end.(save-excursion | 
| 48920 |  20 28 6c 65 64 67 65 72 2d 6e 61 76 69 67 61 74    65 2d 65 6e 64 2d 6f 66 2d 78 61 63 74 29 20 28  | .(ledger-navigate-end-of-xact).( | 
| 48940 |  70 6f 69 6e 74 2d 6d 61 72 6b 65 72 29 29 29 29    0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 63 6c  | point-marker))))...........;;.cl | 
| 48960 |  65 61 72 20 73 74 61 74 65 20 6d 61 72 6b 69 6e    67 73 20 6f 6e 20 70 6f 73 74 69 6e 67 73 0a 20  | ear.state.markings.on.postings.. | 
| 48980 |  20 20 20 20 20 20 20 20 20 28 73 61 76 65 2d 65    78 63 75 72 73 69 6f 6e 0a 20 20 20 20 20 20 20  | .........(save-excursion........ | 
| 489a0 |  20 20 20 20 20 28 66 6f 72 77 61 72 64 2d 6c 69    6e 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | .....(forward-line)............. | 
| 489c0 |  28 62 65 67 69 6e 6e 69 6e 67 2d 6f 66 2d 6c 69    6e 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | (beginning-of-line)............. | 
| 489e0 |  28 77 68 69 6c 65 20 28 3c 20 28 70 6f 69 6e 74    29 20 65 6e 64 29 0a 20 20 20 20 20 20 20 20 20  | (while.(<.(point).end).......... | 
| 48a00 |  20 20 20 20 20 28 77 68 65 6e 20 28 6c 6f 6f 6b    69 6e 67 2d 61 74 20 22 5c 5c 73 2d 2b 5b 2a 21  | .....(when.(looking-at."\\s-+[*! | 
| 48a20 |  5d 22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 28 6c 65 64 67 65 72 2d 74 6f 67 67  | ]").................(ledger-togg | 
| 48a40 |  6c 65 2d 63 75 72 72 65 6e 74 2d 70 6f 73 74 69    6e 67 20 73 74 79 6c 65 29 29 0a 20 20 20 20 20  | le-current-posting.style))...... | 
| 48a60 |  20 20 20 20 20 20 20 20 20 28 66 6f 72 77 61 72    64 2d 6c 69 6e 65 29 29 29 0a 20 20 20 20 20 20  | .........(forward-line)))....... | 
| 48a80 |  20 20 20 20 28 73 65 74 2d 6d 61 72 6b 65 72 20    65 6e 64 20 6e 69 6c 29 0a 20 20 20 20 20 20 20  | ....(set-marker.end.nil)........ | 
| 48aa0 |  20 20 20 28 6c 65 64 67 65 72 2d 74 6f 67 67 6c    65 2d 63 75 72 72 65 6e 74 2d 74 72 61 6e 73 61  | ...(ledger-toggle-current-transa | 
| 48ac0 |  63 74 69 6f 6e 20 73 74 79 6c 65 29 29 0a 20 20    20 20 20 20 28 6c 65 64 67 65 72 2d 74 6f 67 67  | ction.style)).......(ledger-togg | 
| 48ae0 |  6c 65 2d 63 75 72 72 65 6e 74 2d 70 6f 73 74 69    6e 67 20 73 74 79 6c 65 29 29 29 29 0a 0a 28 64  | le-current-posting.style))))..(d | 
| 48b00 |  65 66 75 6e 20 6c 65 64 67 65 72 2d 74 6f 67 67    6c 65 2d 63 75 72 72 65 6e 74 2d 74 72 61 6e 73  | efun.ledger-toggle-current-trans | 
| 48b20 |  61 63 74 69 6f 6e 20 28 26 6f 70 74 69 6f 6e 61    6c 20 73 74 79 6c 65 29 0a 20 20 22 54 6f 67 67  | action.(&optional.style)..."Togg | 
| 48b40 |  6c 65 20 74 68 65 20 74 72 61 6e 73 61 63 74 69    6f 6e 20 61 74 20 70 6f 69 6e 74 20 75 73 69 6e  | le.the.transaction.at.point.usin | 
| 48b60 |  67 20 6f 70 74 69 6f 6e 61 6c 20 53 54 59 4c 45    2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76  | g.optional.STYLE."...(interactiv | 
| 48b80 |  65 29 0a 20 20 28 73 61 76 65 2d 65 78 63 75 72    73 69 6f 6e 0a 20 20 20 20 28 77 68 65 6e 20 28  | e)...(save-excursion.....(when.( | 
| 48ba0 |  6f 72 20 28 6c 6f 6f 6b 69 6e 67 2d 61 74 20 22    5e 5b 30 2d 39 5d 22 29 0a 20 20 20 20 20 20 20  | or.(looking-at."^[0-9]")........ | 
| 48bc0 |  20 20 20 20 20 20 20 28 72 65 2d 73 65 61 72 63    68 2d 62 61 63 6b 77 61 72 64 20 22 5e 5b 30 2d  | .......(re-search-backward."^[0- | 
| 48be0 |  39 5d 22 20 6e 69 6c 20 74 29 29 0a 20 20 20 20    20 20 28 73 6b 69 70 2d 63 68 61 72 73 2d 66 6f  | 9]".nil.t)).......(skip-chars-fo | 
| 48c00 |  72 77 61 72 64 20 22 30 2d 39 2e 2f 3d 5c 5c 2d    22 29 0a 20 20 20 20 20 20 28 64 65 6c 65 74 65  | rward."0-9./=\\-").......(delete | 
| 48c20 |  2d 68 6f 72 69 7a 6f 6e 74 61 6c 2d 73 70 61 63    65 29 0a 20 20 20 20 20 20 28 69 66 20 28 6f 72  | -horizontal-space).......(if.(or | 
| 48c40 |  20 28 65 71 20 28 6c 65 64 67 65 72 2d 73 74 61    74 65 2d 66 72 6f 6d 2d 63 68 61 72 20 28 63 68  | .(eq.(ledger-state-from-char.(ch | 
| 48c60 |  61 72 2d 61 66 74 65 72 29 29 20 27 70 65 6e 64    69 6e 67 29 0a 20 20 20 20 20 20 20 20 20 20 20  | ar-after)).'pending)............ | 
| 48c80 |  20 20 20 28 65 71 20 28 6c 65 64 67 65 72 2d 73    74 61 74 65 2d 66 72 6f 6d 2d 63 68 61 72 20 28  | ...(eq.(ledger-state-from-char.( | 
| 48ca0 |  63 68 61 72 2d 61 66 74 65 72 29 29 20 27 63 6c    65 61 72 65 64 29 29 0a 20 20 20 20 20 20 20 20  | char-after)).'cleared))......... | 
| 48cc0 |  20 20 28 70 72 6f 67 6e 0a 20 20 20 20 20 20 20    20 20 20 20 20 28 64 65 6c 65 74 65 2d 63 68 61  | ..(progn.............(delete-cha | 
| 48ce0 |  72 20 31 29 0a 20 20 20 20 20 20 20 20 20 20 20    20 28 77 68 65 6e 20 28 61 6e 64 20 73 74 79 6c  | r.1).............(when.(and.styl | 
| 48d00 |  65 20 28 65 71 20 73 74 79 6c 65 20 27 63 6c 65    61 72 65 64 29 29 0a 20 20 20 20 20 20 20 20 20  | e.(eq.style.'cleared)).......... | 
| 48d20 |  20 20 20 20 20 28 69 6e 73 65 72 74 20 22 20 2a    22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | .....(insert.".*").............. | 
| 48d40 |  20 27 63 6c 65 61 72 65 64 29 29 0a 20 20 20 20    20 20 20 20 28 69 66 20 28 61 6e 64 20 73 74 79  | .'cleared)).........(if.(and.sty | 
| 48d60 |  6c 65 20 28 65 71 20 73 74 79 6c 65 20 27 70 65    6e 64 69 6e 67 29 29 0a 20 20 20 20 20 20 20 20  | le.(eq.style.'pending))......... | 
| 48d80 |  20 20 20 20 28 70 72 6f 67 6e 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 28 69 6e 73 65 72 74  | ....(progn...............(insert | 
| 48da0 |  20 22 20 21 20 22 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 27 70 65 6e 64 69 6e 67 29 0a  | .".!.")...............'pending). | 
| 48dc0 |  20 20 20 20 20 20 20 20 20 20 28 70 72 6f 67 6e    0a 20 20 20 20 20 20 20 20 20 20 20 20 28 69 6e  | ..........(progn.............(in | 
| 48de0 |  73 65 72 74 20 22 20 2a 20 22 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 27 63 6c 65 61 72 65 64  | sert.".*.").............'cleared | 
| 48e00 |  29 29 29 29 29 29 0a 0a 28 70 72 6f 76 69 64 65    20 27 6c 65 64 67 65 72 2d 73 74 61 74 65 29 0a  | ))))))..(provide.'ledger-state). | 
| 48e20 |  0a 3b 3b 3b 20 6c 65 64 67 65 72 2d 73 74 61 74    65 2e 65 6c 20 65 6e 64 73 20 68 65 72 65 0a 00  | .;;;.ledger-state.el.ends.here.. | 
| 48e40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 48e60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 48e80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 48ea0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 48ec0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 48ee0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 48f00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 48f20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 48f40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 48f60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 48f80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 48fa0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 48fc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 48fe0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 49000 |  6c 65 64 67 65 72 2d 6d 6f 64 65 2d 32 30 32 34    30 34 31 36 2e 34 31 36 2f 6c 65 64 67 65 72 2d  | ledger-mode-20240416.416/ledger- | 
| 49020 |  66 6f 6e 74 73 2e 65 6c 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | fonts.el........................ | 
| 49040 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 49060 |  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 | 
| 49080 |  30 30 36 31 30 30 36 00 30 30 30 30 30 30 30 30    30 30 30 00 30 31 36 30 33 30 00 20 30 00 00 00  | 0061006.00000000000.016030..0... | 
| 490a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 490c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 490e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 49100 |  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................... | 
| 49120 |  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................... | 
| 49140 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 49160 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 49180 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 491a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 491c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 491e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 49200 |  3b 3b 3b 20 6c 65 64 67 65 72 2d 66 6f 6e 74 73    2e 65 6c 20 2d 2d 2d 20 48 65 6c 70 65 72 20 63  | ;;;.ledger-fonts.el.---.Helper.c | 
| 49220 |  6f 64 65 20 66 6f 72 20 75 73 65 20 77 69 74 68    20 74 68 65 20 22 6c 65 64 67 65 72 22 20 63 6f  | ode.for.use.with.the."ledger".co | 
| 49240 |  6d 6d 61 6e 64 2d 6c 69 6e 65 20 74 6f 6f 6c 20    20 2d 2a 2d 20 6c 65 78 69 63 61 6c 2d 62 69 6e  | mmand-line.tool..-*-.lexical-bin | 
| 49260 |  64 69 6e 67 3a 20 74 3b 20 2d 2a 2d 0a 0a 3b 3b    20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32  | ding:.t;.-*-..;;.Copyright.(C).2 | 
| 49280 |  30 30 33 2d 32 30 31 36 20 4a 6f 68 6e 20 57 69    65 67 6c 65 79 20 28 6a 6f 68 6e 77 20 41 54 20  | 003-2016.John.Wiegley.(johnw.AT. | 
| 492a0 |  67 6e 75 20 44 4f 54 20 6f 72 67 29 0a 0a 3b 3b    20 54 68 69 73 20 66 69 6c 65 20 69 73 20 6e 6f  | gnu.DOT.org)..;;.This.file.is.no | 
| 492c0 |  74 20 70 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 69 73  | t.part.of.GNU.Emacs...;;.This.is | 
| 492e0 |  20 66 72 65 65 20 73 6f 66 74 77 61 72 65 3b 20    79 6f 75 20 63 61 6e 20 72 65 64 69 73 74 72 69  | .free.software;.you.can.redistri | 
| 49300 |  62 75 74 65 20 69 74 20 61 6e 64 2f 6f 72 20 6d    6f 64 69 66 79 20 69 74 20 75 6e 64 65 72 0a 3b  | bute.it.and/or.modify.it.under.; | 
| 49320 |  3b 20 74 68 65 20 74 65 72 6d 73 20 6f 66 20 74    68 65 20 47 4e 55 20 47 65 6e 65 72 61 6c 20 50  | ;.the.terms.of.the.GNU.General.P | 
| 49340 |  75 62 6c 69 63 20 4c 69 63 65 6e 73 65 20 61 73    20 70 75 62 6c 69 73 68 65 64 20 62 79 20 74 68  | ublic.License.as.published.by.th | 
| 49360 |  65 20 46 72 65 65 0a 3b 3b 20 53 6f 66 74 77 61    72 65 20 46 6f 75 6e 64 61 74 69 6f 6e 3b 20 65  | e.Free.;;.Software.Foundation;.e | 
| 49380 |  69 74 68 65 72 20 76 65 72 73 69 6f 6e 20 32 2c    20 6f 72 20 28 61 74 20 79 6f 75 72 20 6f 70 74  | ither.version.2,.or.(at.your.opt | 
| 493a0 |  69 6f 6e 29 20 61 6e 79 20 6c 61 74 65 72 0a 3b    3b 20 76 65 72 73 69 6f 6e 2e 0a 3b 3b 0a 3b 3b  | ion).any.later.;;.version..;;.;; | 
| 493c0 |  20 54 68 69 73 20 69 73 20 64 69 73 74 72 69 62    75 74 65 64 20 69 6e 20 74 68 65 20 68 6f 70 65  | .This.is.distributed.in.the.hope | 
| 493e0 |  20 74 68 61 74 20 69 74 20 77 69 6c 6c 20 62 65    20 75 73 65 66 75 6c 2c 20 62 75 74 20 57 49 54  | .that.it.will.be.useful,.but.WIT | 
| 49400 |  48 4f 55 54 0a 3b 3b 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  | HOUT.;;.ANY.WARRANTY;.without.ev | 
| 49420 |  65 6e 20 74 68 65 20 69 6d 70 6c 69 65 64 20 77    61 72 72 61 6e 74 79 20 6f 66 20 4d 45 52 43 48  | en.the.implied.warranty.of.MERCH | 
| 49440 |  41 4e 54 41 42 49 4c 49 54 59 20 6f 72 0a 3b 3b    20 46 49 54 4e 45 53 53 20 46 4f 52 20 41 20 50  | ANTABILITY.or.;;.FITNESS.FOR.A.P | 
| 49460 |  41 52 54 49 43 55 4c 41 52 20 50 55 52 50 4f 53    45 2e 20 20 53 65 65 20 74 68 65 20 47 4e 55 20  | ARTICULAR.PURPOSE...See.the.GNU. | 
| 49480 |  47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c    69 63 65 6e 73 65 0a 3b 3b 20 66 6f 72 20 6d 6f  | General.Public.License.;;.for.mo | 
| 494a0 |  72 65 20 64 65 74 61 69 6c 73 2e 0a 3b 3b 0a 3b    3b 20 59 6f 75 20 73 68 6f 75 6c 64 20 68 61 76  | re.details..;;.;;.You.should.hav | 
| 494c0 |  65 20 72 65 63 65 69 76 65 64 20 61 20 63 6f 70    79 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e  | e.received.a.copy.of.the.GNU.Gen | 
| 494e0 |  65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65    6e 73 65 0a 3b 3b 20 61 6c 6f 6e 67 20 77 69 74  | eral.Public.License.;;.along.wit | 
| 49500 |  68 20 47 4e 55 20 45 6d 61 63 73 3b 20 73 65 65    20 74 68 65 20 66 69 6c 65 20 43 4f 50 59 49 4e  | h.GNU.Emacs;.see.the.file.COPYIN | 
| 49520 |  47 2e 20 20 49 66 20 6e 6f 74 2c 20 77 72 69 74    65 20 74 6f 20 74 68 65 0a 3b 3b 20 46 72 65 65  | G...If.not,.write.to.the.;;.Free | 
| 49540 |  20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61    74 69 6f 6e 2c 20 49 6e 63 2e 2c 20 35 31 20 46  | .Software.Foundation,.Inc.,.51.F | 
| 49560 |  72 61 6e 6b 6c 69 6e 20 53 74 72 65 65 74 2c 20    46 69 66 74 68 20 46 6c 6f 6f 72 2c 20 42 6f 73  | ranklin.Street,.Fifth.Floor,.Bos | 
| 49580 |  74 6f 6e 2c 0a 3b 3b 20 4d 41 20 30 32 31 31 30    2d 31 33 30 31 20 55 53 41 2e 0a 0a 0a 0a 3b 3b  | ton,.;;.MA.02110-1301.USA.....;; | 
| 495a0 |  3b 20 43 6f 6d 6d 65 6e 74 61 72 79 3a 0a 3b 3b    20 41 6c 6c 20 6f 66 20 74 68 65 20 66 61 63 65  | ;.Commentary:.;;.All.of.the.face | 
| 495c0 |  73 20 66 6f 72 20 6c 65 64 67 65 72 20 6d 6f 64    65 20 61 72 65 20 64 65 66 69 6e 65 64 20 68 65  | s.for.ledger.mode.are.defined.he | 
| 495e0 |  72 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 6c 65 64 67 65 72  | re...;;;.Code:..(require.'ledger | 
| 49600 |  2d 6e 61 76 69 67 61 74 65 29 0a 28 72 65 71 75    69 72 65 20 27 6c 65 64 67 65 72 2d 72 65 67 65  | -navigate).(require.'ledger-rege | 
| 49620 |  78 29 0a 28 72 65 71 75 69 72 65 20 27 6c 65 64    67 65 72 2d 73 74 61 74 65 29 0a 28 72 65 71 75  | x).(require.'ledger-state).(requ | 
| 49640 |  69 72 65 20 27 6c 65 64 67 65 72 2d 66 6f 6e 74    69 66 79 29 0a 0a 28 64 65 66 67 72 6f 75 70 20  | ire.'ledger-fontify)..(defgroup. | 
| 49660 |  6c 65 64 67 65 72 2d 66 61 63 65 73 20 6e 69 6c    20 22 4c 65 64 67 65 72 20 6d 6f 64 65 20 68 69  | ledger-faces.nil."Ledger.mode.hi | 
| 49680 |  67 68 6c 69 67 68 74 69 6e 67 22 20 3a 67 72 6f    75 70 20 27 6c 65 64 67 65 72 29 0a 0a 28 64 65  | ghlighting".:group.'ledger)..(de | 
| 496a0 |  66 66 61 63 65 20 6c 65 64 67 65 72 2d 66 6f 6e    74 2d 61 75 74 6f 2d 78 61 63 74 2d 66 61 63 65  | fface.ledger-font-auto-xact-face | 
| 496c0 |  0a 20 20 60 28 28 74 20 3a 69 6e 68 65 72 69 74    20 66 6f 6e 74 2d 6c 6f 63 6b 2d 6e 65 67 61 74  | ...`((t.:inherit.font-lock-negat | 
| 496e0 |  69 6f 6e 2d 63 68 61 72 2d 66 61 63 65 29 29 0a    20 20 22 44 65 66 61 75 6c 74 20 66 61 63 65 20  | ion-char-face))..."Default.face. | 
| 49700 |  66 6f 72 20 61 75 74 6f 6d 61 74 69 63 20 74 72    61 6e 73 61 63 74 69 6f 6e 73 22 0a 20 20 3a 67  | for.automatic.transactions"...:g | 
| 49720 |  72 6f 75 70 20 27 6c 65 64 67 65 72 2d 66 61 63    65 73 29 0a 0a 28 64 65 66 66 61 63 65 20 6c 65  | roup.'ledger-faces)..(defface.le | 
| 49740 |  64 67 65 72 2d 66 6f 6e 74 2d 70 65 72 69 6f 64    69 63 2d 78 61 63 74 2d 66 61 63 65 0a 20 20 60  | dger-font-periodic-xact-face...` | 
| 49760 |  28 28 74 20 3a 69 6e 68 65 72 69 74 20 66 6f 6e    74 2d 6c 6f 63 6b 2d 63 6f 6e 73 74 61 6e 74 2d  | ((t.:inherit.font-lock-constant- | 
| 49780 |  66 61 63 65 29 29 0a 20 20 22 44 65 66 61 75 6c    74 20 66 61 63 65 20 66 6f 72 20 61 75 74 6f 6d  | face))..."Default.face.for.autom | 
| 497a0 |  61 74 69 63 20 74 72 61 6e 73 61 63 74 69 6f 6e    73 22 0a 20 20 3a 67 72 6f 75 70 20 27 6c 65 64  | atic.transactions"...:group.'led | 
| 497c0 |  67 65 72 2d 66 61 63 65 73 29 0a 0a 28 64 65 66    66 61 63 65 20 6c 65 64 67 65 72 2d 66 6f 6e 74  | ger-faces)..(defface.ledger-font | 
| 497e0 |  2d 78 61 63 74 2d 63 6c 65 61 72 65 64 2d 66 61    63 65 0a 20 20 60 28 28 74 20 3a 69 6e 68 65 72  | -xact-cleared-face...`((t.:inher | 
| 49800 |  69 74 20 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 70    61 79 65 65 2d 63 6c 65 61 72 65 64 2d 66 61 63  | it.ledger-font-payee-cleared-fac | 
| 49820 |  65 29 29 0a 20 20 22 44 65 66 61 75 6c 74 20 66    61 63 65 20 66 6f 72 20 63 6c 65 61 72 65 64 20  | e))..."Default.face.for.cleared. | 
| 49840 |  74 72 61 6e 73 61 63 74 69 6f 6e 22 0a 20 20 3a    67 72 6f 75 70 20 27 6c 65 64 67 65 72 2d 66 61  | transaction"...:group.'ledger-fa | 
| 49860 |  63 65 73 29 0a 0a 28 64 65 66 66 61 63 65 20 6c    65 64 67 65 72 2d 66 6f 6e 74 2d 78 61 63 74 2d  | ces)..(defface.ledger-font-xact- | 
| 49880 |  70 65 6e 64 69 6e 67 2d 66 61 63 65 0a 20 20 60    28 28 74 20 3a 69 6e 68 65 72 69 74 20 6c 65 64  | pending-face...`((t.:inherit.led | 
| 498a0 |  67 65 72 2d 66 6f 6e 74 2d 70 65 6e 64 69 6e 67    2d 66 61 63 65 29 29 0a 20 20 22 44 65 66 61 75  | ger-font-pending-face))..."Defau | 
| 498c0 |  6c 74 20 66 61 63 65 20 66 6f 72 20 70 65 6e 64    69 6e 67 20 74 72 61 6e 73 61 63 74 69 6f 6e 22  | lt.face.for.pending.transaction" | 
| 498e0 |  0a 20 20 3a 67 72 6f 75 70 20 27 6c 65 64 67 65    72 2d 66 61 63 65 73 29 0a 0a 28 64 65 66 66 61  | ...:group.'ledger-faces)..(deffa | 
| 49900 |  63 65 20 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 70    61 79 65 65 2d 75 6e 63 6c 65 61 72 65 64 2d 66  | ce.ledger-font-payee-uncleared-f | 
| 49920 |  61 63 65 0a 20 20 60 28 28 74 20 3a 69 6e 68 65    72 69 74 20 65 72 72 6f 72 29 29 0a 20 20 22 44  | ace...`((t.:inherit.error))..."D | 
| 49940 |  65 66 61 75 6c 74 20 66 61 63 65 20 66 6f 72 20    4c 65 64 67 65 72 22 0a 20 20 3a 67 72 6f 75 70  | efault.face.for.Ledger"...:group | 
| 49960 |  20 27 6c 65 64 67 65 72 2d 66 61 63 65 73 29 0a    0a 28 64 65 66 66 61 63 65 20 6c 65 64 67 65 72  | .'ledger-faces)..(defface.ledger | 
| 49980 |  2d 66 6f 6e 74 2d 70 61 79 65 65 2d 63 6c 65 61    72 65 64 2d 66 61 63 65 0a 20 20 60 28 28 74 20  | -font-payee-cleared-face...`((t. | 
| 499a0 |  3a 69 6e 68 65 72 69 74 20 73 68 61 64 6f 77 29    29 0a 20 20 22 44 65 66 61 75 6c 74 20 66 61 63  | :inherit.shadow))..."Default.fac | 
| 499c0 |  65 20 66 6f 72 20 63 6c 65 61 72 65 64 20 28 2a    29 20 70 61 79 65 65 73 22 0a 20 20 3a 67 72 6f  | e.for.cleared.(*).payees"...:gro | 
| 499e0 |  75 70 20 27 6c 65 64 67 65 72 2d 66 61 63 65 73    29 0a 0a 28 64 65 66 66 61 63 65 20 6c 65 64 67  | up.'ledger-faces)..(defface.ledg | 
| 49a00 |  65 72 2d 66 6f 6e 74 2d 70 61 79 65 65 2d 70 65    6e 64 69 6e 67 2d 66 61 63 65 0a 20 20 60 28 28  | er-font-payee-pending-face...`(( | 
| 49a20 |  74 20 3a 69 6e 68 65 72 69 74 20 6c 65 64 67 65    72 2d 66 6f 6e 74 2d 70 65 6e 64 69 6e 67 2d 66  | t.:inherit.ledger-font-pending-f | 
| 49a40 |  61 63 65 29 29 0a 20 20 22 44 65 66 61 75 6c 74    20 66 61 63 65 20 66 6f 72 20 70 65 6e 64 69 6e  | ace))..."Default.face.for.pendin | 
| 49a60 |  67 20 28 21 29 20 70 61 79 65 65 73 22 0a 20 20    3a 67 72 6f 75 70 20 27 6c 65 64 67 65 72 2d 66  | g.(!).payees"...:group.'ledger-f | 
| 49a80 |  61 63 65 73 29 0a 0a 28 64 65 66 66 61 63 65 20    6c 65 64 67 65 72 2d 66 6f 6e 74 2d 78 61 63 74  | aces)..(defface.ledger-font-xact | 
| 49aa0 |  2d 68 69 67 68 6c 69 67 68 74 2d 66 61 63 65 0a    20 20 60 28 28 74 0a 20 20 20 20 20 2c 40 28 61  | -highlight-face...`((t......,@(a | 
| 49ac0 |  6e 64 20 28 3e 3d 20 65 6d 61 63 73 2d 6d 61 6a    6f 72 2d 76 65 72 73 69 6f 6e 20 32 37 29 20 27  | nd.(>=.emacs-major-version.27).' | 
| 49ae0 |  28 3a 65 78 74 65 6e 64 20 74 29 29 0a 20 20 20    20 20 3a 69 6e 68 65 72 69 74 20 6c 65 64 67 65  | (:extend.t))......:inherit.ledge | 
| 49b00 |  72 2d 6f 63 63 75 72 2d 78 61 63 74 2d 66 61 63    65 29 29 0a 20 20 22 44 65 66 61 75 6c 74 20 66  | r-occur-xact-face))..."Default.f | 
| 49b20 |  61 63 65 20 66 6f 72 20 74 72 61 6e 73 61 63 74    69 6f 6e 20 75 6e 64 65 72 20 70 6f 69 6e 74 22  | ace.for.transaction.under.point" | 
| 49b40 |  0a 20 20 3a 67 72 6f 75 70 20 27 6c 65 64 67 65    72 2d 66 61 63 65 73 29 0a 0a 28 64 65 66 66 61  | ...:group.'ledger-faces)..(deffa | 
| 49b60 |  63 65 20 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 70    65 6e 64 69 6e 67 2d 66 61 63 65 0a 20 20 60 28  | ce.ledger-font-pending-face...`( | 
| 49b80 |  28 74 20 3a 69 6e 68 65 72 69 74 20 77 61 72 6e    69 6e 67 29 29 0a 20 20 22 44 65 66 61 75 6c 74  | (t.:inherit.warning))..."Default | 
| 49ba0 |  20 66 61 63 65 20 66 6f 72 20 70 65 6e 64 69 6e    67 20 28 21 29 20 74 72 61 6e 73 61 63 74 69 6f  | .face.for.pending.(!).transactio | 
| 49bc0 |  6e 73 22 0a 20 20 3a 67 72 6f 75 70 20 27 6c 65    64 67 65 72 2d 66 61 63 65 73 29 0a 0a 28 64 65  | ns"...:group.'ledger-faces)..(de | 
| 49be0 |  66 66 61 63 65 20 6c 65 64 67 65 72 2d 66 6f 6e    74 2d 6f 74 68 65 72 2d 66 61 63 65 0a 20 20 60  | fface.ledger-font-other-face...` | 
| 49c00 |  28 28 74 20 3a 69 6e 68 65 72 69 74 20 66 6f 6e    74 2d 6c 6f 63 6b 2d 74 79 70 65 2d 66 61 63 65  | ((t.:inherit.font-lock-type-face | 
| 49c20 |  29 29 0a 20 20 22 44 65 66 61 75 6c 74 20 66 61    63 65 20 66 6f 72 20 6f 74 68 65 72 20 74 72 61  | ))..."Default.face.for.other.tra | 
| 49c40 |  6e 73 61 63 74 69 6f 6e 73 22 0a 20 20 3a 67 72    6f 75 70 20 27 6c 65 64 67 65 72 2d 66 61 63 65  | nsactions"...:group.'ledger-face | 
| 49c60 |  73 29 0a 0a 28 64 65 66 66 61 63 65 20 6c 65 64    67 65 72 2d 66 6f 6e 74 2d 64 69 72 65 63 74 69  | s)..(defface.ledger-font-directi | 
| 49c80 |  76 65 2d 66 61 63 65 0a 20 20 60 28 28 74 20 3a    69 6e 68 65 72 69 74 20 66 6f 6e 74 2d 6c 6f 63  | ve-face...`((t.:inherit.font-loc | 
| 49ca0 |  6b 2d 70 72 65 70 72 6f 63 65 73 73 6f 72 2d 66    61 63 65 29 29 0a 20 20 22 44 65 66 61 75 6c 74  | k-preprocessor-face))..."Default | 
| 49cc0 |  20 66 61 63 65 20 66 6f 72 20 6f 74 68 65 72 20    74 72 61 6e 73 61 63 74 69 6f 6e 73 22 0a 20 20  | .face.for.other.transactions"... | 
| 49ce0 |  3a 67 72 6f 75 70 20 27 6c 65 64 67 65 72 2d 66    61 63 65 73 29 0a 0a 28 64 65 66 66 61 63 65 20  | :group.'ledger-faces)..(defface. | 
| 49d00 |  6c 65 64 67 65 72 2d 66 6f 6e 74 2d 61 63 63 6f    75 6e 74 2d 64 69 72 65 63 74 69 76 65 2d 66 61  | ledger-font-account-directive-fa | 
| 49d20 |  63 65 0a 20 20 60 28 28 74 20 3a 69 6e 68 65 72    69 74 20 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 64  | ce...`((t.:inherit.ledger-font-d | 
| 49d40 |  69 72 65 63 74 69 76 65 2d 66 61 63 65 29 29 0a    20 20 22 44 65 66 61 75 6c 74 20 66 61 63 65 20  | irective-face))..."Default.face. | 
| 49d60 |  66 6f 72 20 6f 74 68 65 72 20 74 72 61 6e 73 61    63 74 69 6f 6e 73 22 0a 20 20 3a 67 72 6f 75 70  | for.other.transactions"...:group | 
| 49d80 |  20 27 6c 65 64 67 65 72 2d 66 61 63 65 73 29 0a    0a 28 64 65 66 66 61 63 65 20 6c 65 64 67 65 72  | .'ledger-faces)..(defface.ledger | 
| 49da0 |  2d 66 6f 6e 74 2d 61 63 63 6f 75 6e 74 2d 6e 61    6d 65 2d 66 61 63 65 0a 20 20 60 28 28 74 20 3a  | -font-account-name-face...`((t.: | 
| 49dc0 |  69 6e 68 65 72 69 74 20 66 6f 6e 74 2d 6c 6f 63    6b 2d 76 61 72 69 61 62 6c 65 2d 6e 61 6d 65 2d  | inherit.font-lock-variable-name- | 
| 49de0 |  66 61 63 65 29 29 0a 20 20 22 46 61 63 65 20 66    6f 72 20 61 63 63 6f 75 6e 74 20 6e 61 6d 65 73  | face))..."Face.for.account.names | 
| 49e00 |  20 69 6e 20 61 63 63 6f 75 6e 74 20 61 6e 64 20    61 6c 69 61 73 20 64 69 72 65 63 74 69 76 65 73  | .in.account.and.alias.directives | 
| 49e20 |  22 0a 20 20 3a 67 72 6f 75 70 20 27 6c 65 64 67    65 72 2d 66 61 63 65 73 29 0a 0a 28 64 65 66 66  | "...:group.'ledger-faces)..(deff | 
| 49e40 |  61 63 65 20 6c 65 64 67 65 72 2d 66 6f 6e 74 2d    6e 6f 74 65 2d 64 69 72 65 63 74 69 76 65 2d 66  | ace.ledger-font-note-directive-f | 
| 49e60 |  61 63 65 0a 20 20 60 28 28 74 20 3a 69 6e 68 65    72 69 74 20 6c 65 64 67 65 72 2d 66 6f 6e 74 2d  | ace...`((t.:inherit.ledger-font- | 
| 49e80 |  64 69 72 65 63 74 69 76 65 2d 66 61 63 65 29 29    0a 20 20 22 46 61 63 65 20 66 6f 72 20 6e 6f 74  | directive-face))..."Face.for.not | 
| 49ea0 |  65 20 73 75 62 64 69 72 65 63 74 69 76 65 73 22    0a 20 20 3a 67 72 6f 75 70 20 27 6c 65 64 67 65  | e.subdirectives"...:group.'ledge | 
| 49ec0 |  72 2d 66 61 63 65 73 29 0a 0a 28 64 65 66 66 61    63 65 20 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 6e  | r-faces)..(defface.ledger-font-n | 
| 49ee0 |  6f 74 65 2d 74 65 78 74 2d 66 61 63 65 0a 20 20    60 28 28 74 20 3a 69 6e 68 65 72 69 74 20 66 6f  | ote-text-face...`((t.:inherit.fo | 
| 49f00 |  6e 74 2d 6c 6f 63 6b 2d 64 6f 63 2d 66 61 63 65    29 29 0a 20 20 22 46 61 63 65 20 66 6f 72 20 6e  | nt-lock-doc-face))..."Face.for.n | 
| 49f20 |  6f 74 65 20 73 75 62 64 69 72 65 63 74 69 76 65    20 74 65 78 74 22 0a 20 20 3a 67 72 6f 75 70 20  | ote.subdirective.text"...:group. | 
| 49f40 |  27 6c 65 64 67 65 72 2d 66 61 63 65 73 29 0a 0a    28 64 65 66 66 61 63 65 20 6c 65 64 67 65 72 2d  | 'ledger-faces)..(defface.ledger- | 
| 49f60 |  66 6f 6e 74 2d 64 65 66 61 75 6c 74 2d 64 69 72    65 63 74 69 76 65 2d 66 61 63 65 0a 20 20 60 28  | font-default-directive-face...`( | 
| 49f80 |  28 74 20 3a 69 6e 68 65 72 69 74 20 6c 65 64 67    65 72 2d 66 6f 6e 74 2d 64 69 72 65 63 74 69 76  | (t.:inherit.ledger-font-directiv | 
| 49fa0 |  65 2d 66 61 63 65 29 29 0a 20 20 22 46 61 63 65    20 66 6f 72 20 64 65 66 61 75 6c 74 20 73 75 62  | e-face))..."Face.for.default.sub | 
| 49fc0 |  64 69 72 65 63 74 69 76 65 73 22 0a 20 20 3a 67    72 6f 75 70 20 27 6c 65 64 67 65 72 2d 66 61 63  | directives"...:group.'ledger-fac | 
| 49fe0 |  65 73 29 0a 0a 28 64 65 66 66 61 63 65 20 6c 65    64 67 65 72 2d 66 6f 6e 74 2d 70 72 69 63 65 2d  | es)..(defface.ledger-font-price- | 
| 4a000 |  64 69 72 65 63 74 69 76 65 2d 66 61 63 65 0a 20    20 60 28 28 74 20 3a 69 6e 68 65 72 69 74 20 6c  | directive-face...`((t.:inherit.l | 
| 4a020 |  65 64 67 65 72 2d 66 6f 6e 74 2d 64 69 72 65 63    74 69 76 65 2d 66 61 63 65 29 29 0a 20 20 22 44  | edger-font-directive-face))..."D | 
| 4a040 |  65 66 61 75 6c 74 20 66 61 63 65 20 66 6f 72 20    6f 74 68 65 72 20 74 72 61 6e 73 61 63 74 69 6f  | efault.face.for.other.transactio | 
| 4a060 |  6e 73 22 0a 20 20 3a 67 72 6f 75 70 20 27 6c 65    64 67 65 72 2d 66 61 63 65 73 29 0a 0a 28 64 65  | ns"...:group.'ledger-faces)..(de | 
| 4a080 |  66 66 61 63 65 20 6c 65 64 67 65 72 2d 66 6f 6e    74 2d 70 72 69 63 65 2d 64 61 74 65 2d 66 61 63  | fface.ledger-font-price-date-fac | 
| 4a0a0 |  65 0a 20 20 60 28 28 74 20 3a 69 6e 68 65 72 69    74 20 64 65 66 61 75 6c 74 29 29 0a 20 20 22 46  | e...`((t.:inherit.default))..."F | 
| 4a0c0 |  61 63 65 20 66 6f 72 20 64 61 74 65 20 61 6e 64    20 74 69 6d 65 20 69 6e 20 70 72 69 63 65 20 64  | ace.for.date.and.time.in.price.d | 
| 4a0e0 |  69 72 65 63 74 69 76 65 22 0a 20 20 3a 67 72 6f    75 70 20 27 6c 65 64 67 65 72 2d 66 61 63 65 73  | irective"...:group.'ledger-faces | 
| 4a100 |  29 0a 0a 28 64 65 66 66 61 63 65 20 6c 65 64 67    65 72 2d 66 6f 6e 74 2d 70 72 69 63 65 2d 73 79  | )..(defface.ledger-font-price-sy | 
| 4a120 |  6d 62 6f 6c 2d 66 61 63 65 0a 20 20 60 28 28 74    20 3a 69 6e 68 65 72 69 74 20 66 6f 6e 74 2d 6c  | mbol-face...`((t.:inherit.font-l | 
| 4a140 |  6f 63 6b 2d 63 6f 6e 73 74 61 6e 74 2d 66 61 63    65 29 29 0a 20 20 22 46 61 63 65 20 66 6f 72 20  | ock-constant-face))..."Face.for. | 
| 4a160 |  73 79 6d 62 6f 6c 20 69 6e 20 70 72 69 63 65 20    64 69 72 65 63 74 69 76 65 22 0a 20 20 3a 67 72  | symbol.in.price.directive"...:gr | 
| 4a180 |  6f 75 70 20 27 6c 65 64 67 65 72 2d 66 61 63 65    73 29 0a 0a 28 64 65 66 66 61 63 65 20 6c 65 64  | oup.'ledger-faces)..(defface.led | 
| 4a1a0 |  67 65 72 2d 66 6f 6e 74 2d 70 72 69 63 65 2d 66    61 63 65 0a 20 20 60 28 28 74 20 3a 69 6e 68 65  | ger-font-price-face...`((t.:inhe | 
| 4a1c0 |  72 69 74 20 64 65 66 61 75 6c 74 29 29 0a 20 20    22 46 61 63 65 20 66 6f 72 20 70 72 69 63 65 20  | rit.default))..."Face.for.price. | 
| 4a1e0 |  69 6e 20 70 72 69 63 65 20 64 69 72 65 63 74 69    76 65 22 0a 20 20 3a 67 72 6f 75 70 20 27 6c 65  | in.price.directive"...:group.'le | 
| 4a200 |  64 67 65 72 2d 66 61 63 65 73 29 0a 0a 28 64 65    66 66 61 63 65 20 6c 65 64 67 65 72 2d 66 6f 6e  | dger-faces)..(defface.ledger-fon | 
| 4a220 |  74 2d 61 70 70 6c 79 2d 64 69 72 65 63 74 69 76    65 2d 66 61 63 65 0a 20 20 60 28 28 74 20 3a 69  | t-apply-directive-face...`((t.:i | 
| 4a240 |  6e 68 65 72 69 74 20 6c 65 64 67 65 72 2d 66 6f    6e 74 2d 64 69 72 65 63 74 69 76 65 2d 66 61 63  | nherit.ledger-font-directive-fac | 
| 4a260 |  65 29 29 0a 20 20 22 44 65 66 61 75 6c 74 20 66    61 63 65 20 66 6f 72 20 6f 74 68 65 72 20 74 72  | e))..."Default.face.for.other.tr | 
| 4a280 |  61 6e 73 61 63 74 69 6f 6e 73 22 0a 20 20 3a 67    72 6f 75 70 20 27 6c 65 64 67 65 72 2d 66 61 63  | ansactions"...:group.'ledger-fac | 
| 4a2a0 |  65 73 29 0a 0a 28 64 65 66 66 61 63 65 20 6c 65    64 67 65 72 2d 66 6f 6e 74 2d 61 70 70 6c 79 2d  | es)..(defface.ledger-font-apply- | 
| 4a2c0 |  61 63 63 6f 75 6e 74 2d 66 61 63 65 0a 20 20 60    28 28 74 20 3a 69 6e 68 65 72 69 74 20 64 65 66  | account-face...`((t.:inherit.def | 
| 4a2e0 |  61 75 6c 74 29 29 0a 20 20 22 46 61 63 65 20 66    6f 72 20 61 72 67 75 6d 65 6e 74 20 6f 66 20 61  | ault))..."Face.for.argument.of.a | 
| 4a300 |  70 70 6c 79 20 61 63 63 6f 75 6e 74 20 64 69 72    65 63 74 69 76 65 22 0a 20 20 3a 67 72 6f 75 70  | pply.account.directive"...:group | 
| 4a320 |  20 27 6c 65 64 67 65 72 2d 66 61 63 65 73 29 0a    0a 28 64 65 66 66 61 63 65 20 6c 65 64 67 65 72  | .'ledger-faces)..(defface.ledger | 
| 4a340 |  2d 66 6f 6e 74 2d 61 70 70 6c 79 2d 74 61 67 2d    66 61 63 65 0a 20 20 60 28 28 74 20 3a 69 6e 68  | -font-apply-tag-face...`((t.:inh | 
| 4a360 |  65 72 69 74 20 64 65 66 61 75 6c 74 29 29 0a 20    20 22 46 61 63 65 20 66 6f 72 20 61 72 67 75 6d  | erit.default))..."Face.for.argum | 
| 4a380 |  65 6e 74 20 6f 66 20 61 70 70 6c 79 20 74 61 67    20 64 69 72 65 63 74 69 76 65 22 0a 20 20 3a 67  | ent.of.apply.tag.directive"...:g | 
| 4a3a0 |  72 6f 75 70 20 27 6c 65 64 67 65 72 2d 66 61 63    65 73 29 0a 0a 28 64 65 66 66 61 63 65 20 6c 65  | roup.'ledger-faces)..(defface.le | 
| 4a3c0 |  64 67 65 72 2d 66 6f 6e 74 2d 61 6c 69 61 73 2d    64 69 72 65 63 74 69 76 65 2d 66 61 63 65 0a 20  | dger-font-alias-directive-face.. | 
| 4a3e0 |  20 60 28 28 74 20 3a 69 6e 68 65 72 69 74 20 6c    65 64 67 65 72 2d 66 6f 6e 74 2d 64 69 72 65 63  | .`((t.:inherit.ledger-font-direc | 
| 4a400 |  74 69 76 65 2d 66 61 63 65 29 29 0a 20 20 22 44    65 66 61 75 6c 74 20 66 61 63 65 20 66 6f 72 20  | tive-face))..."Default.face.for. | 
| 4a420 |  6f 74 68 65 72 20 74 72 61 6e 73 61 63 74 69 6f    6e 73 22 0a 20 20 3a 67 72 6f 75 70 20 27 6c 65  | other.transactions"...:group.'le | 
| 4a440 |  64 67 65 72 2d 66 61 63 65 73 29 0a 0a 28 64 65    66 66 61 63 65 20 6c 65 64 67 65 72 2d 66 6f 6e  | dger-faces)..(defface.ledger-fon | 
| 4a460 |  74 2d 61 6c 69 61 73 2d 64 65 66 69 6e 69 74 69    6f 6e 2d 66 61 63 65 0a 20 20 60 28 28 74 20 3a  | t-alias-definition-face...`((t.: | 
| 4a480 |  69 6e 68 65 72 69 74 20 64 65 66 61 75 6c 74 29    29 0a 20 20 22 46 61 63 65 20 66 6f 72 20 61 6c  | inherit.default))..."Face.for.al | 
| 4a4a0 |  69 61 73 65 64 20 61 63 63 6f 75 6e 74 20 69 6e    20 61 6c 69 61 73 20 64 69 72 65 63 74 69 76 65  | iased.account.in.alias.directive | 
| 4a4c0 |  73 22 0a 20 20 3a 67 72 6f 75 70 20 27 6c 65 64    67 65 72 2d 66 61 63 65 73 29 0a 0a 28 64 65 66  | s"...:group.'ledger-faces)..(def | 
| 4a4e0 |  66 61 63 65 20 6c 65 64 67 65 72 2d 66 6f 6e 74    2d 61 73 73 65 72 74 2d 64 69 72 65 63 74 69 76  | face.ledger-font-assert-directiv | 
| 4a500 |  65 2d 66 61 63 65 0a 20 20 60 28 28 74 20 3a 69    6e 68 65 72 69 74 20 6c 65 64 67 65 72 2d 66 6f  | e-face...`((t.:inherit.ledger-fo | 
| 4a520 |  6e 74 2d 64 69 72 65 63 74 69 76 65 2d 66 61 63    65 29 29 0a 20 20 22 44 65 66 61 75 6c 74 20 66  | nt-directive-face))..."Default.f | 
| 4a540 |  61 63 65 20 66 6f 72 20 6f 74 68 65 72 20 74 72    61 6e 73 61 63 74 69 6f 6e 73 22 0a 20 20 3a 67  | ace.for.other.transactions"...:g | 
| 4a560 |  72 6f 75 70 20 27 6c 65 64 67 65 72 2d 66 61 63    65 73 29 0a 0a 28 64 65 66 66 61 63 65 20 6c 65  | roup.'ledger-faces)..(defface.le | 
| 4a580 |  64 67 65 72 2d 66 6f 6e 74 2d 63 6f 6e 64 69 74    69 6f 6e 2d 66 61 63 65 0a 20 20 60 28 28 74 20  | dger-font-condition-face...`((t. | 
| 4a5a0 |  3a 69 6e 68 65 72 69 74 20 64 65 66 61 75 6c 74    29 29 0a 20 20 22 44 65 66 61 75 6c 74 20 66 61  | :inherit.default))..."Default.fa | 
| 4a5c0 |  63 65 20 66 6f 72 20 63 68 65 63 6b 20 61 6e 64    20 61 73 73 65 72 74 20 63 6f 6e 64 69 74 69 6f  | ce.for.check.and.assert.conditio | 
| 4a5e0 |  6e 73 22 0a 20 20 3a 67 72 6f 75 70 20 27 6c 65    64 67 65 72 2d 66 61 63 65 73 29 0a 0a 28 64 65  | ns"...:group.'ledger-faces)..(de | 
| 4a600 |  66 66 61 63 65 20 6c 65 64 67 65 72 2d 66 6f 6e    74 2d 61 73 73 65 72 74 2d 63 6f 6e 64 69 74 69  | fface.ledger-font-assert-conditi | 
| 4a620 |  6f 6e 2d 66 61 63 65 0a 20 20 60 28 28 74 20 3a    69 6e 68 65 72 69 74 20 6c 65 64 67 65 72 2d 66  | on-face...`((t.:inherit.ledger-f | 
| 4a640 |  6f 6e 74 2d 63 6f 6e 64 69 74 69 6f 6e 2d 66 61    63 65 29 29 0a 20 20 22 46 61 63 65 20 66 6f 72  | ont-condition-face))..."Face.for | 
| 4a660 |  20 61 73 73 65 72 74 20 63 6f 6e 64 69 74 69 6f    6e 73 22 0a 20 20 3a 67 72 6f 75 70 20 27 6c 65  | .assert.conditions"...:group.'le | 
| 4a680 |  64 67 65 72 2d 66 61 63 65 73 29 0a 0a 28 64 65    66 66 61 63 65 20 6c 65 64 67 65 72 2d 66 6f 6e  | dger-faces)..(defface.ledger-fon | 
| 4a6a0 |  74 2d 62 75 63 6b 65 74 2d 64 69 72 65 63 74 69    76 65 2d 66 61 63 65 0a 20 20 60 28 28 74 20 3a  | t-bucket-directive-face...`((t.: | 
| 4a6c0 |  69 6e 68 65 72 69 74 20 6c 65 64 67 65 72 2d 66    6f 6e 74 2d 64 69 72 65 63 74 69 76 65 2d 66 61  | inherit.ledger-font-directive-fa | 
| 4a6e0 |  63 65 29 29 0a 20 20 22 44 65 66 61 75 6c 74 20    66 61 63 65 20 66 6f 72 20 6f 74 68 65 72 20 74  | ce))..."Default.face.for.other.t | 
| 4a700 |  72 61 6e 73 61 63 74 69 6f 6e 73 22 0a 20 20 3a    67 72 6f 75 70 20 27 6c 65 64 67 65 72 2d 66 61  | ransactions"...:group.'ledger-fa | 
| 4a720 |  63 65 73 29 0a 0a 28 64 65 66 66 61 63 65 20 6c    65 64 67 65 72 2d 66 6f 6e 74 2d 62 75 63 6b 65  | ces)..(defface.ledger-font-bucke | 
| 4a740 |  74 2d 61 63 63 6f 75 6e 74 2d 66 61 63 65 0a 20    20 60 28 28 74 20 3a 69 6e 68 65 72 69 74 20 64  | t-account-face...`((t.:inherit.d | 
| 4a760 |  65 66 61 75 6c 74 29 29 0a 20 20 22 46 61 63 65    20 66 6f 72 20 62 75 63 6b 65 74 20 64 69 72 65  | efault))..."Face.for.bucket.dire | 
| 4a780 |  63 74 69 76 65 20 61 72 67 75 6d 65 6e 74 22 0a    20 20 3a 67 72 6f 75 70 20 27 6c 65 64 67 65 72  | ctive.argument"...:group.'ledger | 
| 4a7a0 |  2d 66 61 63 65 73 29 0a 0a 28 64 65 66 66 61 63    65 20 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 43 2d  | -faces)..(defface.ledger-font-C- | 
| 4a7c0 |  64 69 72 65 63 74 69 76 65 2d 66 61 63 65 0a 20    20 60 28 28 74 20 3a 69 6e 68 65 72 69 74 20 6c  | directive-face...`((t.:inherit.l | 
| 4a7e0 |  65 64 67 65 72 2d 66 6f 6e 74 2d 64 69 72 65 63    74 69 76 65 2d 66 61 63 65 29 29 0a 20 20 22 44  | edger-font-directive-face))..."D | 
| 4a800 |  65 66 61 75 6c 74 20 66 61 63 65 20 66 6f 72 20    43 20 64 69 72 65 63 74 69 76 65 22 0a 20 20 3a  | efault.face.for.C.directive"...: | 
| 4a820 |  67 72 6f 75 70 20 27 6c 65 64 67 65 72 2d 66 61    63 65 73 29 0a 0a 28 64 65 66 66 61 63 65 20 6c  | group.'ledger-faces)..(defface.l | 
| 4a840 |  65 64 67 65 72 2d 66 6f 6e 74 2d 43 2d 61 6d 6f    75 6e 74 2d 66 61 63 65 0a 20 20 60 28 28 74 20  | edger-font-C-amount-face...`((t. | 
| 4a860 |  3a 69 6e 68 65 72 69 74 20 64 65 66 61 75 6c 74    29 29 0a 20 20 22 46 61 63 65 20 66 6f 72 20 61  | :inherit.default))..."Face.for.a | 
| 4a880 |  6d 6f 75 6e 74 73 20 69 6e 20 43 20 64 69 72 65    63 74 69 76 65 73 22 0a 20 20 3a 67 72 6f 75 70  | mounts.in.C.directives"...:group | 
| 4a8a0 |  20 27 6c 65 64 67 65 72 2d 66 61 63 65 73 29 0a    0a 28 64 65 66 66 61 63 65 20 6c 65 64 67 65 72  | .'ledger-faces)..(defface.ledger | 
| 4a8c0 |  2d 66 6f 6e 74 2d 63 61 70 74 75 72 65 2d 64 69    72 65 63 74 69 76 65 2d 66 61 63 65 0a 20 20 60  | -font-capture-directive-face...` | 
| 4a8e0 |  28 28 74 20 3a 69 6e 68 65 72 69 74 20 6c 65 64    67 65 72 2d 66 6f 6e 74 2d 64 69 72 65 63 74 69  | ((t.:inherit.ledger-font-directi | 
| 4a900 |  76 65 2d 66 61 63 65 29 29 0a 20 20 22 44 65 66    61 75 6c 74 20 66 61 63 65 20 66 6f 72 20 6f 74  | ve-face))..."Default.face.for.ot | 
| 4a920 |  68 65 72 20 74 72 61 6e 73 61 63 74 69 6f 6e 73    22 0a 20 20 3a 67 72 6f 75 70 20 27 6c 65 64 67  | her.transactions"...:group.'ledg | 
| 4a940 |  65 72 2d 66 61 63 65 73 29 0a 0a 28 64 65 66 66    61 63 65 20 6c 65 64 67 65 72 2d 66 6f 6e 74 2d  | er-faces)..(defface.ledger-font- | 
| 4a960 |  63 61 70 74 75 72 65 2d 61 63 63 6f 75 6e 74 2d    66 61 63 65 0a 20 20 60 28 28 74 20 3a 69 6e 68  | capture-account-face...`((t.:inh | 
| 4a980 |  65 72 69 74 20 64 65 66 61 75 6c 74 29 29 0a 20    20 22 46 61 63 65 20 66 6f 72 20 61 63 63 6f 75  | erit.default))..."Face.for.accou | 
| 4a9a0 |  6e 74 20 6e 61 6d 65 20 69 6e 20 63 61 70 74 75    72 65 20 64 69 72 65 63 74 69 76 65 73 22 0a 20  | nt.name.in.capture.directives".. | 
| 4a9c0 |  20 3a 67 72 6f 75 70 20 27 6c 65 64 67 65 72 2d    66 61 63 65 73 29 0a 0a 28 64 65 66 66 61 63 65  | .:group.'ledger-faces)..(defface | 
| 4a9e0 |  20 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 63 61 70    74 75 72 65 2d 72 65 67 65 78 2d 66 61 63 65 0a  | .ledger-font-capture-regex-face. | 
| 4aa00 |  20 20 60 28 28 74 20 3a 69 6e 68 65 72 69 74 20    64 65 66 61 75 6c 74 29 29 0a 20 20 22 46 61 63  | ..`((t.:inherit.default))..."Fac | 
| 4aa20 |  65 20 66 6f 72 20 6d 61 74 63 68 20 72 65 67 65    78 20 69 6e 20 63 61 70 74 75 72 65 20 64 69 72  | e.for.match.regex.in.capture.dir | 
| 4aa40 |  65 63 74 69 76 65 73 22 0a 20 20 3a 67 72 6f 75    70 20 27 6c 65 64 67 65 72 2d 66 61 63 65 73 29  | ectives"...:group.'ledger-faces) | 
| 4aa60 |  0a 0a 28 64 65 66 66 61 63 65 20 6c 65 64 67 65    72 2d 66 6f 6e 74 2d 63 68 65 63 6b 2d 64 69 72  | ..(defface.ledger-font-check-dir | 
| 4aa80 |  65 63 74 69 76 65 2d 66 61 63 65 0a 20 20 60 28    28 74 20 3a 69 6e 68 65 72 69 74 20 6c 65 64 67  | ective-face...`((t.:inherit.ledg | 
| 4aaa0 |  65 72 2d 66 6f 6e 74 2d 64 69 72 65 63 74 69 76    65 2d 66 61 63 65 29 29 0a 20 20 22 44 65 66 61  | er-font-directive-face))..."Defa | 
| 4aac0 |  75 6c 74 20 66 61 63 65 20 66 6f 72 20 6f 74 68    65 72 20 74 72 61 6e 73 61 63 74 69 6f 6e 73 22  | ult.face.for.other.transactions" | 
| 4aae0 |  0a 20 20 3a 67 72 6f 75 70 20 27 6c 65 64 67 65    72 2d 66 61 63 65 73 29 0a 0a 28 64 65 66 66 61  | ...:group.'ledger-faces)..(deffa | 
| 4ab00 |  63 65 20 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 63    68 65 63 6b 2d 63 6f 6e 64 69 74 69 6f 6e 2d 66  | ce.ledger-font-check-condition-f | 
| 4ab20 |  61 63 65 0a 20 20 60 28 28 74 20 3a 69 6e 68 65    72 69 74 20 6c 65 64 67 65 72 2d 66 6f 6e 74 2d  | ace...`((t.:inherit.ledger-font- | 
| 4ab40 |  63 6f 6e 64 69 74 69 6f 6e 2d 66 61 63 65 29 29    0a 20 20 22 46 61 63 65 20 66 6f 72 20 63 68 65  | condition-face))..."Face.for.che | 
| 4ab60 |  63 6b 20 63 6f 6e 64 69 74 69 6f 6e 73 22 0a 20    20 3a 67 72 6f 75 70 20 27 6c 65 64 67 65 72 2d  | ck.conditions"...:group.'ledger- | 
| 4ab80 |  66 61 63 65 73 29 0a 0a 28 64 65 66 66 61 63 65    20 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 63 6f 6d  | faces)..(defface.ledger-font-com | 
| 4aba0 |  6d 6f 64 69 74 79 2d 64 69 72 65 63 74 69 76 65    2d 66 61 63 65 0a 20 20 60 28 28 74 20 3a 69 6e  | modity-directive-face...`((t.:in | 
| 4abc0 |  68 65 72 69 74 20 6c 65 64 67 65 72 2d 66 6f 6e    74 2d 64 69 72 65 63 74 69 76 65 2d 66 61 63 65  | herit.ledger-font-directive-face | 
| 4abe0 |  29 29 0a 20 20 22 44 65 66 61 75 6c 74 20 66 61    63 65 20 66 6f 72 20 6f 74 68 65 72 20 74 72 61  | ))..."Default.face.for.other.tra | 
| 4ac00 |  6e 73 61 63 74 69 6f 6e 73 22 0a 20 20 3a 67 72    6f 75 70 20 27 6c 65 64 67 65 72 2d 66 61 63 65  | nsactions"...:group.'ledger-face | 
| 4ac20 |  73 29 0a 0a 28 64 65 66 66 61 63 65 20 6c 65 64    67 65 72 2d 66 6f 6e 74 2d 63 6f 6d 6d 6f 64 69  | s)..(defface.ledger-font-commodi | 
| 4ac40 |  74 79 2d 6e 61 6d 65 2d 66 61 63 65 0a 20 20 60    28 28 74 20 3a 69 6e 68 65 72 69 74 20 66 6f 6e  | ty-name-face...`((t.:inherit.fon | 
| 4ac60 |  74 2d 6c 6f 63 6b 2d 63 6f 6e 73 74 61 6e 74 2d    66 61 63 65 29 29 0a 20 20 22 46 61 63 65 20 66  | t-lock-constant-face))..."Face.f | 
| 4ac80 |  6f 72 20 63 6f 6d 6d 6f 64 69 74 79 20 6e 61 6d    65 20 69 6e 20 63 6f 6d 6d 6f 64 69 74 79 20 64  | or.commodity.name.in.commodity.d | 
| 4aca0 |  69 72 65 63 74 69 76 65 73 22 0a 20 20 3a 67 72    6f 75 70 20 27 6c 65 64 67 65 72 2d 66 61 63 65  | irectives"...:group.'ledger-face | 
| 4acc0 |  73 29 0a 0a 28 64 65 66 66 61 63 65 20 6c 65 64    67 65 72 2d 66 6f 6e 74 2d 66 6f 72 6d 61 74 2d  | s)..(defface.ledger-font-format- | 
| 4ace0 |  64 69 72 65 63 74 69 76 65 2d 66 61 63 65 0a 20    20 60 28 28 74 20 3a 69 6e 68 65 72 69 74 20 6c  | directive-face...`((t.:inherit.l | 
| 4ad00 |  65 64 67 65 72 2d 66 6f 6e 74 2d 64 69 72 65 63    74 69 76 65 2d 66 61 63 65 29 29 0a 20 20 22 46  | edger-font-directive-face))..."F | 
| 4ad20 |  61 63 65 20 66 6f 72 20 66 6f 72 6d 61 74 20 73    75 62 64 69 72 65 63 74 69 76 65 22 0a 20 20 3a  | ace.for.format.subdirective"...: | 
| 4ad40 |  67 72 6f 75 70 20 27 6c 65 64 67 65 72 2d 66 61    63 65 73 29 0a 0a 28 64 65 66 66 61 63 65 20 6c  | group.'ledger-faces)..(defface.l | 
| 4ad60 |  65 64 67 65 72 2d 66 6f 6e 74 2d 63 6f 6d 6d 6f    64 69 74 79 2d 66 6f 72 6d 61 74 2d 66 61 63 65  | edger-font-commodity-format-face | 
| 4ad80 |  0a 20 20 60 28 28 74 20 3a 69 6e 68 65 72 69 74    20 64 65 66 61 75 6c 74 29 29 0a 20 20 22 46 61  | ...`((t.:inherit.default))..."Fa | 
| 4ada0 |  63 65 20 66 6f 72 20 66 6f 72 6d 61 74 20 73 75    62 64 69 72 65 63 74 69 76 65 20 61 72 67 75 6d  | ce.for.format.subdirective.argum | 
| 4adc0 |  65 6e 74 22 0a 20 20 3a 67 72 6f 75 70 20 27 6c    65 64 67 65 72 2d 66 61 63 65 73 29 0a 0a 28 64  | ent"...:group.'ledger-faces)..(d | 
| 4ade0 |  65 66 66 61 63 65 20 6c 65 64 67 65 72 2d 66 6f    6e 74 2d 44 2d 64 69 72 65 63 74 69 76 65 2d 66  | efface.ledger-font-D-directive-f | 
| 4ae00 |  61 63 65 0a 20 20 60 28 28 74 20 3a 69 6e 68 65    72 69 74 20 6c 65 64 67 65 72 2d 66 6f 6e 74 2d  | ace...`((t.:inherit.ledger-font- | 
| 4ae20 |  64 69 72 65 63 74 69 76 65 2d 66 61 63 65 29 29    0a 20 20 22 44 65 66 61 75 6c 74 20 66 61 63 65  | directive-face))..."Default.face | 
| 4ae40 |  20 66 6f 72 20 44 20 64 69 72 65 63 74 69 76 65    22 0a 20 20 3a 67 72 6f 75 70 20 27 6c 65 64 67  | .for.D.directive"...:group.'ledg | 
| 4ae60 |  65 72 2d 66 61 63 65 73 29 0a 0a 28 64 65 66 66    61 63 65 20 6c 65 64 67 65 72 2d 66 6f 6e 74 2d  | er-faces)..(defface.ledger-font- | 
| 4ae80 |  64 65 66 69 6e 65 2d 64 69 72 65 63 74 69 76 65    2d 66 61 63 65 0a 20 20 60 28 28 74 20 3a 69 6e  | define-directive-face...`((t.:in | 
| 4aea0 |  68 65 72 69 74 20 6c 65 64 67 65 72 2d 66 6f 6e    74 2d 64 69 72 65 63 74 69 76 65 2d 66 61 63 65  | herit.ledger-font-directive-face | 
| 4aec0 |  29 29 0a 20 20 22 44 65 66 61 75 6c 74 20 66 61    63 65 20 66 6f 72 20 6f 74 68 65 72 20 74 72 61  | ))..."Default.face.for.other.tra | 
| 4aee0 |  6e 73 61 63 74 69 6f 6e 73 22 0a 20 20 3a 67 72    6f 75 70 20 27 6c 65 64 67 65 72 2d 66 61 63 65  | nsactions"...:group.'ledger-face | 
| 4af00 |  73 29 0a 0a 28 64 65 66 66 61 63 65 20 6c 65 64    67 65 72 2d 66 6f 6e 74 2d 64 65 66 69 6e 65 2d  | s)..(defface.ledger-font-define- | 
| 4af20 |  6e 61 6d 65 2d 66 61 63 65 0a 20 20 60 28 28 74    20 3a 69 6e 68 65 72 69 74 20 66 6f 6e 74 2d 6c  | name-face...`((t.:inherit.font-l | 
| 4af40 |  6f 63 6b 2d 76 61 72 69 61 62 6c 65 2d 6e 61 6d    65 2d 66 61 63 65 29 29 0a 20 20 22 46 61 63 65  | ock-variable-name-face))..."Face | 
| 4af60 |  20 66 6f 72 20 76 61 72 69 61 62 6c 65 20 6e 61    6d 65 20 69 6e 20 64 65 66 69 6e 65 20 64 69 72  | .for.variable.name.in.define.dir | 
| 4af80 |  65 63 74 69 76 65 22 0a 20 20 3a 67 72 6f 75 70    20 27 6c 65 64 67 65 72 2d 66 61 63 65 73 29 0a  | ective"...:group.'ledger-faces). | 
| 4afa0 |  0a 28 64 65 66 66 61 63 65 20 6c 65 64 67 65 72    2d 66 6f 6e 74 2d 64 65 66 69 6e 65 2d 62 6f 64  | .(defface.ledger-font-define-bod | 
| 4afc0 |  79 2d 66 61 63 65 0a 20 20 60 28 28 74 20 3a 69    6e 68 65 72 69 74 20 64 65 66 61 75 6c 74 29 29  | y-face...`((t.:inherit.default)) | 
| 4afe0 |  0a 20 20 22 46 61 63 65 20 66 6f 72 20 62 6f 64    79 20 69 6e 20 64 65 66 69 6e 65 20 64 69 72 65  | ..."Face.for.body.in.define.dire | 
| 4b000 |  63 74 69 76 65 22 0a 20 20 3a 67 72 6f 75 70 20    27 6c 65 64 67 65 72 2d 66 61 63 65 73 29 0a 0a  | ctive"...:group.'ledger-faces).. | 
| 4b020 |  28 64 65 66 66 61 63 65 20 6c 65 64 67 65 72 2d    66 6f 6e 74 2d 65 6e 64 2d 64 69 72 65 63 74 69  | (defface.ledger-font-end-directi | 
| 4b040 |  76 65 2d 66 61 63 65 0a 20 20 60 28 28 74 20 3a    69 6e 68 65 72 69 74 20 6c 65 64 67 65 72 2d 66  | ve-face...`((t.:inherit.ledger-f | 
| 4b060 |  6f 6e 74 2d 64 69 72 65 63 74 69 76 65 2d 66 61    63 65 29 29 0a 20 20 22 44 65 66 61 75 6c 74 20  | ont-directive-face))..."Default. | 
| 4b080 |  66 61 63 65 20 66 6f 72 20 6f 74 68 65 72 20 74    72 61 6e 73 61 63 74 69 6f 6e 73 22 0a 20 20 3a  | face.for.other.transactions"...: | 
| 4b0a0 |  67 72 6f 75 70 20 27 6c 65 64 67 65 72 2d 66 61    63 65 73 29 0a 0a 28 64 65 66 66 61 63 65 20 6c  | group.'ledger-faces)..(defface.l | 
| 4b0c0 |  65 64 67 65 72 2d 66 6f 6e 74 2d 65 78 70 72 2d    64 69 72 65 63 74 69 76 65 2d 66 61 63 65 0a 20  | edger-font-expr-directive-face.. | 
| 4b0e0 |  20 60 28 28 74 20 3a 69 6e 68 65 72 69 74 20 6c    65 64 67 65 72 2d 66 6f 6e 74 2d 64 69 72 65 63  | .`((t.:inherit.ledger-font-direc | 
| 4b100 |  74 69 76 65 2d 66 61 63 65 29 29 0a 20 20 22 44    65 66 61 75 6c 74 20 66 61 63 65 20 66 6f 72 20  | tive-face))..."Default.face.for. | 
| 4b120 |  6f 74 68 65 72 20 74 72 61 6e 73 61 63 74 69 6f    6e 73 22 0a 20 20 3a 67 72 6f 75 70 20 27 6c 65  | other.transactions"...:group.'le | 
| 4b140 |  64 67 65 72 2d 66 61 63 65 73 29 0a 0a 28 64 65    66 66 61 63 65 20 6c 65 64 67 65 72 2d 66 6f 6e  | dger-faces)..(defface.ledger-fon | 
| 4b160 |  74 2d 65 78 70 72 2d 65 78 70 72 65 73 73 69 6f    6e 2d 66 61 63 65 0a 20 20 60 28 28 74 20 3a 69  | t-expr-expression-face...`((t.:i | 
| 4b180 |  6e 68 65 72 69 74 20 64 65 66 61 75 6c 74 29 29    0a 20 20 22 46 61 63 65 20 66 6f 72 20 65 78 70  | nherit.default))..."Face.for.exp | 
| 4b1a0 |  72 20 61 6e 64 20 65 76 61 6c 20 65 78 70 72 65    73 73 69 6f 6e 73 22 0a 20 20 3a 67 72 6f 75 70  | r.and.eval.expressions"...:group | 
| 4b1c0 |  20 27 6c 65 64 67 65 72 2d 66 61 63 65 73 29 0a    0a 28 64 65 66 66 61 63 65 20 6c 65 64 67 65 72  | .'ledger-faces)..(defface.ledger | 
| 4b1e0 |  2d 66 6f 6e 74 2d 66 69 78 65 64 2d 64 69 72 65    63 74 69 76 65 2d 66 61 63 65 0a 20 20 60 28 28  | -font-fixed-directive-face...`(( | 
| 4b200 |  74 20 3a 69 6e 68 65 72 69 74 20 6c 65 64 67 65    72 2d 66 6f 6e 74 2d 64 69 72 65 63 74 69 76 65  | t.:inherit.ledger-font-directive | 
| 4b220 |  2d 66 61 63 65 29 29 0a 20 20 22 44 65 66 61 75    6c 74 20 66 61 63 65 20 66 6f 72 20 6f 74 68 65  | -face))..."Default.face.for.othe | 
| 4b240 |  72 20 74 72 61 6e 73 61 63 74 69 6f 6e 73 22 0a    20 20 3a 67 72 6f 75 70 20 27 6c 65 64 67 65 72  | r.transactions"...:group.'ledger | 
| 4b260 |  2d 66 61 63 65 73 29 0a 0a 28 64 65 66 66 61 63    65 20 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 66 69  | -faces)..(defface.ledger-font-fi | 
| 4b280 |  78 65 64 2d 63 6f 6d 6d 6f 64 69 74 79 2d 66 61    63 65 0a 20 20 60 28 28 74 20 3a 69 6e 68 65 72  | xed-commodity-face...`((t.:inher | 
| 4b2a0 |  69 74 20 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 0a 20 20 22  | it.font-lock-constant-face))..." | 
| 4b2c0 |  46 61 63 65 20 66 6f 72 20 63 6f 6d 6d 6f 64 69    74 79 20 6e 61 6d 65 20 69 6e 20 66 69 78 65 64  | Face.for.commodity.name.in.fixed | 
| 4b2e0 |  20 64 69 72 65 63 74 69 76 65 22 0a 20 20 3a 67    72 6f 75 70 20 27 6c 65 64 67 65 72 2d 66 61 63  | .directive"...:group.'ledger-fac | 
| 4b300 |  65 73 29 0a 0a 28 64 65 66 66 61 63 65 20 6c 65    64 67 65 72 2d 66 6f 6e 74 2d 66 69 78 65 64 2d  | es)..(defface.ledger-font-fixed- | 
| 4b320 |  70 72 69 63 65 2d 66 61 63 65 0a 20 20 60 28 28    74 20 3a 69 6e 68 65 72 69 74 20 64 65 66 61 75  | price-face...`((t.:inherit.defau | 
| 4b340 |  6c 74 29 29 0a 20 20 22 46 61 63 65 20 66 6f 72    20 70 72 69 63 65 20 69 6e 20 66 69 78 65 64 20  | lt))..."Face.for.price.in.fixed. | 
| 4b360 |  64 69 72 65 63 74 69 76 65 22 0a 20 20 3a 67 72    6f 75 70 20 27 6c 65 64 67 65 72 2d 66 61 63 65  | directive"...:group.'ledger-face | 
| 4b380 |  73 29 0a 0a 28 64 65 66 66 61 63 65 20 6c 65 64    67 65 72 2d 66 6f 6e 74 2d 69 6e 63 6c 75 64 65  | s)..(defface.ledger-font-include | 
| 4b3a0 |  2d 64 69 72 65 63 74 69 76 65 2d 66 61 63 65 0a    20 20 60 28 28 74 20 3a 69 6e 68 65 72 69 74 20  | -directive-face...`((t.:inherit. | 
| 4b3c0 |  6c 65 64 67 65 72 2d 66 6f 6e 74 2d 64 69 72 65    63 74 69 76 65 2d 66 61 63 65 29 29 0a 20 20 22  | ledger-font-directive-face))..." | 
| 4b3e0 |  44 65 66 61 75 6c 74 20 66 61 63 65 20 66 6f 72    20 6f 74 68 65 72 20 74 72 61 6e 73 61 63 74 69  | Default.face.for.other.transacti | 
| 4b400 |  6f 6e 73 22 0a 20 20 3a 67 72 6f 75 70 20 27 6c    65 64 67 65 72 2d 66 61 63 65 73 29 0a 0a 28 64  | ons"...:group.'ledger-faces)..(d | 
| 4b420 |  65 66 66 61 63 65 20 6c 65 64 67 65 72 2d 66 6f    6e 74 2d 69 6e 63 6c 75 64 65 2d 66 69 6c 65 6e  | efface.ledger-font-include-filen | 
| 4b440 |  61 6d 65 2d 66 61 63 65 0a 20 20 60 28 28 74 20    3a 69 6e 68 65 72 69 74 20 66 6f 6e 74 2d 6c 6f  | ame-face...`((t.:inherit.font-lo | 
| 4b460 |  63 6b 2d 73 74 72 69 6e 67 2d 66 61 63 65 29 29    0a 20 20 22 46 61 63 65 20 66 6f 72 20 66 69 6c  | ck-string-face))..."Face.for.fil | 
| 4b480 |  65 20 6e 61 6d 65 20 69 6e 20 69 6e 63 6c 75 64    65 20 64 69 72 65 63 74 69 76 65 73 22 0a 20 20  | e.name.in.include.directives"... | 
| 4b4a0 |  3a 67 72 6f 75 70 20 27 6c 65 64 67 65 72 2d 66    61 63 65 73 29 0a 0a 28 64 65 66 66 61 63 65 20  | :group.'ledger-faces)..(defface. | 
| 4b4c0 |  6c 65 64 67 65 72 2d 66 6f 6e 74 2d 4e 2d 64 69    72 65 63 74 69 76 65 2d 66 61 63 65 0a 20 20 60  | ledger-font-N-directive-face...` | 
| 4b4e0 |  28 28 74 20 3a 69 6e 68 65 72 69 74 20 6c 65 64    67 65 72 2d 66 6f 6e 74 2d 64 69 72 65 63 74 69  | ((t.:inherit.ledger-font-directi | 
| 4b500 |  76 65 2d 66 61 63 65 29 29 0a 20 20 22 44 65 66    61 75 6c 74 20 66 61 63 65 20 66 6f 72 20 4e 20  | ve-face))..."Default.face.for.N. | 
| 4b520 |  64 69 72 65 63 74 69 76 65 22 0a 20 20 3a 67 72    6f 75 70 20 27 6c 65 64 67 65 72 2d 66 61 63 65  | directive"...:group.'ledger-face | 
| 4b540 |  73 29 0a 0a 28 64 65 66 66 61 63 65 20 6c 65 64    67 65 72 2d 66 6f 6e 74 2d 4e 2d 73 79 6d 62 6f  | s)..(defface.ledger-font-N-symbo | 
| 4b560 |  6c 2d 66 61 63 65 0a 20 20 60 28 28 74 20 3a 69    6e 68 65 72 69 74 20 64 65 66 61 75 6c 74 29 29  | l-face...`((t.:inherit.default)) | 
| 4b580 |  0a 20 20 22 46 61 63 65 20 66 6f 72 20 73 79 6d    62 6f 6c 20 69 6e 20 4e 20 64 69 72 65 63 74 69  | ..."Face.for.symbol.in.N.directi | 
| 4b5a0 |  76 65 73 22 29 0a 0a 28 64 65 66 66 61 63 65 20    6c 65 64 67 65 72 2d 66 6f 6e 74 2d 70 61 79 65  | ves")..(defface.ledger-font-paye | 
| 4b5c0 |  65 2d 64 69 72 65 63 74 69 76 65 2d 66 61 63 65    0a 20 20 60 28 28 74 20 3a 69 6e 68 65 72 69 74  | e-directive-face...`((t.:inherit | 
| 4b5e0 |  20 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 64 69 72    65 63 74 69 76 65 2d 66 61 63 65 29 29 0a 20 20  | .ledger-font-directive-face))... | 
| 4b600 |  22 44 65 66 61 75 6c 74 20 66 61 63 65 20 66 6f    72 20 6f 74 68 65 72 20 74 72 61 6e 73 61 63 74  | "Default.face.for.other.transact | 
| 4b620 |  69 6f 6e 73 22 0a 20 20 3a 67 72 6f 75 70 20 27    6c 65 64 67 65 72 2d 66 61 63 65 73 29 0a 0a 28  | ions"...:group.'ledger-faces)..( | 
| 4b640 |  64 65 66 66 61 63 65 20 6c 65 64 67 65 72 2d 66    6f 6e 74 2d 70 61 79 65 65 2d 6e 61 6d 65 2d 66  | defface.ledger-font-payee-name-f | 
| 4b660 |  61 63 65 0a 20 20 60 28 28 74 20 3a 69 6e 68 65    72 69 74 20 66 6f 6e 74 2d 6c 6f 63 6b 2d 66 75  | ace...`((t.:inherit.font-lock-fu | 
| 4b680 |  6e 63 74 69 6f 6e 2d 6e 61 6d 65 2d 66 61 63 65    29 29 0a 20 20 22 46 61 63 65 20 66 6f 72 20 70  | nction-name-face))..."Face.for.p | 
| 4b6a0 |  61 79 65 65 20 6e 61 6d 65 20 69 6e 20 70 61 79    65 65 20 64 69 72 65 63 74 69 76 65 22 0a 20 20  | ayee.name.in.payee.directive"... | 
| 4b6c0 |  3a 67 72 6f 75 70 20 27 6c 65 64 67 65 72 2d 66    61 63 65 73 29 0a 0a 28 64 65 66 66 61 63 65 20  | :group.'ledger-faces)..(defface. | 
| 4b6e0 |  6c 65 64 67 65 72 2d 66 6f 6e 74 2d 70 61 79 65    65 2d 72 65 67 65 78 2d 66 61 63 65 0a 20 20 60  | ledger-font-payee-regex-face...` | 
| 4b700 |  28 28 74 20 3a 69 6e 68 65 72 69 74 20 66 6f 6e    74 2d 6c 6f 63 6b 2d 73 74 72 69 6e 67 2d 66 61  | ((t.:inherit.font-lock-string-fa | 
| 4b720 |  63 65 29 29 0a 20 20 22 46 61 63 65 20 66 6f 72    20 70 61 79 65 65 20 73 75 62 64 69 72 65 63 74  | ce))..."Face.for.payee.subdirect | 
| 4b740 |  69 76 65 20 72 65 67 65 78 20 69 6e 20 61 63 63    6f 75 6e 74 20 64 69 72 65 63 74 69 76 65 22 0a  | ive.regex.in.account.directive". | 
| 4b760 |  20 20 3a 67 72 6f 75 70 20 27 6c 65 64 67 65 72    2d 66 61 63 65 73 29 0a 0a 28 64 65 66 66 61 63  | ..:group.'ledger-faces)..(deffac | 
| 4b780 |  65 20 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 75 75    69 64 2d 64 69 72 65 63 74 69 76 65 2d 66 61 63  | e.ledger-font-uuid-directive-fac | 
| 4b7a0 |  65 0a 20 20 60 28 28 74 20 3a 69 6e 68 65 72 69    74 20 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 64 69  | e...`((t.:inherit.ledger-font-di | 
| 4b7c0 |  72 65 63 74 69 76 65 2d 66 61 63 65 29 29 0a 20    20 22 46 61 63 65 20 66 6f 72 20 75 75 69 64 20  | rective-face))..."Face.for.uuid. | 
| 4b7e0 |  73 75 62 64 69 72 65 63 74 69 76 65 73 22 0a 20    20 3a 67 72 6f 75 70 20 27 6c 65 64 67 65 72 2d  | subdirectives"...:group.'ledger- | 
| 4b800 |  66 61 63 65 73 29 0a 0a 28 64 65 66 66 61 63 65    20 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 75 75 69  | faces)..(defface.ledger-font-uui | 
| 4b820 |  64 2d 66 61 63 65 0a 20 20 60 28 28 74 20 3a 69    6e 68 65 72 69 74 20 64 65 66 61 75 6c 74 29 29  | d-face...`((t.:inherit.default)) | 
| 4b840 |  0a 20 20 22 46 61 63 65 20 66 6f 72 20 75 75 69    64 20 69 6e 20 75 75 69 64 20 73 75 62 64 69 72  | ..."Face.for.uuid.in.uuid.subdir | 
| 4b860 |  65 63 74 69 76 65 73 22 0a 20 20 3a 67 72 6f 75    70 20 27 6c 65 64 67 65 72 2d 66 61 63 65 73 29  | ectives"...:group.'ledger-faces) | 
| 4b880 |  0a 0a 28 64 65 66 66 61 63 65 20 6c 65 64 67 65    72 2d 66 6f 6e 74 2d 74 61 67 2d 64 69 72 65 63  | ..(defface.ledger-font-tag-direc | 
| 4b8a0 |  74 69 76 65 2d 66 61 63 65 0a 20 20 60 28 28 74    20 3a 69 6e 68 65 72 69 74 20 6c 65 64 67 65 72  | tive-face...`((t.:inherit.ledger | 
| 4b8c0 |  2d 66 6f 6e 74 2d 64 69 72 65 63 74 69 76 65 2d    66 61 63 65 29 29 0a 20 20 22 44 65 66 61 75 6c  | -font-directive-face))..."Defaul | 
| 4b8e0 |  74 20 66 61 63 65 20 66 6f 72 20 6f 74 68 65 72    20 74 72 61 6e 73 61 63 74 69 6f 6e 73 22 0a 20  | t.face.for.other.transactions".. | 
| 4b900 |  20 3a 67 72 6f 75 70 20 27 6c 65 64 67 65 72 2d    66 61 63 65 73 29 0a 0a 28 64 65 66 66 61 63 65  | .:group.'ledger-faces)..(defface | 
| 4b920 |  20 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 74 61 67    2d 6e 61 6d 65 2d 66 61 63 65 0a 20 20 60 28 28  | .ledger-font-tag-name-face...`(( | 
| 4b940 |  74 20 3a 69 6e 68 65 72 69 74 20 66 6f 6e 74 2d    6c 6f 63 6b 2d 74 79 70 65 2d 66 61 63 65 29 29  | t.:inherit.font-lock-type-face)) | 
| 4b960 |  0a 20 20 22 46 61 63 65 20 66 6f 72 20 74 61 67    20 6e 61 6d 65 20 69 6e 20 74 61 67 20 64 69 72  | ..."Face.for.tag.name.in.tag.dir | 
| 4b980 |  65 63 74 69 76 65 22 0a 20 20 3a 67 72 6f 75 70    20 27 6c 65 64 67 65 72 2d 66 61 63 65 73 29 0a  | ective"...:group.'ledger-faces). | 
| 4b9a0 |  0a 28 64 65 66 66 61 63 65 20 6c 65 64 67 65 72    2d 66 6f 6e 74 2d 74 69 6d 65 63 6c 6f 63 6b 2d  | .(defface.ledger-font-timeclock- | 
| 4b9c0 |  64 69 72 65 63 74 69 76 65 2d 66 61 63 65 0a 20    20 60 28 28 74 20 3a 69 6e 68 65 72 69 74 20 6c  | directive-face...`((t.:inherit.l | 
| 4b9e0 |  65 64 67 65 72 2d 66 6f 6e 74 2d 64 69 72 65 63    74 69 76 65 2d 66 61 63 65 29 29 0a 20 20 22 44  | edger-font-directive-face))..."D | 
| 4ba00 |  65 66 61 75 6c 74 20 66 61 63 65 20 66 6f 72 20    74 69 6d 65 63 6c 6f 63 6b 20 49 2c 69 2c 4f 2c  | efault.face.for.timeclock.I,i,O, | 
| 4ba20 |  6f 2c 62 2c 68 20 64 69 72 65 63 74 69 76 65 73    22 0a 20 20 3a 67 72 6f 75 70 20 27 6c 65 64 67  | o,b,h.directives"...:group.'ledg | 
| 4ba40 |  65 72 2d 66 61 63 65 73 29 0a 0a 28 64 65 66 66    61 63 65 20 6c 65 64 67 65 72 2d 66 6f 6e 74 2d  | er-faces)..(defface.ledger-font- | 
| 4ba60 |  79 65 61 72 2d 64 69 72 65 63 74 69 76 65 2d 66    61 63 65 0a 20 20 60 28 28 74 20 3a 69 6e 68 65  | year-directive-face...`((t.:inhe | 
| 4ba80 |  72 69 74 20 6c 65 64 67 65 72 2d 66 6f 6e 74 2d    64 69 72 65 63 74 69 76 65 2d 66 61 63 65 29 29  | rit.ledger-font-directive-face)) | 
| 4baa0 |  0a 20 20 22 44 65 66 61 75 6c 74 20 66 61 63 65    20 66 6f 72 20 6f 74 68 65 72 20 74 72 61 6e 73  | ..."Default.face.for.other.trans | 
| 4bac0 |  61 63 74 69 6f 6e 73 22 0a 20 20 3a 67 72 6f 75    70 20 27 6c 65 64 67 65 72 2d 66 61 63 65 73 29  | actions"...:group.'ledger-faces) | 
| 4bae0 |  0a 0a 28 64 65 66 66 61 63 65 20 6c 65 64 67 65    72 2d 66 6f 6e 74 2d 79 65 61 72 2d 66 61 63 65  | ..(defface.ledger-font-year-face | 
| 4bb00 |  0a 20 20 60 28 28 74 20 3a 69 6e 68 65 72 69 74    20 64 65 66 61 75 6c 74 29 29 0a 20 20 22 46 6f  | ...`((t.:inherit.default))..."Fo | 
| 4bb20 |  6e 74 20 66 6f 72 20 79 65 61 72 20 69 6e 20 79    65 61 72 20 64 69 72 65 63 74 69 76 65 73 22 0a  | nt.for.year.in.year.directives". | 
| 4bb40 |  20 20 3a 67 72 6f 75 70 20 27 6c 65 64 67 65 72    2d 66 61 63 65 73 29 0a 0a 28 64 65 66 66 61 63  | ..:group.'ledger-faces)..(deffac | 
| 4bb60 |  65 20 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 70 6f    73 74 69 6e 67 2d 61 63 63 6f 75 6e 74 2d 66 61  | e.ledger-font-posting-account-fa | 
| 4bb80 |  63 65 0a 20 20 60 28 28 74 20 3a 69 6e 68 65 72    69 74 20 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 64  | ce...`((t.:inherit.ledger-font-d | 
| 4bba0 |  65 66 61 75 6c 74 2d 64 69 72 65 63 74 69 76 65    2d 66 61 63 65 29 29 0a 20 20 22 46 61 63 65 20  | efault-directive-face))..."Face. | 
| 4bbc0 |  66 6f 72 20 4c 65 64 67 65 72 20 61 63 63 6f 75    6e 74 73 22 0a 20 20 3a 67 72 6f 75 70 20 27 6c  | for.Ledger.accounts"...:group.'l | 
| 4bbe0 |  65 64 67 65 72 2d 66 61 63 65 73 29 0a 0a 28 64    65 66 66 61 63 65 20 6c 65 64 67 65 72 2d 66 6f  | edger-faces)..(defface.ledger-fo | 
| 4bc00 |  6e 74 2d 70 6f 73 74 69 6e 67 2d 61 63 63 6f 75    6e 74 2d 63 6c 65 61 72 65 64 2d 66 61 63 65 0a  | nt-posting-account-cleared-face. | 
| 4bc20 |  20 20 60 28 28 74 20 3a 69 6e 68 65 72 69 74 20    6c 65 64 67 65 72 2d 66 6f 6e 74 2d 70 61 79 65  | ..`((t.:inherit.ledger-font-paye | 
| 4bc40 |  65 2d 63 6c 65 61 72 65 64 2d 66 61 63 65 29 29    0a 20 20 22 46 61 63 65 20 66 6f 72 20 4c 65 64  | e-cleared-face))..."Face.for.Led | 
| 4bc60 |  67 65 72 20 61 63 63 6f 75 6e 74 73 22 0a 20 20    3a 67 72 6f 75 70 20 27 6c 65 64 67 65 72 2d 66  | ger.accounts"...:group.'ledger-f | 
| 4bc80 |  61 63 65 73 29 0a 0a 28 64 65 66 66 61 63 65 20    6c 65 64 67 65 72 2d 66 6f 6e 74 2d 70 6f 73 74  | aces)..(defface.ledger-font-post | 
| 4bca0 |  69 6e 67 2d 61 6d 6f 75 6e 74 2d 63 6c 65 61 72    65 64 2d 66 61 63 65 0a 20 20 60 28 28 74 20 3a  | ing-amount-cleared-face...`((t.: | 
| 4bcc0 |  69 6e 68 65 72 69 74 20 6c 65 64 67 65 72 2d 66    6f 6e 74 2d 70 6f 73 74 69 6e 67 2d 61 63 63 6f  | inherit.ledger-font-posting-acco | 
| 4bce0 |  75 6e 74 2d 63 6c 65 61 72 65 64 2d 66 61 63 65    29 29 0a 20 20 22 46 61 63 65 20 66 6f 72 20 4c  | unt-cleared-face))..."Face.for.L | 
| 4bd00 |  65 64 67 65 72 20 61 63 63 6f 75 6e 74 73 22 0a    20 20 3a 67 72 6f 75 70 20 27 6c 65 64 67 65 72  | edger.accounts"...:group.'ledger | 
| 4bd20 |  2d 66 61 63 65 73 29 0a 0a 28 64 65 66 66 61 63    65 20 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 70 6f  | -faces)..(defface.ledger-font-po | 
| 4bd40 |  73 74 69 6e 67 2d 61 63 63 6f 75 6e 74 2d 70 65    6e 64 69 6e 67 2d 66 61 63 65 0a 20 20 60 28 28  | sting-account-pending-face...`(( | 
| 4bd60 |  74 20 3a 69 6e 68 65 72 69 74 20 6c 65 64 67 65    72 2d 66 6f 6e 74 2d 70 65 6e 64 69 6e 67 2d 66  | t.:inherit.ledger-font-pending-f | 
| 4bd80 |  61 63 65 29 29 0a 20 20 22 46 61 63 65 20 66 6f    72 20 4c 65 64 67 65 72 20 61 63 63 6f 75 6e 74  | ace))..."Face.for.Ledger.account | 
| 4bda0 |  73 22 0a 20 20 3a 67 72 6f 75 70 20 27 6c 65 64    67 65 72 2d 66 61 63 65 73 29 0a 0a 28 64 65 66  | s"...:group.'ledger-faces)..(def | 
| 4bdc0 |  66 61 63 65 20 6c 65 64 67 65 72 2d 66 6f 6e 74    2d 70 6f 73 74 69 6e 67 2d 61 6d 6f 75 6e 74 2d  | face.ledger-font-posting-amount- | 
| 4bde0 |  70 65 6e 64 69 6e 67 2d 66 61 63 65 0a 20 20 60    28 28 74 20 3a 69 6e 68 65 72 69 74 20 6c 65 64  | pending-face...`((t.:inherit.led | 
| 4be00 |  67 65 72 2d 66 6f 6e 74 2d 70 6f 73 74 69 6e 67    2d 61 63 63 6f 75 6e 74 2d 70 65 6e 64 69 6e 67  | ger-font-posting-account-pending | 
| 4be20 |  2d 66 61 63 65 29 29 0a 20 20 22 46 61 63 65 20    66 6f 72 20 4c 65 64 67 65 72 20 61 63 63 6f 75  | -face))..."Face.for.Ledger.accou | 
| 4be40 |  6e 74 73 22 0a 20 20 3a 67 72 6f 75 70 20 27 6c    65 64 67 65 72 2d 66 61 63 65 73 29 0a 0a 28 64  | nts"...:group.'ledger-faces)..(d | 
| 4be60 |  65 66 66 61 63 65 20 6c 65 64 67 65 72 2d 66 6f    6e 74 2d 70 6f 73 74 69 6e 67 2d 61 6d 6f 75 6e  | efface.ledger-font-posting-amoun | 
| 4be80 |  74 2d 66 61 63 65 0a 20 20 60 28 28 74 20 3a 69    6e 68 65 72 69 74 20 66 6f 6e 74 2d 6c 6f 63 6b  | t-face...`((t.:inherit.font-lock | 
| 4bea0 |  2d 63 6f 6e 73 74 61 6e 74 2d 66 61 63 65 20 29    29 0a 20 20 22 46 61 63 65 20 66 6f 72 20 4c 65  | -constant-face.))..."Face.for.Le | 
| 4bec0 |  64 67 65 72 20 61 6d 6f 75 6e 74 73 22 0a 20 20    3a 67 72 6f 75 70 20 27 6c 65 64 67 65 72 2d 66  | dger.amounts"...:group.'ledger-f | 
| 4bee0 |  61 63 65 73 29 0a 0a 28 64 65 66 66 61 63 65 20    6c 65 64 67 65 72 2d 66 6f 6e 74 2d 70 6f 73 74  | aces)..(defface.ledger-font-post | 
| 4bf00 |  69 6e 67 2d 64 61 74 65 2d 66 61 63 65 0a 20 20    60 28 28 74 20 3a 69 6e 68 65 72 69 74 20 66 6f  | ing-date-face...`((t.:inherit.fo | 
| 4bf20 |  6e 74 2d 6c 6f 63 6b 2d 6b 65 79 77 6f 72 64 2d    66 61 63 65 29 29 0a 20 20 22 46 61 63 65 20 66  | nt-lock-keyword-face))..."Face.f | 
| 4bf40 |  6f 72 20 4c 65 64 67 65 72 20 64 61 74 65 73 22    0a 20 20 3a 67 72 6f 75 70 20 27 6c 65 64 67 65  | or.Ledger.dates"...:group.'ledge | 
| 4bf60 |  72 2d 66 61 63 65 73 29 0a 0a 28 64 65 66 66 61    63 65 20 6c 65 64 67 65 72 2d 6f 63 63 75 72 2d  | r-faces)..(defface.ledger-occur- | 
| 4bf80 |  6e 61 72 72 6f 77 65 64 2d 66 61 63 65 0a 20 20    60 28 28 74 20 3a 69 6e 68 65 72 69 74 20 66 6f  | narrowed-face...`((t.:inherit.fo | 
| 4bfa0 |  6e 74 2d 6c 6f 63 6b 2d 63 6f 6d 6d 65 6e 74 2d    66 61 63 65 20 3a 69 6e 76 69 73 69 62 6c 65 20  | nt-lock-comment-face.:invisible. | 
| 4bfc0 |  74 29 29 0a 20 20 22 44 65 66 61 75 6c 74 20 66    61 63 65 20 66 6f 72 20 4c 65 64 67 65 72 20 6f  | t))..."Default.face.for.Ledger.o | 
| 4bfe0 |  63 63 75 72 20 6d 6f 64 65 20 68 69 64 64 65 6e    20 74 72 61 6e 73 61 63 74 69 6f 6e 73 22 0a 20  | ccur.mode.hidden.transactions".. | 
| 4c000 |  20 3a 67 72 6f 75 70 20 27 6c 65 64 67 65 72 2d    66 61 63 65 73 29 0a 0a 28 64 65 66 66 61 63 65  | .:group.'ledger-faces)..(defface | 
| 4c020 |  20 6c 65 64 67 65 72 2d 6f 63 63 75 72 2d 78 61    63 74 2d 66 61 63 65 0a 20 20 60 28 28 74 20 3a  | .ledger-occur-xact-face...`((t.: | 
| 4c040 |  69 6e 68 65 72 69 74 20 68 69 67 68 6c 69 67 68    74 29 29 0a 20 20 22 44 65 66 61 75 6c 74 20 66  | inherit.highlight))..."Default.f | 
| 4c060 |  61 63 65 20 66 6f 72 20 4c 65 64 67 65 72 20 6f    63 63 75 72 20 6d 6f 64 65 20 73 68 6f 77 6e 20  | ace.for.Ledger.occur.mode.shown. | 
| 4c080 |  74 72 61 6e 73 61 63 74 69 6f 6e 73 22 0a 20 20    3a 67 72 6f 75 70 20 27 6c 65 64 67 65 72 2d 66  | transactions"...:group.'ledger-f | 
| 4c0a0 |  61 63 65 73 29 0a 0a 28 64 65 66 66 61 63 65 20    6c 65 64 67 65 72 2d 66 6f 6e 74 2d 63 6f 6d 6d  | aces)..(defface.ledger-font-comm | 
| 4c0c0 |  65 6e 74 2d 66 61 63 65 0a 20 20 60 28 28 74 20    3a 69 6e 68 65 72 69 74 20 66 6f 6e 74 2d 6c 6f  | ent-face...`((t.:inherit.font-lo | 
| 4c0e0 |  63 6b 2d 63 6f 6d 6d 65 6e 74 2d 66 61 63 65 29    29 0a 20 20 22 46 61 63 65 20 66 6f 72 20 4c 65  | ck-comment-face))..."Face.for.Le | 
| 4c100 |  64 67 65 72 20 63 6f 6d 6d 65 6e 74 73 22 0a 20    20 3a 67 72 6f 75 70 20 27 6c 65 64 67 65 72 2d  | dger.comments"...:group.'ledger- | 
| 4c120 |  66 61 63 65 73 29 0a 0a 28 64 65 66 66 61 63 65    20 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 72 65 63  | faces)..(defface.ledger-font-rec | 
| 4c140 |  6f 6e 63 69 6c 65 72 2d 75 6e 63 6c 65 61 72 65    64 2d 66 61 63 65 0a 20 20 60 28 28 74 20 3a 69  | onciler-uncleared-face...`((t.:i | 
| 4c160 |  6e 68 65 72 69 74 20 6c 65 64 67 65 72 2d 66 6f    6e 74 2d 70 61 79 65 65 2d 75 6e 63 6c 65 61 72  | nherit.ledger-font-payee-unclear | 
| 4c180 |  65 64 2d 66 61 63 65 29 29 0a 20 20 22 44 65 66    61 75 6c 74 20 66 61 63 65 20 66 6f 72 20 75 6e  | ed-face))..."Default.face.for.un | 
| 4c1a0 |  63 6c 65 61 72 65 64 20 74 72 61 6e 73 61 63 74    69 6f 6e 73 20 69 6e 20 74 68 65 20 72 65 63 6f  | cleared.transactions.in.the.reco | 
| 4c1c0 |  6e 63 69 6c 65 20 77 69 6e 64 6f 77 22 0a 20 20    3a 67 72 6f 75 70 20 27 6c 65 64 67 65 72 2d 66  | ncile.window"...:group.'ledger-f | 
| 4c1e0 |  61 63 65 73 29 0a 0a 28 64 65 66 66 61 63 65 20    6c 65 64 67 65 72 2d 66 6f 6e 74 2d 72 65 63 6f  | aces)..(defface.ledger-font-reco | 
| 4c200 |  6e 63 69 6c 65 72 2d 63 6c 65 61 72 65 64 2d 66    61 63 65 0a 20 20 60 28 28 74 20 3a 69 6e 68 65  | nciler-cleared-face...`((t.:inhe | 
| 4c220 |  72 69 74 20 6c 65 64 67 65 72 2d 66 6f 6e 74 2d    70 61 79 65 65 2d 63 6c 65 61 72 65 64 2d 66 61  | rit.ledger-font-payee-cleared-fa | 
| 4c240 |  63 65 29 29 0a 20 20 22 44 65 66 61 75 6c 74 20    66 61 63 65 20 66 6f 72 20 63 6c 65 61 72 65 64  | ce))..."Default.face.for.cleared | 
| 4c260 |  20 28 2a 29 20 74 72 61 6e 73 61 63 74 69 6f 6e    73 20 69 6e 20 74 68 65 20 72 65 63 6f 6e 63 69  | .(*).transactions.in.the.reconci | 
| 4c280 |  6c 65 20 77 69 6e 64 6f 77 22 0a 20 20 3a 67 72    6f 75 70 20 27 6c 65 64 67 65 72 2d 66 61 63 65  | le.window"...:group.'ledger-face | 
| 4c2a0 |  73 29 0a 0a 28 64 65 66 66 61 63 65 20 6c 65 64    67 65 72 2d 66 6f 6e 74 2d 72 65 63 6f 6e 63 69  | s)..(defface.ledger-font-reconci | 
| 4c2c0 |  6c 65 72 2d 70 65 6e 64 69 6e 67 2d 66 61 63 65    0a 20 20 60 28 28 74 20 3a 69 6e 68 65 72 69 74  | ler-pending-face...`((t.:inherit | 
| 4c2e0 |  20 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 70 65 6e    64 69 6e 67 2d 66 61 63 65 29 29 0a 20 20 22 44  | .ledger-font-pending-face))..."D | 
| 4c300 |  65 66 61 75 6c 74 20 66 61 63 65 20 66 6f 72 20    70 65 6e 64 69 6e 67 20 28 21 29 20 74 72 61 6e  | efault.face.for.pending.(!).tran | 
| 4c320 |  73 61 63 74 69 6f 6e 73 20 69 6e 20 74 68 65 20    72 65 63 6f 6e 63 69 6c 65 20 77 69 6e 64 6f 77  | sactions.in.the.reconcile.window | 
| 4c340 |  22 0a 20 20 3a 67 72 6f 75 70 20 27 6c 65 64 67    65 72 2d 66 61 63 65 73 29 0a 0a 28 64 65 66 66  | "...:group.'ledger-faces)..(deff | 
| 4c360 |  61 63 65 20 6c 65 64 67 65 72 2d 66 6f 6e 74 2d    72 65 70 6f 72 74 2d 63 6c 69 63 6b 61 62 6c 65  | ace.ledger-font-report-clickable | 
| 4c380 |  2d 66 61 63 65 0a 20 20 60 28 28 74 29 29 0a 20    20 22 46 61 63 65 20 61 70 70 6c 69 65 64 20 74  | -face...`((t))..."Face.applied.t | 
| 4c3a0 |  6f 20 63 6c 69 63 6b 61 62 6c 65 20 65 6e 74 72    69 65 73 20 69 6e 20 74 68 65 20 72 65 70 6f 72  | o.clickable.entries.in.the.repor | 
| 4c3c0 |  74 20 77 69 6e 64 6f 77 22 0a 20 20 3a 67 72 6f    75 70 20 27 6c 65 64 67 65 72 2d 66 61 63 65 73  | t.window"...:group.'ledger-faces | 
| 4c3e0 |  29 0a 0a 28 64 65 66 66 61 63 65 20 6c 65 64 67    65 72 2d 66 6f 6e 74 2d 63 6f 64 65 2d 66 61 63  | )..(defface.ledger-font-code-fac | 
| 4c400 |  65 0a 20 20 60 28 28 74 20 3a 69 6e 68 65 72 69    74 20 64 65 66 61 75 6c 74 29 29 0a 20 20 22 46  | e...`((t.:inherit.default))..."F | 
| 4c420 |  61 63 65 20 66 6f 72 20 4c 65 64 67 65 72 20 63    6f 64 65 73 22 0a 20 20 3a 67 72 6f 75 70 20 27  | ace.for.Ledger.codes"...:group.' | 
| 4c440 |  6c 65 64 67 65 72 2d 66 61 63 65 73 29 0a 0a 28    64 65 66 75 6e 20 6c 65 64 67 65 72 2d 66 6f 6e  | ledger-faces)..(defun.ledger-fon | 
| 4c460 |  74 2d 66 61 63 65 2d 62 79 2d 73 74 61 74 65 20    28 6e 75 6d 20 66 61 63 65 73 29 0a 20 20 22 43  | t-face-by-state.(num.faces)..."C | 
| 4c480 |  68 6f 6f 73 65 20 6f 6e 65 20 6f 66 20 74 68 72    65 65 20 66 61 63 65 73 20 64 65 70 65 6e 64 69  | hoose.one.of.three.faces.dependi | 
| 4c4a0 |  6e 67 20 6f 6e 20 74 72 61 6e 73 61 63 74 69 6f    6e 20 73 74 61 74 65 2e 0a 4e 55 4d 20 73 70 65  | ng.on.transaction.state..NUM.spe | 
| 4c4c0 |  63 69 66 69 65 73 20 61 20 6d 61 74 63 68 20 67    72 6f 75 70 20 63 6f 6e 74 61 69 6e 69 6e 67 20  | cifies.a.match.group.containing. | 
| 4c4e0 |  74 68 65 20 73 74 61 74 65 2e 0a 46 41 43 45 53    20 68 61 73 20 74 68 65 20 66 6f 72 6d 20 28 43  | the.state..FACES.has.the.form.(C | 
| 4c500 |  4c 45 41 52 45 44 20 50 45 4e 44 49 4e 47 20 4f    54 48 45 52 29 2e 0a 52 65 74 75 72 6e 20 43 4c  | LEARED.PENDING.OTHER)..Return.CL | 
| 4c520 |  45 41 52 45 44 20 69 66 20 74 68 61 74 20 67 72    6f 75 70 20 73 70 65 63 69 66 69 65 73 20 61 20  | EARED.if.that.group.specifies.a. | 
| 4c540 |  63 6c 65 61 72 65 64 20 74 72 61 6e 73 61 63 74    69 6f 6e 2c 0a 50 45 4e 44 49 4e 47 20 69 66 20  | cleared.transaction,.PENDING.if. | 
| 4c560 |  70 65 6e 64 69 6e 67 2c 20 61 6e 64 20 4f 54 48    45 52 20 69 66 20 6e 6f 6e 65 20 6f 66 20 74 68  | pending,.and.OTHER.if.none.of.th | 
| 4c580 |  65 20 61 62 6f 76 65 2e 22 0a 20 20 28 6c 65 74    20 28 28 73 74 61 74 65 20 28 73 61 76 65 2d 6d  | e.above."...(let.((state.(save-m | 
| 4c5a0 |  61 74 63 68 2d 64 61 74 61 20 28 6c 65 64 67 65    72 2d 73 74 61 74 65 2d 66 72 6f 6d 2d 73 74 72  | atch-data.(ledger-state-from-str | 
| 4c5c0 |  69 6e 67 20 28 6d 61 74 63 68 2d 73 74 72 69 6e    67 20 6e 75 6d 29 29 29 29 29 0a 20 20 20 20 28  | ing.(match-string.num))))).....( | 
| 4c5e0 |  63 6f 6e 64 20 28 28 65 71 20 73 74 61 74 65 20    27 63 6c 65 61 72 65 64 29 20 28 6e 74 68 20 30  | cond.((eq.state.'cleared).(nth.0 | 
| 4c600 |  20 66 61 63 65 73 29 29 0a 20 20 20 20 20 20 20    20 20 20 28 28 65 71 20 73 74 61 74 65 20 27 70  | .faces))...........((eq.state.'p | 
| 4c620 |  65 6e 64 69 6e 67 29 20 28 6e 74 68 20 31 20 66    61 63 65 73 29 29 0a 20 20 20 20 20 20 20 20 20  | ending).(nth.1.faces)).......... | 
| 4c640 |  20 28 74 20 28 6e 74 68 20 32 20 66 61 63 65 73    29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 6c 65  | .(t.(nth.2.faces)))))..(defun.le | 
| 4c660 |  64 67 65 72 2d 66 6f 6e 74 2d 66 61 63 65 2d 62    79 2d 74 69 6d 65 63 6c 6f 63 6b 2d 73 74 61 74  | dger-font-face-by-timeclock-stat | 
| 4c680 |  65 20 28 6e 75 6d 20 66 61 63 65 73 29 0a 20 20    22 43 68 6f 6f 73 65 20 6f 6e 65 20 6f 66 20 74  | e.(num.faces)..."Choose.one.of.t | 
| 4c6a0 |  77 6f 20 66 61 63 65 73 20 64 65 70 65 6e 64 69    6e 67 20 6f 6e 20 61 20 74 69 6d 65 63 6c 6f 63  | wo.faces.depending.on.a.timecloc | 
| 4c6c0 |  6b 20 64 69 72 65 63 74 69 76 65 20 63 68 61 72    61 63 74 65 72 2e 0a 4e 55 4d 20 73 70 65 63 69  | k.directive.character..NUM.speci | 
| 4c6e0 |  66 69 65 73 20 61 20 6d 61 74 63 68 20 67 72 6f    75 70 20 63 6f 6e 74 61 69 6e 69 6e 67 20 74 68  | fies.a.match.group.containing.th | 
| 4c700 |  65 20 63 68 61 72 61 63 74 65 72 2e 0a 46 41 43    45 53 20 68 61 73 20 74 68 65 20 66 6f 72 6d 20  | e.character..FACES.has.the.form. | 
| 4c720 |  28 43 4c 45 41 52 45 44 20 55 4e 43 4c 45 41 52    45 44 29 2e 0a 52 65 74 75 72 6e 20 43 4c 45 41  | (CLEARED.UNCLEARED)..Return.CLEA | 
| 4c740 |  52 45 44 20 69 66 20 74 68 65 20 63 68 61 72 61    63 74 65 72 20 73 70 65 63 69 66 69 65 73 20 61  | RED.if.the.character.specifies.a | 
| 4c760 |  20 63 6c 65 61 72 65 64 20 74 72 61 6e 73 61 63    74 69 6f 6e 2c 0a 55 4e 43 4c 45 41 52 45 44 20  | .cleared.transaction,.UNCLEARED. | 
| 4c780 |  6f 74 68 65 72 77 69 73 65 2e 22 0a 20 20 28 69    66 20 28 6d 65 6d 62 65 72 20 28 6d 61 74 63 68  | otherwise."...(if.(member.(match | 
| 4c7a0 |  2d 73 74 72 69 6e 67 20 6e 75 6d 29 20 27 28 22    49 22 20 22 4f 22 29 29 0a 20 20 20 20 20 20 28  | -string.num).'("I"."O")).......( | 
| 4c7c0 |  6e 74 68 20 30 20 66 61 63 65 73 29 0a 20 20 20    20 28 6e 74 68 20 31 20 66 61 63 65 73 29 29 29  | nth.0.faces).....(nth.1.faces))) | 
| 4c7e0 |  0a 0a 28 64 65 66 75 6e 20 6c 65 64 67 65 72 2d    66 6f 6e 74 2d 73 75 62 64 69 72 65 63 74 69 76  | ..(defun.ledger-font-subdirectiv | 
| 4c800 |  65 73 20 28 73 75 62 64 69 72 65 63 74 69 76 65    73 29 0a 20 20 22 43 6f 6e 73 74 72 75 63 74 20  | es.(subdirectives)..."Construct. | 
| 4c820 |  61 6e 63 68 6f 72 65 64 20 68 69 67 68 6c 69 67    68 74 65 72 73 20 66 6f 72 20 73 75 62 64 69 72  | anchored.highlighters.for.subdir | 
| 4c840 |  65 63 74 69 76 65 73 2e 0a 0a 45 61 63 68 20 65    6c 65 6d 65 6e 74 20 6f 66 20 53 55 42 44 49 52  | ectives...Each.element.of.SUBDIR | 
| 4c860 |  45 43 54 49 56 45 53 20 73 68 6f 75 6c 64 20 68    61 76 65 20 74 68 65 20 66 6f 72 6d 20 28 4d 41  | ECTIVES.should.have.the.form.(MA | 
| 4c880 |  54 43 48 45 52 0a 53 55 42 45 58 50 2d 48 49 47    48 4c 49 47 48 54 45 52 53 e2 80 a6 29 2e 20 20  | TCHER.SUBEXP-HIGHLIGHTERS...)... | 
| 4c8a0 |  54 68 65 20 72 65 73 75 6c 74 20 77 69 6c 6c 20    62 65 20 61 20 6c 69 73 74 20 6f 66 20 65 6c 65  | The.result.will.be.a.list.of.ele | 
| 4c8c0 |  6d 65 6e 74 73 20 6f 66 0a 74 68 65 20 66 6f 72    6d 20 28 4d 41 54 43 48 45 52 20 50 52 45 2d 46  | ments.of.the.form.(MATCHER.PRE-F | 
| 4c8e0 |  4f 52 4d 20 50 4f 53 54 2d 46 4f 52 4d 20 53 55    42 45 58 50 2d 48 49 47 48 4c 49 47 48 54 45 52  | ORM.POST-FORM.SUBEXP-HIGHLIGHTER | 
| 4c900 |  53 29 20 77 69 74 68 0a 50 52 45 2d 46 4f 52 4d    20 61 6e 64 20 50 4f 53 54 2d 46 4f 52 4d 20 73  | S).with.PRE-FORM.and.POST-FORM.s | 
| 4c920 |  65 74 20 74 6f 20 61 70 70 72 6f 70 72 69 61 74    65 20 76 61 6c 75 65 73 2e 0a 0a 53 65 65 20 60  | et.to.appropriate.values...See.` | 
| 4c940 |  66 6f 6e 74 2d 6c 6f 63 6b 2d 6b 65 79 77 6f 72    64 73 27 20 66 6f 72 20 74 68 65 20 66 75 6c 6c  | font-lock-keywords'.for.the.full | 
| 4c960 |  20 64 65 73 63 72 69 70 74 69 6f 6e 2e 22 0a 0a    20 20 28 6d 61 70 63 61 72 20 28 6c 61 6d 62 64  | .description."....(mapcar.(lambd | 
| 4c980 |  61 20 28 69 74 65 6d 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 60 28 2c 28 63 61 72 20 69 74 65  | a.(item).............`(,(car.ite | 
| 4c9a0 |  6d 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e  | m)...............(save-excursion | 
| 4c9c0 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 73 61 76 65 2d 6d 61 74 63 68 2d 64 61 74  | .................(save-match-dat | 
| 4c9e0 |  61 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 28 6c 65 64 67 65 72 2d 6e 61 76 69  | a...................(ledger-navi | 
| 4ca00 |  67 61 74 65 2d 65 6e 64 2d 6f 66 2d 78 61 63 74    29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | gate-end-of-xact)).............. | 
| 4ca20 |  20 20 20 28 70 6f 69 6e 74 29 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 67 6f 74 6f 2d  | ...(point))...............(goto- | 
| 4ca40 |  63 68 61 72 20 28 6d 61 74 63 68 2d 65 6e 64 20    30 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | char.(match-end.0))............. | 
| 4ca60 |  20 20 2c 40 28 63 64 72 20 69 74 65 6d 29 29 29    0a 20 20 20 20 20 20 20 20 20 20 73 75 62 64 69  | ..,@(cdr.item)))...........subdi | 
| 4ca80 |  72 65 63 74 69 76 65 73 29 29 0a 0a 28 64 65 66    76 61 72 20 6c 65 64 67 65 72 2d 66 6f 6e 74 2d  | rectives))..(defvar.ledger-font- | 
| 4caa0 |  6c 6f 63 6b 2d 6b 65 79 77 6f 72 64 73 0a 20 20    60 28 28 22 5e 5b 3b 23 25 7c 2a 5d 2e 2a 24 22  | lock-keywords...`(("^[;#%|*].*$" | 
| 4cac0 |  20 2e 20 27 6c 65 64 67 65 72 2d 66 6f 6e 74 2d    63 6f 6d 6d 65 6e 74 2d 66 61 63 65 29 0a 20 20  | ...'ledger-font-comment-face)... | 
| 4cae0 |  20 20 28 22 5e 5c 5c 28 61 63 63 6f 75 6e 74 5c    5c 29 5c 5c 28 3f 3a 5b 5b 3a 62 6c 61 6e 6b 3a  | ..("^\\(account\\)\\(?:[[:blank: | 
| 4cb00 |  5d 5d 5c 5c 28 2e 2a 5c 5c 29 5c 5c 29 3f 24 22    0a 20 20 20 20 20 28 31 20 27 6c 65 64 67 65 72  | ]]\\(.*\\)\\)?$"......(1.'ledger | 
| 4cb20 |  2d 66 6f 6e 74 2d 61 63 63 6f 75 6e 74 2d 64 69    72 65 63 74 69 76 65 2d 66 61 63 65 29 0a 20 20  | -font-account-directive-face)... | 
| 4cb40 |  20 20 20 28 32 20 27 6c 65 64 67 65 72 2d 66 6f    6e 74 2d 61 63 63 6f 75 6e 74 2d 6e 61 6d 65 2d  | ...(2.'ledger-font-account-name- | 
| 4cb60 |  66 61 63 65 20 6e 69 6c 20 3a 6c 61 78 29 0a 20    20 20 20 20 2c 40 28 6c 65 64 67 65 72 2d 66 6f  | face.nil.:lax)......,@(ledger-fo | 
| 4cb80 |  6e 74 2d 73 75 62 64 69 72 65 63 74 69 76 65 73    0a 20 20 20 20 20 20 20 20 27 28 28 22 5e 5b 20  | nt-subdirectives.........'(("^[. | 
| 4cba0 |  5c 74 5d 2b 5c 5c 28 3b 2e 2a 5c 5c 29 22 20 28    31 20 27 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 63  | \t]+\\(;.*\\)".(1.'ledger-font-c | 
| 4cbc0 |  6f 6d 6d 65 6e 74 2d 66 61 63 65 29 29 0a 20 20    20 20 20 20 20 20 20 20 28 22 5e 5b 20 5c 74 5d  | omment-face))...........("^[.\t] | 
| 4cbe0 |  2b 5c 5c 28 6e 6f 74 65 5c 5c 29 5c 5c 28 3f 3a    5b 5b 3a 62 6c 61 6e 6b 3a 5d 5d 2b 5c 5c 28 2e  | +\\(note\\)\\(?:[[:blank:]]+\\(. | 
| 4cc00 |  2a 5c 5c 29 5c 5c 29 3f 24 22 0a 20 20 20 20 20    20 20 20 20 20 20 28 31 20 27 6c 65 64 67 65 72  | *\\)\\)?$"............(1.'ledger | 
| 4cc20 |  2d 66 6f 6e 74 2d 6e 6f 74 65 2d 64 69 72 65 63    74 69 76 65 2d 66 61 63 65 29 0a 20 20 20 20 20  | -font-note-directive-face)...... | 
| 4cc40 |  20 20 20 20 20 20 28 32 20 27 6c 65 64 67 65 72    2d 66 6f 6e 74 2d 6e 6f 74 65 2d 74 65 78 74 2d  | ......(2.'ledger-font-note-text- | 
| 4cc60 |  66 61 63 65 20 6e 69 6c 20 3a 6c 61 78 29 29 0a    20 20 20 20 20 20 20 20 20 20 28 22 5e 5b 20 5c  | face.nil.:lax))...........("^[.\ | 
| 4cc80 |  74 5d 2b 5c 5c 28 61 6c 69 61 73 5c 5c 29 5c 5c    28 3f 3a 5b 5b 3a 62 6c 61 6e 6b 3a 5d 5d 2b 5c  | t]+\\(alias\\)\\(?:[[:blank:]]+\ | 
| 4cca0 |  5c 28 2e 2a 5c 5c 29 5c 5c 29 3f 24 22 0a 20 20    20 20 20 20 20 20 20 20 20 28 31 20 27 6c 65 64  | \(.*\\)\\)?$"............(1.'led | 
| 4ccc0 |  67 65 72 2d 66 6f 6e 74 2d 61 6c 69 61 73 2d 64    69 72 65 63 74 69 76 65 2d 66 61 63 65 29 0a 20  | ger-font-alias-directive-face).. | 
| 4cce0 |  20 20 20 20 20 20 20 20 20 20 28 32 20 27 6c 65    64 67 65 72 2d 66 6f 6e 74 2d 61 63 63 6f 75 6e  | ..........(2.'ledger-font-accoun | 
| 4cd00 |  74 2d 6e 61 6d 65 2d 66 61 63 65 20 6e 69 6c 20    3a 6c 61 78 29 29 0a 20 20 20 20 20 20 20 20 20  | t-name-face.nil.:lax)).......... | 
| 4cd20 |  20 28 22 5e 5b 20 5c 74 5d 2b 5c 5c 28 70 61 79    65 65 5c 5c 29 5c 5c 28 3f 3a 5b 5b 3a 62 6c 61  | .("^[.\t]+\\(payee\\)\\(?:[[:bla | 
| 4cd40 |  6e 6b 3a 5d 5d 2b 5c 5c 28 2e 2a 5c 5c 29 5c 5c    29 3f 24 22 0a 20 20 20 20 20 20 20 20 20 20 20  | nk:]]+\\(.*\\)\\)?$"............ | 
| 4cd60 |  28 31 20 27 6c 65 64 67 65 72 2d 66 6f 6e 74 2d    70 61 79 65 65 2d 64 69 72 65 63 74 69 76 65 2d  | (1.'ledger-font-payee-directive- | 
| 4cd80 |  66 61 63 65 29 0a 20 20 20 20 20 20 20 20 20 20    20 28 32 20 27 6c 65 64 67 65 72 2d 66 6f 6e 74  | face)............(2.'ledger-font | 
| 4cda0 |  2d 70 61 79 65 65 2d 72 65 67 65 78 2d 66 61 63    65 20 6e 69 6c 20 3a 6c 61 78 29 29 0a 20 20 20  | -payee-regex-face.nil.:lax)).... | 
| 4cdc0 |  20 20 20 20 20 20 20 28 22 5e 5b 20 5c 74 5d 2b    5c 5c 28 63 68 65 63 6b 5c 5c 29 5c 5c 28 3f 3a  | .......("^[.\t]+\\(check\\)\\(?: | 
| 4cde0 |  5b 5b 3a 62 6c 61 6e 6b 3a 5d 5d 2b 5c 5c 28 2e    2a 5c 5c 29 5c 5c 29 3f 24 22 0a 20 20 20 20 20  | [[:blank:]]+\\(.*\\)\\)?$"...... | 
| 4ce00 |  20 20 20 20 20 20 28 31 20 27 6c 65 64 67 65 72    2d 66 6f 6e 74 2d 63 68 65 63 6b 2d 64 69 72 65  | ......(1.'ledger-font-check-dire | 
| 4ce20 |  63 74 69 76 65 2d 66 61 63 65 29 0a 20 20 20 20    20 20 20 20 20 20 20 28 32 20 27 6c 65 64 67 65  | ctive-face)............(2.'ledge | 
| 4ce40 |  72 2d 66 6f 6e 74 2d 63 68 65 63 6b 2d 63 6f 6e    64 69 74 69 6f 6e 2d 66 61 63 65 20 6e 69 6c 20  | r-font-check-condition-face.nil. | 
| 4ce60 |  3a 6c 61 78 29 29 0a 20 20 20 20 20 20 20 20 20    20 28 22 5e 5b 20 5c 74 5d 2b 5c 5c 28 61 73 73  | :lax))...........("^[.\t]+\\(ass | 
| 4ce80 |  65 72 74 5c 5c 29 5c 5c 28 3f 3a 5b 5b 3a 62 6c    61 6e 6b 3a 5d 5d 2b 5c 5c 28 2e 2a 5c 5c 29 5c  | ert\\)\\(?:[[:blank:]]+\\(.*\\)\ | 
| 4cea0 |  5c 29 3f 24 22 0a 20 20 20 20 20 20 20 20 20 20    20 28 31 20 27 6c 65 64 67 65 72 2d 66 6f 6e 74  | \)?$"............(1.'ledger-font | 
| 4cec0 |  2d 61 73 73 65 72 74 2d 64 69 72 65 63 74 69 76    65 2d 66 61 63 65 29 0a 20 20 20 20 20 20 20 20  | -assert-directive-face)......... | 
| 4cee0 |  20 20 20 28 32 20 27 6c 65 64 67 65 72 2d 66 6f    6e 74 2d 61 73 73 65 72 74 2d 63 6f 6e 64 69 74  | ...(2.'ledger-font-assert-condit | 
| 4cf00 |  69 6f 6e 2d 66 61 63 65 20 6e 69 6c 20 3a 6c 61    78 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 22  | ion-face.nil.:lax))...........(" | 
| 4cf20 |  5e 5b 20 5c 74 5d 2b 5c 5c 28 65 76 61 6c 5c 5c    29 5c 5c 28 3f 3a 5b 5b 3a 62 6c 61 6e 6b 3a 5d  | ^[.\t]+\\(eval\\)\\(?:[[:blank:] | 
| 4cf40 |  5d 2b 5c 5c 28 2e 2a 5c 5c 29 5c 5c 29 3f 24 22    0a 20 20 20 20 20 20 20 20 20 20 20 28 31 20 27  | ]+\\(.*\\)\\)?$"............(1.' | 
| 4cf60 |  6c 65 64 67 65 72 2d 66 6f 6e 74 2d 65 78 70 72    2d 64 69 72 65 63 74 69 76 65 2d 66 61 63 65 29  | ledger-font-expr-directive-face) | 
| 4cf80 |  0a 20 20 20 20 20 20 20 20 20 20 20 28 32 20 27    6c 65 64 67 65 72 2d 66 6f 6e 74 2d 65 78 70 72  | ............(2.'ledger-font-expr | 
| 4cfa0 |  2d 65 78 70 72 65 73 73 69 6f 6e 2d 66 61 63 65    20 6e 69 6c 20 3a 6c 61 78 29 29 0a 20 20 20 20  | -expression-face.nil.:lax))..... | 
| 4cfc0 |  20 20 20 20 20 20 28 22 5e 5b 20 5c 74 5d 2b 5c    5c 28 64 65 66 61 75 6c 74 5c 5c 29 5c 5c 3e 2e  | ......("^[.\t]+\\(default\\)\\>. | 
| 4cfe0 |  2a 22 0a 20 20 20 20 20 20 20 20 20 20 20 28 31    20 27 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 64 65  | *"............(1.'ledger-font-de | 
| 4d000 |  66 61 75 6c 74 2d 64 69 72 65 63 74 69 76 65 2d    66 61 63 65 29 29 29 29 29 0a 20 20 20 20 28 22  | fault-directive-face))))).....(" | 
| 4d020 |  5e 5c 5c 28 61 6c 69 61 73 5c 5c 29 5c 5c 28 3f    3a 5b 5b 3a 62 6c 61 6e 6b 3a 5d 5d 2b 5c 5c 28  | ^\\(alias\\)\\(?:[[:blank:]]+\\( | 
| 4d040 |  5b 5e 3d 5c 6e 5d 2a 5c 5c 29 5c 5c 28 3f 3a 3d    5c 5c 28 2e 2a 5c 5c 29 5c 5c 29 3f 5c 5c 29 3f  | [^=\n]*\\)\\(?:=\\(.*\\)\\)?\\)? | 
| 4d060 |  24 22 0a 20 20 20 20 20 28 31 20 27 6c 65 64 67    65 72 2d 66 6f 6e 74 2d 61 6c 69 61 73 2d 64 69  | $"......(1.'ledger-font-alias-di | 
| 4d080 |  72 65 63 74 69 76 65 2d 66 61 63 65 29 0a 20 20    20 20 20 28 32 20 27 6c 65 64 67 65 72 2d 66 6f  | rective-face)......(2.'ledger-fo | 
| 4d0a0 |  6e 74 2d 61 63 63 6f 75 6e 74 2d 6e 61 6d 65 2d    66 61 63 65 20 6e 69 6c 20 3a 6c 61 78 29 0a 20  | nt-account-name-face.nil.:lax).. | 
| 4d0c0 |  20 20 20 20 28 33 20 27 6c 65 64 67 65 72 2d 66    6f 6e 74 2d 61 6c 69 61 73 2d 64 65 66 69 6e 69  | ....(3.'ledger-font-alias-defini | 
| 4d0e0 |  74 69 6f 6e 2d 66 61 63 65 20 6e 69 6c 20 3a 6c    61 78 29 29 0a 20 20 20 20 28 2c 28 63 6f 6e 63  | tion-face.nil.:lax)).....(,(conc | 
| 4d100 |  61 74 20 22 5e 5c 5c 28 61 70 70 6c 79 5c 5c 29    5c 5c 28 3f 3a 5b 5b 3a 62 6c 61 6e 6b 3a 5d 5d  | at."^\\(apply\\)\\(?:[[:blank:]] | 
| 4d120 |  2b 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 22 5c 5c 28 3f 3a 5c 5c 28 61 63 63 6f 75 6e  | +"..............."\\(?:\\(accoun | 
| 4d140 |  74 5c 5c 29 5c 5c 28 3f 3a 5b 5b 3a 62 6c 61 6e    6b 3a 5d 5d 2b 5c 5c 28 2e 2a 5c 5c 29 5c 5c 29  | t\\)\\(?:[[:blank:]]+\\(.*\\)\\) | 
| 4d160 |  3f 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 22 5c 5c 7c 5c 5c 28 74 61 67 5c 5c 29 5c 5c  | ?"..............."\\|\\(tag\\)\\ | 
| 4d180 |  28 3f 3a 5b 5b 3a 62 6c 61 6e 6b 3a 5d 5d 2b 5c    5c 28 2e 2a 5c 5c 29 5c 5c 29 3f 5c 5c 29 5c 5c  | (?:[[:blank:]]+\\(.*\\)\\)?\\)\\ | 
| 4d1a0 |  29 3f 24 22 29 0a 20 20 20 20 20 28 31 20 27 6c    65 64 67 65 72 2d 66 6f 6e 74 2d 61 70 70 6c 79  | )?$")......(1.'ledger-font-apply | 
| 4d1c0 |  2d 64 69 72 65 63 74 69 76 65 2d 66 61 63 65 29    0a 20 20 20 20 20 28 32 20 27 6c 65 64 67 65 72  | -directive-face)......(2.'ledger | 
| 4d1e0 |  2d 66 6f 6e 74 2d 61 70 70 6c 79 2d 64 69 72 65    63 74 69 76 65 2d 66 61 63 65 20 6e 69 6c 20 3a  | -font-apply-directive-face.nil.: | 
| 4d200 |  6c 61 78 29 0a 20 20 20 20 20 28 33 20 27 6c 65    64 67 65 72 2d 66 6f 6e 74 2d 61 70 70 6c 79 2d  | lax)......(3.'ledger-font-apply- | 
| 4d220 |  61 63 63 6f 75 6e 74 2d 66 61 63 65 20 6e 69 6c    20 3a 6c 61 78 29 0a 20 20 20 20 20 28 34 20 27  | account-face.nil.:lax)......(4.' | 
| 4d240 |  6c 65 64 67 65 72 2d 66 6f 6e 74 2d 61 70 70 6c    79 2d 64 69 72 65 63 74 69 76 65 2d 66 61 63 65  | ledger-font-apply-directive-face | 
| 4d260 |  20 6e 69 6c 20 3a 6c 61 78 29 0a 20 20 20 20 20    28 35 20 27 6c 65 64 67 65 72 2d 66 6f 6e 74 2d  | .nil.:lax)......(5.'ledger-font- | 
| 4d280 |  61 70 70 6c 79 2d 74 61 67 2d 66 61 63 65 20 6e    69 6c 20 3a 6c 61 78 29 29 0a 20 20 20 20 28 22  | apply-tag-face.nil.:lax)).....(" | 
| 4d2a0 |  5e 5c 5c 28 61 73 73 65 72 74 5c 5c 29 5c 5c 28    3f 3a 5b 5b 3a 62 6c 61 6e 6b 3a 5d 5d 2b 5c 5c  | ^\\(assert\\)\\(?:[[:blank:]]+\\ | 
| 4d2c0 |  28 2e 2a 5c 5c 29 5c 5c 29 3f 24 22 0a 20 20 20    20 20 28 31 20 27 6c 65 64 67 65 72 2d 66 6f 6e  | (.*\\)\\)?$"......(1.'ledger-fon | 
| 4d2e0 |  74 2d 61 73 73 65 72 74 2d 64 69 72 65 63 74 69    76 65 2d 66 61 63 65 29 0a 20 20 20 20 20 28 32  | t-assert-directive-face)......(2 | 
| 4d300 |  20 27 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 61 73    73 65 72 74 2d 63 6f 6e 64 69 74 69 6f 6e 2d 66  | .'ledger-font-assert-condition-f | 
| 4d320 |  61 63 65 20 6e 69 6c 20 3a 6c 61 78 29 29 0a 20    20 20 20 28 22 5e 5c 5c 28 62 75 63 6b 65 74 5c  | ace.nil.:lax)).....("^\\(bucket\ | 
| 4d340 |  5c 7c 41 5c 5c 29 5c 5c 28 3f 3a 5b 5b 3a 62 6c    61 6e 6b 3a 5d 5d 2b 5c 5c 28 2e 2a 5c 5c 29 5c  | \|A\\)\\(?:[[:blank:]]+\\(.*\\)\ | 
| 4d360 |  5c 29 3f 24 22 0a 20 20 20 20 20 28 31 20 27 6c    65 64 67 65 72 2d 66 6f 6e 74 2d 62 75 63 6b 65  | \)?$"......(1.'ledger-font-bucke | 
| 4d380 |  74 2d 64 69 72 65 63 74 69 76 65 2d 66 61 63 65    29 0a 20 20 20 20 20 28 32 20 27 6c 65 64 67 65  | t-directive-face)......(2.'ledge | 
| 4d3a0 |  72 2d 66 6f 6e 74 2d 62 75 63 6b 65 74 2d 61 63    63 6f 75 6e 74 2d 66 61 63 65 20 6e 69 6c 20 3a  | r-font-bucket-account-face.nil.: | 
| 4d3c0 |  6c 61 78 29 29 0a 20 20 20 20 28 2c 28 63 6f 6e    63 61 74 20 22 5e 5c 5c 28 43 5c 5c 29 22 0a 20  | lax)).....(,(concat."^\\(C\\)".. | 
| 4d3e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 22 5c 5c    28 3f 3a 5b 5b 3a 62 6c 61 6e 6b 3a 5d 5d 2b 5c  | ............."\\(?:[[:blank:]]+\ | 
| 4d400 |  5c 28 5b 5e 3d 5c 6e 5d 2a 3f 5c 5c 29 5b 5b 3a    62 6c 61 6e 6b 3a 5d 5d 2a 22 0a 20 20 20 20 20  | \([^=\n]*?\\)[[:blank:]]*"...... | 
| 4d420 |  20 20 20 20 20 20 20 20 20 22 5c 5c 28 3f 3a 3d    5b 5b 3a 62 6c 61 6e 6b 3a 5d 5d 2a 5c 5c 28 2e  | ........."\\(?:=[[:blank:]]*\\(. | 
| 4d440 |  2a 5c 5c 29 5c 5c 29 3f 5c 5c 29 3f 24 22 29 0a    20 20 20 20 20 28 31 20 27 6c 65 64 67 65 72 2d  | *\\)\\)?\\)?$")......(1.'ledger- | 
| 4d460 |  66 6f 6e 74 2d 43 2d 64 69 72 65 63 74 69 76 65    2d 66 61 63 65 29 0a 20 20 20 20 20 28 32 20 27  | font-C-directive-face)......(2.' | 
| 4d480 |  6c 65 64 67 65 72 2d 66 6f 6e 74 2d 43 2d 61 6d    6f 75 6e 74 2d 66 61 63 65 20 6e 69 6c 20 3a 6c  | ledger-font-C-amount-face.nil.:l | 
| 4d4a0 |  61 78 29 0a 20 20 20 20 20 28 33 20 27 6c 65 64    67 65 72 2d 66 6f 6e 74 2d 43 2d 61 6d 6f 75 6e  | ax)......(3.'ledger-font-C-amoun | 
| 4d4c0 |  74 2d 66 61 63 65 20 6e 69 6c 20 3a 6c 61 78 29    29 0a 20 20 20 20 28 2c 28 63 6f 6e 63 61 74 20  | t-face.nil.:lax)).....(,(concat. | 
| 4d4e0 |  22 5e 5c 5c 28 63 61 70 74 75 72 65 5c 5c 29 22    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22  | "^\\(capture\\)"..............." | 
| 4d500 |  5c 5c 28 3f 3a 5b 5b 3a 62 6c 61 6e 6b 3a 5d 5d    2b 5c 5c 28 2e 2a 3f 5c 5c 29 22 0a 20 20 20 20  | \\(?:[[:blank:]]+\\(.*?\\)"..... | 
| 4d520 |  20 20 20 20 20 20 20 20 20 20 22 5c 5c 28 3f 3a    5c 5c 28 3f 3a 5c 74 5c 5c 7c 5b 20 5c 74 5d 5c  | .........."\\(?:\\(?:\t\\|[.\t]\ | 
| 4d540 |  5c 7b 32 2c 5c 5c 7d 5c 5c 29 5c 5c 28 2e 2a 5c    5c 29 5c 5c 29 3f 5c 5c 29 3f 24 22 29 0a 20 20  | \{2,\\}\\)\\(.*\\)\\)?\\)?$")... | 
| 4d560 |  20 20 20 28 31 20 27 6c 65 64 67 65 72 2d 66 6f    6e 74 2d 63 61 70 74 75 72 65 2d 64 69 72 65 63  | ...(1.'ledger-font-capture-direc | 
| 4d580 |  74 69 76 65 2d 66 61 63 65 29 0a 20 20 20 20 20    28 32 20 27 6c 65 64 67 65 72 2d 66 6f 6e 74 2d  | tive-face)......(2.'ledger-font- | 
| 4d5a0 |  63 61 70 74 75 72 65 2d 61 63 63 6f 75 6e 74 2d    66 61 63 65 20 6e 69 6c 20 3a 6c 61 78 29 0a 20  | capture-account-face.nil.:lax).. | 
| 4d5c0 |  20 20 20 20 28 33 20 27 6c 65 64 67 65 72 2d 66    6f 6e 74 2d 63 61 70 74 75 72 65 2d 72 65 67 65  | ....(3.'ledger-font-capture-rege | 
| 4d5e0 |  78 2d 66 61 63 65 20 6e 69 6c 20 3a 6c 61 78 29    29 0a 20 20 20 20 28 22 5e 5c 5c 28 63 68 65 63  | x-face.nil.:lax)).....("^\\(chec | 
| 4d600 |  6b 5c 5c 29 5c 5c 28 3f 3a 5b 5b 3a 62 6c 61 6e    6b 3a 5d 5d 2b 5c 5c 28 2e 2a 5c 5c 29 5c 5c 29  | k\\)\\(?:[[:blank:]]+\\(.*\\)\\) | 
| 4d620 |  3f 24 22 0a 20 20 20 20 20 28 31 20 27 6c 65 64    67 65 72 2d 66 6f 6e 74 2d 63 68 65 63 6b 2d 64  | ?$"......(1.'ledger-font-check-d | 
| 4d640 |  69 72 65 63 74 69 76 65 2d 66 61 63 65 29 0a 20    20 20 20 20 28 32 20 27 6c 65 64 67 65 72 2d 66  | irective-face)......(2.'ledger-f | 
| 4d660 |  6f 6e 74 2d 63 68 65 63 6b 2d 63 6f 6e 64 69 74    69 6f 6e 2d 66 61 63 65 20 6e 69 6c 20 3a 6c 61  | ont-check-condition-face.nil.:la | 
| 4d680 |  78 29 29 0a 20 20 20 20 28 2c 28 63 6f 6e 63 61    74 20 22 5e 5c 5c 28 3f 3a 63 6f 6d 6d 65 6e 74  | x)).....(,(concat."^\\(?:comment | 
| 4d6a0 |  5c 5c 7c 74 65 73 74 5c 5c 29 5c 5c 3e 22 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 22 5b 5e  | \\|test\\)\\>"..............."[^ | 
| 4d6c0 |  5c 30 5d 2a 3f 5c 6e 22 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 22 65 6e 64 5b 5b 3a 62 6c  | \0]*?\n"..............."end[[:bl | 
| 4d6e0 |  61 6e 6b 3a 5d 5d 2b 5c 5c 28 3f 3a 63 6f 6d 6d    65 6e 74 5c 5c 7c 74 65 73 74 5c 5c 29 5c 5c 3e  | ank:]]+\\(?:comment\\|test\\)\\> | 
| 4d700 |  2e 2a 5c 6e 22 29 0a 20 20 20 20 20 2e 20 27 6c    65 64 67 65 72 2d 66 6f 6e 74 2d 63 6f 6d 6d 65  | .*\n")........'ledger-font-comme | 
| 4d720 |  6e 74 2d 66 61 63 65 29 0a 20 20 20 20 28 22 5e    5c 5c 28 63 6f 6d 6d 6f 64 69 74 79 5c 5c 29 5c  | nt-face).....("^\\(commodity\\)\ | 
| 4d740 |  5c 28 3f 3a 5b 5b 3a 62 6c 61 6e 6b 3a 5d 5d 2b    5c 5c 28 2e 2a 5c 5c 29 5c 5c 29 3f 24 22 0a 20  | \(?:[[:blank:]]+\\(.*\\)\\)?$".. | 
| 4d760 |  20 20 20 20 28 31 20 27 6c 65 64 67 65 72 2d 66    6f 6e 74 2d 63 6f 6d 6d 6f 64 69 74 79 2d 64 69  | ....(1.'ledger-font-commodity-di | 
| 4d780 |  72 65 63 74 69 76 65 2d 66 61 63 65 29 0a 20 20    20 20 20 28 32 20 27 6c 65 64 67 65 72 2d 66 6f  | rective-face)......(2.'ledger-fo | 
| 4d7a0 |  6e 74 2d 63 6f 6d 6d 6f 64 69 74 79 2d 6e 61 6d    65 2d 66 61 63 65 20 6e 69 6c 20 3a 6c 61 78 29  | nt-commodity-name-face.nil.:lax) | 
| 4d7c0 |  0a 20 20 20 20 20 2c 40 28 6c 65 64 67 65 72 2d    66 6f 6e 74 2d 73 75 62 64 69 72 65 63 74 69 76  | ......,@(ledger-font-subdirectiv | 
| 4d7e0 |  65 73 0a 20 20 20 20 20 20 20 20 27 28 28 22 5e    5b 20 5c 74 5d 2b 5c 5c 28 3b 2e 2a 5c 5c 29 22  | es.........'(("^[.\t]+\\(;.*\\)" | 
| 4d800 |  20 28 31 20 27 6c 65 64 67 65 72 2d 66 6f 6e 74    2d 63 6f 6d 6d 65 6e 74 2d 66 61 63 65 29 29 0a  | .(1.'ledger-font-comment-face)). | 
| 4d820 |  20 20 20 20 20 20 20 20 20 20 28 22 5e 5b 20 5c    74 5d 2b 5c 5c 28 6e 6f 74 65 5c 5c 29 5c 5c 28  | ..........("^[.\t]+\\(note\\)\\( | 
| 4d840 |  3f 3a 5b 5b 3a 62 6c 61 6e 6b 3a 5d 5d 2b 5c 5c    28 2e 2a 5c 5c 29 5c 5c 29 3f 24 22 0a 20 20 20  | ?:[[:blank:]]+\\(.*\\)\\)?$".... | 
| 4d860 |  20 20 20 20 20 20 20 20 28 31 20 27 6c 65 64 67    65 72 2d 66 6f 6e 74 2d 6e 6f 74 65 2d 64 69 72  | ........(1.'ledger-font-note-dir | 
| 4d880 |  65 63 74 69 76 65 2d 66 61 63 65 29 0a 20 20 20    20 20 20 20 20 20 20 20 28 32 20 27 6c 65 64 67  | ective-face)............(2.'ledg | 
| 4d8a0 |  65 72 2d 66 6f 6e 74 2d 6e 6f 74 65 2d 74 65 78    74 2d 66 61 63 65 20 6e 69 6c 20 3a 6c 61 78 29  | er-font-note-text-face.nil.:lax) | 
| 4d8c0 |  29 0a 20 20 20 20 20 20 20 20 20 20 28 22 5e 5b    20 5c 74 5d 2b 5c 5c 28 66 6f 72 6d 61 74 5c 5c  | )...........("^[.\t]+\\(format\\ | 
| 4d8e0 |  29 5c 5c 28 3f 3a 5b 5b 3a 62 6c 61 6e 6b 3a 5d    5d 2b 5c 5c 28 2e 2a 5c 5c 29 5c 5c 29 3f 24 22  | )\\(?:[[:blank:]]+\\(.*\\)\\)?$" | 
| 4d900 |  0a 20 20 20 20 20 20 20 20 20 20 20 28 31 20 27    6c 65 64 67 65 72 2d 66 6f 6e 74 2d 66 6f 72 6d  | ............(1.'ledger-font-form | 
| 4d920 |  61 74 2d 64 69 72 65 63 74 69 76 65 2d 66 61 63    65 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 32  | at-directive-face)............(2 | 
| 4d940 |  20 27 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 63 6f    6d 6d 6f 64 69 74 79 2d 66 6f 72 6d 61 74 2d 66  | .'ledger-font-commodity-format-f | 
| 4d960 |  61 63 65 20 6e 69 6c 20 3a 6c 61 78 29 29 0a 20    20 20 20 20 20 20 20 20 20 28 22 5e 5b 20 5c 74  | ace.nil.:lax))...........("^[.\t | 
| 4d980 |  5d 2b 5c 5c 28 6e 6f 6d 61 72 6b 65 74 5c 5c 29    5c 5c 3e 2e 2a 22 0a 20 20 20 20 20 20 20 20 20  | ]+\\(nomarket\\)\\>.*".......... | 
| 4d9a0 |  20 20 28 31 20 27 6c 65 64 67 65 72 2d 66 6f 6e    74 2d 4e 2d 64 69 72 65 63 74 69 76 65 2d 66 61  | ..(1.'ledger-font-N-directive-fa | 
| 4d9c0 |  63 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 28    22 5e 5b 20 5c 74 5d 2b 5c 5c 28 64 65 66 61 75  | ce))...........("^[.\t]+\\(defau | 
| 4d9e0 |  6c 74 5c 5c 29 5c 5c 3e 2e 2a 22 0a 20 20 20 20    20 20 20 20 20 20 20 28 31 20 27 6c 65 64 67 65  | lt\\)\\>.*"............(1.'ledge | 
| 4da00 |  72 2d 66 6f 6e 74 2d 64 65 66 61 75 6c 74 2d 64    69 72 65 63 74 69 76 65 2d 66 61 63 65 29 29 29  | r-font-default-directive-face))) | 
| 4da20 |  29 29 0a 20 20 20 20 28 22 5e 5c 5c 28 44 5c 5c    29 5c 5c 28 3f 3a 5b 5b 3a 62 6c 61 6e 6b 3a 5d  | )).....("^\\(D\\)\\(?:[[:blank:] | 
| 4da40 |  5d 2b 5c 5c 28 2e 2a 5c 5c 29 5c 5c 29 3f 24 22    0a 20 20 20 20 20 28 31 20 27 6c 65 64 67 65 72  | ]+\\(.*\\)\\)?$"......(1.'ledger | 
| 4da60 |  2d 66 6f 6e 74 2d 44 2d 64 69 72 65 63 74 69 76    65 2d 66 61 63 65 29 0a 20 20 20 20 20 28 32 20  | -font-D-directive-face)......(2. | 
| 4da80 |  27 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 63 6f 6d    6d 6f 64 69 74 79 2d 66 6f 72 6d 61 74 2d 66 61  | 'ledger-font-commodity-format-fa | 
| 4daa0 |  63 65 20 6e 69 6c 20 3a 6c 61 78 29 29 0a 20 20    20 20 28 2c 28 63 6f 6e 63 61 74 20 22 5e 5c 5c  | ce.nil.:lax)).....(,(concat."^\\ | 
| 4dac0 |  28 64 65 66 69 6e 65 5c 5c 7c 64 65 66 5c 5c 29    22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | (define\\|def\\)"............... | 
| 4dae0 |  22 5c 5c 28 3f 3a 5b 5b 3a 62 6c 61 6e 6b 3a 5d    5d 2b 5c 5c 28 5b 5e 3d 5c 6e 5d 2a 3f 5c 5c 29  | "\\(?:[[:blank:]]+\\([^=\n]*?\\) | 
| 4db00 |  5b 5b 3a 62 6c 61 6e 6b 3a 5d 5d 2a 22 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 22 5c 5c 28  | [[:blank:]]*"..............."\\( | 
| 4db20 |  3f 3a 3d 5b 5b 3a 62 6c 61 6e 6b 3a 5d 5d 2a 5c    5c 28 2e 2a 5c 5c 29 5c 5c 29 3f 5c 5c 29 3f 24  | ?:=[[:blank:]]*\\(.*\\)\\)?\\)?$ | 
| 4db40 |  22 29 0a 20 20 20 20 20 28 31 20 27 6c 65 64 67    65 72 2d 66 6f 6e 74 2d 64 65 66 69 6e 65 2d 64  | ")......(1.'ledger-font-define-d | 
| 4db60 |  69 72 65 63 74 69 76 65 2d 66 61 63 65 29 0a 20    20 20 20 20 28 32 20 27 6c 65 64 67 65 72 2d 66  | irective-face)......(2.'ledger-f | 
| 4db80 |  6f 6e 74 2d 64 65 66 69 6e 65 2d 6e 61 6d 65 2d    66 61 63 65 20 6e 69 6c 20 3a 6c 61 78 29 0a 20  | ont-define-name-face.nil.:lax).. | 
| 4dba0 |  20 20 20 20 28 33 20 27 6c 65 64 67 65 72 2d 66    6f 6e 74 2d 64 65 66 69 6e 65 2d 62 6f 64 79 2d  | ....(3.'ledger-font-define-body- | 
| 4dbc0 |  66 61 63 65 20 6e 69 6c 20 3a 6c 61 78 29 29 0a    20 20 20 20 28 2c 28 63 6f 6e 63 61 74 20 22 5e  | face.nil.:lax)).....(,(concat."^ | 
| 4dbe0 |  5c 5c 28 65 6e 64 5c 5c 29 22 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 22 5c 5c 28 3f 3a 5b  | \\(end\\)"..............."\\(?:[ | 
| 4dc00 |  5b 3a 62 6c 61 6e 6b 3a 5d 5d 2b 5c 5c 28 61 70    70 6c 79 5c 5c 29 22 0a 20 20 20 20 20 20 20 20  | [:blank:]]+\\(apply\\)"......... | 
| 4dc20 |  20 20 20 20 20 20 22 5c 5c 28 3f 3a 5b 5b 3a 62    6c 61 6e 6b 3a 5d 5d 2b 5c 5c 28 61 63 63 6f 75  | ......"\\(?:[[:blank:]]+\\(accou | 
| 4dc40 |  6e 74 5c 5c 7c 74 61 67 5c 5c 29 5c 5c 3e 2e 2a    5c 5c 29 3f 5c 5c 29 3f 24 22 29 0a 20 20 20 20  | nt\\|tag\\)\\>.*\\)?\\)?$")..... | 
| 4dc60 |  20 28 31 20 27 6c 65 64 67 65 72 2d 66 6f 6e 74    2d 65 6e 64 2d 64 69 72 65 63 74 69 76 65 2d 66  | .(1.'ledger-font-end-directive-f | 
| 4dc80 |  61 63 65 29 0a 20 20 20 20 20 28 32 20 27 6c 65    64 67 65 72 2d 66 6f 6e 74 2d 65 6e 64 2d 64 69  | ace)......(2.'ledger-font-end-di | 
| 4dca0 |  72 65 63 74 69 76 65 2d 66 61 63 65 20 6e 69 6c    20 3a 6c 61 78 29 0a 20 20 20 20 20 28 33 20 27  | rective-face.nil.:lax)......(3.' | 
| 4dcc0 |  6c 65 64 67 65 72 2d 66 6f 6e 74 2d 65 6e 64 2d    64 69 72 65 63 74 69 76 65 2d 66 61 63 65 20 6e  | ledger-font-end-directive-face.n | 
| 4dce0 |  69 6c 20 3a 6c 61 78 29 29 0a 20 20 20 20 28 22    5e 5c 5c 28 65 6e 64 66 69 78 65 64 5c 5c 29 5c  | il.:lax)).....("^\\(endfixed\\)\ | 
| 4dd00 |  5c 28 3f 3a 5b 5b 3a 62 6c 61 6e 6b 3a 5d 5d 2b    5c 5c 28 2e 2a 5c 5c 29 5c 5c 29 3f 24 22 0a 20  | \(?:[[:blank:]]+\\(.*\\)\\)?$".. | 
| 4dd20 |  20 20 20 20 28 31 20 27 6c 65 64 67 65 72 2d 66    6f 6e 74 2d 65 6e 64 2d 64 69 72 65 63 74 69 76  | ....(1.'ledger-font-end-directiv | 
| 4dd40 |  65 2d 66 61 63 65 29 0a 20 20 20 20 20 28 32 20    27 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 66 69 78  | e-face)......(2.'ledger-font-fix | 
| 4dd60 |  65 64 2d 63 6f 6d 6d 6f 64 69 74 79 2d 66 61 63    65 20 6e 69 6c 20 3a 6c 61 78 29 29 0a 20 20 20  | ed-commodity-face.nil.:lax)).... | 
| 4dd80 |  20 28 22 5e 5c 5c 28 65 78 70 72 5c 5c 29 5c 5c    28 3f 3a 5b 5b 3a 62 6c 61 6e 6b 3a 5d 5d 2b 5c  | .("^\\(expr\\)\\(?:[[:blank:]]+\ | 
| 4dda0 |  5c 28 2e 2a 5c 5c 29 5c 5c 29 3f 24 22 0a 20 20    20 20 20 28 31 20 27 6c 65 64 67 65 72 2d 66 6f  | \(.*\\)\\)?$"......(1.'ledger-fo | 
| 4ddc0 |  6e 74 2d 65 78 70 72 2d 64 69 72 65 63 74 69 76    65 2d 66 61 63 65 29 0a 20 20 20 20 20 28 32 20  | nt-expr-directive-face)......(2. | 
| 4dde0 |  27 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 65 78 70    72 2d 65 78 70 72 65 73 73 69 6f 6e 2d 66 61 63  | 'ledger-font-expr-expression-fac | 
| 4de00 |  65 20 6e 69 6c 20 3a 6c 61 78 29 29 0a 20 20 20    20 28 22 5e 5c 5c 28 66 69 78 65 64 5c 5c 29 5c  | e.nil.:lax)).....("^\\(fixed\\)\ | 
| 4de20 |  5c 28 3f 3a 5b 5b 3a 62 6c 61 6e 6b 3a 5d 5d 2b    5c 5c 28 5b 5e 5b 3a 62 6c 61 6e 6b 3a 5d 5c 6e  | \(?:[[:blank:]]+\\([^[:blank:]\n | 
| 4de40 |  5d 2b 5c 5c 29 5c 5c 28 3f 3a 5b 5b 3a 62 6c 61    6e 6b 3a 5d 5d 2b 5c 5c 28 2e 2a 5c 5c 29 5c 5c  | ]+\\)\\(?:[[:blank:]]+\\(.*\\)\\ | 
| 4de60 |  29 3f 5c 5c 29 3f 24 22 0a 20 20 20 20 20 28 31    20 27 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 66 69  | )?\\)?$"......(1.'ledger-font-fi | 
| 4de80 |  78 65 64 2d 64 69 72 65 63 74 69 76 65 2d 66 61    63 65 29 0a 20 20 20 20 20 28 32 20 27 6c 65 64  | xed-directive-face)......(2.'led | 
| 4dea0 |  67 65 72 2d 66 6f 6e 74 2d 66 69 78 65 64 2d 63    6f 6d 6d 6f 64 69 74 79 2d 66 61 63 65 20 6e 69  | ger-font-fixed-commodity-face.ni | 
| 4dec0 |  6c 20 3a 6c 61 78 29 0a 20 20 20 20 20 28 33 20    27 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 66 69 78  | l.:lax)......(3.'ledger-font-fix | 
| 4dee0 |  65 64 2d 70 72 69 63 65 2d 66 61 63 65 20 6e 69    6c 20 3a 6c 61 78 29 29 0a 20 20 20 20 28 22 5e  | ed-price-face.nil.:lax)).....("^ | 
| 4df00 |  5c 5c 28 69 6e 63 6c 75 64 65 5c 5c 29 5c 5c 28    3f 3a 5b 5b 3a 62 6c 61 6e 6b 3a 5d 5d 2b 5c 5c  | \\(include\\)\\(?:[[:blank:]]+\\ | 
| 4df20 |  28 2e 2a 5c 5c 29 5c 5c 29 3f 24 22 0a 20 20 20    20 20 28 31 20 27 6c 65 64 67 65 72 2d 66 6f 6e  | (.*\\)\\)?$"......(1.'ledger-fon | 
| 4df40 |  74 2d 69 6e 63 6c 75 64 65 2d 64 69 72 65 63 74    69 76 65 2d 66 61 63 65 29 0a 20 20 20 20 20 28  | t-include-directive-face)......( | 
| 4df60 |  32 20 27 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 69    6e 63 6c 75 64 65 2d 66 69 6c 65 6e 61 6d 65 2d  | 2.'ledger-font-include-filename- | 
| 4df80 |  66 61 63 65 20 6e 69 6c 20 3a 6c 61 78 29 29 0a    20 20 20 20 28 22 5e 5c 5c 28 4e 5c 5c 29 5c 5c  | face.nil.:lax)).....("^\\(N\\)\\ | 
| 4dfa0 |  28 3f 3a 5b 5b 3a 62 6c 61 6e 6b 3a 5d 5d 2b 5c    5c 28 2e 2a 5c 5c 29 5c 5c 29 3f 24 22 0a 20 20  | (?:[[:blank:]]+\\(.*\\)\\)?$"... | 
| 4dfc0 |  20 20 20 28 31 20 27 6c 65 64 67 65 72 2d 66 6f    6e 74 2d 4e 2d 64 69 72 65 63 74 69 76 65 2d 66  | ...(1.'ledger-font-N-directive-f | 
| 4dfe0 |  61 63 65 29 0a 20 20 20 20 20 28 32 20 27 6c 65    64 67 65 72 2d 66 6f 6e 74 2d 4e 2d 73 79 6d 62  | ace)......(2.'ledger-font-N-symb | 
| 4e000 |  6f 6c 2d 66 61 63 65 20 6e 69 6c 20 3a 6c 61 78    29 29 0a 20 20 20 20 28 22 5e 5c 5c 28 70 61 79  | ol-face.nil.:lax)).....("^\\(pay | 
| 4e020 |  65 65 5c 5c 29 5c 5c 28 3f 3a 5b 5b 3a 62 6c 61    6e 6b 3a 5d 5d 2b 5c 5c 28 2e 2a 5c 5c 29 5c 5c  | ee\\)\\(?:[[:blank:]]+\\(.*\\)\\ | 
| 4e040 |  29 3f 24 22 0a 20 20 20 20 20 28 31 20 27 6c 65    64 67 65 72 2d 66 6f 6e 74 2d 70 61 79 65 65 2d  | )?$"......(1.'ledger-font-payee- | 
| 4e060 |  64 69 72 65 63 74 69 76 65 2d 66 61 63 65 29 0a    20 20 20 20 20 28 32 20 27 6c 65 64 67 65 72 2d  | directive-face)......(2.'ledger- | 
| 4e080 |  66 6f 6e 74 2d 70 61 79 65 65 2d 6e 61 6d 65 2d    66 61 63 65 20 6e 69 6c 20 3a 6c 61 78 29 0a 20  | font-payee-name-face.nil.:lax).. | 
| 4e0a0 |  20 20 20 20 2c 40 28 6c 65 64 67 65 72 2d 66 6f    6e 74 2d 73 75 62 64 69 72 65 63 74 69 76 65 73  | ....,@(ledger-font-subdirectives | 
| 4e0c0 |  0a 20 20 20 20 20 20 20 20 27 28 28 22 5e 5b 20    5c 74 5d 2b 5c 5c 28 3b 2e 2a 5c 5c 29 22 20 28  | .........'(("^[.\t]+\\(;.*\\)".( | 
| 4e0e0 |  31 20 27 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 63    6f 6d 6d 65 6e 74 2d 66 61 63 65 29 29 0a 20 20  | 1.'ledger-font-comment-face))... | 
| 4e100 |  20 20 20 20 20 20 20 20 28 22 5e 5b 20 5c 74 5d    2b 5c 5c 28 61 6c 69 61 73 5c 5c 29 5c 5c 28 3f  | ........("^[.\t]+\\(alias\\)\\(? | 
| 4e120 |  3a 5b 5b 3a 62 6c 61 6e 6b 3a 5d 5d 2b 5c 5c 28    2e 2a 5c 5c 29 5c 5c 29 3f 24 22 0a 20 20 20 20  | :[[:blank:]]+\\(.*\\)\\)?$"..... | 
| 4e140 |  20 20 20 20 20 20 20 28 31 20 27 6c 65 64 67 65    72 2d 66 6f 6e 74 2d 61 6c 69 61 73 2d 64 69 72  | .......(1.'ledger-font-alias-dir | 
| 4e160 |  65 63 74 69 76 65 2d 66 61 63 65 29 0a 20 20 20    20 20 20 20 20 20 20 20 28 32 20 27 6c 65 64 67  | ective-face)............(2.'ledg | 
| 4e180 |  65 72 2d 66 6f 6e 74 2d 70 61 79 65 65 2d 72 65    67 65 78 2d 66 61 63 65 20 6e 69 6c 20 3a 6c 61  | er-font-payee-regex-face.nil.:la | 
| 4e1a0 |  78 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 22    5e 5b 20 5c 74 5d 2b 5c 5c 28 75 75 69 64 5c 5c  | x))...........("^[.\t]+\\(uuid\\ | 
| 4e1c0 |  29 5c 5c 28 3f 3a 5b 5b 3a 62 6c 61 6e 6b 3a 5d    5d 2b 5c 5c 28 2e 2a 5c 5c 29 5c 5c 29 3f 24 22  | )\\(?:[[:blank:]]+\\(.*\\)\\)?$" | 
| 4e1e0 |  0a 20 20 20 20 20 20 20 20 20 20 20 28 31 20 27    6c 65 64 67 65 72 2d 66 6f 6e 74 2d 75 75 69 64  | ............(1.'ledger-font-uuid | 
| 4e200 |  2d 64 69 72 65 63 74 69 76 65 2d 66 61 63 65 29    0a 20 20 20 20 20 20 20 20 20 20 20 28 32 20 27  | -directive-face)............(2.' | 
| 4e220 |  6c 65 64 67 65 72 2d 66 6f 6e 74 2d 75 75 69 64    2d 66 61 63 65 20 6e 69 6c 20 3a 6c 61 78 29 29  | ledger-font-uuid-face.nil.:lax)) | 
| 4e240 |  29 29 29 0a 20 20 20 20 28 2c 28 63 6f 6e 63 61    74 20 22 5e 5c 5c 28 50 5c 5c 29 22 0a 20 20 20  | ))).....(,(concat."^\\(P\\)".... | 
| 4e260 |  20 20 20 20 20 20 20 20 20 20 20 22 5c 5c 28 3f    3a 5b 5b 3a 62 6c 61 6e 6b 3a 5d 5d 2b 5c 5c 28  | ..........."\\(?:[[:blank:]]+\\( | 
| 4e280 |  5b 5e 5b 3a 62 6c 61 6e 6b 3a 5d 5c 6e 5d 2b 22    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22  | [^[:blank:]\n]+"..............." | 
| 4e2a0 |  5c 5c 28 3f 3a 5b 5b 3a 62 6c 61 6e 6b 3a 5d 5d    2b 5b 5b 3a 64 69 67 69 74 3a 5d 5d 5b 5e 5b 3a  | \\(?:[[:blank:]]+[[:digit:]][^[: | 
| 4e2c0 |  62 6c 61 6e 6b 3a 5d 5c 6e 5d 2a 5c 5c 29 3f 5c    5c 29 22 0a 20 20 20 20 20 20 20 20 20 20 20 20  | blank:]\n]*\\)?\\)"............. | 
| 4e2e0 |  20 20 22 5c 5c 28 3f 3a 5b 5b 3a 62 6c 61 6e 6b    3a 5d 5d 2b 5c 5c 28 5c 22 2e 2a 3f 5c 22 5c 5c  | .."\\(?:[[:blank:]]+\\(\".*?\"\\ | 
| 4e300 |  7c 5b 5e 5b 3a 62 6c 61 6e 6b 3a 5d 5c 6e 5d 2b    5c 5c 29 22 0a 20 20 20 20 20 20 20 20 20 20 20  | |[^[:blank:]\n]+\\)"............ | 
| 4e320 |  20 20 20 22 5c 5c 28 3f 3a 5b 5b 3a 62 6c 61 6e    6b 3a 5d 5d 2b 5c 5c 28 2e 2a 5c 5c 29 5c 5c 29  | ..."\\(?:[[:blank:]]+\\(.*\\)\\) | 
| 4e340 |  3f 5c 5c 29 3f 5c 5c 29 3f 24 22 29 0a 20 20 20    20 20 28 31 20 27 6c 65 64 67 65 72 2d 66 6f 6e  | ?\\)?\\)?$")......(1.'ledger-fon | 
| 4e360 |  74 2d 70 72 69 63 65 2d 64 69 72 65 63 74 69 76    65 2d 66 61 63 65 29 0a 20 20 20 20 20 28 32 20  | t-price-directive-face)......(2. | 
| 4e380 |  27 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 70 72 69    63 65 2d 64 61 74 65 2d 66 61 63 65 20 6e 69 6c  | 'ledger-font-price-date-face.nil | 
| 4e3a0 |  20 3a 6c 61 78 29 0a 20 20 20 20 20 28 33 20 27    6c 65 64 67 65 72 2d 66 6f 6e 74 2d 70 72 69 63  | .:lax)......(3.'ledger-font-pric | 
| 4e3c0 |  65 2d 73 79 6d 62 6f 6c 2d 66 61 63 65 20 6e 69    6c 20 3a 6c 61 78 29 0a 20 20 20 20 20 28 34 20  | e-symbol-face.nil.:lax)......(4. | 
| 4e3e0 |  27 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 70 72 69    63 65 2d 66 61 63 65 20 6e 69 6c 20 3a 6c 61 78  | 'ledger-font-price-face.nil.:lax | 
| 4e400 |  29 29 0a 20 20 20 20 28 22 5e 5c 5c 28 74 61 67    5c 5c 29 5c 5c 28 3f 3a 5b 5b 3a 62 6c 61 6e 6b  | )).....("^\\(tag\\)\\(?:[[:blank | 
| 4e420 |  3a 5d 5d 2b 5c 5c 28 2e 2a 5c 5c 29 5c 5c 29 3f    24 22 0a 20 20 20 20 20 28 31 20 27 6c 65 64 67  | :]]+\\(.*\\)\\)?$"......(1.'ledg | 
| 4e440 |  65 72 2d 66 6f 6e 74 2d 74 61 67 2d 64 69 72 65    63 74 69 76 65 2d 66 61 63 65 29 0a 20 20 20 20  | er-font-tag-directive-face)..... | 
| 4e460 |  20 28 32 20 27 6c 65 64 67 65 72 2d 66 6f 6e 74    2d 74 61 67 2d 6e 61 6d 65 2d 66 61 63 65 20 6e  | .(2.'ledger-font-tag-name-face.n | 
| 4e480 |  69 6c 20 3a 6c 61 78 29 0a 20 20 20 20 20 2c 40    28 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 73 75 62  | il.:lax)......,@(ledger-font-sub | 
| 4e4a0 |  64 69 72 65 63 74 69 76 65 73 0a 20 20 20 20 20    20 20 20 27 28 28 22 5e 5b 20 5c 74 5d 2b 5c 5c  | directives.........'(("^[.\t]+\\ | 
| 4e4c0 |  28 3b 2e 2a 5c 5c 29 22 20 28 31 20 27 6c 65 64    67 65 72 2d 66 6f 6e 74 2d 63 6f 6d 6d 65 6e 74  | (;.*\\)".(1.'ledger-font-comment | 
| 4e4e0 |  2d 66 61 63 65 29 29 0a 20 20 20 20 20 20 20 20    20 20 28 22 5e 5b 20 5c 74 5d 2b 5c 5c 28 63 68  | -face))...........("^[.\t]+\\(ch | 
| 4e500 |  65 63 6b 5c 5c 29 5c 5c 28 3f 3a 5b 5b 3a 62 6c    61 6e 6b 3a 5d 5d 2b 5c 5c 28 2e 2a 5c 5c 29 5c  | eck\\)\\(?:[[:blank:]]+\\(.*\\)\ | 
| 4e520 |  5c 29 3f 24 22 0a 20 20 20 20 20 20 20 20 20 20    20 28 31 20 27 6c 65 64 67 65 72 2d 66 6f 6e 74  | \)?$"............(1.'ledger-font | 
| 4e540 |  2d 63 68 65 63 6b 2d 64 69 72 65 63 74 69 76 65    2d 66 61 63 65 29 0a 20 20 20 20 20 20 20 20 20  | -check-directive-face).......... | 
| 4e560 |  20 20 28 32 20 27 6c 65 64 67 65 72 2d 66 6f 6e    74 2d 63 68 65 63 6b 2d 63 6f 6e 64 69 74 69 6f  | ..(2.'ledger-font-check-conditio | 
| 4e580 |  6e 2d 66 61 63 65 20 6e 69 6c 20 3a 6c 61 78 29    29 0a 20 20 20 20 20 20 20 20 20 20 28 22 5e 5b  | n-face.nil.:lax))...........("^[ | 
| 4e5a0 |  20 5c 74 5d 2b 5c 5c 28 61 73 73 65 72 74 5c 5c    29 5c 5c 28 3f 3a 5b 5b 3a 62 6c 61 6e 6b 3a 5d  | .\t]+\\(assert\\)\\(?:[[:blank:] | 
| 4e5c0 |  5d 2b 5c 5c 28 2e 2a 5c 5c 29 5c 5c 29 3f 24 22    0a 20 20 20 20 20 20 20 20 20 20 20 28 31 20 27  | ]+\\(.*\\)\\)?$"............(1.' | 
| 4e5e0 |  6c 65 64 67 65 72 2d 66 6f 6e 74 2d 61 73 73 65    72 74 2d 64 69 72 65 63 74 69 76 65 2d 66 61 63  | ledger-font-assert-directive-fac | 
| 4e600 |  65 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 32    20 27 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 61 73  | e)............(2.'ledger-font-as | 
| 4e620 |  73 65 72 74 2d 63 6f 6e 64 69 74 69 6f 6e 2d 66    61 63 65 20 6e 69 6c 20 3a 6c 61 78 29 29 29 29  | sert-condition-face.nil.:lax)))) | 
| 4e640 |  29 0a 20 20 20 20 28 2c 28 63 6f 6e 63 61 74 20    22 5e 5c 5c 28 5b 49 69 4f 6f 5d 5c 5c 29 22 0a  | ).....(,(concat."^\\([IiOo]\\)". | 
| 4e660 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 5c    5c 28 3f 3a 5b 5b 3a 62 6c 61 6e 6b 3a 5d 5d 2b  | .............."\\(?:[[:blank:]]+ | 
| 4e680 |  5c 5c 28 5b 5e 5b 3a 62 6c 61 6e 6b 3a 5d 5c 6e    5d 2b 22 0a 20 20 20 20 20 20 20 20 20 20 20 20  | \\([^[:blank:]\n]+"............. | 
| 4e6a0 |  20 20 22 5c 5c 28 3f 3a 5b 5b 3a 62 6c 61 6e 6b    3a 5d 5d 2b 5b 5e 5b 3a 62 6c 61 6e 6b 3a 5d 5c  | .."\\(?:[[:blank:]]+[^[:blank:]\ | 
| 4e6c0 |  6e 5d 2b 5c 5c 29 3f 5c 5c 29 22 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 22 5c 5c 28 3f 3a  | n]+\\)?\\)"..............."\\(?: | 
| 4e6e0 |  5b 5b 3a 62 6c 61 6e 6b 3a 5d 5d 2b 5c 5c 28 2e    2a 3f 5c 5c 29 22 0a 20 20 20 20 20 20 20 20 20  | [[:blank:]]+\\(.*?\\)".......... | 
| 4e700 |  20 20 20 20 20 22 5c 5c 28 3f 3a 5c 5c 28 3f 3a    5c 74 5c 5c 7c 5b 20 5c 74 5d 5c 5c 7b 32 2c 5c  | ....."\\(?:\\(?:\t\\|[.\t]\\{2,\ | 
| 4e720 |  5c 7d 5c 5c 29 5c 5c 28 2e 2a 3f 5c 5c 29 22 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 5c  | \}\\)\\(.*?\\)"..............."\ | 
| 4e740 |  5c 28 3f 3a 5c 5c 28 3f 3a 5c 74 5c 5c 7c 5b 20    5c 74 5d 5c 5c 7b 32 2c 5c 5c 7d 5c 5c 29 5c 5c  | \(?:\\(?:\t\\|[.\t]\\{2,\\}\\)\\ | 
| 4e760 |  28 3b 2e 2a 5c 5c 29 5c 5c 29 3f 5c 5c 29 3f 5c    5c 29 3f 5c 5c 29 3f 24 22 29 0a 20 20 20 20 20  | (;.*\\)\\)?\\)?\\)?\\)?$")...... | 
| 4e780 |  28 31 20 27 6c 65 64 67 65 72 2d 66 6f 6e 74 2d    74 69 6d 65 63 6c 6f 63 6b 2d 64 69 72 65 63 74  | (1.'ledger-font-timeclock-direct | 
| 4e7a0 |  69 76 65 2d 66 61 63 65 29 0a 20 20 20 20 20 28    32 20 27 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 70  | ive-face)......(2.'ledger-font-p | 
| 4e7c0 |  6f 73 74 69 6e 67 2d 64 61 74 65 2d 66 61 63 65    20 6e 69 6c 20 3a 6c 61 78 29 0a 20 20 20 20 20  | osting-date-face.nil.:lax)...... | 
| 4e7e0 |  28 33 20 28 6c 65 64 67 65 72 2d 66 6f 6e 74 2d    66 61 63 65 2d 62 79 2d 74 69 6d 65 63 6c 6f 63  | (3.(ledger-font-face-by-timecloc | 
| 4e800 |  6b 2d 73 74 61 74 65 20 31 20 27 28 6c 65 64 67    65 72 2d 66 6f 6e 74 2d 70 6f 73 74 69 6e 67 2d  | k-state.1.'(ledger-font-posting- | 
| 4e820 |  61 63 63 6f 75 6e 74 2d 63 6c 65 61 72 65 64 2d    66 61 63 65 0a 20 20 20 20 20 20 20 20 20 20 20  | account-cleared-face............ | 
| 4e840 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 4e860 |  20 20 20 20 20 20 6c 65 64 67 65 72 2d 66 6f 6e    74 2d 70 6f 73 74 69 6e 67 2d 61 63 63 6f 75 6e  | ......ledger-font-posting-accoun | 
| 4e880 |  74 2d 66 61 63 65 29 29 20 6e 69 6c 20 3a 6c 61    78 29 0a 20 20 20 20 20 28 34 20 28 6c 65 64 67  | t-face)).nil.:lax)......(4.(ledg | 
| 4e8a0 |  65 72 2d 66 6f 6e 74 2d 66 61 63 65 2d 62 79 2d    74 69 6d 65 63 6c 6f 63 6b 2d 73 74 61 74 65 20  | er-font-face-by-timeclock-state. | 
| 4e8c0 |  31 20 27 28 6c 65 64 67 65 72 2d 66 6f 6e 74 2d    70 61 79 65 65 2d 63 6c 65 61 72 65 64 2d 66 61  | 1.'(ledger-font-payee-cleared-fa | 
| 4e8e0 |  63 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ce.............................. | 
| 4e900 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 6c 65 64 67 65 72 2d 66 6f 6e 74 2d  | ....................ledger-font- | 
| 4e920 |  70 61 79 65 65 2d 75 6e 63 6c 65 61 72 65 64 2d    66 61 63 65 29 29 20 6e 69 6c 20 3a 6c 61 78 29  | payee-uncleared-face)).nil.:lax) | 
| 4e940 |  0a 20 20 20 20 20 28 35 20 27 6c 65 64 67 65 72    2d 66 6f 6e 74 2d 63 6f 6d 6d 65 6e 74 2d 66 61  | ......(5.'ledger-font-comment-fa | 
| 4e960 |  63 65 20 6e 69 6c 20 3a 6c 61 78 29 29 0a 20 20    20 20 28 22 5e 5c 5c 28 5b 62 68 5d 5c 5c 29 5c  | ce.nil.:lax)).....("^\\([bh]\\)\ | 
| 4e980 |  5c 3e 2e 2a 24 22 20 28 31 20 27 6c 65 64 67 65    72 2d 66 6f 6e 74 2d 74 69 6d 65 63 6c 6f 63 6b  | \>.*$".(1.'ledger-font-timeclock | 
| 4e9a0 |  2d 64 69 72 65 63 74 69 76 65 2d 66 61 63 65 29    29 0a 20 20 20 20 28 22 5e 5c 5c 28 79 65 61 72  | -directive-face)).....("^\\(year | 
| 4e9c0 |  5c 5c 7c 59 5c 5c 29 5c 5c 28 3f 3a 5b 5b 3a 62    6c 61 6e 6b 3a 5d 5d 2b 5c 5c 28 2e 2a 5c 5c 29  | \\|Y\\)\\(?:[[:blank:]]+\\(.*\\) | 
| 4e9e0 |  5c 5c 29 3f 24 22 0a 20 20 20 20 20 28 31 20 27    6c 65 64 67 65 72 2d 66 6f 6e 74 2d 79 65 61 72  | \\)?$"......(1.'ledger-font-year | 
| 4ea00 |  2d 64 69 72 65 63 74 69 76 65 2d 66 61 63 65 29    0a 20 20 20 20 20 28 32 20 27 6c 65 64 67 65 72  | -directive-face)......(2.'ledger | 
| 4ea20 |  2d 66 6f 6e 74 2d 79 65 61 72 2d 66 61 63 65 20    6e 69 6c 20 3a 6c 61 78 29 29 0a 0a 20 20 20 20  | -font-year-face.nil.:lax))...... | 
| 4ea40 |  28 2c 28 6c 61 6d 62 64 61 20 28 6c 69 6d 69 74    29 0a 20 20 20 20 20 20 20 20 28 77 68 65 6e 20  | (,(lambda.(limit).........(when. | 
| 4ea60 |  6c 65 64 67 65 72 2d 66 6f 6e 74 69 66 79 2d 78    61 63 74 2d 73 74 61 74 65 2d 6f 76 65 72 72 69  | ledger-fontify-xact-state-overri | 
| 4ea80 |  64 65 73 0a 20 20 20 20 20 20 20 20 20 20 28 72    65 2d 73 65 61 72 63 68 2d 66 6f 72 77 61 72 64  | des...........(re-search-forward | 
| 4eaa0 |  0a 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 5c 5c 28 5b 3d  | ............(concat."^\\(?:\\([= | 
| 4eac0 |  7e 5d 5c 5c 29 5b 20 5c 74 5d 2e 2a 5c 5c 7c 22    20 3b 20 61 75 74 6f 2f 70 65 72 69 6f 64 69 63  | ~]\\)[.\t].*\\|".;.auto/periodic | 
| 4eae0 |  2c 20 73 75 62 65 78 70 72 20 31 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22  | ,.subexpr.1...................." | 
| 4eb00 |  5b 5b 3a 64 69 67 69 74 3a 5d 5d 5b 5e 20 5c 74    5c 6e 5d 2a 22 20 20 20 20 20 20 20 3b 20 64 61  | [[:digit:]][^.\t\n]*".......;.da | 
| 4eb20 |  74 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 22 5b 20 5c 74 5d 2b 5c 5c 28  | te...................."[.\t]+\\( | 
| 4eb40 |  5b 2a 21 5d 5c 5c 29 22 20 20 20 20 20 20 20 20    20 20 20 3b 20 6d 61 72 6b 2c 20 73 75 62 65 78  | [*!]\\)"...........;.mark,.subex | 
| 4eb60 |  70 20 32 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 22 2e 2a 5c 5c 29 22 20 20  | p.2....................".*\\)".. | 
| 4eb80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 3b 20 72 65 73 74 20 6f 66 20 68 65  | ....................;.rest.of.he | 
| 4eba0 |  61 64 65 72 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 22 5c 5c 28 3f 3a 5c 6e  | ader...................."\\(?:\n | 
| 4ebc0 |  5b 20 5c 74 5d 2b 2e 2a 5c 5c 29 2a 22 20 20 20    20 20 20 20 20 3b 20 70 6f 73 74 69 6e 67 73 0a  | [.\t]+.*\\)*"........;.postings. | 
| 4ebe0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 29 0a 20 20 20 20 20 20 20 20 20 20 20  | ...................)............ | 
| 4ec00 |  6c 69 6d 69 74 20 74 29 29 29 0a 20 20 20 20 20    28 30 20 28 63 6f 6e 64 20 28 28 65 71 75 61 6c  | limit.t)))......(0.(cond.((equal | 
| 4ec20 |  20 22 3d 22 20 28 6d 61 74 63 68 2d 73 74 72 69    6e 67 20 31 29 29 20 27 6c 65 64 67 65 72 2d 66  | ."=".(match-string.1)).'ledger-f | 
| 4ec40 |  6f 6e 74 2d 61 75 74 6f 2d 78 61 63 74 2d 66 61    63 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | ont-auto-xact-face)............. | 
| 4ec60 |  20 20 28 28 65 71 75 61 6c 20 22 7e 22 20 28 6d    61 74 63 68 2d 73 74 72 69 6e 67 20 31 29 29 20  | ..((equal."~".(match-string.1)). | 
| 4ec80 |  27 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 70 65 72    69 6f 64 69 63 2d 78 61 63 74 2d 66 61 63 65 29  | 'ledger-font-periodic-xact-face) | 
| 4eca0 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    74 20 28 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 66  | ...............(t.(ledger-font-f | 
| 4ecc0 |  61 63 65 2d 62 79 2d 73 74 61 74 65 20 32 20 27    28 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 78 61 63  | ace-by-state.2.'(ledger-font-xac | 
| 4ece0 |  74 2d 63 6c 65 61 72 65 64 2d 66 61 63 65 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | t-cleared-face.................. | 
| 4ed00 |  20 20 20 20 20 20 20 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  | ...............................l | 
| 4ed20 |  65 64 67 65 72 2d 66 6f 6e 74 2d 78 61 63 74 2d    70 65 6e 64 69 6e 67 2d 66 61 63 65 29 29 29 29  | edger-font-xact-pending-face)))) | 
| 4ed40 |  29 29 0a 20 20 20 20 28 2c 28 63 6f 6e 63 61 74    20 22 5e 5c 5c 28 3f 3a 5c 5c 28 5c 5c 28 5b 3d  | )).....(,(concat."^\\(?:\\(\\([= | 
| 4ed60 |  7e 5d 5c 5c 29 2e 2a 5c 5c 29 5c 5c 7c 22 20 20    20 20 20 20 20 3b 20 61 75 74 6f 2f 70 65 72 69  | ~]\\).*\\)\\|".......;.auto/peri | 
| 4ed80 |  6f 64 69 63 2c 20 73 75 62 65 78 70 20 31 2c 20    32 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | odic,.subexp.1,.2............... | 
| 4eda0 |  22 5c 5c 28 5b 5b 3a 64 69 67 69 74 3a 5d 5d 5b    5e 20 5c 74 5c 6e 5d 2a 5c 5c 29 22 20 20 20 20  | "\\([[:digit:]][^.\t\n]*\\)".... | 
| 4edc0 |  20 20 20 20 3b 20 64 61 74 65 2c 20 73 75 62 65    78 70 20 33 0a 20 20 20 20 20 20 20 20 20 20 20  | ....;.date,.subexp.3............ | 
| 4ede0 |  20 20 20 6c 65 64 67 65 72 2d 78 61 63 74 2d 61    66 74 65 72 2d 64 61 74 65 2d 72 65 67 65 78 20  | ...ledger-xact-after-date-regex. | 
| 4ee00 |  22 5c 5c 29 22 29 20 3b 20 6d 61 72 6b 20 34 2c    20 63 6f 64 65 20 35 2c 20 64 65 73 63 20 36 2c  | "\\)").;.mark.4,.code.5,.desc.6, | 
| 4ee20 |  20 63 6f 6d 6d 65 6e 74 20 37 0a 20 20 20 20 20    28 31 20 28 63 6f 6e 64 20 28 28 65 71 75 61 6c  | .comment.7......(1.(cond.((equal | 
| 4ee40 |  20 22 3d 22 20 28 6d 61 74 63 68 2d 73 74 72 69    6e 67 20 32 29 29 20 27 6c 65 64 67 65 72 2d 66  | ."=".(match-string.2)).'ledger-f | 
| 4ee60 |  6f 6e 74 2d 61 75 74 6f 2d 78 61 63 74 2d 66 61    63 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | ont-auto-xact-face)............. | 
| 4ee80 |  20 20 28 28 65 71 75 61 6c 20 22 7e 22 20 28 6d    61 74 63 68 2d 73 74 72 69 6e 67 20 32 29 29 20  | ..((equal."~".(match-string.2)). | 
| 4eea0 |  27 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 70 65 72    69 6f 64 69 63 2d 78 61 63 74 2d 66 61 63 65 29  | 'ledger-font-periodic-xact-face) | 
| 4eec0 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    74 20 27 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 64  | ...............(t.'ledger-font-d | 
| 4eee0 |  65 66 61 75 6c 74 2d 64 69 72 65 63 74 69 76 65    2d 66 61 63 65 29 29 0a 20 20 20 20 20 20 20 20  | efault-directive-face))......... | 
| 4ef00 |  6e 69 6c 20 3a 6c 61 78 29 0a 20 20 20 20 20 28    33 20 27 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 70  | nil.:lax)......(3.'ledger-font-p | 
| 4ef20 |  6f 73 74 69 6e 67 2d 64 61 74 65 2d 66 61 63 65    20 6e 69 6c 20 3a 6c 61 78 29 0a 20 20 20 20 20  | osting-date-face.nil.:lax)...... | 
| 4ef40 |  28 35 20 27 6c 65 64 67 65 72 2d 66 6f 6e 74 2d    63 6f 64 65 2d 66 61 63 65 20 6e 69 6c 20 3a 6c  | (5.'ledger-font-code-face.nil.:l | 
| 4ef60 |  61 78 29 0a 20 20 20 20 20 28 36 20 28 6c 65 64    67 65 72 2d 66 6f 6e 74 2d 66 61 63 65 2d 62 79  | ax)......(6.(ledger-font-face-by | 
| 4ef80 |  2d 73 74 61 74 65 20 34 20 27 28 6c 65 64 67 65    72 2d 66 6f 6e 74 2d 70 61 79 65 65 2d 63 6c 65  | -state.4.'(ledger-font-payee-cle | 
| 4efa0 |  61 72 65 64 2d 66 61 63 65 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ared-face....................... | 
| 4efc0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 70 61 79  | .................ledger-font-pay | 
| 4efe0 |  65 65 2d 70 65 6e 64 69 6e 67 2d 66 61 63 65 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ee-pending-face................. | 
| 4f000 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 6c 65 64 67 65 72 2d 66 6f  | .......................ledger-fo | 
| 4f020 |  6e 74 2d 70 61 79 65 65 2d 75 6e 63 6c 65 61 72    65 64 2d 66 61 63 65 29 29 0a 20 20 20 20 20 20  | nt-payee-uncleared-face))....... | 
| 4f040 |  20 20 6e 69 6c 20 3a 6c 61 78 29 0a 20 20 20 20    20 28 37 20 27 6c 65 64 67 65 72 2d 66 6f 6e 74  | ..nil.:lax)......(7.'ledger-font | 
| 4f060 |  2d 63 6f 6d 6d 65 6e 74 2d 66 61 63 65 20 6e 69    6c 20 3a 6c 61 78 29 0a 20 20 20 20 20 2c 40 28  | -comment-face.nil.:lax)......,@( | 
| 4f080 |  6c 65 64 67 65 72 2d 66 6f 6e 74 2d 73 75 62 64    69 72 65 63 74 69 76 65 73 0a 20 20 20 20 20 20  | ledger-font-subdirectives....... | 
| 4f0a0 |  20 20 60 28 28 22 5e 5b 20 5c 74 5d 2b 5c 5c 28    3b 2e 2a 5c 5c 29 22 0a 20 20 20 20 20 20 20 20  | ..`(("^[.\t]+\\(;.*\\)"......... | 
| 4f0c0 |  20 20 20 28 31 20 27 6c 65 64 67 65 72 2d 66 6f    6e 74 2d 63 6f 6d 6d 65 6e 74 2d 66 61 63 65 29  | ...(1.'ledger-font-comment-face) | 
| 4f0e0 |  29 0a 20 20 20 20 20 20 20 20 20 20 28 2c 6c 65    64 67 65 72 2d 70 6f 73 74 69 6e 67 2d 72 65 67  | )...........(,ledger-posting-reg | 
| 4f100 |  65 78 20 3b 20 73 74 61 74 65 20 61 6e 64 20 61    63 63 6f 75 6e 74 20 31 2c 20 73 74 61 74 65 20  | ex.;.state.and.account.1,.state. | 
| 4f120 |  32 2c 20 61 63 63 6f 75 6e 74 20 33 2c 20 61 6d    6f 75 6e 74 20 34 2c 20 63 6f 6d 6d 65 6e 74 20  | 2,.account.3,.amount.4,.comment. | 
| 4f140 |  35 0a 20 20 20 20 20 20 20 20 20 20 20 28 31 20    28 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 66 61 63  | 5............(1.(ledger-font-fac | 
| 4f160 |  65 2d 62 79 2d 73 74 61 74 65 20 32 20 27 28 6c    65 64 67 65 72 2d 66 6f 6e 74 2d 70 6f 73 74 69  | e-by-state.2.'(ledger-font-posti | 
| 4f180 |  6e 67 2d 61 63 63 6f 75 6e 74 2d 63 6c 65 61 72    65 64 2d 66 61 63 65 0a 20 20 20 20 20 20 20 20  | ng-account-cleared-face......... | 
| 4f1a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 4f1c0 |  20 20 20 20 20 6c 65 64 67 65 72 2d 66 6f 6e 74    2d 70 6f 73 74 69 6e 67 2d 61 63 63 6f 75 6e 74  | .....ledger-font-posting-account | 
| 4f1e0 |  2d 70 65 6e 64 69 6e 67 2d 66 61 63 65 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | -pending-face................... | 
| 4f200 |  20 20 20 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 65 64 67 65  | ...........................ledge | 
| 4f220 |  72 2d 66 6f 6e 74 2d 70 6f 73 74 69 6e 67 2d 61    63 63 6f 75 6e 74 2d 66 61 63 65 29 29 0a 20 20  | r-font-posting-account-face))... | 
| 4f240 |  20 20 20 20 20 20 20 20 20 20 20 20 6e 69 6c 20    3a 6c 61 78 29 0a 20 20 20 20 20 20 20 20 20 20  | ............nil.:lax)........... | 
| 4f260 |  20 28 34 20 28 6c 65 64 67 65 72 2d 66 6f 6e 74    2d 66 61 63 65 2d 62 79 2d 73 74 61 74 65 20 32  | .(4.(ledger-font-face-by-state.2 | 
| 4f280 |  20 27 28 6c 65 64 67 65 72 2d 66 6f 6e 74 2d 70    6f 73 74 69 6e 67 2d 61 6d 6f 75 6e 74 2d 63 6c  | .'(ledger-font-posting-amount-cl | 
| 4f2a0 |  65 61 72 65 64 2d 66 61 63 65 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | eared-face...................... | 
| 4f2c0 |  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 65 64 67 65 72 2d 66  | ........................ledger-f | 
| 4f2e0 |  6f 6e 74 2d 70 6f 73 74 69 6e 67 2d 61 6d 6f 75    6e 74 2d 70 65 6e 64 69 6e 67 2d 66 61 63 65 0a  | ont-posting-amount-pending-face. | 
| 4f300 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 4f320 |  20 20 20 20 20 20 20 20 20 20 20 20 20 6c 65 64    67 65 72 2d 66 6f 6e 74 2d 70 6f 73 74 69 6e 67  | .............ledger-font-posting | 
| 4f340 |  2d 61 6d 6f 75 6e 74 2d 66 61 63 65 29 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 6e 69 6c  | -amount-face))...............nil | 
| 4f360 |  20 3a 6c 61 78 29 0a 20 20 20 20 20 20 20 20 20    20 20 28 35 20 27 6c 65 64 67 65 72 2d 66 6f 6e  | .:lax)............(5.'ledger-fon | 
| 4f380 |  74 2d 63 6f 6d 6d 65 6e 74 2d 66 61 63 65 20 6e    69 6c 20 3a 6c 61 78 29 29 29 29 29 29 0a 20 20  | t-comment-face.nil.:lax))))))... | 
| 4f3a0 |  22 45 78 70 72 65 73 73 69 6f 6e 73 20 74 6f 20    68 69 67 68 6c 69 67 68 74 20 69 6e 20 4c 65 64  | "Expressions.to.highlight.in.Led | 
| 4f3c0 |  67 65 72 20 6d 6f 64 65 2e 22 29 0a 0a 0a 0a 28    70 72 6f 76 69 64 65 20 27 6c 65 64 67 65 72 2d  | ger.mode.")....(provide.'ledger- | 
| 4f3e0 |  66 6f 6e 74 73 29 0a 0a 3b 3b 3b 20 6c 65 64 67    65 72 2d 66 6f 6e 74 73 2e 65 6c 20 65 6e 64 73  | fonts)..;;;.ledger-fonts.el.ends | 
| 4f400 |  20 68 65 72 65 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  | .here........................... | 
| 4f420 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f440 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f460 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f480 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f4a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f4c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f4e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f500 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f520 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f540 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f560 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f580 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f5a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f5c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f5e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f600 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f620 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f640 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f660 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f680 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f6a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f6c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f6e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f700 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f720 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f740 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f760 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f780 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f7a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f7c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f7e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f800 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f820 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f840 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f860 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f880 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f8a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f8c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f8e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f900 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f920 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f940 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f960 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f980 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f9a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f9c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4f9e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4fa00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4fa20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4fa40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4fa60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4fa80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4faa0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4fac0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4fae0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4fb00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4fb20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4fb40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4fb60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4fb80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4fba0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4fbc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4fbe0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4fc00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4fc20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4fc40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4fc60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4fc80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4fca0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4fcc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4fce0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4fd00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4fd20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4fd40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4fd60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4fd80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4fda0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4fdc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4fde0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4fe00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4fe20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4fe40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4fe60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4fe80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4fea0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4fec0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4fee0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4ff00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4ff20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4ff40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4ff60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4ff80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4ffa0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4ffc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 4ffe0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ |