| ofs | hex dump | ascii | 
|---|
| 0000 |  64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61    6e 64 2d 32 30 32 35 30 32 31 38 2e 31 37 32 30  | dwim-shell-command-20250218.1720 | 
| 0020 |  2f 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 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 34 34 36 37 00 20 35 00 00 00  | 0000000.00000000000.014467..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 |  64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61    6e 64 2d 32 30 32 35 30 32 31 38 2e 31 37 32 30  | dwim-shell-command-20250218.1720 | 
| 0220 |  2f 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d    61 6e 64 2d 70 6b 67 2e 65 6c 00 00 00 00 00 00  | /dwim-shell-command-pkg.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 30 30 34 35 35 00 30 30 30 30 30 30 30 30    30 30 30 00 30 32 31 32 35 35 00 20 30 00 00 00  | 0000455.00000000000.021255..0... | 
| 02a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 02c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 02e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 0300 |  00 75 73 74 61 72 20 20 00 72 6f 6f 74 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | .ustar...root................... | 
| 0320 |  00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | .........root................... | 
| 0340 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 0360 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 0380 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 03a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 03c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 03e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 0400 |  3b 3b 20 2d 2a 2d 20 6e 6f 2d 62 79 74 65 2d 63    6f 6d 70 69 6c 65 3a 20 74 3b 20 6c 65 78 69 63  | ;;.-*-.no-byte-compile:.t;.lexic | 
| 0420 |  61 6c 2d 62 69 6e 64 69 6e 67 3a 20 6e 69 6c 20    2d 2a 2d 0a 28 64 65 66 69 6e 65 2d 70 61 63 6b  | al-binding:.nil.-*-.(define-pack | 
| 0440 |  61 67 65 20 22 64 77 69 6d 2d 73 68 65 6c 6c 2d    63 6f 6d 6d 61 6e 64 22 20 22 32 30 32 35 30 32  | age."dwim-shell-command"."202502 | 
| 0460 |  31 38 2e 31 37 32 30 22 0a 20 20 22 53 68 65 6c    6c 20 63 6f 6d 6d 61 6e 64 73 20 77 69 74 68 20  | 18.1720"..."Shell.commands.with. | 
| 0480 |  44 57 49 4d 20 62 65 68 61 76 69 6f 75 72 2e 22    0a 20 20 27 28 28 65 6d 61 63 73 20 22 32 38 2e  | DWIM.behaviour."...'((emacs."28. | 
| 04a0 |  31 22 29 29 0a 20 20 3a 75 72 6c 20 22 68 74 74    70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f  | 1"))...:url."https://github.com/ | 
| 04c0 |  78 65 6e 6f 64 69 75 6d 2f 64 77 69 6d 2d 73 68    65 6c 6c 2d 63 6f 6d 6d 61 6e 64 22 0a 20 20 3a  | xenodium/dwim-shell-command"...: | 
| 04e0 |  63 6f 6d 6d 69 74 20 22 34 62 30 37 37 34 33 32    61 39 34 38 37 33 65 35 66 35 30 35 63 38 66 35  | commit."4b077432a94873e5f505c8f5 | 
| 0500 |  36 39 37 34 33 63 66 64 39 38 34 65 65 62 62 31    22 0a 20 20 3a 72 65 76 64 65 73 63 20 22 34 62  | 69743cfd984eebb1"...:revdesc."4b | 
| 0520 |  30 37 37 34 33 32 61 39 34 38 22 29 0a 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | 077432a948").................... | 
| 0540 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 0560 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 0580 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 05a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 05c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 05e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 0600 |  64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61    6e 64 2d 32 30 32 35 30 32 31 38 2e 31 37 32 30  | dwim-shell-command-20250218.1720 | 
| 0620 |  2f 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d    61 6e 64 2e 65 6c 00 00 00 00 00 00 00 00 00 00  | /dwim-shell-command.el.......... | 
| 0640 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 0660 |  00 00 00 00 30 30 30 30 36 34 34 00 30 30 30 30    30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30  | ....0000644.0000000.0000000.0000 | 
| 0680 |  30 31 33 33 34 32 35 00 30 30 30 30 30 30 30 30    30 30 30 00 30 32 30 35 30 32 00 20 30 00 00 00  | 0133425.00000000000.020502..0... | 
| 06a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 06c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 06e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 0700 |  00 75 73 74 61 72 20 20 00 72 6f 6f 74 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | .ustar...root................... | 
| 0720 |  00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | .........root................... | 
| 0740 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 0760 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 0780 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 07a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 07c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 07e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 0800 |  3b 3b 3b 20 64 77 69 6d 2d 73 68 65 6c 6c 2d 63    6f 6d 6d 61 6e 64 2e 65 6c 20 2d 2d 2d 20 53 68  | ;;;.dwim-shell-command.el.---.Sh | 
| 0820 |  65 6c 6c 20 63 6f 6d 6d 61 6e 64 73 20 77 69 74    68 20 44 57 49 4d 20 62 65 68 61 76 69 6f 75 72  | ell.commands.with.DWIM.behaviour | 
| 0840 |  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 2d 2a 2d 0a 0a 3b 3b  | .-*-.lexical-binding:.t;.-*-..;; | 
| 0860 |  20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32    30 32 32 20 41 6c 76 61 72 6f 20 52 61 6d 69 72  | .Copyright.(C).2022.Alvaro.Ramir | 
| 0880 |  65 7a 20 68 74 74 70 73 3a 2f 2f 78 65 6e 6f 64    69 75 6d 2e 63 6f 6d 0a 0a 3b 3b 20 41 75 74 68  | ez.https://xenodium.com..;;.Auth | 
| 08a0 |  6f 72 3a 20 41 6c 76 61 72 6f 20 52 61 6d 69 72    65 7a 0a 3b 3b 20 50 61 63 6b 61 67 65 2d 52 65  | or:.Alvaro.Ramirez.;;.Package-Re | 
| 08c0 |  71 75 69 72 65 73 3a 20 28 28 65 6d 61 63 73 20    22 32 38 2e 31 22 29 29 0a 3b 3b 20 55 52 4c 3a  | quires:.((emacs."28.1")).;;.URL: | 
| 08e0 |  20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e    63 6f 6d 2f 78 65 6e 6f 64 69 75 6d 2f 64 77 69  | .https://github.com/xenodium/dwi | 
| 0900 |  6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 0a    3b 3b 20 50 61 63 6b 61 67 65 2d 56 65 72 73 69  | m-shell-command.;;.Package-Versi | 
| 0920 |  6f 6e 3a 20 32 30 32 35 30 32 31 38 2e 31 37 32    30 0a 3b 3b 20 50 61 63 6b 61 67 65 2d 52 65 76  | on:.20250218.1720.;;.Package-Rev | 
| 0940 |  69 73 69 6f 6e 3a 20 34 62 30 37 37 34 33 32 61    39 34 38 0a 0a 3b 3b 20 54 68 69 73 20 70 61 63  | ision:.4b077432a948..;;.This.pac | 
| 0960 |  6b 61 67 65 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  | kage.is.free.software;.you.can.r | 
| 0980 |  65 64 69 73 74 72 69 62 75 74 65 20 69 74 20 61    6e 64 2f 6f 72 20 6d 6f 64 69 66 79 0a 3b 3b 20  | edistribute.it.and/or.modify.;;. | 
| 09a0 |  69 74 20 75 6e 64 65 72 20 74 68 65 20 74 65 72    6d 73 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65  | it.under.the.terms.of.the.GNU.Ge | 
| 09c0 |  6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63    65 6e 73 65 20 61 73 20 70 75 62 6c 69 73 68 65  | neral.Public.License.as.publishe | 
| 09e0 |  64 20 62 79 0a 3b 3b 20 74 68 65 20 46 72 65 65    20 53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61  | d.by.;;.the.Free.Software.Founda | 
| 0a00 |  74 69 6f 6e 3b 20 65 69 74 68 65 72 20 76 65 72    73 69 6f 6e 20 33 2c 20 6f 72 20 28 61 74 20 79  | tion;.either.version.3,.or.(at.y | 
| 0a20 |  6f 75 72 20 6f 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  | our.option).;;.any.later.version | 
| 0a40 |  2e 0a 0a 3b 3b 20 54 68 69 73 20 70 61 63 6b 61    67 65 20 69 73 20 64 69 73 74 72 69 62 75 74 65  | ...;;.This.package.is.distribute | 
| 0a60 |  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 20 62 65 20 75 73  | d.in.the.hope.that.it.will.be.us | 
| 0a80 |  65 66 75 6c 2c 0a 3b 3b 20 62 75 74 20 57 49 54    48 4f 55 54 20 41 4e 59 20 57 41 52 52 41 4e 54  | eful,.;;.but.WITHOUT.ANY.WARRANT | 
| 0aa0 |  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 64 20 77 61 72 72  | Y;.without.even.the.implied.warr | 
| 0ac0 |  61 6e 74 79 20 6f 66 0a 3b 3b 20 4d 45 52 43 48    41 4e 54 41 42 49 4c 49 54 59 20 6f 72 20 46 49  | anty.of.;;.MERCHANTABILITY.or.FI | 
| 0ae0 |  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 50 4f 53 45 2e 20  | TNESS.FOR.A.PARTICULAR.PURPOSE.. | 
| 0b00 |  20 53 65 65 20 74 68 65 0a 3b 3b 20 47 4e 55 20    47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c  | .See.the.;;.GNU.General.Public.L | 
| 0b20 |  69 63 65 6e 73 65 20 66 6f 72 20 6d 6f 72 65 20    64 65 74 61 69 6c 73 2e 0a 0a 3b 3b 20 59 6f 75  | icense.for.more.details...;;.You | 
| 0b40 |  20 73 68 6f 75 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  | .should.have.received.a.copy.of. | 
| 0b60 |  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 0a 3b  | the.GNU.General.Public.License.; | 
| 0b80 |  3b 20 61 6c 6f 6e 67 20 77 69 74 68 20 47 4e 55    20 45 6d 61 63 73 2e 20 20 49 66 20 6e 6f 74 2c  | ;.along.with.GNU.Emacs...If.not, | 
| 0ba0 |  20 73 65 65 20 3c 68 74 74 70 73 3a 2f 2f 77 77    77 2e 67 6e 75 2e 6f 72 67 2f 6c 69 63 65 6e 73  | .see.<https://www.gnu.org/licens | 
| 0bc0 |  65 73 2f 3e 2e 0a 0a 3b 3b 3b 20 43 6f 6d 6d 65    6e 74 61 72 79 3a 0a 0a 3b 3b 20 50 72 6f 76 69  | es/>...;;;.Commentary:..;;.Provi | 
| 0be0 |  64 65 73 20 60 64 77 69 6d 2d 73 68 65 6c 6c 2d    63 6f 6d 6d 61 6e 64 27 20 61 73 20 61 6e 20 6f  | des.`dwim-shell-command'.as.an.o | 
| 0c00 |  70 69 6e 69 6f 6e 61 74 65 64 20 44 57 49 4d 20    61 6c 74 65 72 6e 61 74 69 76 65 20 74 6f 0a 3b  | pinionated.DWIM.alternative.to.; | 
| 0c20 |  3b 20 60 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64    27 2e 0a 3b 3b 0a 3b 3b 20 55 73 65 20 60 64 77  | ;.`shell-command'..;;.;;.Use.`dw | 
| 0c40 |  69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64    2d 6f 6e 2d 6d 61 72 6b 65 64 2d 66 69 6c 65 73  | im-shell-command-on-marked-files | 
| 0c60 |  27 20 74 6f 20 63 72 65 61 74 65 20 79 6f 75 72    20 6f 77 6e 20 63 6f 6d 6d 61 6e 64 0a 3b 3b 20  | '.to.create.your.own.command.;;. | 
| 0c80 |  6c 69 6e 65 20 75 74 69 6c 69 74 69 65 73 2c 20    69 6e 76 6f 6b 65 64 20 76 69 61 20 4d 2d 78 2e  | line.utilities,.invoked.via.M-x. | 
| 0ca0 |  0a 3b 3b 0a 3b 3b 20 53 65 65 20 65 78 61 6d 70    6c 65 73 20 61 74 20 68 74 74 70 73 3a 2f 2f 67  | .;;.;;.See.examples.at.https://g | 
| 0cc0 |  69 74 68 75 62 2e 63 6f 6d 2f 78 65 6e 6f 64 69    75 6d 2f 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f  | ithub.com/xenodium/dwim-shell-co | 
| 0ce0 |  6d 6d 61 6e 64 2f 62 6c 6f 62 2f 6d 61 69 6e 2f    64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61  | mmand/blob/main/dwim-shell-comma | 
| 0d00 |  6e 64 73 2e 65 6c 0a 0a 3b 3b 3b 20 43 6f 64 65    3a 0a 0a 28 72 65 71 75 69 72 65 20 27 63 6c 2d  | nds.el..;;;.Code:..(require.'cl- | 
| 0d20 |  6c 69 62 29 0a 28 72 65 71 75 69 72 65 20 27 63    6f 6d 69 6e 74 29 0a 28 72 65 71 75 69 72 65 20  | lib).(require.'comint).(require. | 
| 0d40 |  27 64 69 72 65 64 29 0a 28 72 65 71 75 69 72 65    20 27 64 69 72 65 64 2d 61 75 78 29 0a 28 72 65  | 'dired).(require.'dired-aux).(re | 
| 0d60 |  71 75 69 72 65 20 27 6d 61 70 29 0a 28 72 65 71    75 69 72 65 20 27 73 65 71 29 0a 28 72 65 71 75  | quire.'map).(require.'seq).(requ | 
| 0d80 |  69 72 65 20 27 73 69 6d 70 6c 65 29 0a 28 72 65    71 75 69 72 65 20 27 73 75 62 72 2d 78 29 0a 28  | ire.'simple).(require.'subr-x).( | 
| 0da0 |  72 65 71 75 69 72 65 20 27 76 69 65 77 29 0a 0a    28 64 65 66 63 75 73 74 6f 6d 20 64 77 69 6d 2d  | require.'view)..(defcustom.dwim- | 
| 0dc0 |  73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 70 72    6f 6d 70 74 0a 20 20 22 44 57 49 4d 20 73 68 65  | shell-command-prompt..."DWIM.she | 
| 0de0 |  6c 6c 20 63 6f 6d 6d 61 6e 64 20 28 3c 3c 66 3e    3e 20 3c 3c 66 6e 65 3e 3e 20 3c 3c 65 3e 3e 29  | ll.command.(<<f>>.<<fne>>.<<e>>) | 
| 0e00 |  3a 20 22 0a 20 20 22 60 64 77 69 6d 2d 73 68 65    6c 6c 2d 63 6f 6d 6d 61 6e 64 27 20 70 72 6f 6d  | :."..."`dwim-shell-command'.prom | 
| 0e20 |  70 74 2e 20 20 4d 6f 64 69 66 79 20 69 66 20 73    68 6f 72 74 65 72 20 69 73 20 70 72 65 66 65 72  | pt...Modify.if.shorter.is.prefer | 
| 0e40 |  72 65 64 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  | red."...:type.'string...:group.' | 
| 0e60 |  64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61    6e 64 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20  | dwim-shell-command)..(defcustom. | 
| 0e80 |  64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61    6e 64 2d 64 65 66 61 75 6c 74 2d 63 6f 6d 6d 61  | dwim-shell-command-default-comma | 
| 0ea0 |  6e 64 0a 20 20 22 20 27 3c 3c 66 3e 3e 27 22 0a    20 20 22 53 65 74 20 74 6f 20 6e 69 6c 20 69 66  | nd...".'<<f>>'"..."Set.to.nil.if | 
| 0ec0 |  20 6e 6f 20 64 65 66 61 75 6c 74 20 73 68 65 6c    6c 20 63 6f 6d 6d 61 6e 64 20 77 61 6e 74 65 64  | .no.default.shell.command.wanted | 
| 0ee0 |  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 64 77 69  | ."...:type.'string...:group.'dwi | 
| 0f00 |  6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 29    0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 64 77 69  | m-shell-command)..(defcustom.dwi | 
| 0f20 |  6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d    62 75 66 66 65 72 2d 6e 61 6d 65 0a 20 20 22 44  | m-shell-command-buffer-name..."D | 
| 0f40 |  57 49 4d 20 73 68 65 6c 6c 20 63 6f 6d 6d 61 6e    64 22 0a 20 20 22 60 64 77 69 6d 2d 73 68 65 6c  | WIM.shell.command"..."`dwim-shel | 
| 0f60 |  6c 2d 63 6f 6d 6d 61 6e 64 27 20 62 75 66 66 65    72 20 6e 61 6d 65 2e 20 20 4d 6f 64 69 66 79 20  | l-command'.buffer.name...Modify. | 
| 0f80 |  69 66 20 73 68 6f 72 74 65 72 20 69 73 20 70 72    65 66 65 72 72 65 64 2e 22 0a 20 20 3a 74 79 70  | if.shorter.is.preferred."...:typ | 
| 0fa0 |  65 20 27 73 74 72 69 6e 67 0a 20 20 3a 67 72 6f    75 70 20 27 64 77 69 6d 2d 73 68 65 6c 6c 2d 63  | e.'string...:group.'dwim-shell-c | 
| 0fc0 |  6f 6d 6d 61 6e 64 29 0a 0a 28 64 65 66 63 75 73    74 6f 6d 20 64 77 69 6d 2d 73 68 65 6c 6c 2d 63  | ommand)..(defcustom.dwim-shell-c | 
| 0fe0 |  6f 6d 6d 61 6e 64 2d 70 72 6f 6d 70 74 2d 6f 6e    2d 65 72 72 6f 72 20 6e 69 6c 0a 20 20 22 49 66  | ommand-prompt-on-error.nil..."If | 
| 1000 |  20 74 2c 20 70 72 6f 6d 70 74 20 75 73 65 72 20    74 6f 20 66 6f 63 75 73 20 62 75 66 66 65 72 20  | .t,.prompt.user.to.focus.buffer. | 
| 1020 |  6f 6e 20 70 72 6f 63 65 73 73 20 65 72 72 6f 72    2e 0a 4f 74 68 65 72 77 69 73 65 2c 20 61 75 74  | on.process.error..Otherwise,.aut | 
| 1040 |  6f 6d 61 74 69 63 61 6c 6c 79 20 66 6f 63 75 73    20 62 75 66 66 65 72 20 6f 6e 20 70 72 6f 63 65  | omatically.focus.buffer.on.proce | 
| 1060 |  73 73 20 65 72 72 6f 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  | ss.error."...:type.'boolean...:g | 
| 1080 |  72 6f 75 70 20 27 64 77 69 6d 2d 73 68 65 6c 6c    2d 63 6f 6d 6d 61 6e 64 29 0a 0a 28 64 65 66 63  | roup.'dwim-shell-command)..(defc | 
| 10a0 |  75 73 74 6f 6d 20 64 77 69 6d 2d 73 68 65 6c 6c    2d 63 6f 6d 6d 61 6e 64 2d 75 73 65 2d 61 62 73  | ustom.dwim-shell-command-use-abs | 
| 10c0 |  6f 6c 75 74 65 2d 70 61 74 68 73 20 6e 69 6c 0a    20 20 22 49 66 20 74 2c 20 67 65 6e 65 72 61 74  | olute-paths.nil..."If.t,.generat | 
| 10e0 |  65 20 61 62 73 6f 6c 75 74 65 20 70 61 74 68 73    20 69 6e 20 74 65 6d 70 6c 61 74 65 73 2e 20 20  | e.absolute.paths.in.templates... | 
| 1100 |  52 65 6c 61 74 69 76 65 20 6f 74 68 65 72 77 69    73 65 2e 22 0a 20 20 3a 74 79 70 65 20 27 62 6f  | Relative.otherwise."...:type.'bo | 
| 1120 |  6f 6c 65 61 6e 0a 20 20 3a 67 72 6f 75 70 20 27    64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61  | olean...:group.'dwim-shell-comma | 
| 1140 |  6e 64 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20    64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61  | nd)..(defcustom.dwim-shell-comma | 
| 1160 |  6e 64 2d 73 68 65 6c 6c 2d 75 74 69 6c 20 6e 69    6c 0a 20 20 22 53 68 65 6c 6c 20 75 74 69 6c 2c  | nd-shell-util.nil..."Shell.util, | 
| 1180 |  20 66 6f 72 20 65 78 61 6d 70 6c 65 3a 20 5c 22    7a 73 68 5c 22 20 6f 72 20 5c 22 62 61 73 68 5c  | .for.example:.\"zsh\".or.\"bash\ | 
| 11a0 |  22 2e 0a 53 65 74 20 74 6f 20 6e 69 6c 20 74 6f    20 75 73 65 20 60 73 68 65 6c 6c 2d 66 69 6c 65  | "..Set.to.nil.to.use.`shell-file | 
| 11c0 |  2d 6e 61 6d 65 27 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  | -name'."...:type.'string...:grou | 
| 11e0 |  70 20 27 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f    6d 6d 61 6e 64 29 0a 0a 28 64 65 66 63 75 73 74  | p.'dwim-shell-command)..(defcust | 
| 1200 |  6f 6d 20 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f    6d 6d 61 6e 64 2d 73 68 65 6c 6c 2d 61 72 67 73  | om.dwim-shell-command-shell-args | 
| 1220 |  20 6e 69 6c 0a 20 20 22 53 68 65 6c 6c 20 75 74    69 6c 2c 20 66 6f 72 20 65 78 61 6d 70 6c 65 3a  | .nil..."Shell.util,.for.example: | 
| 1240 |  20 27 28 5c 22 2d 78 5c 22 20 5c 22 2d 63 5c 22    29 2e 0a 53 65 74 20 74 6f 20 6e 69 6c 20 74 6f  | .'(\"-x\".\"-c\")..Set.to.nil.to | 
| 1260 |  20 75 73 65 20 60 73 68 65 6c 6c 2d 63 6f 6d 6d    61 6e 64 2d 73 77 69 74 63 68 27 2e 22 0a 20 20  | .use.`shell-command-switch'."... | 
| 1280 |  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 6f 75 70 20  | :type.'(repeat.string)...:group. | 
| 12a0 |  27 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d    61 6e 64 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d  | 'dwim-shell-command)..(defcustom | 
| 12c0 |  20 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d    61 6e 64 2d 73 68 65 6c 6c 2d 74 72 61 63 65 20  | .dwim-shell-command-shell-trace. | 
| 12e0 |  6e 69 6c 0a 20 20 22 41 74 74 65 6d 70 74 20 74    6f 20 61 64 64 20 2d 2d 78 74 72 61 63 65 20 74  | nil..."Attempt.to.add.--xtrace.t | 
| 1300 |  6f 20 73 68 65 6c 6c 20 63 6f 6d 6d 61 6e 64 20    74 6f 20 64 65 62 75 67 2e 22 0a 20 20 3a 74 79  | o.shell.command.to.debug."...:ty | 
| 1320 |  70 65 20 27 62 6f 6f 6c 65 61 6e 0a 20 20 3a 67    72 6f 75 70 20 27 64 77 69 6d 2d 73 68 65 6c 6c  | pe.'boolean...:group.'dwim-shell | 
| 1340 |  2d 63 6f 6d 6d 61 6e 64 29 0a 0a 28 64 65 66 63    75 73 74 6f 6d 20 64 77 69 6d 2d 73 68 65 6c 6c  | -command)..(defcustom.dwim-shell | 
| 1360 |  2d 63 6f 6d 6d 61 6e 64 2d 64 6f 6e 65 2d 62 75    66 66 65 72 2d 6e 61 6d 65 0a 20 20 28 6c 61 6d  | -command-done-buffer-name...(lam | 
| 1380 |  62 64 61 20 28 6e 61 6d 65 29 0a 20 20 20 20 28    66 6f 72 6d 61 74 20 22 25 73 20 25 73 22 20 6e  | bda.(name).....(format."%s.%s".n | 
| 13a0 |  61 6d 65 20 28 70 72 6f 70 65 72 74 69 7a 65 20    22 64 6f 6e 65 22 20 27 66 61 63 65 20 27 73 75  | ame.(propertize."done".'face.'su | 
| 13c0 |  63 63 65 73 73 29 29 29 0a 20 20 22 46 75 6e 63    74 69 6f 6e 20 74 6f 20 66 6f 72 6d 61 74 20 62  | ccess)))..."Function.to.format.b | 
| 13e0 |  75 66 66 65 72 20 6e 61 6d 65 20 6f 6e 20 73 75    63 63 65 73 73 2e 0a 55 73 65 20 60 69 64 65 6e  | uffer.name.on.success..Use.`iden | 
| 1400 |  74 69 66 79 27 20 74 6f 20 72 65 6d 6f 76 65 20    66 6f 72 6d 61 74 74 69 6e 67 2e 22 0a 20 20 3a  | tify'.to.remove.formatting."...: | 
| 1420 |  74 79 70 65 20 27 66 75 6e 63 74 69 6f 6e 0a 20    20 3a 67 72 6f 75 70 20 27 64 77 69 6d 2d 73 68  | type.'function...:group.'dwim-sh | 
| 1440 |  65 6c 6c 2d 63 6f 6d 6d 61 6e 64 29 0a 0a 28 64    65 66 63 75 73 74 6f 6d 20 64 77 69 6d 2d 73 68  | ell-command)..(defcustom.dwim-sh | 
| 1460 |  65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 65 72 72 6f    72 2d 62 75 66 66 65 72 2d 6e 61 6d 65 0a 20 20  | ell-command-error-buffer-name... | 
| 1480 |  28 6c 61 6d 62 64 61 20 28 6e 61 6d 65 29 0a 20    20 20 20 28 66 6f 72 6d 61 74 20 22 25 73 20 25  | (lambda.(name).....(format."%s.% | 
| 14a0 |  73 22 20 6e 61 6d 65 20 28 70 72 6f 70 65 72 74    69 7a 65 20 22 65 72 72 6f 72 22 20 27 66 61 63  | s".name.(propertize."error".'fac | 
| 14c0 |  65 20 27 65 72 72 6f 72 29 29 29 0a 20 20 22 46    75 6e 63 74 69 6f 6e 20 74 6f 20 66 6f 72 6d 61  | e.'error)))..."Function.to.forma | 
| 14e0 |  74 20 62 75 66 66 65 72 20 6e 61 6d 65 20 6f 6e    20 65 72 72 6f 72 2e 0a 55 73 65 20 60 69 64 65  | t.buffer.name.on.error..Use.`ide | 
| 1500 |  6e 74 69 66 79 27 20 74 6f 20 72 65 6d 6f 76 65    20 66 6f 72 6d 61 74 74 69 6e 67 2e 22 0a 20 20  | ntify'.to.remove.formatting."... | 
| 1520 |  3a 74 79 70 65 20 27 66 75 6e 63 74 69 6f 6e 0a    20 20 3a 67 72 6f 75 70 20 27 64 77 69 6d 2d 73  | :type.'function...:group.'dwim-s | 
| 1540 |  68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 29 0a 0a 28    64 65 66 76 61 72 20 64 77 69 6d 2d 73 68 65 6c  | hell-command)..(defvar.dwim-shel | 
| 1560 |  6c 2d 63 6f 6d 6d 61 6e 64 2d 2d 63 6f 6d 6d 61    6e 64 73 20 6e 69 6c 20 22 41 6c 6c 20 63 6f 6d  | l-command--commands.nil."All.com | 
| 1580 |  6d 61 6e 64 73 20 69 6e 20 70 72 6f 67 72 65 73    73 2e 22 29 0a 0a 28 63 6c 2d 64 65 66 73 74 72  | mands.in.progress.")..(cl-defstr | 
| 15a0 |  75 63 74 0a 20 20 20 20 64 77 69 6d 2d 73 68 65    6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 2d 63 6f 6d 6d  | uct.....dwim-shell-command--comm | 
| 15c0 |  61 6e 64 0a 20 20 22 44 65 73 63 72 69 62 65 73    20 61 20 63 6f 6d 6d 61 6e 64 20 69 6e 20 70 72  | and..."Describes.a.command.in.pr | 
| 15e0 |  6f 67 72 65 73 73 2e 22 0a 20 20 73 63 72 69 70    74 0a 20 20 70 72 6f 63 65 73 73 0a 20 20 6e 61  | ogress."...script...process...na | 
| 1600 |  6d 65 0a 20 20 63 61 6c 6c 69 6e 67 2d 62 75 66    66 65 72 0a 20 20 72 65 70 6f 72 74 65 72 0a 20  | me...calling-buffer...reporter.. | 
| 1620 |  20 6f 6e 2d 63 6f 6d 70 6c 65 74 69 6f 6e 0a 20    20 66 69 6c 65 73 2d 62 65 66 6f 72 65 0a 20 20  | .on-completion...files-before... | 
| 1640 |  73 69 6c 65 6e 74 2d 73 75 63 63 65 73 73 0a 20    20 65 72 72 6f 72 2d 61 75 74 6f 66 6f 63 75 73  | silent-success...error-autofocus | 
| 1660 |  0a 20 20 6d 6f 6e 69 74 6f 72 2d 64 69 72 65 63    74 6f 72 79 29 0a 0a 3b 3b 3b 23 23 23 61 75 74  | ...monitor-directory)..;;;###aut | 
| 1680 |  6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 64 77 69    6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 20  | oload.(defun.dwim-shell-command. | 
| 16a0 |  28 70 72 65 66 69 78 29 0a 20 20 22 45 78 65 63    75 74 65 20 44 57 49 4d 20 73 68 65 6c 6c 20 63  | (prefix)..."Execute.DWIM.shell.c | 
| 16c0 |  6f 6d 6d 61 6e 64 20 61 73 79 6e 63 68 72 6f 6e    6f 75 73 6c 79 20 75 73 69 6e 67 20 6e 6f 77 65  | ommand.asynchronously.using.nowe | 
| 16e0 |  62 20 74 65 6d 70 6c 61 74 65 73 2e 0a 0a 57 68    69 63 68 20 66 69 6c 65 73 0a 0a 20 20 60 64 77  | b.templates...Which.files....`dw | 
| 1700 |  69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64    27 20 61 74 74 65 6d 70 74 73 20 74 6f 20 67 75  | im-shell-command'.attempts.to.gu | 
| 1720 |  65 73 73 20 77 68 69 63 68 20 66 69 6c 65 28 73    29 20 79 6f 75 20 6d 61 79 20 77 61 6e 74 0a 20  | ess.which.file(s).you.may.want.. | 
| 1740 |  20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 74 6f 20    6f 70 65 72 61 74 65 20 6f 6e 2e 0a 0a 20 20 31  | .the.command.to.operate.on.....1 | 
| 1760 |  2e 20 49 66 20 76 69 73 69 74 69 6e 67 20 61 20    60 64 69 72 65 64 27 20 62 75 66 66 65 72 2c 20  | ..If.visiting.a.`dired'.buffer,. | 
| 1780 |  64 72 61 77 20 74 68 65 20 6d 61 72 6b 65 64 20    66 69 6c 65 28 73 29 2e 0a 20 20 32 2e 20 49 66  | draw.the.marked.file(s)....2..If | 
| 17a0 |  20 76 69 73 69 74 69 6e 67 20 61 6e 79 20 6f 74    68 65 72 20 62 75 66 66 65 72 20 77 69 74 68 20  | .visiting.any.other.buffer.with. | 
| 17c0 |  61 6e 20 61 73 73 6f 63 69 61 74 65 64 20 66 69    6c 65 2c 20 75 73 65 20 74 68 61 74 2e 0a 0a 54  | an.associated.file,.use.that...T | 
| 17e0 |  65 6d 70 6c 61 74 65 73 0a 0a 20 20 4f 70 65 72    61 74 65 20 6f 6e 20 64 72 61 77 6e 20 66 69 6c  | emplates....Operate.on.drawn.fil | 
| 1800 |  65 73 20 75 73 69 6e 67 20 65 69 74 68 65 72 20    74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 3a 0a 0a  | es.using.either.the.following:.. | 
| 1820 |  20 20 20 20 3c 3c 66 3e 3e 20 28 66 69 6c 65 20    70 61 74 68 29 0a 20 20 20 20 3c 3c 66 6e 65 3e  | ....<<f>>.(file.path).....<<fne> | 
| 1840 |  3e 20 28 66 69 6c 65 20 70 61 74 68 20 77 69 74    68 6f 75 74 20 65 78 74 65 6e 73 69 6f 6e 29 0a  | >.(file.path.without.extension). | 
| 1860 |  20 20 20 20 3c 3c 65 3e 3e 20 28 65 78 74 65 6e    73 69 6f 6e 29 0a 20 20 20 20 3c 3c 74 64 3e 3e  | ....<<e>>.(extension).....<<td>> | 
| 1880 |  20 28 67 65 6e 65 72 61 74 65 20 61 20 74 65 6d    70 6f 72 61 72 79 20 64 69 72 65 63 74 6f 72 79  | .(generate.a.temporary.directory | 
| 18a0 |  29 0a 20 20 20 20 3c 3c 2a 3e 3e 20 28 61 6c 6c    20 66 69 6c 65 73 20 6a 6f 69 6e 65 64 29 0a 20  | ).....<<*>>.(all.files.joined).. | 
| 18c0 |  20 20 20 3c 3c 63 62 3e 3e 20 28 63 6c 69 70 62    6f 61 72 64 29 0a 20 20 20 20 3c 3c 6e 3e 3e 2c  | ...<<cb>>.(clipboard).....<<n>>, | 
| 18e0 |  20 3c 3c 31 6e 3e 3e 2c 20 6f 72 20 3c 3c 41 6e    3e 3e 20 28 66 6f 72 20 63 75 72 72 65 6e 74 20  | .<<1n>>,.or.<<An>>.(for.current. | 
| 1900 |  69 74 65 72 61 74 69 6f 6e 29 0a 0a 20 20 46 6f    72 20 65 78 61 6d 70 6c 65 3a 0a 0a 20 20 20 20  | iteration)....For.example:...... | 
| 1920 |  57 69 74 68 20 64 72 61 77 6e 20 66 69 6c 65 73    20 27 28 5c 22 70 61 74 68 2f 74 6f 2f 69 6d 61  | With.drawn.files.'(\"path/to/ima | 
| 1940 |  67 65 31 2e 70 6e 67 5c 22 20 5c 22 70 61 74 68    2f 74 6f 2f 69 6d 61 67 65 32 2e 70 6e 67 5c 22  | ge1.png\".\"path/to/image2.png\" | 
| 1960 |  29 0a 0a 20 20 20 5c 22 63 6f 6e 76 65 72 74 20    27 3c 3c 66 3e 3e 27 20 27 3c 3c 66 6e 65 3e 3e  | ).....\"convert.'<<f>>'.'<<fne>> | 
| 1980 |  2e 6a 70 67 27 5c 22 20 65 78 70 61 6e 64 73 20    74 6f 0a 0a 20 20 20 20 20 5c 22 63 6f 6e 76 65  | .jpg'\".expands.to.......\"conve | 
| 19a0 |  72 74 20 27 70 61 74 68 2f 74 6f 2f 69 6d 61 67    65 31 2e 70 6e 67 27 20 27 70 61 74 68 2f 74 6f  | rt.'path/to/image1.png'.'path/to | 
| 19c0 |  2f 69 6d 61 67 65 31 2e 6a 70 67 27 5c 22 0a 20    20 20 20 20 5c 22 63 6f 6e 76 65 72 74 20 27 70  | /image1.jpg'\"......\"convert.'p | 
| 19e0 |  61 74 68 2f 74 6f 2f 69 6d 61 67 65 32 2e 70 6e    67 27 20 27 70 61 74 68 2f 74 6f 2f 69 6d 61 67  | ath/to/image2.png'.'path/to/imag | 
| 1a00 |  65 32 2e 6a 70 67 27 5c 22 0a 0a 20 20 20 77 68    69 6c 65 20 5c 22 6c 73 20 2d 6c 68 20 3c 3c 2a  | e2.jpg'\".....while.\"ls.-lh.<<* | 
| 1a20 |  3e 3e 5c 22 20 65 78 70 61 6e 64 73 20 74 6f 0a    0a 20 20 20 20 20 5c 22 6c 73 20 2d 6c 68 20 70  | >>\".expands.to.......\"ls.-lh.p | 
| 1a40 |  61 74 68 2f 74 6f 2f 69 6d 61 67 65 31 2e 70 6e    67 20 70 61 74 68 2f 74 6f 2f 69 6d 61 67 65 32  | ath/to/image1.png.path/to/image2 | 
| 1a60 |  2e 70 6e 67 5c 22 0a 0a 46 6f 63 75 73 0a 0a 20    20 60 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d  | .png\"..Focus....`dwim-shell-com | 
| 1a80 |  6d 61 6e 64 27 20 63 72 65 61 74 65 73 20 61 20    70 72 6f 63 65 73 73 20 62 75 66 66 65 72 20 74  | mand'.creates.a.process.buffer.t | 
| 1aa0 |  6f 20 63 61 70 74 75 72 65 20 63 6f 6d 6d 61 6e    64 0a 20 20 6f 75 74 70 75 74 2c 20 62 75 74 20  | o.capture.command...output,.but. | 
| 1ac0 |  64 6f 65 73 6e 27 74 20 64 69 73 70 6c 61 79 20    6f 72 20 66 6f 63 75 73 20 6f 6e 20 69 74 20 62  | doesn't.display.or.focus.on.it.b | 
| 1ae0 |  79 20 64 65 66 61 75 6c 74 2e 20 20 49 6e 73 74    65 61 64 2c 0a 20 20 69 74 20 74 72 69 65 73 20  | y.default...Instead,...it.tries. | 
| 1b00 |  74 6f 20 67 75 65 73 73 20 77 68 61 74 27 73 20    6d 6f 72 65 20 63 6f 6e 76 65 6e 69 65 6e 74 20  | to.guess.what's.more.convenient. | 
| 1b20 |  74 6f 20 66 6f 63 75 73 20 6f 6e 2e 0a 0a 20 20    57 68 69 6c 65 20 74 68 65 20 70 72 6f 63 65 73  | to.focus.on.....While.the.proces | 
| 1b40 |  73 20 69 73 20 62 75 73 79 2c 20 73 68 6f 77 20    61 20 73 70 69 6e 6e 65 72 20 69 6e 20 74 68 65  | s.is.busy,.show.a.spinner.in.the | 
| 1b60 |  20 6d 69 6e 69 62 75 66 66 65 72 2e 20 20 4e 6f    0a 20 20 66 6f 63 75 73 20 63 68 61 6e 67 65 73  | .minibuffer...No...focus.changes | 
| 1b80 |  2e 0a 0a 20 20 41 66 74 65 72 20 70 72 6f 63 65    73 73 20 69 73 20 66 69 6e 69 73 68 65 64 3a 0a  | .....After.process.is.finished:. | 
| 1ba0 |  0a 20 20 31 2e 20 49 66 20 74 68 65 72 65 20 77    65 72 65 20 61 6e 79 20 66 69 6c 65 73 20 63 72  | ...1..If.there.were.any.files.cr | 
| 1bc0 |  65 61 74 65 64 20 69 6e 20 74 68 65 20 60 64 65    66 61 75 6c 74 2d 64 69 72 65 63 74 6f 72 79 27  | eated.in.the.`default-directory' | 
| 1be0 |  2c 0a 20 20 6a 75 6d 70 20 74 6f 20 61 20 60 64    69 72 65 64 27 20 62 75 66 66 65 72 20 61 6e 64  | ,...jump.to.a.`dired'.buffer.and | 
| 1c00 |  20 6d 6f 76 65 20 70 6f 69 6e 74 20 74 6f 20 74    68 65 20 6e 65 77 20 66 69 6c 65 20 28 76 69 61  | .move.point.to.the.new.file.(via | 
| 1c20 |  0a 20 20 60 64 69 72 65 64 2d 6a 75 6d 70 27 29    2e 0a 0a 20 20 32 2e 20 49 66 20 6e 6f 20 6e 65  | ...`dired-jump').....2..If.no.ne | 
| 1c40 |  77 20 66 69 6c 65 73 20 77 65 72 65 20 63 72 65    61 74 65 64 2c 20 61 75 74 6f 6d 61 74 69 63 61  | w.files.were.created,.automatica | 
| 1c60 |  6c 6c 79 20 73 77 69 74 63 68 20 66 6f 63 75 73    20 74 6f 20 74 68 65 0a 20 20 70 72 6f 63 65 73  | lly.switch.focus.to.the...proces | 
| 1c80 |  73 20 62 75 66 66 65 72 20 61 6e 64 20 64 69 73    70 6c 61 79 20 69 74 73 20 6f 75 74 70 75 74 2e  | s.buffer.and.display.its.output. | 
| 1ca0 |  0a 0a 20 20 20 20 4e 6f 74 65 3a 20 59 6f 75 20    63 61 6e 20 70 72 65 76 65 6e 74 20 74 68 69 73  | ......Note:.You.can.prevent.this | 
| 1cc0 |  20 61 75 74 6f 6d 61 74 69 63 20 66 6f 63 75 73    20 62 79 20 70 72 65 70 65 6e 64 69 6e 67 20 79  | .automatic.focus.by.prepending.y | 
| 1ce0 |  6f 75 72 0a 20 20 20 20 63 6f 6d 6d 61 6e 64 20    77 69 74 68 20 77 68 69 74 65 73 70 61 63 65 2e  | our.....command.with.whitespace. | 
| 1d00 |  0a 0a 20 20 20 20 20 20 7c 0a 20 20 20 20 20 20    56 0a 20 20 20 20 5c 22 20 63 6f 6e 76 65 72 74  | ........|.......V.....\".convert | 
| 1d20 |  20 27 3c 3c 66 3e 3e 27 20 27 3c 3c 66 6e 65 3e    3e 2e 6a 70 67 27 5c 22 0a 0a 20 20 33 2e 20 49  | .'<<f>>'.'<<fne>>.jpg'\"....3..I | 
| 1d40 |  66 20 74 68 65 20 73 68 65 6c 6c 20 63 6f 6d 6d    61 6e 64 20 63 61 75 73 65 64 20 61 6e 79 20 65  | f.the.shell.command.caused.any.e | 
| 1d60 |  72 72 6f 72 73 2c 20 6f 66 66 65 72 20 74 6f 20    66 6f 63 75 73 20 74 68 65 0a 20 20 70 72 6f 63  | rrors,.offer.to.focus.the...proc | 
| 1d80 |  65 73 73 20 62 75 66 66 65 72 20 61 6e 64 20 64    69 73 70 6c 61 79 20 69 74 73 20 6f 75 74 70 75  | ess.buffer.and.display.its.outpu | 
| 1da0 |  74 2e 0a 0a 51 75 69 63 6b 20 65 78 69 74 0a 0a    20 20 50 72 6f 63 65 73 73 20 62 75 66 66 65 72  | t...Quick.exit....Process.buffer | 
| 1dc0 |  73 20 61 72 65 20 72 65 61 64 2d 6f 6e 6c 79 20    61 6e 64 20 63 61 6e 20 62 65 20 71 75 69 63 6b  | s.are.read-only.and.can.be.quick | 
| 1de0 |  6c 79 20 63 6c 6f 73 65 64 20 62 79 0a 20 20 70    72 65 73 73 69 6e 67 20 60 71 27 2e 0a 0a 50 72  | ly.closed.by...pressing.`q'...Pr | 
| 1e00 |  65 66 69 78 0a 0a 20 20 57 69 74 68 20 50 52 45    46 49 58 2c 20 65 78 65 63 75 74 65 20 63 6f 6d  | efix....With.PREFIX,.execute.com | 
| 1e20 |  6d 61 6e 64 20 74 68 61 74 20 6e 75 6d 62 65 72    20 6f 66 20 74 69 6d 65 73 2e 22 0a 20 20 28 69  | mand.that.number.of.times."...(i | 
| 1e40 |  6e 74 65 72 61 63 74 69 76 65 20 22 70 22 29 0a    20 20 28 6c 65 74 20 28 28 73 63 72 69 70 74 20  | nteractive."p")...(let.((script. | 
| 1e60 |  28 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d    61 6e 64 2d 2d 72 65 61 64 2d 73 68 65 6c 6c 2d  | (dwim-shell-command--read-shell- | 
| 1e80 |  63 6f 6d 6d 61 6e 64 29 29 29 0a 20 20 20 20 28    64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61  | command))).....(dwim-shell-comma | 
| 1ea0 |  6e 64 2d 6f 6e 2d 6d 61 72 6b 65 64 2d 66 69 6c    65 73 0a 20 20 20 20 20 64 77 69 6d 2d 73 68 65  | nd-on-marked-files......dwim-she | 
| 1ec0 |  6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 62 75 66 66 65    72 2d 6e 61 6d 65 20 73 63 72 69 70 74 0a 20 20  | ll-command-buffer-name.script... | 
| 1ee0 |  20 20 20 3a 72 65 70 65 61 74 20 70 72 65 66 69    78 0a 20 20 20 20 20 3a 73 68 65 6c 6c 2d 75 74  | ...:repeat.prefix......:shell-ut | 
| 1f00 |  69 6c 20 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f    6d 6d 61 6e 64 2d 73 68 65 6c 6c 2d 75 74 69 6c  | il.dwim-shell-command-shell-util | 
| 1f20 |  0a 20 20 20 20 20 3a 73 68 65 6c 6c 2d 61 72 67    73 20 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d  | ......:shell-args.dwim-shell-com | 
| 1f40 |  6d 61 6e 64 2d 73 68 65 6c 6c 2d 61 72 67 73 0a    20 20 20 20 20 3a 73 69 6c 65 6e 74 2d 73 75 63  | mand-shell-args......:silent-suc | 
| 1f60 |  63 65 73 73 20 28 73 74 72 69 6e 67 2d 70 72 65    66 69 78 2d 70 20 22 20 22 20 73 63 72 69 70 74  | cess.(string-prefix-p.".".script | 
| 1f80 |  29 0a 20 20 20 20 20 3a 65 72 72 6f 72 2d 61 75    74 6f 66 6f 63 75 73 20 28 6e 6f 74 20 64 77 69  | )......:error-autofocus.(not.dwi | 
| 1fa0 |  6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d    70 72 6f 6d 70 74 2d 6f 6e 2d 65 72 72 6f 72 29  | m-shell-command-prompt-on-error) | 
| 1fc0 |  29 29 29 0a 0a 28 64 65 66 75 6e 20 64 77 69 6d    2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 2d  | )))..(defun.dwim-shell-command-- | 
| 1fe0 |  72 65 61 64 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61    6e 64 20 28 29 0a 20 20 22 52 65 61 64 20 61 20  | read-shell-command.()..."Read.a. | 
| 2000 |  73 68 65 6c 6c 20 63 6f 6d 6d 61 6e 64 20 66 72    6f 6d 20 74 68 65 20 6d 69 6e 69 62 75 66 66 65  | shell.command.from.the.minibuffe | 
| 2020 |  72 2c 20 75 73 69 6e 67 20 60 73 68 65 6c 6c 2d    63 6f 6d 6d 61 6e 64 2d 68 69 73 74 6f 72 79 27  | r,.using.`shell-command-history' | 
| 2040 |  2e 22 0a 20 20 28 6d 69 6e 69 62 75 66 66 65 72    2d 77 69 74 68 2d 73 65 74 75 70 2d 68 6f 6f 6b  | ."...(minibuffer-with-setup-hook | 
| 2060 |  0a 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28    29 0a 20 20 20 20 20 20 20 20 28 62 65 67 69 6e  | .......(lambda.().........(begin | 
| 2080 |  6e 69 6e 67 2d 6f 66 2d 6c 69 6e 65 29 0a 20 20    20 20 20 20 20 20 28 73 65 74 71 2d 6c 6f 63 61  | ning-of-line).........(setq-loca | 
| 20a0 |  6c 20 6d 69 6e 69 62 75 66 66 65 72 2d 64 65 66    61 75 6c 74 2d 61 64 64 2d 66 75 6e 63 74 69 6f  | l.minibuffer-default-add-functio | 
| 20c0 |  6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 23 27 6d 69 6e 69 62 75 66 66  | n.....................#'minibuff | 
| 20e0 |  65 72 2d 64 65 66 61 75 6c 74 2d 61 64 64 2d 73    68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 73 29 29 0a  | er-default-add-shell-commands)). | 
| 2100 |  20 20 20 20 28 72 65 61 64 2d 66 72 6f 6d 2d 6d    69 6e 69 62 75 66 66 65 72 20 64 77 69 6d 2d 73  | ....(read-from-minibuffer.dwim-s | 
| 2120 |  68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 70 72 6f    6d 70 74 20 64 77 69 6d 2d 73 68 65 6c 6c 2d 63  | hell-command-prompt.dwim-shell-c | 
| 2140 |  6f 6d 6d 61 6e 64 2d 64 65 66 61 75 6c 74 2d 63    6f 6d 6d 61 6e 64 20 6e 69 6c 20 6e 69 6c 20 27  | ommand-default-command.nil.nil.' | 
| 2160 |  73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 68 69    73 74 6f 72 79 29 29 29 0a 0a 28 63 6c 2d 64 65  | shell-command-history)))..(cl-de | 
| 2180 |  66 75 6e 20 64 77 69 6d 2d 73 68 65 6c 6c 2d 63    6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d 61 72 6b 65 64  | fun.dwim-shell-command-on-marked | 
| 21a0 |  2d 66 69 6c 65 73 20 28 62 75 66 66 65 72 2d 6e    61 6d 65 20 73 63 72 69 70 74 20 26 6b 65 79 20  | -files.(buffer-name.script.&key. | 
| 21c0 |  75 74 69 6c 73 20 65 78 74 65 6e 73 69 6f 6e 73    20 73 68 65 6c 6c 2d 75 74 69 6c 20 73 68 65 6c  | utils.extensions.shell-util.shel | 
| 21e0 |  6c 2d 61 72 67 73 20 73 68 65 6c 6c 2d 74 72 61    63 65 20 73 68 65 6c 6c 2d 70 69 70 65 20 70 6f  | l-args.shell-trace.shell-pipe.po | 
| 2200 |  73 74 2d 70 72 6f 63 65 73 73 2d 74 65 6d 70 6c    61 74 65 20 6f 6e 2d 63 6f 6d 70 6c 65 74 69 6f  | st-process-template.on-completio | 
| 2220 |  6e 20 72 65 70 65 61 74 20 73 69 6c 65 6e 74 2d    73 75 63 63 65 73 73 20 6e 6f 2d 70 72 6f 67 72  | n.repeat.silent-success.no-progr | 
| 2240 |  65 73 73 20 65 72 72 6f 72 2d 61 75 74 6f 66 6f    63 75 73 20 6d 6f 6e 69 74 6f 72 2d 64 69 72 65  | ess.error-autofocus.monitor-dire | 
| 2260 |  63 74 6f 72 79 20 66 6f 63 75 73 2d 6e 6f 77 20    6a 6f 69 6e 2d 73 65 70 61 72 61 74 6f 72 20 74  | ctory.focus-now.join-separator.t | 
| 2280 |  65 6d 70 2d 64 69 72 29 0a 20 20 22 43 72 65 61    74 65 20 44 57 49 4d 20 75 74 69 6c 69 74 69 65  | emp-dir)..."Create.DWIM.utilitie | 
| 22a0 |  73 20 65 78 65 63 75 74 69 6e 67 20 74 65 6d 70    6c 61 74 65 64 20 53 43 52 49 50 54 20 6f 6e 20  | s.executing.templated.SCRIPT.on. | 
| 22c0 |  67 69 76 65 6e 20 66 69 6c 65 73 2e 0a 0a 48 65    72 65 27 73 20 61 20 73 69 6d 70 6c 65 20 75 74  | given.files...Here's.a.simple.ut | 
| 22e0 |  69 6c 69 74 79 20 69 6e 76 6f 6b 69 6e 67 20 53    43 52 49 50 54 20 74 6f 20 63 6f 6e 76 65 72 74  | ility.invoking.SCRIPT.to.convert | 
| 2300 |  20 69 6d 61 67 65 20 66 69 6c 65 73 20 74 6f 20    6a 70 67 2e 0a 0a 20 20 28 64 65 66 75 6e 20 64  | .image.files.to.jpg.....(defun.d | 
| 2320 |  77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e    64 2d 63 6f 6e 76 65 72 74 2d 69 6d 61 67 65 2d  | wim-shell-command-convert-image- | 
| 2340 |  74 6f 2d 6a 70 67 20 28 29 0a 20 20 20 20 5c 22    43 6f 6e 76 65 72 74 20 61 6c 6c 20 6d 61 72 6b  | to-jpg.().....\"Convert.all.mark | 
| 2360 |  65 64 20 69 6d 61 67 65 73 20 74 6f 20 6a 70 67    28 73 29 2e 5c 22 0a 20 20 20 20 28 69 6e 74 65  | ed.images.to.jpg(s).\".....(inte | 
| 2380 |  72 61 63 74 69 76 65 29 0a 20 20 20 20 28 64 77    69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64  | ractive).....(dwim-shell-command | 
| 23a0 |  2d 6f 6e 2d 6d 61 72 6b 65 64 2d 66 69 6c 65 73    0a 20 20 20 20 20 5c 22 43 6f 6e 76 65 72 74 20  | -on-marked-files......\"Convert. | 
| 23c0 |  74 6f 20 6a 70 67 5c 22 0a 20 20 20 20 20 5c 22    63 6f 6e 76 65 72 74 20 2d 76 65 72 62 6f 73 65  | to.jpg\"......\"convert.-verbose | 
| 23e0 |  20 27 3c 3c 66 3e 3e 27 20 27 3c 3c 66 6e 65 3e    3e 2e 6a 70 67 27 5c 22 0a 20 20 20 20 20 3a 75  | .'<<f>>'.'<<fne>>.jpg'\"......:u | 
| 2400 |  74 69 6c 73 20 5c 22 63 6f 6e 76 65 72 74 5c 22    29 29 0a 0a 43 68 65 63 6b 20 60 64 77 69 6d 2d  | tils.\"convert\"))..Check.`dwim- | 
| 2420 |  73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 63 6f    6d 6d 61 6e 64 73 2e 65 6c 27 20 66 6f 72 20 6d  | shell-command-commands.el'.for.m | 
| 2440 |  6f 72 65 20 65 78 61 6d 70 6c 65 73 2e 0a 0a 41    6c 6c 20 63 6f 6d 6d 61 6e 64 20 70 72 6f 63 65  | ore.examples...All.command.proce | 
| 2460 |  73 73 20 6f 75 74 70 75 74 20 69 73 20 77 72 69    74 74 65 6e 20 74 6f 20 61 20 62 75 66 66 65 72  | ss.output.is.written.to.a.buffer | 
| 2480 |  20 77 69 74 68 20 42 55 46 46 45 52 2d 4e 41 4d    45 2e 0a 0a 41 6c 6c 20 70 61 72 61 6d 73 20 65  | .with.BUFFER-NAME...All.params.e | 
| 24a0 |  78 70 6c 61 69 6e 65 64 20 69 6e 20 60 64 77 69    6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d  | xplained.in.`dwim-shell-command- | 
| 24c0 |  65 78 65 63 75 74 65 2d 73 63 72 69 70 74 27 2e    0a 0a 57 68 69 63 68 20 66 69 6c 65 73 0a 0a 20  | execute-script'...Which.files... | 
| 24e0 |  20 60 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d    6d 61 6e 64 2d 6f 6e 2d 6d 61 72 6b 65 64 2d 66  | .`dwim-shell-command-on-marked-f | 
| 2500 |  69 6c 65 73 27 20 61 74 74 65 6d 70 74 73 20 74    6f 20 67 75 65 73 73 20 77 68 69 63 68 20 66 69  | iles'.attempts.to.guess.which.fi | 
| 2520 |  6c 65 28 73 29 0a 20 20 79 6f 75 20 6d 61 79 20    77 61 6e 74 20 74 68 65 20 63 6f 6d 6d 61 6e 64  | le(s)...you.may.want.the.command | 
| 2540 |  20 74 6f 20 6f 70 65 72 61 74 65 20 6f 6e 2e 0a    0a 20 20 31 2e 20 49 66 20 76 69 73 69 74 69 6e  | .to.operate.on.....1..If.visitin | 
| 2560 |  67 20 61 20 60 64 69 72 65 64 27 20 62 75 66 66    65 72 2c 20 64 72 61 77 20 74 68 65 20 6d 61 72  | g.a.`dired'.buffer,.draw.the.mar | 
| 2580 |  6b 65 64 20 66 69 6c 65 28 73 29 2e 0a 20 20 32    2e 20 49 66 20 76 69 73 69 74 69 6e 67 20 61 6e  | ked.file(s)....2..If.visiting.an | 
| 25a0 |  79 20 6f 74 68 65 72 20 62 75 66 66 65 72 20 77    69 74 68 20 61 6e 20 61 73 73 6f 63 69 61 74 65  | y.other.buffer.with.an.associate | 
| 25c0 |  64 20 66 69 6c 65 2c 20 75 73 65 20 74 68 61 74    2e 0a 0a 54 65 6d 70 6c 61 74 65 73 0a 0a 20 20  | d.file,.use.that...Templates.... | 
| 25e0 |  4f 70 65 72 61 74 65 20 6f 6e 20 64 72 61 77 6e    20 66 69 6c 65 73 20 75 73 69 6e 67 20 65 69 74  | Operate.on.drawn.files.using.eit | 
| 2600 |  68 65 72 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e    67 3a 0a 0a 20 20 20 20 3c 3c 66 3e 3e 20 28 66  | her.the.following:......<<f>>.(f | 
| 2620 |  69 6c 65 20 70 61 74 68 29 0a 20 20 20 20 3c 3c    66 6e 65 3e 3e 20 28 66 69 6c 65 20 70 61 74 68  | ile.path).....<<fne>>.(file.path | 
| 2640 |  20 77 69 74 68 6f 75 74 20 65 78 74 65 6e 73 69    6f 6e 29 0a 20 20 20 20 3c 3c 65 3e 3e 20 28 65  | .without.extension).....<<e>>.(e | 
| 2660 |  78 74 65 6e 73 69 6f 6e 29 0a 20 20 20 20 3c 3c    74 64 3e 3e 20 28 67 65 6e 65 72 61 74 65 20 61  | xtension).....<<td>>.(generate.a | 
| 2680 |  20 74 65 6d 70 6f 72 61 72 79 20 64 69 72 65 63    74 6f 72 79 29 0a 20 20 20 20 3c 3c 2a 3e 3e 20  | .temporary.directory).....<<*>>. | 
| 26a0 |  28 61 6c 6c 20 66 69 6c 65 73 20 6a 6f 69 6e 65    64 29 0a 20 20 20 20 3c 3c 63 62 3e 3e 20 28 63  | (all.files.joined).....<<cb>>.(c | 
| 26c0 |  6c 69 70 62 6f 61 72 64 29 0a 20 20 20 20 3c 3c    6e 3e 3e 2c 20 3c 3c 31 6e 3e 3e 2c 20 6f 72 20  | lipboard).....<<n>>,.<<1n>>,.or. | 
| 26e0 |  3c 3c 41 6e 3e 3e 20 28 66 6f 72 20 63 75 72 72    65 6e 74 20 69 74 65 72 61 74 69 6f 6e 29 0a 0a  | <<An>>.(for.current.iteration).. | 
| 2700 |  20 20 46 6f 72 20 65 78 61 6d 70 6c 65 3a 0a 0a    20 20 20 20 57 69 74 68 20 64 72 61 77 6e 20 66  | ..For.example:......With.drawn.f | 
| 2720 |  69 6c 65 73 20 27 28 5c 22 70 61 74 68 2f 74 6f    2f 69 6d 61 67 65 31 2e 70 6e 67 5c 22 20 5c 22  | iles.'(\"path/to/image1.png\".\" | 
| 2740 |  70 61 74 68 2f 74 6f 2f 69 6d 61 67 65 32 2e 70    6e 67 5c 22 29 0a 0a 20 20 20 5c 22 63 6f 6e 76  | path/to/image2.png\").....\"conv | 
| 2760 |  65 72 74 20 27 3c 3c 66 3e 3e 27 20 27 3c 3c 66    6e 65 3e 3e 2e 6a 70 67 27 5c 22 20 65 78 70 61  | ert.'<<f>>'.'<<fne>>.jpg'\".expa | 
| 2780 |  6e 64 73 20 74 6f 0a 0a 20 20 20 20 20 5c 22 63    6f 6e 76 65 72 74 20 27 70 61 74 68 2f 74 6f 2f  | nds.to.......\"convert.'path/to/ | 
| 27a0 |  69 6d 61 67 65 31 2e 70 6e 67 27 20 27 70 61 74    68 2f 74 6f 2f 69 6d 61 67 65 31 2e 6a 70 67 27  | image1.png'.'path/to/image1.jpg' | 
| 27c0 |  5c 22 0a 20 20 20 20 20 5c 22 63 6f 6e 76 65 72    74 20 27 70 61 74 68 2f 74 6f 2f 69 6d 61 67 65  | \"......\"convert.'path/to/image | 
| 27e0 |  32 2e 70 6e 67 27 20 27 70 61 74 68 2f 74 6f 2f    69 6d 61 67 65 32 2e 6a 70 67 27 5c 22 0a 0a 20  | 2.png'.'path/to/image2.jpg'\"... | 
| 2800 |  20 20 77 68 69 6c 65 20 5c 22 6c 73 20 2d 6c 68    20 3c 3c 2a 3e 3e 5c 22 20 65 78 70 61 6e 64 73  | ..while.\"ls.-lh.<<*>>\".expands | 
| 2820 |  20 74 6f 0a 0a 20 20 20 20 20 5c 22 6c 73 20 2d    6c 68 20 70 61 74 68 2f 74 6f 2f 69 6d 61 67 65  | .to.......\"ls.-lh.path/to/image | 
| 2840 |  31 2e 70 6e 67 20 70 61 74 68 2f 74 6f 2f 69 6d    61 67 65 32 2e 70 6e 67 5c 22 0a 0a 46 6f 63 75  | 1.png.path/to/image2.png\"..Focu | 
| 2860 |  73 0a 0a 20 20 60 64 77 69 6d 2d 73 68 65 6c 6c    2d 63 6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d 61 72 6b  | s....`dwim-shell-command-on-mark | 
| 2880 |  65 64 2d 66 69 6c 65 73 27 20 63 72 65 61 74 65    73 20 61 20 70 72 6f 63 65 73 73 20 62 75 66 66  | ed-files'.creates.a.process.buff | 
| 28a0 |  65 72 20 74 6f 0a 20 20 63 61 70 74 75 72 65 20    63 6f 6d 6d 61 6e 64 20 6f 75 74 70 75 74 2c 20  | er.to...capture.command.output,. | 
| 28c0 |  62 75 74 20 64 6f 65 73 6e 27 74 20 64 69 73 70    6c 61 79 20 6f 72 20 66 6f 63 75 73 20 6f 6e 20  | but.doesn't.display.or.focus.on. | 
| 28e0 |  69 74 20 62 79 0a 20 20 64 65 66 61 75 6c 74 2e    20 20 49 6e 73 74 65 61 64 2c 20 69 74 20 74 72  | it.by...default...Instead,.it.tr | 
| 2900 |  69 65 73 20 74 6f 20 67 75 65 73 73 20 77 68 61    74 27 73 20 6d 6f 72 65 20 63 6f 6e 76 65 6e 69  | ies.to.guess.what's.more.conveni | 
| 2920 |  65 6e 74 20 74 6f 20 66 6f 63 75 73 0a 20 20 6f    6e 2e 0a 0a 20 20 57 68 69 6c 65 20 74 68 65 20  | ent.to.focus...on.....While.the. | 
| 2940 |  70 72 6f 63 65 73 73 20 69 73 20 62 75 73 79 2c    20 73 68 6f 77 20 61 20 73 70 69 6e 6e 65 72 20  | process.is.busy,.show.a.spinner. | 
| 2960 |  69 6e 20 74 68 65 20 6d 69 6e 69 62 75 66 66 65    72 2e 20 20 4e 6f 0a 20 20 66 6f 63 75 73 20 63  | in.the.minibuffer...No...focus.c | 
| 2980 |  68 61 6e 67 65 73 2e 0a 0a 20 20 41 66 74 65 72    20 70 72 6f 63 65 73 73 20 69 73 20 66 69 6e 69  | hanges.....After.process.is.fini | 
| 29a0 |  73 68 65 64 3a 0a 0a 20 20 31 2e 20 49 66 20 74    68 65 72 65 20 77 65 72 65 20 61 6e 79 20 66 69  | shed:....1..If.there.were.any.fi | 
| 29c0 |  6c 65 73 20 63 72 65 61 74 65 64 20 69 6e 20 74    68 65 20 60 64 65 66 61 75 6c 74 2d 64 69 72 65  | les.created.in.the.`default-dire | 
| 29e0 |  63 74 6f 72 79 27 2c 0a 20 20 6a 75 6d 70 20 74    6f 20 61 20 60 64 69 72 65 64 27 20 62 75 66 66  | ctory',...jump.to.a.`dired'.buff | 
| 2a00 |  65 72 20 61 6e 64 20 6d 6f 76 65 20 70 6f 69 6e    74 20 74 6f 20 74 68 65 20 6e 65 77 20 66 69 6c  | er.and.move.point.to.the.new.fil | 
| 2a20 |  65 20 28 76 69 61 0a 20 20 60 64 69 72 65 64 2d    6a 75 6d 70 27 29 2e 0a 0a 20 20 32 2e 20 49 66  | e.(via...`dired-jump').....2..If | 
| 2a40 |  20 6e 6f 20 6e 65 77 20 66 69 6c 65 73 20 77 65    72 65 20 63 72 65 61 74 65 64 2c 20 61 75 74 6f  | .no.new.files.were.created,.auto | 
| 2a60 |  6d 61 74 69 63 61 6c 6c 79 20 73 77 69 74 63 68    20 66 6f 63 75 73 20 74 6f 20 74 68 65 0a 20 20  | matically.switch.focus.to.the... | 
| 2a80 |  70 72 6f 63 65 73 73 20 62 75 66 66 65 72 20 61    6e 64 20 64 69 73 70 6c 61 79 20 69 74 73 20 6f  | process.buffer.and.display.its.o | 
| 2aa0 |  75 74 70 75 74 2e 0a 0a 20 20 20 20 4e 6f 74 65    3a 20 59 6f 75 20 63 61 6e 20 70 72 65 76 65 6e  | utput.......Note:.You.can.preven | 
| 2ac0 |  74 20 74 68 69 73 20 61 75 74 6f 6d 61 74 69 63    20 66 6f 63 75 73 20 62 79 20 70 72 65 70 65 6e  | t.this.automatic.focus.by.prepen | 
| 2ae0 |  64 69 6e 67 20 79 6f 75 72 0a 20 20 20 20 63 6f    6d 6d 61 6e 64 20 77 69 74 68 20 77 68 69 74 65  | ding.your.....command.with.white | 
| 2b00 |  73 70 61 63 65 2e 0a 0a 20 20 20 20 20 20 7c 0a    20 20 20 20 20 20 56 0a 20 20 20 20 5c 22 20 63  | space.........|.......V.....\".c | 
| 2b20 |  6f 6e 76 65 72 74 20 27 3c 3c 66 3e 3e 27 20 27    3c 3c 66 6e 65 3e 3e 2e 6a 70 67 27 5c 22 0a 0a  | onvert.'<<f>>'.'<<fne>>.jpg'\".. | 
| 2b40 |  20 20 33 2e 20 49 66 20 74 68 65 20 73 68 65 6c    6c 20 63 6f 6d 6d 61 6e 64 20 63 61 75 73 65 64  | ..3..If.the.shell.command.caused | 
| 2b60 |  20 61 6e 79 20 65 72 72 6f 72 73 2c 20 6f 66 66    65 72 20 74 6f 20 66 6f 63 75 73 20 74 68 65 0a  | .any.errors,.offer.to.focus.the. | 
| 2b80 |  20 20 70 72 6f 63 65 73 73 20 62 75 66 66 65 72    20 61 6e 64 20 64 69 73 70 6c 61 79 20 69 74 73  | ..process.buffer.and.display.its | 
| 2ba0 |  20 6f 75 74 70 75 74 2e 0a 0a 51 75 69 63 6b 20    65 78 69 74 0a 0a 20 20 50 72 6f 63 65 73 73 20  | .output...Quick.exit....Process. | 
| 2bc0 |  62 75 66 66 65 72 73 20 61 72 65 20 72 65 61 64    2d 6f 6e 6c 79 20 61 6e 64 20 63 61 6e 20 62 65  | buffers.are.read-only.and.can.be | 
| 2be0 |  20 71 75 69 63 6b 6c 79 20 63 6c 6f 73 65 64 20    62 79 0a 20 20 70 72 65 73 73 69 6e 67 20 60 71  | .quickly.closed.by...pressing.`q | 
| 2c00 |  27 2e 22 0a 20 20 28 64 77 69 6d 2d 73 68 65 6c    6c 2d 63 6f 6d 6d 61 6e 64 2d 65 78 65 63 75 74  | '."...(dwim-shell-command-execut | 
| 2c20 |  65 2d 73 63 72 69 70 74 20 62 75 66 66 65 72 2d    6e 61 6d 65 20 73 63 72 69 70 74 0a 20 20 20 20  | e-script.buffer-name.script..... | 
| 2c40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 2c60 |  20 3a 66 69 6c 65 73 20 28 64 77 69 6d 2d 73 68    65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 2d 66 69 6c  | .:files.(dwim-shell-command--fil | 
| 2c80 |  65 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  | es)............................. | 
| 2ca0 |  20 20 20 20 20 20 20 20 20 3a 75 74 69 6c 73 20    75 74 69 6c 73 0a 20 20 20 20 20 20 20 20 20 20  | .........:utils.utils........... | 
| 2cc0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 3a 65 78 74 65  | ...........................:exte | 
| 2ce0 |  6e 73 69 6f 6e 73 20 65 78 74 65 6e 73 69 6f 6e    73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | nsions.extensions............... | 
| 2d00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 3a 73 68 65 6c 6c 2d 75 74  | .......................:shell-ut | 
| 2d20 |  69 6c 20 73 68 65 6c 6c 2d 75 74 69 6c 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | il.shell-util................... | 
| 2d40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 3a 73 68 65 6c 6c 2d 61 72 67 73 20 73  | ...................:shell-args.s | 
| 2d60 |  68 65 6c 6c 2d 61 72 67 73 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | hell-args....................... | 
| 2d80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a    73 68 65 6c 6c 2d 74 72 61 63 65 20 73 68 65 6c  | ...............:shell-trace.shel | 
| 2da0 |  6c 2d 74 72 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 20 20  | l-trace......................... | 
| 2dc0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 3a 73 68    65 6c 6c 2d 70 69 70 65 20 73 68 65 6c 6c 2d 70  | .............:shell-pipe.shell-p | 
| 2de0 |  69 70 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  | ipe............................. | 
| 2e00 |  20 20 20 20 20 20 20 20 20 3a 70 6f 73 74 2d 70    72 6f 63 65 73 73 2d 74 65 6d 70 6c 61 74 65 20  | .........:post-process-template. | 
| 2e20 |  70 6f 73 74 2d 70 72 6f 63 65 73 73 2d 74 65 6d    70 6c 61 74 65 0a 20 20 20 20 20 20 20 20 20 20  | post-process-template........... | 
| 2e40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 3a 6f 6e 2d 63  | ...........................:on-c | 
| 2e60 |  6f 6d 70 6c 65 74 69 6f 6e 20 6f 6e 2d 63 6f 6d    70 6c 65 74 69 6f 6e 0a 20 20 20 20 20 20 20 20  | ompletion.on-completion......... | 
| 2e80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 3a 73 69  | .............................:si | 
| 2ea0 |  6c 65 6e 74 2d 73 75 63 63 65 73 73 20 73 69 6c    65 6e 74 2d 73 75 63 63 65 73 73 0a 20 20 20 20  | lent-success.silent-success..... | 
| 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 3a 6e 6f 2d 70 72 6f 67 72 65 73 73 20 6e 6f    2d 70 72 6f 67 72 65 73 73 0a 20 20 20 20 20 20  | .:no-progress.no-progress....... | 
| 2f00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a  | ...............................: | 
| 2f20 |  72 65 70 65 61 74 20 72 65 70 65 61 74 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | repeat.repeat................... | 
| 2f40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 3a 65 72 72 6f 72 2d 61 75 74 6f 66 6f  | ...................:error-autofo | 
| 2f60 |  63 75 73 20 65 72 72 6f 72 2d 61 75 74 6f 66 6f    63 75 73 0a 20 20 20 20 20 20 20 20 20 20 20 20  | cus.error-autofocus............. | 
| 2f80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 3a 6d 6f 6e 69 74 6f  | .........................:monito | 
| 2fa0 |  72 2d 64 69 72 65 63 74 6f 72 79 20 6d 6f 6e 69    74 6f 72 2d 64 69 72 65 63 74 6f 72 79 0a 20 20  | r-directory.monitor-directory... | 
| 2fc0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 2fe0 |  20 20 20 3a 66 6f 63 75 73 2d 6e 6f 77 20 66 6f    63 75 73 2d 6e 6f 77 0a 20 20 20 20 20 20 20 20  | ...:focus-now.focus-now......... | 
| 3000 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 3a 6a 6f  | .............................:jo | 
| 3020 |  69 6e 2d 73 65 70 61 72 61 74 6f 72 20 6a 6f 69    6e 2d 73 65 70 61 72 61 74 6f 72 0a 20 20 20 20  | in-separator.join-separator..... | 
| 3040 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 3060 |  20 3a 74 65 6d 70 2d 64 69 72 20 74 65 6d 70 2d    64 69 72 29 29 0a 0a 28 63 6c 2d 64 65 66 75 6e  | .:temp-dir.temp-dir))..(cl-defun | 
| 3080 |  20 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d    61 6e 64 2d 65 78 65 63 75 74 65 2d 73 63 72 69  | .dwim-shell-command-execute-scri | 
| 30a0 |  70 74 20 28 62 75 66 66 65 72 2d 6e 61 6d 65 20    73 63 72 69 70 74 20 26 6b 65 79 20 66 69 6c 65  | pt.(buffer-name.script.&key.file | 
| 30c0 |  73 20 65 78 74 65 6e 73 69 6f 6e 73 20 73 68 65    6c 6c 2d 75 74 69 6c 20 73 68 65 6c 6c 2d 61 72  | s.extensions.shell-util.shell-ar | 
| 30e0 |  67 73 20 73 68 65 6c 6c 2d 74 72 61 63 65 20 73    68 65 6c 6c 2d 70 69 70 65 20 75 74 69 6c 73 20  | gs.shell-trace.shell-pipe.utils. | 
| 3100 |  70 6f 73 74 2d 70 72 6f 63 65 73 73 2d 74 65 6d    70 6c 61 74 65 20 6f 6e 2d 63 6f 6d 70 6c 65 74  | post-process-template.on-complet | 
| 3120 |  69 6f 6e 20 73 69 6c 65 6e 74 2d 73 75 63 63 65    73 73 20 74 65 6d 70 2d 64 69 72 20 72 65 70 65  | ion.silent-success.temp-dir.repe | 
| 3140 |  61 74 20 6e 6f 2d 70 72 6f 67 72 65 73 73 20 65    72 72 6f 72 2d 61 75 74 6f 66 6f 63 75 73 20 6d  | at.no-progress.error-autofocus.m | 
| 3160 |  6f 6e 69 74 6f 72 2d 64 69 72 65 63 74 6f 72 79    20 66 6f 63 75 73 2d 6e 6f 77 20 6a 6f 69 6e 2d  | onitor-directory.focus-now.join- | 
| 3180 |  73 65 70 61 72 61 74 6f 72 29 0a 20 20 22 45 78    65 63 75 74 65 20 61 20 73 63 72 69 70 74 20 61  | separator)..."Execute.a.script.a | 
| 31a0 |  73 79 6e 63 68 72 6f 6e 6f 75 73 6c 79 2c 20 44    57 49 4d 20 73 74 79 6c 65 20 77 69 74 68 20 53  | synchronously,.DWIM.style.with.S | 
| 31c0 |  43 52 49 50 54 20 61 6e 64 20 42 55 46 46 45 52    2d 4e 41 4d 45 2e 0a 0a 3a 46 49 4c 45 53 20 61  | CRIPT.and.BUFFER-NAME...:FILES.a | 
| 31e0 |  72 65 20 75 73 65 64 20 74 6f 20 69 6e 73 74 61    6e 74 69 61 74 65 20 53 43 52 49 50 54 20 61 73  | re.used.to.instantiate.SCRIPT.as | 
| 3200 |  20 61 20 6e 6f 77 65 62 20 74 65 6d 70 6c 61 74    65 2e 0a 0a 20 20 54 68 65 20 66 6f 6c 6c 6f 77  | .a.noweb.template.....The.follow | 
| 3220 |  69 6e 67 20 61 72 65 20 73 75 70 70 6f 72 74 65    64 3a 0a 0a 20 20 20 20 3c 3c 66 3e 3e 20 28 66  | ing.are.supported:......<<f>>.(f | 
| 3240 |  69 6c 65 20 70 61 74 68 29 0a 20 20 20 20 3c 3c    66 6e 65 3e 3e 20 28 66 69 6c 65 20 70 61 74 68  | ile.path).....<<fne>>.(file.path | 
| 3260 |  20 77 69 74 68 6f 75 74 20 65 78 74 65 6e 73 69    6f 6e 29 0a 20 20 20 20 3c 3c 65 3e 3e 20 28 65  | .without.extension).....<<e>>.(e | 
| 3280 |  78 74 65 6e 73 69 6f 6e 29 0a 20 20 20 20 3c 3c    74 64 3e 3e 20 28 67 65 6e 65 72 61 74 65 20 61  | xtension).....<<td>>.(generate.a | 
| 32a0 |  20 74 65 6d 70 6f 72 61 72 79 20 64 69 72 65 63    74 6f 72 79 29 0a 20 20 20 20 3c 3c 2a 3e 3e 20  | .temporary.directory).....<<*>>. | 
| 32c0 |  28 61 6c 6c 20 66 69 6c 65 73 20 6a 6f 69 6e 65    64 29 0a 20 20 20 20 3c 3c 63 62 3e 3e 20 28 63  | (all.files.joined).....<<cb>>.(c | 
| 32e0 |  6c 69 70 62 6f 61 72 64 29 0a 20 20 20 20 3c 3c    6e 3e 3e 2c 20 3c 3c 31 6e 3e 3e 2c 20 6f 72 20  | lipboard).....<<n>>,.<<1n>>,.or. | 
| 3300 |  3c 3c 41 6e 3e 3e 20 28 66 6f 72 20 63 75 72 72    65 6e 74 20 69 74 65 72 61 74 69 6f 6e 29 0a 0a  | <<An>>.(for.current.iteration).. | 
| 3320 |  20 20 46 6f 72 20 65 78 61 6d 70 6c 65 3a 0a 0a    20 20 20 20 47 69 76 65 6e 20 3a 46 49 4c 45 53  | ..For.example:......Given.:FILES | 
| 3340 |  20 27 28 5c 22 70 61 74 68 2f 74 6f 2f 69 6d 61    67 65 31 2e 70 6e 67 5c 22 20 5c 22 70 61 74 68  | .'(\"path/to/image1.png\".\"path | 
| 3360 |  2f 74 6f 2f 69 6d 61 67 65 32 2e 70 6e 67 5c 22    29 0a 0a 20 20 20 20 5c 22 63 6f 6e 76 65 72 74  | /to/image2.png\")......\"convert | 
| 3380 |  20 27 3c 3c 66 3e 3e 27 20 27 3c 3c 66 6e 65 3e    3e 2e 6a 70 67 27 5c 22 20 65 78 70 61 6e 64 73  | .'<<f>>'.'<<fne>>.jpg'\".expands | 
| 33a0 |  20 74 6f 0a 0a 20 20 20 20 20 20 5c 22 63 6f 6e    76 65 72 74 20 27 70 61 74 68 2f 74 6f 2f 69 6d  | .to........\"convert.'path/to/im | 
| 33c0 |  61 67 65 31 2e 70 6e 67 27 20 27 70 61 74 68 2f    74 6f 2f 69 6d 61 67 65 31 2e 6a 70 67 27 5c 22  | age1.png'.'path/to/image1.jpg'\" | 
| 33e0 |  0a 20 20 20 20 20 20 5c 22 63 6f 6e 76 65 72 74    20 27 70 61 74 68 2f 74 6f 2f 69 6d 61 67 65 32  | .......\"convert.'path/to/image2 | 
| 3400 |  2e 70 6e 67 27 20 27 70 61 74 68 2f 74 6f 2f 69    6d 61 67 65 32 2e 6a 70 67 27 5c 22 0a 0a 20 20  | .png'.'path/to/image2.jpg'\".... | 
| 3420 |  20 20 61 6e 64 20 5c 22 6c 73 20 2d 6c 68 20 3c    3c 2a 3e 3e 5c 22 20 65 78 70 61 6e 64 73 20 74  | ..and.\"ls.-lh.<<*>>\".expands.t | 
| 3440 |  6f 0a 0a 20 20 20 20 20 20 5c 22 6c 73 20 2d 6c    68 20 70 61 74 68 2f 74 6f 2f 69 6d 61 67 65 31  | o........\"ls.-lh.path/to/image1 | 
| 3460 |  2e 70 6e 67 20 70 61 74 68 2f 74 6f 2f 69 6d 61    67 65 32 2e 70 6e 67 5c 22 0a 0a 3a 45 58 54 45  | .png.path/to/image2.png\"..:EXTE | 
| 3480 |  4e 53 49 4f 4e 53 20 65 6e 73 75 72 65 73 20 74    68 61 74 20 61 6c 6c 20 66 69 6c 65 73 20 69 6e  | NSIONS.ensures.that.all.files.in | 
| 34a0 |  20 3a 46 49 4c 45 53 20 68 61 76 65 20 74 68 65    20 67 69 76 65 6e 0a 65 78 74 65 6e 73 69 6f 6e  | .:FILES.have.the.given.extension | 
| 34c0 |  73 2e 20 20 43 61 6e 20 62 65 20 65 69 74 68 65    72 20 73 69 6e 67 6c 65 20 73 74 72 69 6e 67 20  | s...Can.be.either.single.string. | 
| 34e0 |  5c 22 70 6e 67 5c 22 20 6f 72 20 61 20 6c 69 73    74 20 27 28 5c 22 70 6e 67 5c 22 20 5c 22 6a 70  | \"png\".or.a.list.'(\"png\".\"jp | 
| 3500 |  67 5c 22 29 2e 0a 0a 3a 53 48 45 4c 4c 2d 55 54    49 4c 20 61 6e 64 20 3a 53 48 45 4c 4c 2d 41 52  | g\")...:SHELL-UTIL.and.:SHELL-AR | 
| 3520 |  47 53 20 63 61 6e 20 62 65 20 75 73 65 64 20 74    6f 20 73 70 65 63 69 66 79 20 53 43 52 49 50 54  | GS.can.be.used.to.specify.SCRIPT | 
| 3540 |  20 69 6e 74 65 72 70 72 65 74 65 72 2e 0a 0a 20    20 46 6f 72 20 70 79 74 68 6f 6e 2c 20 75 73 65  | .interpreter.....For.python,.use | 
| 3560 |  3a 0a 0a 20 20 20 20 28 64 77 69 6d 2d 73 68 65    6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 65 78 65 63 75  | :......(dwim-shell-command-execu | 
| 3580 |  74 65 2d 73 63 72 69 70 74 0a 20 20 20 20 20 20    20 5c 22 50 72 69 6e 74 20 50 69 5c 22 0a 20 20  | te-script........\"Print.Pi\"... | 
| 35a0 |  20 20 20 20 20 5c 22 69 6d 70 6f 72 74 20 6d 61    74 68 0a 20 20 20 20 20 20 20 20 20 70 72 69 6e  | .....\"import.math..........prin | 
| 35c0 |  74 20 6d 61 74 68 2e 70 69 5c 22 0a 20 20 20 20    20 20 20 3a 73 68 65 6c 6c 2d 75 74 69 6c 20 5c  | t.math.pi\"........:shell-util.\ | 
| 35e0 |  22 70 79 74 68 6f 6e 5c 22 0a 20 20 20 20 20 20    20 3a 73 68 65 6c 6c 2d 61 72 67 73 20 5c 22 2d  | "python\"........:shell-args.\"- | 
| 3600 |  63 5c 22 29 0a 0a 3a 53 48 45 4c 4c 2d 50 49 50    45 20 63 61 6e 20 62 65 20 75 73 65 64 20 74 6f  | c\")..:SHELL-PIPE.can.be.used.to | 
| 3620 |  20 70 69 70 65 20 53 43 52 49 50 54 20 74 6f 20    69 74 0a 0a 20 20 46 6f 72 20 73 77 69 66 74 2c  | .pipe.SCRIPT.to.it....For.swift, | 
| 3640 |  20 75 73 65 3a 0a 0a 20 20 20 20 28 64 77 69 6d    2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 6f  | .use:......(dwim-shell-command-o | 
| 3660 |  6e 2d 6d 61 72 6b 65 64 2d 66 69 6c 65 73 0a 20    20 20 20 20 20 20 5c 22 50 72 69 6e 74 20 50 69  | n-marked-files........\"Print.Pi | 
| 3680 |  5c 22 0a 20 20 20 20 20 20 20 5c 22 70 72 69 6e    74 28 44 6f 75 62 6c 65 2e 70 69 29 5c 22 0a 20  | \"........\"print(Double.pi)\".. | 
| 36a0 |  20 20 20 20 20 20 3a 73 68 65 6c 6c 2d 70 69 70    65 20 5c 22 73 77 69 66 74 20 2d 5c 22 29 0a 0a  | ......:shell-pipe.\"swift.-\").. | 
| 36c0 |  3a 55 54 49 4c 53 20 65 6e 73 75 72 65 73 20 74    68 61 74 20 61 6c 6c 20 6e 65 65 64 65 64 20 63  | :UTILS.ensures.that.all.needed.c | 
| 36e0 |  6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 75 74 69 6c    69 74 69 65 73 20 61 72 65 20 69 6e 73 74 61 6c  | ommand.line.utilities.are.instal | 
| 3700 |  6c 65 64 2e 0a 43 61 6e 20 62 65 20 65 69 74 68    65 72 20 61 20 73 69 6e 67 6c 65 20 73 74 72 69  | led..Can.be.either.a.single.stri | 
| 3720 |  6e 67 20 5c 22 66 66 6d 70 65 67 5c 22 20 6f 72    20 61 20 6c 69 73 74 20 27 28 5c 22 66 66 6d 70  | ng.\"ffmpeg\".or.a.list.'(\"ffmp | 
| 3740 |  65 74 5c 22 20 5c 22 63 6f 6e 76 65 72 74 5c 22    29 2e 0a 0a 3a 50 4f 53 54 2d 50 52 4f 43 45 53  | et\".\"convert\")...:POST-PROCES | 
| 3760 |  53 2d 54 45 4d 50 4c 41 54 45 20 65 6e 61 62 6c    65 73 20 70 72 6f 63 65 73 73 69 6e 67 20 74 65  | S-TEMPLATE.enables.processing.te | 
| 3780 |  6d 70 6c 61 74 65 20 66 75 72 74 68 65 72 20 61    66 74 65 72 20 6e 6f 77 65 62 0a 69 6e 73 74 61  | mplate.further.after.noweb.insta | 
| 37a0 |  6e 74 69 61 74 69 6f 6e 2e 0a 0a 3a 4f 4e 2d 43    4f 4d 50 4c 45 54 49 4f 4e 20 69 73 20 69 6e 76  | ntiation...:ON-COMPLETION.is.inv | 
| 37c0 |  6f 6b 65 64 20 61 66 74 65 72 20 53 43 52 49 50    54 20 65 78 65 63 75 74 65 73 20 28 64 69 73 61  | oked.after.SCRIPT.executes.(disa | 
| 37e0 |  62 6c 69 6e 67 20 44 57 49 4d 0a 69 6e 74 65 72    6e 61 6c 20 62 65 68 61 76 69 6f 72 29 2e 0a 0a  | bling.DWIM.internal.behavior)... | 
| 3800 |  3a 53 49 4c 45 4e 54 2d 53 55 43 43 45 53 53 20    74 6f 20 61 76 6f 69 64 20 6a 75 6d 70 69 6e 67  | :SILENT-SUCCESS.to.avoid.jumping | 
| 3820 |  20 74 6f 20 70 72 6f 63 65 73 73 20 62 75 66 66    65 72 20 69 66 20 6e 65 69 74 68 65 72 20 65 72  | .to.process.buffer.if.neither.er | 
| 3840 |  72 6f 72 0a 20 6e 6f 72 20 66 69 6c 65 20 67 65    6e 65 72 61 74 65 64 2e 0a 0a 3a 54 45 4d 50 2d  | ror..nor.file.generated...:TEMP- | 
| 3860 |  44 49 52 20 74 6f 20 67 65 6e 65 72 61 74 65 20    61 20 74 65 6d 70 6f 72 61 72 79 20 64 69 72 65  | DIR.to.generate.a.temporary.dire | 
| 3880 |  63 74 6f 72 79 20 66 6f 72 20 74 68 69 73 20 63    6f 6d 6d 61 6e 64 2e 0a 54 68 69 73 20 69 73 20  | ctory.for.this.command..This.is. | 
| 38a0 |  69 6d 70 6c 69 65 64 20 77 68 65 6e 20 3c 3c 74    64 3e 3e 20 61 70 70 65 61 72 73 20 69 6e 20 74  | implied.when.<<td>>.appears.in.t | 
| 38c0 |  68 65 20 73 63 72 69 70 74 2e 0a 0a 3a 52 45 50    45 41 54 20 55 73 65 20 74 6f 20 72 65 70 65 61  | he.script...:REPEAT.Use.to.repea | 
| 38e0 |  74 20 73 63 72 69 70 74 20 4e 20 6e 75 6d 62 65    72 20 6f 66 20 74 69 6d 65 73 2e 0a 0a 3a 4e 4f  | t.script.N.number.of.times...:NO | 
| 3900 |  2d 50 52 4f 47 52 45 53 53 20 53 75 70 70 72 65    73 73 20 70 72 6f 67 72 65 73 73 20 72 65 70 6f  | -PROGRESS.Suppress.progress.repo | 
| 3920 |  72 74 69 6e 67 2e 0a 0a 3a 45 52 52 4f 52 2d 41    55 54 4f 46 4f 43 55 53 20 41 75 74 6f 6d 61 74  | rting...:ERROR-AUTOFOCUS.Automat | 
| 3940 |  69 63 61 6c 6c 79 20 66 6f 63 75 73 20 70 72 6f    63 65 73 73 20 62 75 66 66 65 72 20 6f 6e 20 65  | ically.focus.process.buffer.on.e | 
| 3960 |  72 72 6f 72 2e 0a 0a 3a 4d 4f 4e 49 54 4f 52 2d    44 49 52 45 43 54 4f 52 59 20 4d 6f 6e 69 74 6f  | rror...:MONITOR-DIRECTORY.Monito | 
| 3980 |  72 20 74 68 69 73 20 64 69 72 65 63 74 6f 72 79    20 66 6f 72 20 6e 65 77 20 66 69 6c 65 73 2e 0a  | r.this.directory.for.new.files.. | 
| 39a0 |  0a 3a 46 4f 43 55 53 2d 4e 4f 57 20 49 6d 6d 65    64 69 61 74 65 6c 79 20 66 6f 63 75 73 20 70 72  | .:FOCUS-NOW.Immediately.focus.pr | 
| 39c0 |  6f 63 65 73 73 20 62 75 66 66 65 72 20 6f 6e 63    65 20 73 74 61 72 74 65 64 2e 22 0a 20 20 28 63  | ocess.buffer.once.started."...(c | 
| 39e0 |  6c 2d 61 73 73 65 72 74 20 62 75 66 66 65 72 2d    6e 61 6d 65 20 6e 69 6c 20 22 53 63 72 69 70 74  | l-assert.buffer-name.nil."Script | 
| 3a00 |  20 6d 75 73 74 20 68 61 76 65 20 61 20 62 75 66    66 65 72 20 6e 61 6d 65 22 29 0a 20 20 28 63 6c  | .must.have.a.buffer.name")...(cl | 
| 3a20 |  2d 61 73 73 65 72 74 20 28 6e 6f 74 20 28 73 74    72 69 6e 67 2d 65 6d 70 74 79 2d 70 20 73 63 72  | -assert.(not.(string-empty-p.scr | 
| 3a40 |  69 70 74 29 29 20 6e 69 6c 20 22 53 63 72 69 70    74 20 6d 75 73 74 20 6e 6f 74 20 62 65 20 65 6d  | ipt)).nil."Script.must.not.be.em | 
| 3a60 |  70 74 79 22 29 0a 20 20 28 77 68 65 6e 20 28 73    74 72 69 6e 67 70 20 65 78 74 65 6e 73 69 6f 6e  | pty")...(when.(stringp.extension | 
| 3a80 |  73 29 0a 20 20 20 20 28 73 65 74 71 20 65 78 74    65 6e 73 69 6f 6e 73 20 28 6c 69 73 74 20 65 78  | s).....(setq.extensions.(list.ex | 
| 3aa0 |  74 65 6e 73 69 6f 6e 73 29 29 29 0a 20 20 28 77    68 65 6e 20 28 61 6e 64 20 73 68 65 6c 6c 2d 75  | tensions)))...(when.(and.shell-u | 
| 3ac0 |  74 69 6c 20 28 73 74 72 69 6e 67 70 20 73 68 65    6c 6c 2d 75 74 69 6c 29 29 0a 20 20 20 20 28 73  | til.(stringp.shell-util)).....(s | 
| 3ae0 |  65 74 71 20 73 68 65 6c 6c 2d 75 74 69 6c 20 28    6c 69 73 74 20 73 68 65 6c 6c 2d 75 74 69 6c 29  | etq.shell-util.(list.shell-util) | 
| 3b00 |  29 29 0a 20 20 28 73 65 74 71 20 73 68 65 6c 6c    2d 75 74 69 6c 20 28 6f 72 20 73 68 65 6c 6c 2d  | ))...(setq.shell-util.(or.shell- | 
| 3b20 |  75 74 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 28 77 68 65  | util........................(whe | 
| 3b40 |  6e 20 73 68 65 6c 6c 2d 66 69 6c 65 2d 6e 61 6d    65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | n.shell-file-name............... | 
| 3b60 |  20 20 20 20 20 20 20 20 20 20 20 28 6c 69 73 74    20 73 68 65 6c 6c 2d 66 69 6c 65 2d 6e 61 6d 65  | ...........(list.shell-file-name | 
| 3b80 |  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 27 28 22 7a 73 68  | ))........................'("zsh | 
| 3ba0 |  22 29 29 29 0a 20 20 28 73 65 74 71 20 73 68 65    6c 6c 2d 61 72 67 73 20 28 6f 72 20 73 68 65 6c  | ")))...(setq.shell-args.(or.shel | 
| 3bc0 |  6c 2d 61 72 67 73 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77  | l-args........................(w | 
| 3be0 |  68 65 6e 20 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e    64 2d 73 77 69 74 63 68 0a 20 20 20 20 20 20 20  | hen.shell-command-switch........ | 
| 3c00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 6c 69 73 74 20 73 68 65 6c 6c 2d 63 6f  | ..................(list.shell-co | 
| 3c20 |  6d 6d 61 6e 64 2d 73 77 69 74 63 68 29 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | mmand-switch)).................. | 
| 3c40 |  20 20 20 20 20 20 27 28 22 2d 78 22 20 22 2d 63    22 29 29 29 0a 20 20 28 77 68 65 6e 20 28 61 6e  | ......'("-x"."-c")))...(when.(an | 
| 3c60 |  64 20 73 68 65 6c 6c 2d 61 72 67 73 20 28 73 74    72 69 6e 67 70 20 73 68 65 6c 6c 2d 61 72 67 73  | d.shell-args.(stringp.shell-args | 
| 3c80 |  29 29 0a 20 20 20 20 28 73 65 74 71 20 73 68 65    6c 6c 2d 61 72 67 73 20 28 6c 69 73 74 20 73 68  | )).....(setq.shell-args.(list.sh | 
| 3ca0 |  65 6c 6c 2d 61 72 67 73 29 29 29 0a 20 20 3b 3b    20 53 65 65 20 69 66 20 2d 78 20 63 61 6e 20 62  | ell-args)))...;;.See.if.-x.can.b | 
| 3cc0 |  65 20 70 72 65 70 65 6e 64 65 64 2e 0a 20 20 28    77 68 65 6e 20 28 61 6e 64 20 28 6e 6f 74 20 28  | e.prepended....(when.(and.(not.( | 
| 3ce0 |  73 65 71 2d 63 6f 6e 74 61 69 6e 73 2d 70 20 73    68 65 6c 6c 2d 61 72 67 73 20 22 2d 78 22 29 29  | seq-contains-p.shell-args."-x")) | 
| 3d00 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f    72 20 73 68 65 6c 6c 2d 74 72 61 63 65 20 64 77  | ..............(or.shell-trace.dw | 
| 3d20 |  69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64    2d 73 68 65 6c 6c 2d 74 72 61 63 65 29 0a 20 20  | im-shell-command-shell-trace)... | 
| 3d40 |  20 20 20 20 20 20 20 20 20 20 20 28 61 70 70 6c    79 20 23 27 64 77 69 6d 2d 73 68 65 6c 6c 2d 63  | ...........(apply.#'dwim-shell-c | 
| 3d60 |  6f 6d 6d 61 6e 64 2d 2d 70 72 6f 67 72 61 6d 2d    74 65 73 74 0a 20 20 20 20 20 20 20 20 20 20 20  | ommand--program-test............ | 
| 3d80 |  20 20 20 20 20 20 20 20 20 28 73 65 71 2d 63 6f    6e 63 61 74 65 6e 61 74 65 0a 20 20 20 20 20 20  | .........(seq-concatenate....... | 
| 3da0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27    6c 69 73 74 20 73 68 65 6c 6c 2d 75 74 69 6c 20  | ...............'list.shell-util. | 
| 3dc0 |  27 28 22 2d 78 22 29 20 73 68 65 6c 6c 2d 61 72    67 73 20 28 6c 69 73 74 20 22 65 63 68 6f 22 29  | '("-x").shell-args.(list."echo") | 
| 3de0 |  29 29 29 0a 20 20 20 20 28 73 65 74 71 20 73 68    65 6c 6c 2d 61 72 67 73 20 28 73 65 71 2d 63 6f  | ))).....(setq.shell-args.(seq-co | 
| 3e00 |  6e 63 61 74 65 6e 61 74 65 20 27 6c 69 73 74 20    27 28 22 2d 78 22 29 20 73 68 65 6c 6c 2d 61 72  | ncatenate.'list.'("-x").shell-ar | 
| 3e20 |  67 73 29 29 29 0a 20 20 28 77 68 65 6e 20 28 73    74 72 69 6e 67 70 20 75 74 69 6c 73 29 0a 20 20  | gs)))...(when.(stringp.utils)... | 
| 3e40 |  20 20 28 73 65 74 71 20 75 74 69 6c 73 20 28 6c    69 73 74 20 75 74 69 6c 73 29 29 29 0a 20 20 28  | ..(setq.utils.(list.utils)))...( | 
| 3e60 |  77 68 65 6e 20 28 61 6e 64 20 28 73 74 72 69 6e    67 2d 6d 61 74 63 68 2d 70 20 22 5c 3c 5c 3c 74  | when.(and.(string-match-p."\<\<t | 
| 3e80 |  64 5c 3e 5c 3e 22 20 73 63 72 69 70 74 20 30 29    20 28 6e 6f 74 20 74 65 6d 70 2d 64 69 72 29 29  | d\>\>".script.0).(not.temp-dir)) | 
| 3ea0 |  0a 20 20 20 20 28 73 65 74 71 20 74 65 6d 70 2d    64 69 72 20 28 6d 61 6b 65 2d 74 65 6d 70 2d 66  | .....(setq.temp-dir.(make-temp-f | 
| 3ec0 |  69 6c 65 20 22 64 77 69 6d 2d 73 68 65 6c 6c 2d    63 6f 6d 6d 61 6e 64 2d 22 20 74 29 29 29 0a 20  | ile."dwim-shell-command-".t))).. | 
| 3ee0 |  20 28 77 68 65 6e 20 28 61 6e 64 20 72 65 70 65    61 74 20 28 3e 20 72 65 70 65 61 74 20 31 29 29  | .(when.(and.repeat.(>.repeat.1)) | 
| 3f00 |  0a 20 20 20 20 28 63 6c 2d 61 73 73 65 72 74 20    28 3c 3d 20 28 6c 65 6e 67 74 68 20 66 69 6c 65  | .....(cl-assert.(<=.(length.file | 
| 3f20 |  73 29 20 31 29 20 6e 69 6c 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 22 4d 75 73 74 20 6e  | s).1).nil................"Must.n | 
| 3f40 |  6f 74 20 72 65 70 65 61 74 20 77 68 65 6e 20 6d    75 6c 74 69 70 6c 65 20 66 69 6c 65 73 20 61 72  | ot.repeat.when.multiple.files.ar | 
| 3f60 |  65 20 73 65 6c 65 63 74 65 64 2e 22 29 0a 20 20    20 20 28 73 65 74 71 20 66 69 6c 65 73 20 28 6d  | e.selected.").....(setq.files.(m | 
| 3f80 |  61 6b 65 2d 6c 69 73 74 20 72 65 70 65 61 74 20    28 6f 72 20 28 73 65 71 2d 66 69 72 73 74 20 66  | ake-list.repeat.(or.(seq-first.f | 
| 3fa0 |  69 6c 65 73 29 20 22 5f 6e 6f 5f 66 69 6c 65 5f    73 65 6c 65 63 74 65 64 5f 22 29 29 29 29 0a 20  | iles)."_no_file_selected_")))).. | 
| 3fc0 |  20 28 77 68 65 6e 20 28 73 65 71 2d 65 6d 70 74    79 2d 70 20 66 69 6c 65 73 29 0a 20 20 20 20 28  | .(when.(seq-empty-p.files).....( | 
| 3fe0 |  63 6c 2d 61 73 73 65 72 74 20 28 6e 6f 74 20 28    6f 72 20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d 63  | cl-assert.(not.(or.(dwim-shell-c | 
| 4000 |  6f 6d 6d 61 6e 64 2d 2d 63 6f 6e 74 61 69 6e 73    2d 6d 75 6c 74 69 2d 66 69 6c 65 2d 72 65 66 20  | ommand--contains-multi-file-ref. | 
| 4020 |  73 63 72 69 70 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  | script)......................... | 
| 4040 |  28 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d    61 6e 64 2d 2d 63 6f 6e 74 61 69 6e 73 2d 73 69  | (dwim-shell-command--contains-si | 
| 4060 |  6e 67 6c 65 2d 66 69 6c 65 2d 72 65 66 20 73 63    72 69 70 74 29 29 29 0a 20 20 20 20 20 20 20 20  | ngle-file-ref.script)))......... | 
| 4080 |  20 20 20 20 20 20 20 6e 69 6c 20 22 4e 6f 20 66    69 6c 65 73 20 66 6f 75 6e 64 20 74 6f 20 65 78  | .......nil."No.files.found.to.ex | 
| 40a0 |  70 61 6e 64 20 25 73 22 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 28 6f 72 20 28 64 77 69  | pand.%s"................(or.(dwi | 
| 40c0 |  6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d    2d 63 6f 6e 74 61 69 6e 73 2d 6d 75 6c 74 69 2d  | m-shell-command--contains-multi- | 
| 40e0 |  66 69 6c 65 2d 72 65 66 20 73 63 72 69 70 74 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | file-ref.script)................ | 
| 4100 |  20 20 20 20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d    63 6f 6d 6d 61 6e 64 2d 2d 63 6f 6e 74 61 69 6e  | ....(dwim-shell-command--contain | 
| 4120 |  73 2d 73 69 6e 67 6c 65 2d 66 69 6c 65 2d 72 65    66 20 73 63 72 69 70 74 29 29 29 29 0a 20 20 28  | s-single-file-ref.script))))...( | 
| 4140 |  77 68 65 6e 20 65 78 74 65 6e 73 69 6f 6e 73 0a    20 20 20 20 28 73 65 71 2d 64 6f 20 28 6c 61 6d  | when.extensions.....(seq-do.(lam | 
| 4160 |  62 64 61 20 28 66 69 6c 65 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 28 63 6c 2d 61 73 73  | bda.(file)...............(cl-ass | 
| 4180 |  65 72 74 20 28 73 65 71 2d 63 6f 6e 74 61 69 6e    73 2d 70 20 65 78 74 65 6e 73 69 6f 6e 73 20 28  | ert.(seq-contains-p.extensions.( | 
| 41a0 |  64 6f 77 6e 63 61 73 65 20 28 66 69 6c 65 2d 6e    61 6d 65 2d 65 78 74 65 6e 73 69 6f 6e 20 66 69  | downcase.(file-name-extension.fi | 
| 41c0 |  6c 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 6e  | le)))..........................n | 
| 41e0 |  69 6c 20 22 4e 6f 74 20 61 20 2e 25 73 20 66 69    6c 65 22 20 28 73 74 72 69 6e 67 2d 6a 6f 69 6e  | il."Not.a..%s.file".(string-join | 
| 4200 |  20 65 78 74 65 6e 73 69 6f 6e 73 20 22 20 2e 22    29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | .extensions."..")))............. | 
| 4220 |  66 69 6c 65 73 29 29 0a 20 20 28 73 65 71 2d 64    6f 20 28 6c 61 6d 62 64 61 20 28 75 74 69 6c 29  | files))...(seq-do.(lambda.(util) | 
| 4240 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6c    2d 61 73 73 65 72 74 20 28 65 78 65 63 75 74 61  | .............(cl-assert.(executa | 
| 4260 |  62 6c 65 2d 66 69 6e 64 20 75 74 69 6c 29 20 6e    69 6c 20 28 66 6f 72 6d 61 74 20 22 25 73 20 6e  | ble-find.util).nil.(format."%s.n | 
| 4280 |  6f 74 20 69 6e 73 74 61 6c 6c 65 64 22 20 75 74    69 6c 29 29 29 0a 20 20 20 20 20 20 20 20 20 20  | ot.installed".util)))........... | 
| 42a0 |  75 74 69 6c 73 29 0a 20 20 28 6c 65 74 2a 20 28    28 72 65 70 6c 61 63 65 6d 65 6e 74 73 20 28 64  | utils)...(let*.((replacements.(d | 
| 42c0 |  77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e    64 2d 2d 65 78 74 72 61 63 74 2d 71 75 65 72 69  | wim-shell-command--extract-queri | 
| 42e0 |  65 73 20 73 63 72 69 70 74 29 29 0a 20 20 20 20    20 20 20 20 20 28 70 72 6f 63 2d 62 75 66 66 65  | es.script))..........(proc-buffe | 
| 4300 |  72 20 28 67 65 6e 65 72 61 74 65 2d 6e 65 77 2d    62 75 66 66 65 72 20 28 66 6f 72 6d 61 74 20 22  | r.(generate-new-buffer.(format." | 
| 4320 |  2a 25 73 2a 22 20 62 75 66 66 65 72 2d 6e 61 6d    65 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 74  | *%s*".buffer-name)))..........(t | 
| 4340 |  65 6d 70 6c 61 74 65 20 73 63 72 69 70 74 29 0a    20 20 20 20 20 20 20 20 20 28 73 63 72 69 70 74  | emplate.script)..........(script | 
| 4360 |  20 22 22 29 0a 20 20 20 20 20 20 20 20 20 28 66    69 6c 65 73 2d 62 65 66 6f 72 65 29 0a 20 20 20  | ."")..........(files-before).... | 
| 4380 |  20 20 20 20 20 20 28 70 72 6f 63 29 0a 20 20 20    20 20 20 20 20 20 28 70 72 6f 67 72 65 73 73 2d  | ......(proc)..........(progress- | 
| 43a0 |  72 65 70 6f 72 74 65 72 29 0a 20 20 20 20 20 20    20 20 20 28 70 61 64 64 69 6e 67 20 28 64 77 69  | reporter)..........(padding.(dwi | 
| 43c0 |  6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d    2d 64 69 67 69 74 73 20 28 6c 65 6e 67 74 68 20  | m-shell-command--digits.(length. | 
| 43e0 |  66 69 6c 65 73 29 29 29 0a 20 20 20 20 20 20 20    20 20 28 6e 20 28 6f 72 20 28 64 77 69 6d 2d 73  | files)))..........(n.(or.(dwim-s | 
| 4400 |  68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 2d 6e 2d    73 74 61 72 74 2d 76 61 6c 75 65 20 74 65 6d 70  | hell-command--n-start-value.temp | 
| 4420 |  6c 61 74 65 20 70 61 64 64 69 6e 67 29 20 22 31    22 29 29 29 0a 20 20 20 20 28 69 66 20 28 73 65  | late.padding)."1"))).....(if.(se | 
| 4440 |  71 2d 65 6d 70 74 79 2d 70 20 66 69 6c 65 73 29    0a 20 20 20 20 20 20 20 20 28 73 65 74 71 20 73  | q-empty-p.files).........(setq.s | 
| 4460 |  63 72 69 70 74 20 28 64 77 69 6d 2d 73 68 65 6c    6c 2d 63 6f 6d 6d 61 6e 64 2d 2d 65 78 70 61 6e  | cript.(dwim-shell-command--expan | 
| 4480 |  64 2d 66 69 6c 65 2d 74 65 6d 70 6c 61 74 65 20    74 65 6d 70 6c 61 74 65 20 6e 69 6c 20 70 6f 73  | d-file-template.template.nil.pos | 
| 44a0 |  74 2d 70 72 6f 63 65 73 73 2d 74 65 6d 70 6c 61    74 65 20 74 65 6d 70 2d 64 69 72 20 6e 20 72 65  | t-process-template.temp-dir.n.re | 
| 44c0 |  70 6c 61 63 65 6d 65 6e 74 73 29 29 0a 20 20 20    20 20 20 28 69 66 20 28 64 77 69 6d 2d 73 68 65  | placements)).......(if.(dwim-she | 
| 44e0 |  6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 2d 63 6f 6e 74    61 69 6e 73 2d 6d 75 6c 74 69 2d 66 69 6c 65 2d  | ll-command--contains-multi-file- | 
| 4500 |  72 65 66 20 74 65 6d 70 6c 61 74 65 29 0a 20 20    20 20 20 20 20 20 20 20 28 73 65 74 71 20 73 63  | ref.template)...........(setq.sc | 
| 4520 |  72 69 70 74 20 28 64 77 69 6d 2d 73 68 65 6c 6c    2d 63 6f 6d 6d 61 6e 64 2d 2d 65 78 70 61 6e 64  | ript.(dwim-shell-command--expand | 
| 4540 |  2d 66 69 6c 65 73 2d 74 65 6d 70 6c 61 74 65 20    74 65 6d 70 6c 61 74 65 20 66 69 6c 65 73 20 70  | -files-template.template.files.p | 
| 4560 |  6f 73 74 2d 70 72 6f 63 65 73 73 2d 74 65 6d 70    6c 61 74 65 20 74 65 6d 70 2d 64 69 72 20 72 65  | ost-process-template.temp-dir.re | 
| 4580 |  70 6c 61 63 65 6d 65 6e 74 73 20 6a 6f 69 6e 2d    73 65 70 61 72 61 74 6f 72 29 29 0a 20 20 20 20  | placements.join-separator))..... | 
| 45a0 |  20 20 20 20 28 73 65 71 2d 64 6f 20 28 6c 61 6d    62 64 61 20 28 66 69 6c 65 29 0a 20 20 20 20 20  | ....(seq-do.(lambda.(file)...... | 
| 45c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65    74 71 20 73 63 72 69 70 74 0a 20 20 20 20 20 20  | .............(setq.script....... | 
| 45e0 |  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 73 63 72 69 70 74  | ..................(concat.script | 
| 4600 |  20 22 5c 6e 22 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ."\n"........................... | 
| 4620 |  20 20 20 20 20 20 28 64 77 69 6d 2d 73 68 65 6c    6c 2d 63 6f 6d 6d 61 6e 64 2d 2d 65 78 70 61 6e  | ......(dwim-shell-command--expan | 
| 4640 |  64 2d 66 69 6c 65 2d 74 65 6d 70 6c 61 74 65 20    74 65 6d 70 6c 61 74 65 20 66 69 6c 65 20 70 6f  | d-file-template.template.file.po | 
| 4660 |  73 74 2d 70 72 6f 63 65 73 73 2d 74 65 6d 70 6c    61 74 65 20 74 65 6d 70 2d 64 69 72 20 6e 20 72  | st-process-template.temp-dir.n.r | 
| 4680 |  65 70 6c 61 63 65 6d 65 6e 74 73 29 29 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | eplacements))).................. | 
| 46a0 |  20 28 73 65 74 71 20 6e 20 28 64 77 69 6d 2d 73    68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 2d 69 6e  | .(setq.n.(dwim-shell-command--in | 
| 46c0 |  63 72 65 6d 65 6e 74 2d 73 74 72 69 6e 67 20 6e    20 70 61 64 64 69 6e 67 29 29 29 0a 20 20 20 20  | crement-string.n.padding)))..... | 
| 46e0 |  20 20 20 20 20 20 20 20 20 20 20 20 66 69 6c 65    73 29 29 29 0a 20 20 20 20 28 73 65 74 71 20 73  | ............files))).....(setq.s | 
| 4700 |  63 72 69 70 74 20 28 73 74 72 69 6e 67 2d 74 72    69 6d 20 73 63 72 69 70 74 29 29 0a 20 20 20 20  | cript.(string-trim.script))..... | 
| 4720 |  28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75    66 66 65 72 20 70 72 6f 63 2d 62 75 66 66 65 72  | (with-current-buffer.proc-buffer | 
| 4740 |  0a 20 20 20 20 20 20 28 6c 65 74 20 28 28 69 6e    68 69 62 69 74 2d 6d 65 73 73 61 67 65 20 74 29  | .......(let.((inhibit-message.t) | 
| 4760 |  29 0a 20 20 20 20 20 20 3b 3b 20 53 69 6c 65 6e    63 65 20 6e 6f 69 73 65 20 6f 66 20 65 6e 74 65  | ).......;;.Silence.noise.of.ente | 
| 4780 |  72 69 6e 67 20 73 68 65 6c 6c 2d 6d 6f 64 65 2e    0a 20 20 20 20 20 20 20 20 28 63 6f 6d 69 6e 74  | ring.shell-mode..........(comint | 
| 47a0 |  2d 6d 6f 64 65 29 29 0a 20 20 20 20 20 20 28 73    65 74 71 20 64 65 66 61 75 6c 74 2d 64 69 72 65  | -mode)).......(setq.default-dire | 
| 47c0 |  63 74 6f 72 79 20 64 65 66 61 75 6c 74 2d 64 69    72 65 63 74 6f 72 79 29 0a 20 20 20 20 20 20 28  | ctory.default-directory).......( | 
| 47e0 |  73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 73 61    76 65 2d 70 6f 73 2d 6f 72 2d 65 72 61 73 65 29  | shell-command-save-pos-or-erase) | 
| 4800 |  0a 20 20 20 20 20 20 28 76 69 65 77 2d 6d 6f 64    65 20 2b 31 29 0a 20 20 20 20 20 20 28 73 65 74  | .......(view-mode.+1).......(set | 
| 4820 |  71 20 76 69 65 77 2d 65 78 69 74 2d 61 63 74 69    6f 6e 20 27 6b 69 6c 6c 2d 62 75 66 66 65 72 29  | q.view-exit-action.'kill-buffer) | 
| 4840 |  29 0a 20 20 20 20 28 73 65 74 71 20 66 69 6c 65    73 2d 62 65 66 6f 72 65 20 28 64 77 69 6d 2d 73  | ).....(setq.files-before.(dwim-s | 
| 4860 |  68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 2d 64 65    66 61 75 6c 74 2d 64 69 72 65 63 74 6f 72 79 2d  | hell-command--default-directory- | 
| 4880 |  66 69 6c 65 73 20 6d 6f 6e 69 74 6f 72 2d 64 69    72 65 63 74 6f 72 79 29 29 0a 20 20 20 20 28 73  | files.monitor-directory)).....(s | 
| 48a0 |  65 74 71 20 70 72 6f 63 20 28 61 70 70 6c 79 20    23 27 73 74 61 72 74 2d 70 72 6f 63 65 73 73 20  | etq.proc.(apply.#'start-process. | 
| 48c0 |  28 73 65 71 2d 63 6f 6e 63 61 74 65 6e 61 74 65    20 27 6c 69 73 74 0a 20 20 20 20 20 20 20 20 20  | (seq-concatenate.'list.......... | 
| 48e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 4900 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c    69 73 74 20 28 62 75 66 66 65 72 2d 6e 61 6d 65  | ..............(list.(buffer-name | 
| 4920 |  20 70 72 6f 63 2d 62 75 66 66 65 72 29 20 70 72    6f 63 2d 62 75 66 66 65 72 29 0a 20 20 20 20 20  | .proc-buffer).proc-buffer)...... | 
| 4940 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 4960 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 73 68 65 6c 6c 2d 75 74 69 6c 0a 20 20 20  | ..................shell-util.... | 
| 4980 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 49a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 73 68 65 6c 6c 2d 61 72 67 73 0a 20  | ....................shell-args.. | 
| 49c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 49e0 |  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 73 68 65 6c 6c 2d  | ......................(if.shell- | 
| 4a00 |  70 69 70 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  | pipe............................ | 
| 4a20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 4a40 |  28 6c 69 73 74 20 28 66 6f 72 6d 61 74 20 22 65    63 68 6f 20 27 25 73 27 20 7c 20 25 73 22 20 73  | (list.(format."echo.'%s'.|.%s".s | 
| 4a60 |  63 72 69 70 74 20 73 68 65 6c 6c 2d 70 69 70 65    29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | cript.shell-pipe)).............. | 
| 4a80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 4aa0 |  20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 73    74 20 73 63 72 69 70 74 29 29 29 29 29 0a 20 20  | ............(list.script)))))... | 
| 4ac0 |  20 20 28 73 65 74 2d 70 72 6f 63 65 73 73 2d 71    75 65 72 79 2d 6f 6e 2d 65 78 69 74 2d 66 6c 61  | ..(set-process-query-on-exit-fla | 
| 4ae0 |  67 20 70 72 6f 63 20 6e 69 6c 29 0a 20 20 20 20    28 69 66 20 6e 6f 2d 70 72 6f 67 72 65 73 73 0a  | g.proc.nil).....(if.no-progress. | 
| 4b00 |  20 20 20 20 20 20 20 20 28 64 77 69 6d 2d 73 68    65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 2d 6d 65 73  | ........(dwim-shell-command--mes | 
| 4b20 |  73 61 67 65 20 22 25 73 20 73 74 61 72 74 65 64    22 20 28 70 72 6f 63 65 73 73 2d 6e 61 6d 65 20  | sage."%s.started".(process-name. | 
| 4b40 |  70 72 6f 63 29 29 0a 20 20 20 20 20 20 28 73 65    74 71 20 70 72 6f 67 72 65 73 73 2d 72 65 70 6f  | proc)).......(setq.progress-repo | 
| 4b60 |  72 74 65 72 20 28 6d 61 6b 65 2d 70 72 6f 67 72    65 73 73 2d 72 65 70 6f 72 74 65 72 0a 20 20 20  | rter.(make-progress-reporter.... | 
| 4b80 |  20 20 20 20 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 41  | ............................;;.A | 
| 4ba0 |  70 70 65 6e 64 20 73 70 61 63 65 20 73 6f 20 22    64 6f 6e 65 22 20 69 73 20 73 70 61 63 65 64 20  | ppend.space.so."done".is.spaced. | 
| 4bc0 |  77 68 65 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  | when............................ | 
| 4be0 |  20 20 20 20 3b 3b 20 70 72 6f 67 72 65 73 73 20    72 65 70 6f 72 74 65 72 20 69 73 20 66 69 6e 69  | ....;;.progress.reporter.is.fini | 
| 4c00 |  73 68 65 64 3a 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  | shed:........................... | 
| 4c20 |  20 20 20 20 20 3b 3b 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .....;;......................... | 
| 4c40 |  20 20 20 20 20 20 20 3b 3b 20 2a 44 57 49 4d 20    73 68 65 6c 6c 20 63 6f 6d 6d 61 6e 64 2a 20 64  | .......;;.*DWIM.shell.command*.d | 
| 4c60 |  6f 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 20 20 20 20 20  | one............................. | 
| 4c80 |  20 20 20 28 63 6f 6e 63 61 74 20 28 70 72 6f 63    65 73 73 2d 6e 61 6d 65 20 70 72 6f 63 29 20 22  | ...(concat.(process-name.proc)." | 
| 4ca0 |  20 22 29 29 29 0a 20 20 20 20 20 20 28 70 72 6f    67 72 65 73 73 2d 72 65 70 6f 72 74 65 72 2d 75  | ."))).......(progress-reporter-u | 
| 4cc0 |  70 64 61 74 65 20 70 72 6f 67 72 65 73 73 2d 72    65 70 6f 72 74 65 72 29 29 0a 20 20 20 20 3b 3b  | pdate.progress-reporter)).....;; | 
| 4ce0 |  20 4d 6f 6d 65 6e 74 61 72 69 6c 79 20 73 65 74    20 62 75 66 66 65 72 20 74 6f 20 73 61 6d 65 20  | .Momentarily.set.buffer.to.same. | 
| 4d00 |  77 69 6e 64 6f 77 2c 20 73 6f 20 69 74 27 73 20    6e 65 78 74 20 69 6e 20 72 65 63 65 6e 74 20 73  | window,.so.it's.next.in.recent.s | 
| 4d20 |  74 61 63 6b 2e 0a 20 20 20 20 3b 3b 20 4d 61 6b    65 73 20 66 69 6e 64 69 6e 67 20 74 68 65 20 73  | tack......;;.Makes.finding.the.s | 
| 4d40 |  68 65 6c 6c 20 63 6f 6d 6d 61 6e 64 20 62 75 66    66 65 72 20 61 20 6c 6f 74 20 65 61 73 69 65 72  | hell.command.buffer.a.lot.easier | 
| 4d60 |  2e 0a 20 20 20 20 28 6c 65 74 20 28 28 63 75 72    72 65 6e 74 20 28 63 75 72 72 65 6e 74 2d 62 75  | ......(let.((current.(current-bu | 
| 4d80 |  66 66 65 72 29 29 29 0a 20 20 20 20 20 20 28 70    6f 70 2d 74 6f 2d 62 75 66 66 65 72 2d 73 61 6d  | ffer))).......(pop-to-buffer-sam | 
| 4da0 |  65 2d 77 69 6e 64 6f 77 20 70 72 6f 63 2d 62 75    66 66 65 72 29 0a 20 20 20 20 20 20 28 70 6f 70  | e-window.proc-buffer).......(pop | 
| 4dc0 |  2d 74 6f 2d 62 75 66 66 65 72 2d 73 61 6d 65 2d    77 69 6e 64 6f 77 20 63 75 72 72 65 6e 74 29 29  | -to-buffer-same-window.current)) | 
| 4de0 |  0a 20 20 20 20 28 77 68 65 6e 20 66 6f 63 75 73    2d 6e 6f 77 0a 20 20 20 20 20 20 28 73 77 69 74  | .....(when.focus-now.......(swit | 
| 4e00 |  63 68 2d 74 6f 2d 62 75 66 66 65 72 20 70 72 6f    63 2d 62 75 66 66 65 72 29 29 0a 20 20 20 20 28  | ch-to-buffer.proc-buffer)).....( | 
| 4e20 |  69 66 20 28 65 71 75 61 6c 20 28 70 72 6f 63 65    73 73 2d 73 74 61 74 75 73 20 70 72 6f 63 29 20  | if.(equal.(process-status.proc). | 
| 4e40 |  27 65 78 69 74 29 0a 20 20 20 20 20 20 20 20 28    64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61  | 'exit).........(dwim-shell-comma | 
| 4e60 |  6e 64 2d 2d 66 69 6e 61 6c 69 7a 65 20 28 63 75    72 72 65 6e 74 2d 62 75 66 66 65 72 29 0a 20 20  | nd--finalize.(current-buffer)... | 
| 4e80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 4ea0 |  20 20 20 20 66 69 6c 65 73 2d 62 65 66 6f 72 65    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ....files-before................ | 
| 4ec0 |  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 63 0a 20 20 20 20  | .......................proc..... | 
| 4ee0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 4f00 |  20 20 70 72 6f 67 72 65 73 73 2d 72 65 70 6f 72    74 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20  | ..progress-reporter............. | 
| 4f20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 6f 6e 2d 63 6f 6d  | ..........................on-com | 
| 4f40 |  70 6c 65 74 69 6f 6e 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | pletion......................... | 
| 4f60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 73 69    6c 65 6e 74 2d 73 75 63 63 65 73 73 0a 20 20 20  | ..............silent-success.... | 
| 4f80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 4fa0 |  20 20 20 65 72 72 6f 72 2d 61 75 74 6f 66 6f 63    75 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | ...error-autofocus.............. | 
| 4fc0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 6d 6f 6e 69 74 6f 72  | .........................monitor | 
| 4fe0 |  2d 64 69 72 65 63 74 6f 72 79 29 0a 20 20 20 20    20 20 28 73 65 74 71 20 64 77 69 6d 2d 73 68 65  | -directory).......(setq.dwim-she | 
| 5000 |  6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 2d 63 6f 6d 6d    61 6e 64 73 0a 20 20 20 20 20 20 20 20 20 20 20  | ll-command--commands............ | 
| 5020 |  20 28 70 75 73 68 20 28 63 6f 6e 73 20 28 70 72    6f 63 65 73 73 2d 6e 61 6d 65 20 70 72 6f 63 29  | .(push.(cons.(process-name.proc) | 
| 5040 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 28 6d 61 6b 65 2d 64  | .........................(make-d | 
| 5060 |  77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e    64 2d 2d 63 6f 6d 6d 61 6e 64 20 3a 73 63 72 69  | wim-shell-command--command.:scri | 
| 5080 |  70 74 20 73 63 72 69 70 74 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | pt.script....................... | 
| 50a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 50c0 |  20 20 20 20 3a 70 72 6f 63 65 73 73 20 70 72 6f    63 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ....:process.proc............... | 
| 50e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 5100 |  20 20 20 20 20 20 20 20 20 20 20 20 3a 6e 61 6d    65 20 28 70 72 6f 63 65 73 73 2d 6e 61 6d 65 20  | ............:name.(process-name. | 
| 5120 |  70 72 6f 63 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  | proc)........................... | 
| 5140 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 5160 |  3a 63 61 6c 6c 69 6e 67 2d 62 75 66 66 65 72 20    28 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 29  | :calling-buffer.(current-buffer) | 
| 5180 |  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  | ................................ | 
| 51a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 3a 66 69 6c 65  | ...........................:file | 
| 51c0 |  73 2d 62 65 66 6f 72 65 20 66 69 6c 65 73 2d 62    65 66 6f 72 65 0a 20 20 20 20 20 20 20 20 20 20  | s-before.files-before........... | 
| 51e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 5200 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    3a 72 65 70 6f 72 74 65 72 20 70 72 6f 67 72 65  | ................:reporter.progre | 
| 5220 |  73 73 2d 72 65 70 6f 72 74 65 72 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ss-reporter..................... | 
| 5240 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 5260 |  20 20 20 20 20 20 3a 6f 6e 2d 63 6f 6d 70 6c 65    74 69 6f 6e 20 6f 6e 2d 63 6f 6d 70 6c 65 74 69  | ......:on-completion.on-completi | 
| 5280 |  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.............................. | 
| 52a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 3a 73 69  | .............................:si | 
| 52c0 |  6c 65 6e 74 2d 73 75 63 63 65 73 73 20 73 69 6c    65 6e 74 2d 73 75 63 63 65 73 73 0a 20 20 20 20  | lent-success.silent-success..... | 
| 52e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 5300 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 3a 65 72 72 6f 72 2d 61 75 74  | ......................:error-aut | 
| 5320 |  6f 66 6f 63 75 73 20 65 72 72 6f 72 2d 61 75 74    6f 66 6f 63 75 73 0a 20 20 20 20 20 20 20 20 20  | ofocus.error-autofocus.......... | 
| 5340 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 5360 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 3a 6d 6f 6e 69 74 6f 72 2d 64 69 72 65 63 74  | .................:monitor-direct | 
| 5380 |  6f 72 79 20 6d 6f 6e 69 74 6f 72 2d 64 69 72 65    63 74 6f 72 79 29 29 0a 20 20 20 20 20 20 20 20  | ory.monitor-directory))......... | 
| 53a0 |  20 20 20 20 20 20 20 20 20 20 64 77 69 6d 2d 73    68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 2d 63 6f  | ..........dwim-shell-command--co | 
| 53c0 |  6d 6d 61 6e 64 73 29 29 0a 20 20 20 20 20 20 28    73 65 74 2d 70 72 6f 63 65 73 73 2d 73 65 6e 74  | mmands)).......(set-process-sent | 
| 53e0 |  69 6e 65 6c 20 70 72 6f 63 20 23 27 64 77 69 6d    2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 2d  | inel.proc.#'dwim-shell-command-- | 
| 5400 |  73 65 6e 74 69 6e 65 6c 29 0a 20 20 20 20 20 20    28 73 65 74 2d 70 72 6f 63 65 73 73 2d 66 69 6c  | sentinel).......(set-process-fil | 
| 5420 |  74 65 72 20 70 72 6f 63 20 23 27 64 77 69 6d 2d    73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 2d 66  | ter.proc.#'dwim-shell-command--f | 
| 5440 |  69 6c 74 65 72 29 29 29 29 0a 0a 28 63 6c 2d 64    65 66 75 6e 20 64 77 69 6d 2d 73 68 65 6c 6c 2d  | ilter))))..(cl-defun.dwim-shell- | 
| 5460 |  63 6f 6d 6d 61 6e 64 2d 72 65 61 64 2d 66 69 6c    65 2d 6e 61 6d 65 20 28 70 72 6f 6d 70 74 20 26  | command-read-file-name.(prompt.& | 
| 5480 |  6b 65 79 20 65 78 74 65 6e 73 69 6f 6e 20 64 65    66 61 75 6c 74 29 0a 20 20 22 49 6e 76 6f 6b 65  | key.extension.default)..."Invoke | 
| 54a0 |  20 60 72 65 61 64 2d 73 74 72 69 6e 67 27 20 77    69 74 68 20 50 52 4f 4d 50 54 2e 0a 56 61 6c 69  | .`read-string'.with.PROMPT..Vali | 
| 54c0 |  64 61 74 65 73 20 3a 45 58 54 45 4e 53 49 4f 4e    20 61 6e 64 20 72 65 74 75 72 6e 73 20 3a 44 45  | dates.:EXTENSION.and.returns.:DE | 
| 54e0 |  46 41 55 4c 54 20 69 66 20 65 6d 70 74 79 20 69    6e 70 75 74 2e 22 0a 20 20 28 6c 65 74 20 28 28  | FAULT.if.empty.input."...(let.(( | 
| 5500 |  66 69 6c 65 2d 6e 61 6d 65 20 28 72 65 61 64 2d    73 74 72 69 6e 67 20 70 72 6f 6d 70 74 29 29 29  | file-name.(read-string.prompt))) | 
| 5520 |  0a 20 20 20 20 28 63 6f 6e 64 20 28 28 73 74 72    69 6e 67 2d 65 6d 70 74 79 2d 70 20 28 73 74 72  | .....(cond.((string-empty-p.(str | 
| 5540 |  69 6e 67 2d 74 72 69 6d 20 66 69 6c 65 2d 6e 61    6d 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20  | ing-trim.file-name))............ | 
| 5560 |  64 65 66 61 75 6c 74 29 0a 20 20 20 20 20 20 20    20 20 20 28 28 61 6e 64 20 65 78 74 65 6e 73 69  | default)...........((and.extensi | 
| 5580 |  6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 73 74 72 69 6e 67 2d 65 71 75 61 6c  | on.................(string-equal | 
| 55a0 |  20 28 66 69 6c 65 2d 6e 61 6d 65 2d 65 78 74 65    6e 73 69 6f 6e 20 66 69 6c 65 2d 6e 61 6d 65 29  | .(file-name-extension.file-name) | 
| 55c0 |  20 65 78 74 65 6e 73 69 6f 6e 29 29 0a 20 20 20    20 20 20 20 20 20 20 20 66 69 6c 65 2d 6e 61 6d  | .extension))............file-nam | 
| 55e0 |  65 29 0a 20 20 20 20 20 20 20 20 20 20 28 28 61    6e 64 20 65 78 74 65 6e 73 69 6f 6e 0a 20 20 20  | e)...........((and.extension.... | 
| 5600 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e 6f    74 20 28 73 74 72 69 6e 67 2d 65 71 75 61 6c 20  | .............(not.(string-equal. | 
| 5620 |  28 66 69 6c 65 2d 6e 61 6d 65 2d 65 78 74 65 6e    73 69 6f 6e 20 66 69 6c 65 2d 6e 61 6d 65 29 20  | (file-name-extension.file-name). | 
| 5640 |  65 78 74 65 6e 73 69 6f 6e 29 29 29 0a 20 20 20    20 20 20 20 20 20 20 20 28 75 73 65 72 2d 65 72  | extension)))............(user-er | 
| 5660 |  72 6f 72 20 22 4e 61 6d 65 20 6d 75 73 74 20 65    6e 64 20 69 6e 20 2e 25 73 22 20 65 78 74 65 6e  | ror."Name.must.end.in..%s".exten | 
| 5680 |  73 69 6f 6e 29 29 0a 20 20 20 20 20 20 20 20 20    20 28 74 0a 20 20 20 20 20 20 20 20 20 20 20 66  | sion))...........(t............f | 
| 56a0 |  69 6c 65 2d 6e 61 6d 65 29 29 29 29 0a 0a 28 64    65 66 75 6e 20 64 77 69 6d 2d 73 68 65 6c 6c 2d  | ile-name))))..(defun.dwim-shell- | 
| 56c0 |  63 6f 6d 6d 61 6e 64 2d 2d 6d 65 73 73 61 67 65    20 28 6d 65 73 73 61 67 65 20 26 72 65 73 74 20  | command--message.(message.&rest. | 
| 56e0 |  61 72 67 73 29 0a 20 20 22 4c 69 6b 65 20 60 64    77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e  | args)..."Like.`dwim-shell-comman | 
| 5700 |  64 2d 2d 6d 65 73 73 61 67 65 27 20 62 75 74 20    6e 6f 6e 2d 62 6c 6f 63 6b 69 6e 67 2e 0a 4d 45  | d--message'.but.non-blocking..ME | 
| 5720 |  53 53 41 47 45 20 61 6e 64 20 41 52 47 53 20 73    61 6d 65 20 61 73 20 60 64 77 69 6d 2d 73 68 65  | SSAGE.and.ARGS.same.as.`dwim-she | 
| 5740 |  6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 2d 6d 65 73 73    61 67 65 27 2e 22 0a 20 20 28 6c 65 74 20 28 28  | ll-command--message'."...(let.(( | 
| 5760 |  6d 65 73 73 61 67 65 2d 69 64 20 28 72 61 6e 64    6f 6d 29 29 29 0a 20 20 20 20 28 6d 65 73 73 61  | message-id.(random))).....(messa | 
| 5780 |  67 65 20 28 70 72 6f 70 65 72 74 69 7a 65 20 28    61 70 70 6c 79 20 23 27 66 6f 72 6d 61 74 20 6d  | ge.(propertize.(apply.#'format.m | 
| 57a0 |  65 73 73 61 67 65 20 61 72 67 73 29 20 27 6d 65    73 73 61 67 65 2d 69 64 20 6d 65 73 73 61 67 65  | essage.args).'message-id.message | 
| 57c0 |  2d 69 64 29 29 0a 20 20 20 20 28 72 75 6e 2d 77    69 74 68 2d 74 69 6d 65 72 20 33 20 6e 69 6c 0a  | -id)).....(run-with-timer.3.nil. | 
| 57e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 28 6c 61 6d 62 64 61 20 28 29 0a 20  | ....................(lambda.().. | 
| 5800 |  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 61 6e 64 20  | .....................(when.(and. | 
| 5820 |  28 63 75 72 72 65 6e 74 2d 6d 65 73 73 61 67 65    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | (current-message)............... | 
| 5840 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 65 71 20 28 67 65 74 2d 74 65 78 74  | ...................(eq.(get-text | 
| 5860 |  2d 70 72 6f 70 65 72 74 79 20 30 20 27 6d 65 73    73 61 67 65 2d 69 64 20 28 63 75 72 72 65 6e 74  | -property.0.'message-id.(current | 
| 5880 |  2d 6d 65 73 73 61 67 65 29 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | -message))...................... | 
| 58a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    6d 65 73 73 61 67 65 2d 69 64 29 29 0a 20 20 20  | ................message-id)).... | 
| 58c0 |  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 61 67 65 20 6e 69  | .....................(message.ni | 
| 58e0 |  6c 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20    64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61  | l))))))..(defun.dwim-shell-comma | 
| 5900 |  6e 64 2d 2d 65 78 74 72 61 63 74 2d 71 75 65 72    69 65 73 20 28 74 65 6d 70 6c 61 74 65 29 0a 20  | nd--extract-queries.(template).. | 
| 5920 |  20 22 45 78 74 72 61 63 74 20 71 75 65 72 69 65    73 20 66 72 6f 6d 20 54 45 4d 50 4c 41 54 45 2e  | ."Extract.queries.from.TEMPLATE. | 
| 5940 |  0a 0a 46 6f 72 20 61 6c 6c 20 71 75 65 72 69 65    73 2c 20 72 65 71 75 65 73 74 20 61 20 76 61 6c  | ..For.all.queries,.request.a.val | 
| 5960 |  75 65 20 66 72 6f 6d 20 74 68 65 20 75 73 65 72    2e 0a 0a 46 6f 72 20 65 78 61 6d 70 6c 65 3a 0a  | ue.from.the.user...For.example:. | 
| 5980 |  0a 20 20 5c 22 48 65 6c 6c 6f 20 3c 3c 57 69 64    74 68 3a 31 30 30 3e 3e 20 77 6f 72 6c 64 20 3c  | ...\"Hello.<<Width:100>>.world.< | 
| 59a0 |  3c 48 65 69 67 68 74 3a 32 30 30 3e 3e 5c 22 20    3d 3e 0a 0a 20 20 20 20 28 28 5c 22 3c 3c 57 69  | <Height:200>>\".=>......((\"<<Wi | 
| 59c0 |  64 74 68 3a 31 30 30 3e 3e 5c 22 20 2e 20 5c 22    31 30 30 5c 22 29 0a 20 20 20 20 20 28 5c 22 3c  | dth:100>>\"...\"100\")......(\"< | 
| 59e0 |  3c 48 65 69 67 68 74 3a 32 30 30 3e 3e 5c 22 20    2e 20 5c 22 32 30 30 5c 22 29 29 22 0a 20 20 28  | <Height:200>>\"...\"200\"))"...( | 
| 5a00 |  6c 65 74 20 28 28 6d 61 74 63 68 65 73 29 0a 20    20 20 20 20 20 20 20 28 70 6f 73 20 30 29 29 0a  | let.((matches).........(pos.0)). | 
| 5a20 |  20 20 20 20 28 77 68 69 6c 65 20 28 61 6e 64 20    28 3c 20 70 6f 73 20 28 6c 65 6e 67 74 68 20 74  | ....(while.(and.(<.pos.(length.t | 
| 5a40 |  65 6d 70 6c 61 74 65 29 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 73 74 72 69 6e  | emplate)).................(strin | 
| 5a60 |  67 2d 6d 61 74 63 68 20 22 3c 3c 5c 5c 28 5b 5b    3a 61 6c 70 68 61 3a 5d 5d 5c 5c 7c 5b 5b 3a 62  | g-match."<<\\([[:alpha:]]\\|[[:b | 
| 5a80 |  6c 61 6e 6b 3a 5d 5d 5c 5c 29 2b 3a 5c 5c 28 5b    5b 3a 61 6c 6e 75 6d 3a 5d 5d 5c 5c 7c 5b 2e 5d  | lank:]]\\)+:\\([[:alnum:]]\\|[.] | 
| 5aa0 |  5c 5c 29 2a 3e 3e 22 20 74 65 6d 70 6c 61 74 65    20 70 6f 73 29 29 0a 20 20 20 20 20 20 28 73 65  | \\)*>>".template.pos)).......(se | 
| 5ac0 |  74 71 20 70 6f 73 20 28 31 2b 20 28 6d 61 74 63    68 2d 62 65 67 69 6e 6e 69 6e 67 20 30 29 29 29  | tq.pos.(1+.(match-beginning.0))) | 
| 5ae0 |  0a 20 20 20 20 20 20 28 6c 65 74 20 28 28 6d 61    74 63 68 20 30 29 29 0a 20 20 20 20 20 20 20 20  | .......(let.((match.0))......... | 
| 5b00 |  28 70 75 73 68 20 28 6d 61 74 63 68 2d 73 74 72    69 6e 67 20 6d 61 74 63 68 20 74 65 6d 70 6c 61  | (push.(match-string.match.templa | 
| 5b20 |  74 65 29 20 6d 61 74 63 68 65 73 29 0a 20 20 20    20 20 20 20 20 28 73 65 74 71 20 6d 61 74 63 68  | te).matches).........(setq.match | 
| 5b40 |  20 28 31 2b 20 6d 61 74 63 68 29 29 29 29 0a 20    20 20 20 28 73 65 71 2d 6d 61 70 20 28 6c 61 6d  | .(1+.match)))).....(seq-map.(lam | 
| 5b60 |  62 64 61 20 28 6d 61 74 63 68 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 2a  | bda.(match)................(let* | 
| 5b80 |  20 28 28 71 75 65 72 79 20 28 73 70 6c 69 74 2d    73 74 72 69 6e 67 20 28 73 74 72 69 6e 67 2d 72  | .((query.(split-string.(string-r | 
| 5ba0 |  65 6d 6f 76 65 2d 73 75 66 66 69 78 20 22 3e 3e    22 20 28 73 74 72 69 6e 67 2d 72 65 6d 6f 76 65  | emove-suffix.">>".(string-remove | 
| 5bc0 |  2d 70 72 65 66 69 78 20 22 3c 3c 22 20 6d 61 74    63 68 29 29 20 22 3a 22 29 29 0a 20 20 20 20 20  | -prefix."<<".match)).":"))...... | 
| 5be0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 70 72 6f 6d 70 74 20 28 6e 74 68 20 30 20  | .................(prompt.(nth.0. | 
| 5c00 |  71 75 65 72 79 29 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 64  | query)).......................(d | 
| 5c20 |  65 66 61 75 6c 74 2d 76 61 6c 75 65 20 28 69 66    20 28 73 74 72 69 6e 67 2d 65 6d 70 74 79 2d 70  | efault-value.(if.(string-empty-p | 
| 5c40 |  20 28 6e 74 68 20 31 20 71 75 65 72 79 29 29 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .(nth.1.query))................. | 
| 5c60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 6e 69 6c 0a 20 20 20  | .........................nil.... | 
| 5c80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 5ca0 |  20 20 20 20 28 6e 74 68 20 31 20 71 75 65 72 79    29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | ....(nth.1.query)))............. | 
| 5cc0 |  20 20 20 20 20 20 20 20 20 20 28 76 61 6c 75 65    20 28 69 66 20 28 73 74 72 69 6e 67 2d 6d 61 74  | ..........(value.(if.(string-mat | 
| 5ce0 |  63 68 2d 70 20 22 5e 5c 5c 28 5b 5b 3a 64 69 67    69 74 3a 5d 5d 5c 5c 7c 5b 2e 5d 5c 5c 29 2b 24  | ch-p."^\\([[:digit:]]\\|[.]\\)+$ | 
| 5d00 |  22 20 64 65 66 61 75 6c 74 2d 76 61 6c 75 65 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ".default-value)................ | 
| 5d20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 6e 75 6d 62 65 72 2d 74 6f 2d 73 74 72  | ..................(number-to-str | 
| 5d40 |  69 6e 67 20 28 72 65 61 64 2d 6e 75 6d 62 65 72    20 28 66 6f 72 6d 61 74 20 22 25 73 3a 20 22 20  | ing.(read-number.(format."%s:.". | 
| 5d60 |  70 72 6f 6d 70 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  | prompt)......................... | 
| 5d80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 5da0 |  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 64 65 66 61 75 6c  | ........(string-to-number.defaul | 
| 5dc0 |  74 2d 76 61 6c 75 65 29 29 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | t-value)))...................... | 
| 5de0 |  20 20 20 20 20 20 20 20 20 20 28 73 74 72 69 6e    67 2d 74 72 69 6d 20 28 72 65 61 64 2d 73 74 72  | ..........(string-trim.(read-str | 
| 5e00 |  69 6e 67 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 20 20 20  | ing.(concat.prompt.............. | 
| 5e20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 5e40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 28 69 66 20 64 65 66 61 75 6c 74 2d  | ....................(if.default- | 
| 5e60 |  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 20 20 20 20 20 20 20  | value........................... | 
| 5e80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 5ea0 |  20 20 20 20 20 20 20 20 20 20 20 28 66 6f 72 6d    61 74 20 22 20 28 64 65 66 61 75 6c 74 20 25 73  | ...........(format.".(default.%s | 
| 5ec0 |  29 3a 20 22 20 64 65 66 61 75 6c 74 2d 76 61 6c    75 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | ):.".default-value)............. | 
| 5ee0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 5f00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 22 3a 20 22 29 29 29 29 29  | .......................":."))))) | 
| 5f20 |  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 72 65 73 75 6c 74 20  | ).......................(result. | 
| 5f40 |  28 63 6f 6e 73 20 6d 61 74 63 68 20 28 69 66 20    28 73 74 72 69 6e 67 2d 65 6d 70 74 79 2d 70 20  | (cons.match.(if.(string-empty-p. | 
| 5f60 |  76 61 6c 75 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  | value).......................... | 
| 5f80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 64 65 66 61 75 6c 74 2d 76 61 6c  | .....................default-val | 
| 5fa0 |  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 20 20 20 20 20  | ue.............................. | 
| 5fc0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76    61 6c 75 65 29 29 29 29 0a 20 20 20 20 20 20 20  | ...............value))))........ | 
| 5fe0 |  20 20 20 20 20 20 20 20 20 20 28 63 6c 2d 61 73    73 65 72 74 20 28 63 64 72 20 72 65 73 75 6c 74  | ..........(cl-assert.(cdr.result | 
| 6000 |  29 20 6e 69 6c 20 22 4d 75 73 74 20 68 61 76 65    20 61 20 76 61 6c 75 65 22 29 72 65 73 75 6c 74  | ).nil."Must.have.a.value")result | 
| 6020 |  29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    28 73 65 71 2d 75 6e 69 71 20 28 6e 72 65 76 65  | ))..............(seq-uniq.(nreve | 
| 6040 |  72 73 65 20 6d 61 74 63 68 65 73 29 29 29 29 29    0a 0a 28 64 65 66 75 6e 20 64 77 69 6d 2d 73 68  | rse.matches)))))..(defun.dwim-sh | 
| 6060 |  65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 2d 64 69 67    69 74 73 20 28 6e 29 0a 20 20 22 52 65 74 75 72  | ell-command--digits.(n)..."Retur | 
| 6080 |  6e 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 20    64 69 67 69 74 73 20 69 6e 20 4e 2e 22 0a 20 20  | n.the.number.of.digits.in.N."... | 
| 60a0 |  28 6c 65 74 20 28 28 63 6f 75 6e 74 20 30 29 29    0a 20 20 20 20 28 77 68 69 6c 65 20 28 3e 20 6e  | (let.((count.0)).....(while.(>.n | 
| 60c0 |  20 30 29 0a 20 20 20 20 20 20 28 73 65 74 71 20    6e 20 28 2f 20 6e 20 31 30 29 29 0a 20 20 20 20  | .0).......(setq.n.(/.n.10))..... | 
| 60e0 |  20 20 28 73 65 74 71 20 63 6f 75 6e 74 20 28 31    2b 20 63 6f 75 6e 74 29 29 29 0a 20 20 20 20 63  | ..(setq.count.(1+.count))).....c | 
| 6100 |  6f 75 6e 74 29 29 0a 0a 28 64 65 66 75 6e 20 64    77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e  | ount))..(defun.dwim-shell-comman | 
| 6120 |  64 2d 2d 6e 75 6d 62 65 72 2d 74 6f 2d 73 74 72    69 6e 67 20 28 6e 20 70 61 64 64 69 6e 67 29 0a  | d--number-to-string.(n.padding). | 
| 6140 |  20 20 22 43 6f 6e 76 65 72 74 20 4e 20 74 6f 20    73 74 72 69 6e 67 20 75 73 69 6e 67 20 50 41 44  | .."Convert.N.to.string.using.PAD | 
| 6160 |  44 49 4e 47 20 66 6f 72 20 6e 75 6d 62 65 72 20    6f 66 20 64 69 67 69 74 73 2e 22 0a 20 20 28 66  | DING.for.number.of.digits."...(f | 
| 6180 |  6f 72 6d 61 74 20 28 66 6f 72 6d 61 74 20 22 25    25 30 25 64 64 22 20 70 61 64 64 69 6e 67 29 20  | ormat.(format."%%0%dd".padding). | 
| 61a0 |  6e 29 29 0a 0a 28 64 65 66 75 6e 20 64 77 69 6d    2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 2d  | n))..(defun.dwim-shell-command-- | 
| 61c0 |  65 78 70 61 6e 64 2d 66 69 6c 65 73 2d 74 65 6d    70 6c 61 74 65 20 28 74 65 6d 70 6c 61 74 65 20  | expand-files-template.(template. | 
| 61e0 |  66 69 6c 65 73 20 26 6f 70 74 69 6f 6e 61 6c 20    70 6f 73 74 2d 70 72 6f 63 65 73 73 2d 74 65 6d  | files.&optional.post-process-tem | 
| 6200 |  70 6c 61 74 65 20 74 65 6d 70 2d 64 69 72 20 72    65 70 6c 61 63 65 6d 65 6e 74 73 20 6a 6f 69 6e  | plate.temp-dir.replacements.join | 
| 6220 |  2d 73 65 70 61 72 61 74 6f 72 29 0a 20 20 22 45    78 70 61 6e 64 20 54 45 4d 50 4c 41 54 45 20 75  | -separator)..."Expand.TEMPLATE.u | 
| 6240 |  73 69 6e 67 20 46 49 4c 45 53 2e 0a 0a 45 78 70    61 6e 64 20 75 73 69 6e 67 20 3c 3c 2a 3e 3e 20  | sing.FILES...Expand.using.<<*>>. | 
| 6260 |  66 6f 72 20 46 49 4c 45 53 2e 0a 0a 4e 6f 74 65    3a 20 54 68 69 73 20 65 78 70 61 6e 64 65 72 20  | for.FILES...Note:.This.expander. | 
| 6280 |  63 61 6e 6e 6f 74 20 62 65 20 75 73 65 64 20 74    6f 20 65 78 70 61 6e 64 20 3c 3c 66 3e 3e 2c 20  | cannot.be.used.to.expand.<<f>>,. | 
| 62a0 |  3c 3c 66 6e 65 3e 3e 2c 20 6f 72 20 3c 3c 65 3e    3e 2e 0a 0a 20 20 46 6f 72 20 65 78 61 6d 70 6c  | <<fne>>,.or.<<e>>.....For.exampl | 
| 62c0 |  65 3a 0a 0a 20 20 20 20 47 69 76 65 6e 20 46 49    4c 45 53 20 27 28 5c 22 70 61 74 68 2f 74 6f 2f  | e:......Given.FILES.'(\"path/to/ | 
| 62e0 |  69 6d 61 67 65 31 2e 70 6e 67 5c 22 20 5c 22 70    61 74 68 2f 74 6f 2f 69 6d 61 67 65 32 2e 70 6e  | image1.png\".\"path/to/image2.pn | 
| 6300 |  67 5c 22 29 0a 0a 20 20 20 20 5c 22 64 75 20 2d    63 73 68 20 27 3c 3c 2a 3e 3e 27 5c 22 20 65 78  | g\")......\"du.-csh.'<<*>>'\".ex | 
| 6320 |  70 61 6e 64 73 20 74 6f 0a 0a 20 20 20 20 20 20    5c 22 64 75 20 2d 63 73 68 20 27 70 61 74 68 2f  | pands.to........\"du.-csh.'path/ | 
| 6340 |  74 6f 2f 69 6d 61 67 65 31 2e 70 6e 67 27 20 27    70 61 74 68 2f 74 6f 2f 69 6d 61 67 65 32 2e 70  | to/image1.png'.'path/to/image2.p | 
| 6360 |  6e 67 27 5c 22 0a 0a 55 73 65 20 50 4f 53 54 2d    50 52 4f 43 45 53 53 2d 54 45 4d 50 4c 41 54 45  | ng'\"..Use.POST-PROCESS-TEMPLATE | 
| 6380 |  20 74 6f 20 66 75 72 74 68 65 72 20 65 78 70 61    6e 64 20 74 65 6d 70 6c 61 74 65 20 67 69 76 65  | .to.further.expand.template.give | 
| 63a0 |  6e 20 6f 77 6e 20 6c 6f 67 69 63 2e 0a 0a 53 65    74 20 54 45 4d 50 2d 44 49 52 20 74 6f 20 61 20  | n.own.logic...Set.TEMP-DIR.to.a. | 
| 63c0 |  75 6e 69 71 75 65 20 74 65 6d 70 20 64 69 72 65    63 74 6f 72 79 20 74 6f 20 74 68 69 73 20 74 65  | unique.temp.directory.to.this.te | 
| 63e0 |  6d 70 6c 61 74 65 2e 0a 0a 52 45 50 4c 41 43 45    4d 45 4e 54 53 20 69 73 20 61 20 63 6f 6e 73 20  | mplate...REPLACEMENTS.is.a.cons. | 
| 6400 |  6c 69 73 74 20 6f 66 20 6c 69 74 65 72 61 6c 73    20 74 6f 20 72 65 70 6c 61 63 65 20 77 69 74 68  | list.of.literals.to.replace.with | 
| 6420 |  20 76 61 6c 75 65 73 2e 0a 0a 4a 4f 49 4e 2d 53    45 50 41 52 41 54 4f 52 20 69 73 20 75 73 65 64  | .values...JOIN-SEPARATOR.is.used | 
| 6440 |  20 74 6f 20 6a 6f 69 6e 20 66 69 6c 65 73 20 66    72 6f 6d 20 3c 3c 2a 3e 3e 2e 22 0a 20 20 28 63  | .to.join.files.from.<<*>>."...(c | 
| 6460 |  6c 2d 61 73 73 65 72 74 20 28 6e 6f 74 20 28 61    6e 64 20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d 63  | l-assert.(not.(and.(dwim-shell-c | 
| 6480 |  6f 6d 6d 61 6e 64 2d 2d 63 6f 6e 74 61 69 6e 73    2d 6d 75 6c 74 69 2d 66 69 6c 65 2d 72 65 66 20  | ommand--contains-multi-file-ref. | 
| 64a0 |  74 65 6d 70 6c 61 74 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  | template)....................... | 
| 64c0 |  20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d    6d 61 6e 64 2d 2d 63 6f 6e 74 61 69 6e 73 2d 73  | .(dwim-shell-command--contains-s | 
| 64e0 |  69 6e 67 6c 65 2d 66 69 6c 65 2d 72 65 66 20 74    65 6d 70 6c 61 74 65 29 29 29 0a 20 20 20 20 20  | ingle-file-ref.template)))...... | 
| 6500 |  20 20 20 20 20 20 20 20 6e 69 6c 20 22 4d 75 73    74 20 6e 6f 74 20 68 61 76 65 20 25 73 20 61 6e  | ........nil."Must.not.have.%s.an | 
| 6520 |  64 20 25 73 20 69 6e 20 74 68 65 20 73 61 6d 65    20 74 65 6d 70 6c 61 74 65 22 0a 20 20 20 20 20  | d.%s.in.the.same.template"...... | 
| 6540 |  20 20 20 20 20 20 20 20 28 64 77 69 6d 2d 73 68    65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 2d 63 6f 6e  | ........(dwim-shell-command--con | 
| 6560 |  74 61 69 6e 73 2d 6d 75 6c 74 69 2d 66 69 6c 65    2d 72 65 66 20 74 65 6d 70 6c 61 74 65 29 0a 20  | tains-multi-file-ref.template).. | 
| 6580 |  20 20 20 20 20 20 20 20 20 20 20 20 28 64 77 69    6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d  | ............(dwim-shell-command- | 
| 65a0 |  2d 63 6f 6e 74 61 69 6e 73 2d 73 69 6e 67 6c 65    2d 66 69 6c 65 2d 72 65 66 20 74 65 6d 70 6c 61  | -contains-single-file-ref.templa | 
| 65c0 |  74 65 29 29 0a 20 20 28 73 65 74 71 20 66 69 6c    65 73 20 28 73 65 71 2d 6d 61 70 20 28 6c 61 6d  | te))...(setq.files.(seq-map.(lam | 
| 65e0 |  62 64 61 20 28 66 69 6c 65 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | bda.(file)...................... | 
| 6600 |  20 20 20 20 28 69 66 20 64 77 69 6d 2d 73 68 65    6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 75 73 65 2d 61  | ....(if.dwim-shell-command-use-a | 
| 6620 |  62 73 6f 6c 75 74 65 2d 70 61 74 68 73 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | bsolute-paths................... | 
| 6640 |  20 20 20 20 20 20 20 20 20 20 20 28 65 78 70 61    6e 64 2d 66 69 6c 65 2d 6e 61 6d 65 20 66 69 6c  | ...........(expand-file-name.fil | 
| 6660 |  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 28 66  | e)............................(f | 
| 6680 |  69 6c 65 2d 72 65 6c 61 74 69 76 65 2d 6e 61 6d    65 20 28 65 78 70 61 6e 64 2d 66 69 6c 65 2d 6e  | ile-relative-name.(expand-file-n | 
| 66a0 |  61 6d 65 20 66 69 6c 65 29 20 64 65 66 61 75 6c    74 2d 64 69 72 65 63 74 6f 72 79 29 29 29 0a 20  | ame.file).default-directory))).. | 
| 66c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 66 69 6c 65 73 29 29 0a 0a 20  | ......................files))... | 
| 66e0 |  20 28 6d 61 70 63 20 28 6c 61 6d 62 64 61 20 28    72 65 70 6c 61 63 65 6d 65 6e 74 29 0a 20 20 20  | .(mapc.(lambda.(replacement).... | 
| 6700 |  20 20 20 20 20 20 20 28 73 65 74 71 20 74 65 6d    70 6c 61 74 65 0a 20 20 20 20 20 20 20 20 20 20  | .......(setq.template........... | 
| 6720 |  20 20 20 20 20 20 28 73 74 72 69 6e 67 2d 72 65    70 6c 61 63 65 20 28 63 61 72 20 72 65 70 6c 61  | ......(string-replace.(car.repla | 
| 6740 |  63 65 6d 65 6e 74 29 20 28 63 64 72 20 72 65 70    6c 61 63 65 6d 65 6e 74 29 20 74 65 6d 70 6c 61  | cement).(cdr.replacement).templa | 
| 6760 |  74 65 29 29 29 0a 20 20 20 20 20 20 20 20 72 65    70 6c 61 63 65 6d 65 6e 74 73 29 0a 0a 20 20 3b  | te))).........replacements)....; | 
| 6780 |  3b 20 54 72 79 20 74 6f 20 75 73 65 20 71 75 6f    74 65 73 20 73 75 72 72 6f 75 6e 64 69 6e 67 20  | ;.Try.to.use.quotes.surrounding. | 
| 67a0 |  3c 3c 2a 3e 3e 20 69 6e 20 65 61 63 68 20 70 61    74 68 2e 0a 20 20 3b 3b 20 22 27 3c 3c 2a 3e 3e  | <<*>>.in.each.path....;;."'<<*>> | 
| 67c0 |  27 22 20 77 69 74 68 20 27 28 22 70 61 74 68 2f    74 6f 2f 69 6d 61 67 65 31 2e 70 6e 67 22 20 22  | '".with.'("path/to/image1.png"." | 
| 67e0 |  70 61 74 68 2f 74 6f 2f 69 6d 61 67 65 32 2e 70    6e 67 22 29 20 2d 3e 20 22 27 70 61 74 68 2f 74  | path/to/image2.png").->."'path/t | 
| 6800 |  6f 2f 69 6d 61 67 65 31 2e 70 6e 67 27 20 27 70    61 74 68 2f 74 6f 2f 69 6d 61 67 65 32 2e 70 6e  | o/image1.png'.'path/to/image2.pn | 
| 6820 |  67 27 22 0a 20 20 28 77 68 65 6e 2d 6c 65 74 2a    20 28 28 71 75 6f 74 69 6e 67 20 28 64 77 69 6d  | g'"...(when-let*.((quoting.(dwim | 
| 6840 |  2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 2d    65 73 63 61 70 65 64 2d 71 75 6f 74 65 2d 61 72  | -shell-command--escaped-quote-ar | 
| 6860 |  6f 75 6e 64 20 22 5c 3c 5c 3c 5c 5c 2a 5c 3e 5c    3e 22 20 74 65 6d 70 6c 61 74 65 29 29 0a 20 20  | ound."\<\<\\*\>\>".template))... | 
| 6880 |  20 20 20 20 20 20 20 20 20 20 20 20 28 75 6e 65    73 63 61 70 65 64 2d 71 75 6f 74 65 20 28 6e 74  | ............(unescaped-quote.(nt | 
| 68a0 |  68 20 30 20 71 75 6f 74 69 6e 67 29 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 28 65 73 63  | h.0.quoting))...............(esc | 
| 68c0 |  61 70 65 64 2d 71 75 6f 74 65 20 28 6e 74 68 20    31 20 71 75 6f 74 69 6e 67 29 29 29 0a 20 20 20  | aped-quote.(nth.1.quoting))).... | 
| 68e0 |  20 28 73 65 74 71 20 74 65 6d 70 6c 61 74 65 20    28 72 65 70 6c 61 63 65 2d 72 65 67 65 78 70 2d  | .(setq.template.(replace-regexp- | 
| 6900 |  69 6e 2d 73 74 72 69 6e 67 20 22 5c 5c 28 5b 5e    20 5d 5c 5c 29 5c 5c 28 5c 3c 5c 3c 5c 5c 2a 5c  | in-string."\\([^.]\\)\\(\<\<\\*\ | 
| 6920 |  3e 5c 3e 5c 5c 29 5c 5c 28 5b 5e 20 5d 5c 5c 29    22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | >\>\\)\\([^.]\\)"............... | 
| 6940 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28  | ...............................( | 
| 6960 |  73 74 72 69 6e 67 2d 6a 6f 69 6e 20 28 73 65 71    2d 6d 61 70 20 28 6c 61 6d 62 64 61 20 28 66 69  | string-join.(seq-map.(lambda.(fi | 
| 6980 |  6c 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | le)............................. | 
| 69a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 69c0 |  20 20 20 20 20 20 20 20 20 28 63 6f 6e 63 61 74    20 75 6e 65 73 63 61 70 65 64 2d 71 75 6f 74 65  | .........(concat.unescaped-quote | 
| 69e0 |  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  | ................................ | 
| 6a00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 6a20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73    74 72 69 6e 67 2d 72 65 70 6c 61 63 65 20 75 6e  | ..............(string-replace.un | 
| 6a40 |  65 73 63 61 70 65 64 2d 71 75 6f 74 65 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | escaped-quote................... | 
| 6a60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 6a80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 6aa0 |  20 20 20 20 20 20 20 20 20 20 20 65 73 63 61 70    65 64 2d 71 75 6f 74 65 20 66 69 6c 65 29 20 75  | ...........escaped-quote.file).u | 
| 6ac0 |  6e 65 73 63 61 70 65 64 2d 71 75 6f 74 65 29 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | nescaped-quote))................ | 
| 6ae0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 6b00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 66 69 6c 65 73 29 0a 20 20 20 20 20  | ....................files)...... | 
| 6b20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 6b40 |  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 6a 6f 69 6e 2d 73 65  | .....................(or.join-se | 
| 6b60 |  70 61 72 61 74 6f 72 20 22 20 22 29 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | parator."."))................... | 
| 6b80 |  20 20 20 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 65 6d 70 6c  | ...........................templ | 
| 6ba0 |  61 74 65 20 6e 69 6c 20 6e 69 6c 20 30 29 29 29    0a 0a 20 20 3b 3b 20 22 3c 3c 73 6f 6d 65 2e 74  | ate.nil.nil.0)))....;;."<<some.t | 
| 6bc0 |  78 74 28 75 29 3e 3e 22 20 2d 3e 20 73 6f 6d 65    2e 74 78 74 20 28 69 66 20 75 6e 69 71 75 65 29  | xt(u)>>".->.some.txt.(if.unique) | 
| 6be0 |  0a 20 20 3b 3b 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 2d 3e 20 73 6f 6d 65 28  | ...;;...................->.some( | 
| 6c00 |  31 29 2e 74 78 74 20 28 69 66 20 69 74 20 65 78    69 73 74 29 0a 20 20 28 77 68 65 6e 2d 6c 65 74  | 1).txt.(if.it.exist)...(when-let | 
| 6c20 |  2a 20 28 28 66 6f 75 6e 64 20 28 73 74 72 69 6e    67 2d 6d 61 74 63 68 20 22 5c 3c 5c 3c 5c 5c 28  | *.((found.(string-match."\<\<\\( | 
| 6c40 |  5b 5e 20 5d 3f 2b 5c 5c 29 28 75 29 5c 3e 5c 3e    22 20 74 65 6d 70 6c 61 74 65 29 29 0a 20 20 20  | [^.]?+\\)(u)\>\>".template)).... | 
| 6c60 |  20 20 20 20 20 20 20 20 20 20 20 28 6e 61 6d 65    20 28 6d 61 74 63 68 2d 73 74 72 69 6e 67 20 31  | ...........(name.(match-string.1 | 
| 6c80 |  20 74 65 6d 70 6c 61 74 65 29 29 29 0a 20 20 20    20 28 73 65 74 71 20 74 65 6d 70 6c 61 74 65 20  | .template))).....(setq.template. | 
| 6ca0 |  28 72 65 70 6c 61 63 65 2d 72 65 67 65 78 70 2d    69 6e 2d 73 74 72 69 6e 67 20 22 5c 3c 5c 3c 5c  | (replace-regexp-in-string."\<\<\ | 
| 6cc0 |  5c 28 5b 5e 20 5d 3f 2b 5c 5c 29 28 75 29 5c 3e    5c 3e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20  | \([^.]?+\\)(u)\>\>"............. | 
| 6ce0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 6d00 |  20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d    6d 61 6e 64 2d 2d 75 6e 69 71 75 65 2d 6e 65 77  | .(dwim-shell-command--unique-new | 
| 6d20 |  2d 66 69 6c 65 2d 70 61 74 68 20 6e 61 6d 65 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | -file-path.name)................ | 
| 6d40 |  20 20 20 20 20 20 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 65  | ..............................te | 
| 6d60 |  6d 70 6c 61 74 65 20 6e 69 6c 20 6e 69 6c 20 30    29 29 29 0a 0a 20 20 3b 3b 20 22 3c 3c 7e 3e 3e  | mplate.nil.nil.0)))....;;."<<~>> | 
| 6d80 |  22 20 2d 3e 20 22 2f 68 6f 6d 65 2f 75 73 65 72    22 20 28 6f 72 20 65 71 75 69 76 61 6c 65 6e 74  | ".->."/home/user".(or.equivalent | 
| 6da0 |  29 2e 0a 20 20 28 77 68 65 6e 20 28 73 74 72 69    6e 67 2d 6d 61 74 63 68 20 22 5c 3c 5c 3c 7e 5c  | )....(when.(string-match."\<\<~\ | 
| 6dc0 |  3e 5c 3e 22 20 74 65 6d 70 6c 61 74 65 29 0a 20    20 20 20 28 73 65 74 71 20 74 65 6d 70 6c 61 74  | >\>".template).....(setq.templat | 
| 6de0 |  65 20 28 72 65 70 6c 61 63 65 2d 72 65 67 65 78    70 2d 69 6e 2d 73 74 72 69 6e 67 20 22 5c 3c 5c  | e.(replace-regexp-in-string."\<\ | 
| 6e00 |  3c 7e 5c 3e 5c 3e 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  | <~\>\>"......................... | 
| 6e20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 65 78 70 61 6e 64 2d 66 69 6c  | .....................(expand-fil | 
| 6e40 |  65 2d 6e 61 6d 65 20 22 7e 22 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | e-name."~")..................... | 
| 6e60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 74 65 6d 70 6c 61 74  | .........................templat | 
| 6e80 |  65 20 6e 69 6c 20 6e 69 6c 20 30 29 29 29 0a 0a    20 20 3b 3b 20 22 3c 3c 2a 3e 3e 22 20 77 69 74  | e.nil.nil.0)))....;;."<<*>>".wit | 
| 6ea0 |  68 20 27 28 22 70 61 74 68 2f 74 6f 2f 69 6d 61    67 65 31 2e 70 6e 67 22 20 22 70 61 74 68 2f 74  | h.'("path/to/image1.png"."path/t | 
| 6ec0 |  6f 2f 69 6d 61 67 65 32 2e 70 6e 67 22 29 20 2d    3e 20 22 70 61 74 68 2f 74 6f 2f 69 6d 61 67 65  | o/image2.png").->."path/to/image | 
| 6ee0 |  31 2e 70 6e 67 20 70 61 74 68 2f 74 6f 2f 69 6d    61 67 65 32 2e 70 6e 67 22 0a 20 20 28 73 65 74  | 1.png.path/to/image2.png"...(set | 
| 6f00 |  71 20 74 65 6d 70 6c 61 74 65 20 28 72 65 70 6c    61 63 65 2d 72 65 67 65 78 70 2d 69 6e 2d 73 74  | q.template.(replace-regexp-in-st | 
| 6f20 |  72 69 6e 67 20 22 5c 5c 28 5c 3c 5c 3c 5c 5c 2a    5c 3e 5c 3e 5c 5c 29 22 20 28 73 74 72 69 6e 67  | ring."\\(\<\<\\*\>\>\\)".(string | 
| 6f40 |  2d 6a 6f 69 6e 20 66 69 6c 65 73 20 28 6f 72 20    6a 6f 69 6e 2d 73 65 70 61 72 61 74 6f 72 20 22  | -join.files.(or.join-separator." | 
| 6f60 |  20 22 29 29 20 74 65 6d 70 6c 61 74 65 20 6e 69    6c 20 6e 69 6c 20 31 29 29 0a 0a 20 20 3b 3b 20  | .")).template.nil.nil.1))....;;. | 
| 6f80 |  22 3c 3c 74 64 3e 3e 22 20 77 69 74 68 20 54 45    4d 50 2d 44 49 52 20 2d 3e 20 22 2f 76 61 72 2f  | "<<td>>".with.TEMP-DIR.->."/var/ | 
| 6fa0 |  66 6f 6c 64 65 72 73 2f 6d 37 2f 6b 79 30 39 31    63 70 35 36 64 35 67 36 38 6e 79 68 6c 34 79 37  | folders/m7/ky091cp56d5g68nyhl4y7 | 
| 6fc0 |  66 72 63 30 30 30 30 67 6e 2f 54 2f 64 77 69 6d    2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 4a  | frc0000gn/T/dwim-shell-command-J | 
| 6fe0 |  4e 4b 34 56 35 22 0a 20 20 28 73 65 74 71 20 74    65 6d 70 6c 61 74 65 20 28 72 65 70 6c 61 63 65  | NK4V5"...(setq.template.(replace | 
| 7000 |  2d 72 65 67 65 78 70 2d 69 6e 2d 73 74 72 69 6e    67 20 22 5c 5c 28 5c 3c 5c 3c 74 64 5c 3e 5c 3e  | -regexp-in-string."\\(\<\<td\>\> | 
| 7020 |  5c 5c 29 22 20 74 65 6d 70 2d 64 69 72 20 74 65    6d 70 6c 61 74 65 20 6e 69 6c 20 6e 69 6c 20 31  | \\)".temp-dir.template.nil.nil.1 | 
| 7040 |  29 29 0a 0a 20 20 3b 3b 20 22 3c 3c 63 62 3e 3e    22 20 77 69 74 68 20 28 63 75 72 72 65 6e 74 2d  | ))....;;."<<cb>>".with.(current- | 
| 7060 |  6b 69 6c 6c 20 30 29 20 2d 3e 20 22 77 68 61 74    65 76 65 72 20 77 61 73 20 69 6e 20 6b 69 6c 6c  | kill.0).->."whatever.was.in.kill | 
| 7080 |  20 72 69 6e 67 22 0a 20 20 28 77 68 65 6e 20 28    73 74 72 69 6e 67 2d 6d 61 74 63 68 20 22 5c 3c  | .ring"...(when.(string-match."\< | 
| 70a0 |  5c 3c 63 62 5c 3e 5c 3e 22 20 74 65 6d 70 6c 61    74 65 29 0a 20 20 20 20 28 73 65 74 71 20 74 65  | \<cb\>\>".template).....(setq.te | 
| 70c0 |  6d 70 6c 61 74 65 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  | mplate.(replace-regexp-in-string | 
| 70e0 |  20 22 5c 5c 28 5c 3c 5c 3c 63 62 5c 3e 5c 3e 5c    5c 29 22 20 28 63 75 72 72 65 6e 74 2d 6b 69 6c  | ."\\(\<\<cb\>\>\\)".(current-kil | 
| 7100 |  6c 20 30 29 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | l.0)............................ | 
| 7120 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 74 65 6d 70 6c 61 74 65 20 6e 69 6c 20 6e  | ..................template.nil.n | 
| 7140 |  69 6c 20 31 29 29 29 0a 0a 20 20 28 77 68 65 6e    20 70 6f 73 74 2d 70 72 6f 63 65 73 73 2d 74 65  | il.1)))....(when.post-process-te | 
| 7160 |  6d 70 6c 61 74 65 0a 20 20 20 20 28 73 65 74 71    20 74 65 6d 70 6c 61 74 65 20 28 66 75 6e 63 61  | mplate.....(setq.template.(funca | 
| 7180 |  6c 6c 20 70 6f 73 74 2d 70 72 6f 63 65 73 73 2d    74 65 6d 70 6c 61 74 65 20 74 65 6d 70 6c 61 74  | ll.post-process-template.templat | 
| 71a0 |  65 20 66 69 6c 65 73 29 29 29 0a 20 20 74 65 6d    70 6c 61 74 65 29 0a 0a 28 64 65 66 75 6e 20 64  | e.files)))...template)..(defun.d | 
| 71c0 |  77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e    64 2d 2d 65 73 63 61 70 65 64 2d 71 75 6f 74 65  | wim-shell-command--escaped-quote | 
| 71e0 |  2d 61 72 6f 75 6e 64 20 28 6e 65 65 64 6c 65 20    68 61 79 73 74 61 63 6b 20 26 6f 70 74 69 6f 6e  | -around.(needle.haystack.&option | 
| 7200 |  61 6c 20 75 6e 62 61 6c 61 6e 63 65 64 29 0a 20    20 22 46 69 6e 64 20 4e 45 45 44 4c 45 20 69 6e  | al.unbalanced)..."Find.NEEDLE.in | 
| 7220 |  20 48 41 59 53 54 41 43 4b 20 74 68 61 74 27 73    20 73 75 72 72 6f 75 6e 64 65 64 20 62 79 20 65  | .HAYSTACK.that's.surrounded.by.e | 
| 7240 |  69 74 68 65 72 20 27 20 6f 72 20 5c 22 2e 0a 0a    53 65 74 20 55 4e 42 41 4c 41 4e 43 45 44 20 74  | ither.'.or.\"...Set.UNBALANCED.t | 
| 7260 |  6f 20 74 20 69 66 20 4e 45 45 44 4c 45 20 69 73    6e 27 74 20 73 75 72 72 6f 75 6e 64 65 64 20 62  | o.t.if.NEEDLE.isn't.surrounded.b | 
| 7280 |  79 20 71 75 6f 74 65 73 20 6f 6e 20 62 6f 74 68    20 73 69 64 65 73 2e 0a 0a 46 6f 72 20 65 78 61  | y.quotes.on.both.sides...For.exa | 
| 72a0 |  6d 70 6c 65 3a 0a 0a 20 5c 22 5c 3c 5c 3c 66 6e    65 5c 3e 5c 3e 5c 22 20 5c 22 62 65 66 6f 72 65  | mple:...\"\<\<fne\>\>\".\"before | 
| 72c0 |  20 5c 22 3c 3c 66 6e 65 3e 3e 5c 22 20 61 66 74    65 72 5c 22 20 3d 3e 20 28 5c 22 5c 22 5c 22 20  | .\"<<fne>>\".after\".=>.(\"\"\". | 
| 72e0 |  5c 22 5c 5c 5c 5c 5c 22 5c 22 29 0a 0a 20 5c 22    5c 3c 5c 3c 66 6e 65 5c 3e 5c 3e 5c 22 20 5c 22  | \"\\\\\"\")...\"\<\<fne\>\>\".\" | 
| 7300 |  62 65 66 6f 72 65 20 27 3c 3c 66 6e 65 3e 3e 27    20 61 66 74 65 72 5c 22 20 3d 3e 20 28 5c 22 27  | before.'<<fne>>'.after\".=>.(\"' | 
| 7320 |  5c 22 20 5c 22 27 5c 22 27 5c 22 27 5c 22 29 22    0a 20 20 28 77 68 65 6e 2d 6c 65 74 20 28 28 66  | \".\"'\"'\"'\")"...(when-let.((f | 
| 7340 |  6f 75 6e 64 20 28 73 74 72 69 6e 67 2d 6d 61 74    63 68 20 28 66 6f 72 6d 61 74 20 22 5c 5c 28 5b  | ound.(string-match.(format."\\([ | 
| 7360 |  5e 20 5d 5c 5c 29 5c 5c 28 25 73 5c 5c 29 5c 5c    28 5b 5e 20 5d 5c 5c 29 22 20 6e 65 65 64 6c 65  | ^.]\\)\\(%s\\)\\([^.]\\)".needle | 
| 7380 |  29 20 68 61 79 73 74 61 63 6b 29 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 28 75 6e 65 73 63  | ).haystack))..............(unesc | 
| 73a0 |  61 70 65 64 2d 71 75 6f 74 65 20 28 69 66 20 75    6e 62 61 6c 61 6e 63 65 64 0a 20 20 20 20 20 20  | aped-quote.(if.unbalanced....... | 
| 73c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 20  | ............................(or. | 
| 73e0 |  28 6d 61 74 63 68 2d 73 74 72 69 6e 67 20 31 20    68 61 79 73 74 61 63 6b 29 0a 20 20 20 20 20 20  | (match-string.1.haystack)....... | 
| 7400 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 7420 |  28 6d 61 74 63 68 2d 73 74 72 69 6e 67 20 33 20    68 61 79 73 74 61 63 6b 29 29 0a 20 20 20 20 20  | (match-string.3.haystack))...... | 
| 7440 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 63 6c 2d 61  | ...........................(cl-a | 
| 7460 |  73 73 65 72 74 20 28 73 74 72 69 6e 67 2d 65 71    75 61 6c 20 28 6d 61 74 63 68 2d 73 74 72 69 6e  | ssert.(string-equal.(match-strin | 
| 7480 |  67 20 31 20 68 61 79 73 74 61 63 6b 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | g.1.haystack)................... | 
| 74a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 74c0 |  20 20 20 20 20 20 20 28 6d 61 74 63 68 2d 73 74    72 69 6e 67 20 33 20 68 61 79 73 74 61 63 6b 29  | .......(match-string.3.haystack) | 
| 74e0 |  29 20 6e 69 6c 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ).nil........................... | 
| 7500 |  20 20 20 20 20 20 20 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  | ..............................." | 
| 7520 |  25 73 20 6d 75 73 74 20 6d 61 74 63 68 20 25 73    22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | %s.must.match.%s"............... | 
| 7540 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 7560 |  20 20 20 20 20 20 20 20 20 20 20 28 6d 61 74 63    68 2d 73 74 72 69 6e 67 20 31 20 68 61 79 73 74  | ...........(match-string.1.hayst | 
| 7580 |  61 63 6b 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  | ack)............................ | 
| 75a0 |  20 20 20 20 20 20 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  | ..............................(m | 
| 75c0 |  61 74 63 68 2d 73 74 72 69 6e 67 20 33 20 68 61    79 73 74 61 63 6b 29 29 0a 20 20 20 20 20 20 20  | atch-string.3.haystack))........ | 
| 75e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 28 6d 61 74 63 68 2d  | .........................(match- | 
| 7600 |  73 74 72 69 6e 67 20 31 20 68 61 79 73 74 61 63    6b 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20  | string.1.haystack)))............ | 
| 7620 |  20 20 28 65 73 63 61 70 65 64 2d 71 75 6f 74 65    20 22 27 22 29 29 0a 20 20 20 20 3b 3b 20 4b 6e  | ..(escaped-quote."'")).....;;.Kn | 
| 7640 |  6f 77 6e 20 71 75 6f 74 65 64 20 71 75 6f 74 65    73 2e 0a 20 20 20 20 28 63 6f 6e 64 0a 20 20 20  | own.quoted.quotes......(cond.... | 
| 7660 |  20 20 28 28 73 74 72 69 6e 67 2d 65 71 75 61 6c    20 75 6e 65 73 63 61 70 65 64 2d 71 75 6f 74 65  | ..((string-equal.unescaped-quote | 
| 7680 |  20 22 5c 22 22 29 0a 20 20 20 20 20 20 28 73 65    74 71 20 65 73 63 61 70 65 64 2d 71 75 6f 74 65  | ."\"").......(setq.escaped-quote | 
| 76a0 |  20 22 5c 5c 5c 5c 5c 22 22 29 29 0a 20 20 20 20    20 28 28 73 74 72 69 6e 67 2d 65 71 75 61 6c 20  | ."\\\\\""))......((string-equal. | 
| 76c0 |  75 6e 65 73 63 61 70 65 64 2d 71 75 6f 74 65 20    22 27 22 29 0a 20 20 20 20 20 20 28 73 65 74 71  | unescaped-quote."'").......(setq | 
| 76e0 |  20 65 73 63 61 70 65 64 2d 71 75 6f 74 65 20 22    27 5c 22 27 5c 22 27 22 29 29 0a 20 20 20 20 20  | .escaped-quote."'\"'\"'"))...... | 
| 7700 |  3b 3b 20 49 67 6e 6f 72 65 20 73 6c 61 73 68 65    73 20 61 73 20 75 73 65 72 20 6d 61 79 20 62 65  | ;;.Ignore.slashes.as.user.may.be | 
| 7720 |  20 6a 6f 69 6e 69 6e 67 20 70 61 74 68 73 2e 0a    20 20 20 20 20 28 28 73 74 72 69 6e 67 2d 65 71  | .joining.paths.......((string-eq | 
| 7740 |  75 61 6c 20 75 6e 65 73 63 61 70 65 64 2d 71 75    6f 74 65 20 22 2f 22 29 0a 20 20 20 20 20 20 28  | ual.unescaped-quote."/").......( | 
| 7760 |  73 65 74 71 20 65 73 63 61 70 65 64 2d 71 75 6f    74 65 20 22 2f 22 29 29 0a 20 20 20 20 20 28 74  | setq.escaped-quote."/"))......(t | 
| 7780 |  0a 20 20 20 20 20 20 28 65 72 72 6f 72 20 22 43    6f 75 6c 64 6e 27 74 20 66 69 67 75 72 65 20 6f  | .......(error."Couldn't.figure.o | 
| 77a0 |  75 74 20 68 6f 77 20 74 6f 20 71 75 6f 74 65 20    66 6f 72 20 5c 22 25 73 5c 22 20 75 73 69 6e 67  | ut.how.to.quote.for.\"%s\".using | 
| 77c0 |  20 25 73 20 61 6e 64 20 25 73 22 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 68 61 79 73 74 61 63  | .%s.and.%s"..............haystac | 
| 77e0 |  6b 0a 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 20 31 20 68  | k..............(match-string.1.h | 
| 7800 |  61 79 73 74 61 63 6b 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 28 6d 61 74 63 68 2d 73 74 72  | aystack)..............(match-str | 
| 7820 |  69 6e 67 20 33 20 68 61 79 73 74 61 63 6b 29 29    29 29 0a 20 20 20 20 28 6c 69 73 74 20 75 6e 65  | ing.3.haystack)))).....(list.une | 
| 7840 |  73 63 61 70 65 64 2d 71 75 6f 74 65 20 65 73 63    61 70 65 64 2d 71 75 6f 74 65 29 29 29 0a 0a 28  | scaped-quote.escaped-quote)))..( | 
| 7860 |  64 65 66 75 6e 20 64 77 69 6d 2d 73 68 65 6c 6c    2d 63 6f 6d 6d 61 6e 64 2d 2d 65 78 70 61 6e 64  | defun.dwim-shell-command--expand | 
| 7880 |  2d 66 69 6c 65 2d 74 65 6d 70 6c 61 74 65 20 28    74 65 6d 70 6c 61 74 65 20 66 69 6c 65 20 26 6f  | -file-template.(template.file.&o | 
| 78a0 |  70 74 69 6f 6e 61 6c 20 70 6f 73 74 2d 70 72 6f    63 65 73 73 2d 74 65 6d 70 6c 61 74 65 20 74 65  | ptional.post-process-template.te | 
| 78c0 |  6d 70 2d 64 69 72 20 63 75 72 72 65 6e 74 20 72    65 70 6c 61 63 65 6d 65 6e 74 73 29 0a 20 20 22  | mp-dir.current.replacements)..." | 
| 78e0 |  45 78 70 61 6e 64 20 54 45 4d 50 4c 41 54 45 20    75 73 69 6e 67 20 46 49 4c 45 2e 0a 0a 45 78 70  | Expand.TEMPLATE.using.FILE...Exp | 
| 7900 |  61 6e 64 20 75 73 69 6e 67 20 3c 3c 66 3e 3e 20    66 6f 72 20 46 49 4c 45 2c 20 3c 3c 66 6e 65 3e  | and.using.<<f>>.for.FILE,.<<fne> | 
| 7920 |  3e 20 66 6f 72 20 46 49 4c 45 20 77 69 74 68 6f    75 74 20 65 78 74 65 6e 73 69 6f 6e 2c 20 61 6e  | >.for.FILE.without.extension,.an | 
| 7940 |  64 0a 3c 3c 65 3e 3e 20 66 6f 72 20 46 49 4c 45    20 65 78 74 65 6e 73 69 6f 6e 2e 20 20 3c 3c 6e  | d.<<e>>.for.FILE.extension...<<n | 
| 7960 |  3e 3e 2c 20 3c 3c 31 6e 3e 3e 2c 20 6f 72 20 3c    3c 61 6e 3e 3e 20 69 73 20 72 65 70 6c 61 63 65  | >>,.<<1n>>,.or.<<an>>.is.replace | 
| 7980 |  64 20 77 69 74 68 0a 43 55 52 52 45 4e 54 2e 20    20 3c 3c 73 6f 6d 65 2e 74 78 74 28 75 29 3e 3e  | d.with.CURRENT...<<some.txt(u)>> | 
| 79a0 |  20 65 78 70 61 6e 64 73 20 74 6f 20 75 6e 69 71    75 65 20 5c 22 73 6f 6d 65 28 31 29 2e 74 78 74  | .expands.to.unique.\"some(1).txt | 
| 79c0 |  5c 22 2e 0a 0a 4e 6f 74 65 3a 20 54 68 69 73 20    65 78 70 61 6e 64 65 72 20 63 61 6e 6e 6f 74 20  | \"...Note:.This.expander.cannot. | 
| 79e0 |  62 65 20 75 73 65 64 20 74 6f 20 65 78 70 61 6e    64 20 3c 3c 2a 3e 3e 2e 0a 0a 20 20 46 6f 72 20  | be.used.to.expand.<<*>>.....For. | 
| 7a00 |  65 78 61 6d 70 6c 65 3a 0a 0a 20 20 20 20 47 69    76 65 6e 20 46 49 4c 45 20 5c 22 70 61 74 68 2f  | example:......Given.FILE.\"path/ | 
| 7a20 |  74 6f 2f 69 6d 61 67 65 2e 70 6e 67 5c 22 0a 0a    20 20 20 20 5c 22 63 6f 6e 76 65 72 74 20 27 3c  | to/image.png\"......\"convert.'< | 
| 7a40 |  3c 66 3e 3e 27 20 27 3c 3c 66 6e 65 3e 3e 2e 6a    70 67 27 5c 22 20 65 78 70 61 6e 64 73 20 74 6f  | <f>>'.'<<fne>>.jpg'\".expands.to | 
| 7a60 |  0a 0a 20 20 20 20 20 20 5c 22 63 6f 6e 76 65 72    74 20 27 70 61 74 68 2f 74 6f 2f 69 6d 61 67 65  | ........\"convert.'path/to/image | 
| 7a80 |  2e 70 6e 67 27 20 27 70 61 74 68 2f 74 6f 2f 69    6d 61 67 65 2e 6a 70 67 27 5c 22 0a 0a 55 73 65  | .png'.'path/to/image.jpg'\"..Use | 
| 7aa0 |  20 50 4f 53 54 2d 50 52 4f 43 45 53 53 2d 54 45    4d 50 4c 41 54 45 20 74 6f 20 66 75 72 74 68 65  | .POST-PROCESS-TEMPLATE.to.furthe | 
| 7ac0 |  72 20 65 78 70 61 6e 64 20 74 65 6d 70 6c 61 74    65 20 67 69 76 65 6e 20 6f 77 6e 20 6c 6f 67 69  | r.expand.template.given.own.logi | 
| 7ae0 |  63 2e 0a 0a 53 65 74 20 54 45 4d 50 2d 44 49 52    20 74 6f 20 61 20 75 6e 69 71 75 65 20 74 65 6d  | c...Set.TEMP-DIR.to.a.unique.tem | 
| 7b00 |  70 20 64 69 72 65 63 74 6f 72 79 20 74 6f 20 74    68 69 73 20 74 65 6d 70 6c 61 74 65 2e 0a 0a 52  | p.directory.to.this.template...R | 
| 7b20 |  45 50 4c 41 43 45 4d 45 4e 54 53 20 69 73 20 61    20 63 6f 6e 73 20 6c 69 73 74 20 6f 66 20 6c 69  | EPLACEMENTS.is.a.cons.list.of.li | 
| 7b40 |  74 65 72 61 6c 73 20 74 6f 20 72 65 70 6c 61 63    65 20 77 69 74 68 20 76 61 6c 75 65 73 2e 22 0a  | terals.to.replace.with.values.". | 
| 7b60 |  20 20 28 63 6c 2d 61 73 73 65 72 74 20 28 6e 6f    74 20 28 61 6e 64 20 28 64 77 69 6d 2d 73 68 65  | ..(cl-assert.(not.(and.(dwim-she | 
| 7b80 |  6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 2d 63 6f 6e 74    61 69 6e 73 2d 6d 75 6c 74 69 2d 66 69 6c 65 2d  | ll-command--contains-multi-file- | 
| 7ba0 |  72 65 66 20 74 65 6d 70 6c 61 74 65 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ref.template)................... | 
| 7bc0 |  20 20 20 20 20 28 64 77 69 6d 2d 73 68 65 6c 6c    2d 63 6f 6d 6d 61 6e 64 2d 2d 63 6f 6e 74 61 69  | .....(dwim-shell-command--contai | 
| 7be0 |  6e 73 2d 73 69 6e 67 6c 65 2d 66 69 6c 65 2d 72    65 66 20 74 65 6d 70 6c 61 74 65 29 29 29 0a 20  | ns-single-file-ref.template))).. | 
| 7c00 |  20 20 20 20 20 20 20 20 20 20 20 20 6e 69 6c 20    22 4d 75 73 74 20 6e 6f 74 20 68 61 76 65 20 25  | ............nil."Must.not.have.% | 
| 7c20 |  73 20 61 6e 64 20 25 73 20 69 6e 20 74 68 65 20    73 61 6d 65 20 74 65 6d 70 6c 61 74 65 22 0a 20  | s.and.%s.in.the.same.template".. | 
| 7c40 |  20 20 20 20 20 20 20 20 20 20 20 20 28 64 77 69    6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d  | ............(dwim-shell-command- | 
| 7c60 |  2d 63 6f 6e 74 61 69 6e 73 2d 6d 75 6c 74 69 2d    66 69 6c 65 2d 72 65 66 20 74 65 6d 70 6c 61 74  | -contains-multi-file-ref.templat | 
| 7c80 |  65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    28 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d  | e)..............(dwim-shell-comm | 
| 7ca0 |  61 6e 64 2d 2d 63 6f 6e 74 61 69 6e 73 2d 73 69    6e 67 6c 65 2d 66 69 6c 65 2d 72 65 66 20 74 65  | and--contains-single-file-ref.te | 
| 7cc0 |  6d 70 6c 61 74 65 29 29 0a 0a 20 20 28 6d 61 70    63 20 28 6c 61 6d 62 64 61 20 28 72 65 70 6c 61  | mplate))....(mapc.(lambda.(repla | 
| 7ce0 |  63 65 6d 65 6e 74 29 0a 20 20 20 20 20 20 20 20    20 20 28 73 65 74 71 20 74 65 6d 70 6c 61 74 65  | cement)...........(setq.template | 
| 7d00 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 73 74 72 69 6e 67 2d 72 65 70 6c 61 63 65  | .................(string-replace | 
| 7d20 |  20 28 63 61 72 20 72 65 70 6c 61 63 65 6d 65 6e    74 29 20 28 63 64 72 20 72 65 70 6c 61 63 65 6d  | .(car.replacement).(cdr.replacem | 
| 7d40 |  65 6e 74 29 20 74 65 6d 70 6c 61 74 65 29 29 29    0a 20 20 20 20 20 20 20 20 72 65 70 6c 61 63 65  | ent).template))).........replace | 
| 7d60 |  6d 65 6e 74 73 29 0a 0a 20 20 28 77 68 65 6e 20    66 69 6c 65 0a 20 20 20 20 28 73 65 74 71 20 66  | ments)....(when.file.....(setq.f | 
| 7d80 |  69 6c 65 20 28 69 66 20 64 77 69 6d 2d 73 68 65    6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 75 73 65 2d 61  | ile.(if.dwim-shell-command-use-a | 
| 7da0 |  62 73 6f 6c 75 74 65 2d 70 61 74 68 73 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | bsolute-paths................... | 
| 7dc0 |  20 28 65 78 70 61 6e 64 2d 66 69 6c 65 2d 6e 61    6d 65 20 66 69 6c 65 29 0a 20 20 20 20 20 20 20  | .(expand-file-name.file)........ | 
| 7de0 |  20 20 20 20 20 20 20 20 20 20 28 66 69 6c 65 2d    72 65 6c 61 74 69 76 65 2d 6e 61 6d 65 20 28 65  | ..........(file-relative-name.(e | 
| 7e00 |  78 70 61 6e 64 2d 66 69 6c 65 2d 6e 61 6d 65 20    66 69 6c 65 29 20 64 65 66 61 75 6c 74 2d 64 69  | xpand-file-name.file).default-di | 
| 7e20 |  72 65 63 74 6f 72 79 29 29 29 0a 20 20 20 20 3b    3b 20 22 3c 3c 66 6e 65 3e 3e 22 20 77 69 74 68  | rectory))).....;;."<<fne>>".with | 
| 7e40 |  20 22 2f 70 61 74 68 2f 74 6d 70 2e 74 78 74 22    20 2d 3e 20 22 2f 70 61 74 68 2f 74 6d 70 22 0a  | ."/path/tmp.txt".->."/path/tmp". | 
| 7e60 |  20 20 20 20 28 69 66 2d 6c 65 74 2a 20 28 28 71    75 6f 74 69 6e 67 20 28 64 77 69 6d 2d 73 68 65  | ....(if-let*.((quoting.(dwim-she | 
| 7e80 |  6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 2d 65 73 63 61    70 65 64 2d 71 75 6f 74 65 2d 61 72 6f 75 6e 64  | ll-command--escaped-quote-around | 
| 7ea0 |  20 22 5c 3c 5c 3c 66 6e 65 5c 3e 5c 3e 22 20 74    65 6d 70 6c 61 74 65 20 74 29 29 0a 20 20 20 20  | ."\<\<fne\>\>".template.t))..... | 
| 7ec0 |  20 20 20 20 20 20 20 20 20 20 28 75 6e 65 73 63    61 70 65 64 2d 71 75 6f 74 65 20 28 6e 74 68 20  | ..........(unescaped-quote.(nth. | 
| 7ee0 |  30 20 71 75 6f 74 69 6e 67 29 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 65 73 63 61 70  | 0.quoting))...............(escap | 
| 7f00 |  65 64 2d 71 75 6f 74 65 20 28 6e 74 68 20 31 20    71 75 6f 74 69 6e 67 29 29 29 0a 20 20 20 20 20  | ed-quote.(nth.1.quoting)))...... | 
| 7f20 |  20 20 20 28 73 65 74 71 20 74 65 6d 70 6c 61 74    65 20 28 72 65 70 6c 61 63 65 2d 72 65 67 65 78  | ...(setq.template.(replace-regex | 
| 7f40 |  70 2d 69 6e 2d 73 74 72 69 6e 67 20 22 5c 5c 28    5b 5e 20 5d 5c 5c 29 5c 5c 28 5c 3c 5c 3c 66 6e  | p-in-string."\\([^.]\\)\\(\<\<fn | 
| 7f60 |  65 5c 3e 5c 3e 5c 5c 29 22 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | e\>\>\\)"....................... | 
| 7f80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 73 74 72 69  | ...........................(stri | 
| 7fa0 |  6e 67 2d 72 65 70 6c 61 63 65 20 75 6e 65 73 63    61 70 65 64 2d 71 75 6f 74 65 20 65 73 63 61 70  | ng-replace.unescaped-quote.escap | 
| 7fc0 |  65 64 2d 71 75 6f 74 65 20 28 66 69 6c 65 2d 6e    61 6d 65 2d 73 61 6e 73 2d 65 78 74 65 6e 73 69  | ed-quote.(file-name-sans-extensi | 
| 7fe0 |  6f 6e 20 66 69 6c 65 29 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | on.file))....................... | 
| 8000 |  20 20 20 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 65 6d 70 6c  | ...........................templ | 
| 8020 |  61 74 65 20 6e 69 6c 20 6e 69 6c 20 32 29 29 0a    20 20 20 20 20 20 28 73 65 74 71 20 74 65 6d 70  | ate.nil.nil.2)).......(setq.temp | 
| 8040 |  6c 61 74 65 20 28 72 65 70 6c 61 63 65 2d 72 65    67 65 78 70 2d 69 6e 2d 73 74 72 69 6e 67 20 22  | late.(replace-regexp-in-string." | 
| 8060 |  5c 5c 28 5c 3c 5c 3c 66 6e 65 5c 3e 5c 3e 5c 5c    29 22 20 28 66 69 6c 65 2d 6e 61 6d 65 2d 73 61  | \\(\<\<fne\>\>\\)".(file-name-sa | 
| 8080 |  6e 73 2d 65 78 74 65 6e 73 69 6f 6e 20 66 69 6c    65 29 20 74 65 6d 70 6c 61 74 65 20 6e 69 6c 20  | ns-extension.file).template.nil. | 
| 80a0 |  6e 69 6c 20 31 29 29 29 0a 0a 20 20 20 20 3b 3b    20 22 3c 3c 62 3e 3e 22 20 77 69 74 68 20 22 2f  | nil.1)))......;;."<<b>>".with."/ | 
| 80c0 |  70 61 74 68 2f 74 6d 70 2e 74 78 74 22 20 2d 3e    20 22 74 6d 70 2e 74 78 74 22 0a 20 20 20 20 28  | path/tmp.txt".->."tmp.txt".....( | 
| 80e0 |  69 66 2d 6c 65 74 2a 20 28 28 71 75 6f 74 69 6e    67 20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f  | if-let*.((quoting.(dwim-shell-co | 
| 8100 |  6d 6d 61 6e 64 2d 2d 65 73 63 61 70 65 64 2d 71    75 6f 74 65 2d 61 72 6f 75 6e 64 20 22 5c 3c 5c  | mmand--escaped-quote-around."\<\ | 
| 8120 |  3c 62 5c 3e 5c 3e 22 20 74 65 6d 70 6c 61 74 65    20 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 20  | <b\>\>".template.t))............ | 
| 8140 |  20 20 20 28 75 6e 65 73 63 61 70 65 64 2d 71 75    6f 74 65 20 28 6e 74 68 20 30 20 71 75 6f 74 69  | ...(unescaped-quote.(nth.0.quoti | 
| 8160 |  6e 67 29 29 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 65 73 63 61 70 65 64 2d 71 75 6f 74  | ng))...............(escaped-quot | 
| 8180 |  65 20 28 6e 74 68 20 31 20 71 75 6f 74 69 6e 67    29 29 29 0a 20 20 20 20 20 20 20 20 28 73 65 74  | e.(nth.1.quoting))).........(set | 
| 81a0 |  71 20 74 65 6d 70 6c 61 74 65 20 28 72 65 70 6c    61 63 65 2d 72 65 67 65 78 70 2d 69 6e 2d 73 74  | q.template.(replace-regexp-in-st | 
| 81c0 |  72 69 6e 67 20 22 5c 5c 28 5c 3c 5c 3c 62 5c 3e    5c 3e 5c 5c 29 5c 5c 28 5b 5e 20 5d 5c 5c 29 22  | ring."\\(\<\<b\>\>\\)\\([^.]\\)" | 
| 81e0 |  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  | ................................ | 
| 8200 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 73 74 72 69 6e 67 2d 72 65 70 6c 61 63  | ..................(string-replac | 
| 8220 |  65 20 75 6e 65 73 63 61 70 65 64 2d 71 75 6f 74    65 20 65 73 63 61 70 65 64 2d 71 75 6f 74 65 20  | e.unescaped-quote.escaped-quote. | 
| 8240 |  28 66 69 6c 65 2d 6e 61 6d 65 2d 6e 6f 6e 64 69    72 65 63 74 6f 72 79 20 66 69 6c 65 29 29 0a 20  | (file-name-nondirectory.file)).. | 
| 8260 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 8280 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    74 65 6d 70 6c 61 74 65 20 6e 69 6c 20 6e 69 6c  | ................template.nil.nil | 
| 82a0 |  20 31 29 29 0a 20 20 20 20 20 20 28 73 65 74 71    20 74 65 6d 70 6c 61 74 65 20 28 72 65 70 6c 61  | .1)).......(setq.template.(repla | 
| 82c0 |  63 65 2d 72 65 67 65 78 70 2d 69 6e 2d 73 74 72    69 6e 67 20 22 5c 5c 28 5c 3c 5c 3c 62 5c 3e 5c  | ce-regexp-in-string."\\(\<\<b\>\ | 
| 82e0 |  3e 5c 5c 29 22 20 28 66 69 6c 65 2d 6e 61 6d 65    2d 6e 6f 6e 64 69 72 65 63 74 6f 72 79 20 66 69  | >\\)".(file-name-nondirectory.fi | 
| 8300 |  6c 65 29 20 74 65 6d 70 6c 61 74 65 20 6e 69 6c    20 6e 69 6c 20 31 29 29 29 0a 0a 20 20 20 20 3b  | le).template.nil.nil.1)))......; | 
| 8320 |  3b 20 22 3c 3c 62 6e 65 3e 3e 22 20 77 69 74 68    20 22 2f 70 61 74 68 2f 74 6d 70 2e 74 78 74 22  | ;."<<bne>>".with."/path/tmp.txt" | 
| 8340 |  20 2d 3e 20 22 74 6d 70 22 0a 20 20 20 20 28 69    66 2d 6c 65 74 2a 20 28 28 71 75 6f 74 69 6e 67  | .->."tmp".....(if-let*.((quoting | 
| 8360 |  20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d    6d 61 6e 64 2d 2d 65 73 63 61 70 65 64 2d 71 75  | .(dwim-shell-command--escaped-qu | 
| 8380 |  6f 74 65 2d 61 72 6f 75 6e 64 20 22 5c 3c 5c 3c    62 6e 65 5c 3e 5c 3e 22 20 74 65 6d 70 6c 61 74  | ote-around."\<\<bne\>\>".templat | 
| 83a0 |  65 20 74 29 29 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 28 75 6e 65 73 63 61 70 65 64 2d 71  | e.t))...............(unescaped-q | 
| 83c0 |  75 6f 74 65 20 28 6e 74 68 20 30 20 71 75 6f 74    69 6e 67 29 29 0a 20 20 20 20 20 20 20 20 20 20  | uote.(nth.0.quoting))........... | 
| 83e0 |  20 20 20 20 28 65 73 63 61 70 65 64 2d 71 75 6f    74 65 20 28 6e 74 68 20 31 20 71 75 6f 74 69 6e  | ....(escaped-quote.(nth.1.quotin | 
| 8400 |  67 29 29 29 0a 20 20 20 20 20 20 20 20 28 73 65    74 71 20 74 65 6d 70 6c 61 74 65 20 28 72 65 70  | g))).........(setq.template.(rep | 
| 8420 |  6c 61 63 65 2d 72 65 67 65 78 70 2d 69 6e 2d 73    74 72 69 6e 67 20 22 5c 5c 28 5c 3c 5c 3c 62 6e  | lace-regexp-in-string."\\(\<\<bn | 
| 8440 |  65 5c 3e 5c 3e 5c 5c 29 5c 5c 28 5b 5e 20 5d 5c    5c 29 22 0a 20 20 20 20 20 20 20 20 20 20 20 20  | e\>\>\\)\\([^.]\\)"............. | 
| 8460 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 8480 |  20 20 20 20 20 28 73 74 72 69 6e 67 2d 72 65 70    6c 61 63 65 20 75 6e 65 73 63 61 70 65 64 2d 71  | .....(string-replace.unescaped-q | 
| 84a0 |  75 6f 74 65 20 65 73 63 61 70 65 64 2d 71 75 6f    74 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | uote.escaped-quote.............. | 
| 84c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 84e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 28 66 69 6c 65 2d 6e 61 6d 65 2d 73  | ....................(file-name-s | 
| 8500 |  61 6e 73 2d 65 78 74 65 6e 73 69 6f 6e 20 28 66    69 6c 65 2d 6e 61 6d 65 2d 6e 6f 6e 64 69 72 65  | ans-extension.(file-name-nondire | 
| 8520 |  63 74 6f 72 79 20 66 69 6c 65 29 29 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ctory.file)))................... | 
| 8540 |  20 20 20 20 20 20 20 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  | ...............................t | 
| 8560 |  65 6d 70 6c 61 74 65 20 6e 69 6c 20 6e 69 6c 20    31 29 29 0a 20 20 20 20 20 20 28 73 65 74 71 20  | emplate.nil.nil.1)).......(setq. | 
| 8580 |  74 65 6d 70 6c 61 74 65 20 28 72 65 70 6c 61 63    65 2d 72 65 67 65 78 70 2d 69 6e 2d 73 74 72 69  | template.(replace-regexp-in-stri | 
| 85a0 |  6e 67 20 22 5c 5c 28 5c 3c 5c 3c 62 6e 65 5c 3e    5c 3e 5c 5c 29 22 20 28 66 69 6c 65 2d 6e 61 6d  | ng."\\(\<\<bne\>\>\\)".(file-nam | 
| 85c0 |  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 20 20 20  | e-sans-extension................ | 
| 85e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 8600 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 66 69 6c 65 2d 6e 61 6d 65 2d 6e 6f 6e 64  | .................(file-name-nond | 
| 8620 |  69 72 65 63 74 6f 72 79 20 66 69 6c 65 29 29 20    74 65 6d 70 6c 61 74 65 20 6e 69 6c 20 6e 69 6c  | irectory.file)).template.nil.nil | 
| 8640 |  20 31 29 29 29 0a 0a 20 20 20 20 3b 3b 20 22 3c    3c 65 3e 3e 22 20 77 69 74 68 20 22 2f 70 61 74  | .1)))......;;."<<e>>".with."/pat | 
| 8660 |  68 2f 74 6d 70 2e 74 78 74 22 20 2d 3e 20 22 74    78 74 22 0a 20 20 20 20 28 69 66 20 28 66 69 6c  | h/tmp.txt".->."txt".....(if.(fil | 
| 8680 |  65 2d 6e 61 6d 65 2d 65 78 74 65 6e 73 69 6f 6e    20 66 69 6c 65 29 0a 20 20 20 20 20 20 20 20 28  | e-name-extension.file).........( | 
| 86a0 |  73 65 74 71 20 74 65 6d 70 6c 61 74 65 20 28 72    65 70 6c 61 63 65 2d 72 65 67 65 78 70 2d 69 6e  | setq.template.(replace-regexp-in | 
| 86c0 |  2d 73 74 72 69 6e 67 20 22 5c 5c 28 5c 3c 5c 3c    65 5c 3e 5c 3e 5c 5c 29 22 20 28 66 69 6c 65 2d  | -string."\\(\<\<e\>\>\\)".(file- | 
| 86e0 |  6e 61 6d 65 2d 65 78 74 65 6e 73 69 6f 6e 20 66    69 6c 65 29 20 74 65 6d 70 6c 61 74 65 20 6e 69  | name-extension.file).template.ni | 
| 8700 |  6c 20 6e 69 6c 20 31 29 29 0a 20 20 20 20 20 20    3b 3b 20 46 69 6c 65 20 68 61 64 20 6e 6f 20 65  | l.nil.1)).......;;.File.had.no.e | 
| 8720 |  78 74 65 6e 73 69 6f 6e 2e 20 41 74 74 65 6d 70    74 20 74 6f 20 72 65 6d 6f 76 65 20 2e 3c 3c 65  | xtension..Attempt.to.remove..<<e | 
| 8740 |  3e 3e 2e 0a 20 20 20 20 20 20 28 73 65 74 71 20    74 65 6d 70 6c 61 74 65 20 28 72 65 70 6c 61 63  | >>........(setq.template.(replac | 
| 8760 |  65 2d 72 65 67 65 78 70 2d 69 6e 2d 73 74 72 69    6e 67 20 22 5c 5c 28 5c 2e 5c 3c 5c 3c 65 5c 3e  | e-regexp-in-string."\\(\.\<\<e\> | 
| 8780 |  5c 3e 5c 5c 29 22 20 22 22 20 74 65 6d 70 6c 61    74 65 20 6e 69 6c 20 6e 69 6c 20 31 29 29 29 0a  | \>\\)"."".template.nil.nil.1))). | 
| 87a0 |  0a 20 20 20 20 3b 3b 20 22 3c 3c 66 3e 3e 22 20    77 69 74 68 20 22 2f 70 61 74 68 2f 66 69 6c 65  | .....;;."<<f>>".with."/path/file | 
| 87c0 |  2e 6a 70 67 22 20 2d 3e 20 22 2f 70 61 74 68 2f    66 69 6c 65 2e 6a 70 67 22 0a 20 20 20 20 28 69  | .jpg".->."/path/file.jpg".....(i | 
| 87e0 |  66 2d 6c 65 74 2a 20 28 28 71 75 6f 74 69 6e 67    20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d  | f-let*.((quoting.(dwim-shell-com | 
| 8800 |  6d 61 6e 64 2d 2d 65 73 63 61 70 65 64 2d 71 75    6f 74 65 2d 61 72 6f 75 6e 64 20 22 5c 3c 5c 3c  | mand--escaped-quote-around."\<\< | 
| 8820 |  66 5c 3e 5c 3e 22 20 74 65 6d 70 6c 61 74 65 29    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | f\>\>".template))............... | 
| 8840 |  28 75 6e 65 73 63 61 70 65 64 2d 71 75 6f 74 65    20 28 6e 74 68 20 30 20 71 75 6f 74 69 6e 67 29  | (unescaped-quote.(nth.0.quoting) | 
| 8860 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 65 73 63 61 70 65 64 2d 71 75 6f 74 65 20 28  | )...............(escaped-quote.( | 
| 8880 |  6e 74 68 20 31 20 71 75 6f 74 69 6e 67 29 29 29    0a 20 20 20 20 20 20 20 20 28 73 65 74 71 20 74  | nth.1.quoting))).........(setq.t | 
| 88a0 |  65 6d 70 6c 61 74 65 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  | emplate.(replace-regexp-in-strin | 
| 88c0 |  67 20 22 5c 5c 28 5b 5e 20 5d 5c 5c 29 5c 5c 28    5c 3c 5c 3c 66 5c 3e 5c 3e 5c 5c 29 5c 5c 28 5b  | g."\\([^.]\\)\\(\<\<f\>\>\\)\\([ | 
| 88e0 |  5e 20 5d 5c 5c 29 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  | ^.]\\)"......................... | 
| 8900 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 28 73 74 72 69 6e 67  | .........................(string | 
| 8920 |  2d 72 65 70 6c 61 63 65 20 75 6e 65 73 63 61 70    65 64 2d 71 75 6f 74 65 20 65 73 63 61 70 65 64  | -replace.unescaped-quote.escaped | 
| 8940 |  2d 71 75 6f 74 65 20 66 69 6c 65 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | -quote.file).................... | 
| 8960 |  20 20 20 20 20 20 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 65  | ..............................te | 
| 8980 |  6d 70 6c 61 74 65 20 6e 69 6c 20 6e 69 6c 20 32    29 29 0a 20 20 20 20 20 20 28 73 65 74 71 20 74  | mplate.nil.nil.2)).......(setq.t | 
| 89a0 |  65 6d 70 6c 61 74 65 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  | emplate.(replace-regexp-in-strin | 
| 89c0 |  67 20 22 5c 5c 28 5c 3c 5c 3c 66 5c 3e 5c 3e 5c    5c 29 22 20 66 69 6c 65 20 74 65 6d 70 6c 61 74  | g."\\(\<\<f\>\>\\)".file.templat | 
| 89e0 |  65 20 6e 69 6c 20 6e 69 6c 20 31 29 29 29 0a 0a    20 20 20 20 3b 3b 20 22 3c 3c 66 28 75 29 3e 3e  | e.nil.nil.1)))......;;."<<f(u)>> | 
| 8a00 |  22 20 77 69 74 68 20 22 2f 70 61 74 68 2f 66 69    6c 65 2e 6a 70 67 22 20 2d 3e 20 22 2f 70 61 74  | ".with."/path/file.jpg".->."/pat | 
| 8a20 |  68 2f 66 69 6c 65 28 31 29 2e 6a 70 67 22 0a 20    20 20 20 28 69 66 2d 6c 65 74 2a 20 28 28 71 75  | h/file(1).jpg".....(if-let*.((qu | 
| 8a40 |  6f 74 69 6e 67 20 28 64 77 69 6d 2d 73 68 65 6c    6c 2d 63 6f 6d 6d 61 6e 64 2d 2d 65 73 63 61 70  | oting.(dwim-shell-command--escap | 
| 8a60 |  65 64 2d 71 75 6f 74 65 2d 61 72 6f 75 6e 64 20    22 5c 3c 5c 3c 66 28 75 29 5c 3e 5c 3e 22 20 74  | ed-quote-around."\<\<f(u)\>\>".t | 
| 8a80 |  65 6d 70 6c 61 74 65 29 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 28 75 6e 65 73 63 61 70  | emplate))...............(unescap | 
| 8aa0 |  65 64 2d 71 75 6f 74 65 20 28 6e 74 68 20 30 20    71 75 6f 74 69 6e 67 29 29 0a 20 20 20 20 20 20  | ed-quote.(nth.0.quoting))....... | 
| 8ac0 |  20 20 20 20 20 20 20 20 28 65 73 63 61 70 65 64    2d 71 75 6f 74 65 20 28 6e 74 68 20 31 20 71 75  | ........(escaped-quote.(nth.1.qu | 
| 8ae0 |  6f 74 69 6e 67 29 29 29 0a 20 20 20 20 20 20 20    20 28 73 65 74 71 20 74 65 6d 70 6c 61 74 65 20  | oting))).........(setq.template. | 
| 8b00 |  28 72 65 70 6c 61 63 65 2d 72 65 67 65 78 70 2d    69 6e 2d 73 74 72 69 6e 67 20 22 5c 5c 28 5b 5e  | (replace-regexp-in-string."\\([^ | 
| 8b20 |  20 5d 5c 5c 29 5c 5c 28 5c 3c 5c 3c 66 5c 28 75    29 3e 5c 3e 5c 5c 29 5c 5c 28 5b 5e 20 5d 5c 5c  | .]\\)\\(\<\<f\(u)>\>\\)\\([^.]\\ | 
| 8b40 |  29 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  | )".............................. | 
| 8b60 |  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 2d 72 65 70 6c  | ....................(string-repl | 
| 8b80 |  61 63 65 20 75 6e 65 73 63 61 70 65 64 2d 71 75    6f 74 65 20 65 73 63 61 70 65 64 2d 71 75 6f 74  | ace.unescaped-quote.escaped-quot | 
| 8ba0 |  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............................... | 
| 8bc0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 8be0 |  20 20 20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d 63    6f 6d 6d 61 6e 64 2d 2d 75 6e 69 71 75 65 2d 6e  | ...(dwim-shell-command--unique-n | 
| 8c00 |  65 77 2d 66 69 6c 65 2d 70 61 74 68 20 66 69 6c    65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | ew-file-path.file))............. | 
| 8c20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 8c40 |  20 20 20 20 20 74 65 6d 70 6c 61 74 65 20 6e 69    6c 20 6e 69 6c 20 32 29 29 0a 20 20 20 20 20 20  | .....template.nil.nil.2))....... | 
| 8c60 |  28 73 65 74 71 20 74 65 6d 70 6c 61 74 65 20 28    72 65 70 6c 61 63 65 2d 72 65 67 65 78 70 2d 69  | (setq.template.(replace-regexp-i | 
| 8c80 |  6e 2d 73 74 72 69 6e 67 20 22 5c 5c 28 5c 3c 5c    3c 66 28 75 29 5c 3e 5c 3e 5c 5c 29 22 0a 20 20  | n-string."\\(\<\<f(u)\>\>\\)"... | 
| 8ca0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 8cc0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 77    69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64  | .............(dwim-shell-command | 
| 8ce0 |  2d 2d 75 6e 69 71 75 65 2d 6e 65 77 2d 66 69 6c    65 2d 70 61 74 68 20 66 69 6c 65 29 20 74 65 6d  | --unique-new-file-path.file).tem | 
| 8d00 |  70 6c 61 74 65 20 6e 69 6c 20 6e 69 6c 20 31 29    29 29 29 0a 0a 20 20 3b 3b 20 22 3c 3c 73 6f 6d  | plate.nil.nil.1))))....;;."<<som | 
| 8d20 |  65 2e 74 78 74 28 75 29 3e 3e 22 20 2d 3e 20 73    6f 6d 65 2e 74 78 74 20 28 69 66 20 75 6e 69 71  | e.txt(u)>>".->.some.txt.(if.uniq | 
| 8d40 |  75 65 29 0a 20 20 3b 3b 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 2d 3e 20 73 6f  | ue)...;;...................->.so | 
| 8d60 |  6d 65 28 31 29 2e 74 78 74 20 28 69 66 20 69 74    20 65 78 69 73 74 29 0a 20 20 28 77 68 65 6e 2d  | me(1).txt.(if.it.exist)...(when- | 
| 8d80 |  6c 65 74 2a 20 28 28 66 6f 75 6e 64 20 28 73 74    72 69 6e 67 2d 6d 61 74 63 68 20 22 5c 3c 5c 3c  | let*.((found.(string-match."\<\< | 
| 8da0 |  5c 5c 28 5b 5e 20 5d 3f 2b 5c 5c 29 28 75 29 5c    3e 5c 3e 22 20 74 65 6d 70 6c 61 74 65 29 29 0a  | \\([^.]?+\\)(u)\>\>".template)). | 
| 8dc0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e    61 6d 65 20 28 6d 61 74 63 68 2d 73 74 72 69 6e  | ..............(name.(match-strin | 
| 8de0 |  67 20 31 20 74 65 6d 70 6c 61 74 65 29 29 29 0a    20 20 20 20 28 73 65 74 71 20 74 65 6d 70 6c 61  | g.1.template))).....(setq.templa | 
| 8e00 |  74 65 20 28 72 65 70 6c 61 63 65 2d 72 65 67 65    78 70 2d 69 6e 2d 73 74 72 69 6e 67 20 22 5c 3c  | te.(replace-regexp-in-string."\< | 
| 8e20 |  5c 3c 5c 5c 28 5b 5e 20 5d 3f 2b 5c 5c 29 28 75    29 5c 3e 5c 3e 22 0a 20 20 20 20 20 20 20 20 20  | \<\\([^.]?+\\)(u)\>\>".......... | 
| 8e40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 8e60 |  20 20 20 20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d    63 6f 6d 6d 61 6e 64 2d 2d 75 6e 69 71 75 65 2d  | ....(dwim-shell-command--unique- | 
| 8e80 |  6e 65 77 2d 66 69 6c 65 2d 70 61 74 68 20 6e 61    6d 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | new-file-path.name)............. | 
| 8ea0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 8ec0 |  20 74 65 6d 70 6c 61 74 65 20 6e 69 6c 20 6e 69    6c 20 30 29 29 29 0a 0a 20 20 3b 3b 20 22 3c 3c  | .template.nil.nil.0)))....;;."<< | 
| 8ee0 |  7e 3e 3e 22 20 2d 3e 20 22 2f 68 6f 6d 65 2f 75    73 65 72 22 20 28 6f 72 20 65 71 75 69 76 61 6c  | ~>>".->."/home/user".(or.equival | 
| 8f00 |  65 6e 74 29 2e 0a 20 20 28 77 68 65 6e 20 28 73    74 72 69 6e 67 2d 6d 61 74 63 68 20 22 5c 3c 5c  | ent)....(when.(string-match."\<\ | 
| 8f20 |  3c 7e 5c 3e 5c 3e 22 20 74 65 6d 70 6c 61 74 65    29 0a 20 20 20 20 28 73 65 74 71 20 74 65 6d 70  | <~\>\>".template).....(setq.temp | 
| 8f40 |  6c 61 74 65 20 28 72 65 70 6c 61 63 65 2d 72 65    67 65 78 70 2d 69 6e 2d 73 74 72 69 6e 67 20 22  | late.(replace-regexp-in-string." | 
| 8f60 |  5c 3c 5c 3c 7e 5c 3e 5c 3e 22 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | \<\<~\>\>"...................... | 
| 8f80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 28 65 78 70 61 6e 64 2d  | ........................(expand- | 
| 8fa0 |  66 69 6c 65 2d 6e 61 6d 65 20 22 7e 22 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | file-name."~").................. | 
| 8fc0 |  20 20 20 20 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 65 6d 70  | ............................temp | 
| 8fe0 |  6c 61 74 65 20 6e 69 6c 20 6e 69 6c 20 30 29 29    29 0a 0a 20 20 3b 3b 20 22 3c 3c 74 64 3e 3e 22  | late.nil.nil.0)))....;;."<<td>>" | 
| 9000 |  20 77 69 74 68 20 54 45 4d 50 2d 44 49 52 20 2d    3e 20 22 2f 76 61 72 2f 66 6f 6c 64 65 72 73 2f  | .with.TEMP-DIR.->."/var/folders/ | 
| 9020 |  6d 37 2f 6b 79 30 39 31 63 70 35 36 64 35 67 36    38 6e 79 68 6c 34 79 37 66 72 63 30 30 30 30 67  | m7/ky091cp56d5g68nyhl4y7frc0000g | 
| 9040 |  6e 2f 54 2f 64 77 69 6d 2d 73 68 65 6c 6c 2d 63    6f 6d 6d 61 6e 64 2d 4a 4e 4b 34 56 35 22 0a 20  | n/T/dwim-shell-command-JNK4V5".. | 
| 9060 |  20 28 73 65 74 71 20 74 65 6d 70 6c 61 74 65 20    28 72 65 70 6c 61 63 65 2d 72 65 67 65 78 70 2d  | .(setq.template.(replace-regexp- | 
| 9080 |  69 6e 2d 73 74 72 69 6e 67 20 22 5c 5c 28 5c 3c    5c 3c 74 64 5c 3e 5c 3e 5c 5c 29 22 20 74 65 6d  | in-string."\\(\<\<td\>\>\\)".tem | 
| 90a0 |  70 2d 64 69 72 20 74 65 6d 70 6c 61 74 65 20 6e    69 6c 20 6e 69 6c 20 31 29 29 0a 0a 20 20 3b 3b  | p-dir.template.nil.nil.1))....;; | 
| 90c0 |  20 22 3c 3c 63 62 3e 3e 22 20 77 69 74 68 20 28    63 75 72 72 65 6e 74 2d 6b 69 6c 6c 20 30 29 20  | ."<<cb>>".with.(current-kill.0). | 
| 90e0 |  2d 3e 20 22 77 68 61 74 65 76 65 72 20 77 61 73    20 69 6e 20 6b 69 6c 6c 20 72 69 6e 67 22 0a 20  | ->."whatever.was.in.kill.ring".. | 
| 9100 |  20 28 77 68 65 6e 20 28 73 74 72 69 6e 67 2d 6d    61 74 63 68 20 22 5c 3c 5c 3c 63 62 5c 3e 5c 3e  | .(when.(string-match."\<\<cb\>\> | 
| 9120 |  22 20 74 65 6d 70 6c 61 74 65 29 0a 20 20 20 20    28 73 65 74 71 20 74 65 6d 70 6c 61 74 65 20 28  | ".template).....(setq.template.( | 
| 9140 |  72 65 70 6c 61 63 65 2d 72 65 67 65 78 70 2d 69    6e 2d 73 74 72 69 6e 67 20 22 5c 5c 28 5c 3c 5c  | replace-regexp-in-string."\\(\<\ | 
| 9160 |  3c 63 62 5c 3e 5c 3e 5c 5c 29 22 20 28 63 75 72    72 65 6e 74 2d 6b 69 6c 6c 20 30 29 0a 20 20 20  | <cb\>\>\\)".(current-kill.0).... | 
| 9180 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 91a0 |  20 20 20 20 20 20 20 20 20 20 74 65 6d 70 6c 61    74 65 20 6e 69 6c 20 6e 69 6c 20 31 29 29 29 0a  | ..........template.nil.nil.1))). | 
| 91c0 |  0a 20 20 3b 3b 20 22 3c 3c 6e 3e 3e 22 20 6f 72    20 22 3c 3c 61 6e 3e 22 20 6f 72 20 22 3c 3c 31  | ...;;."<<n>>".or."<<an>".or."<<1 | 
| 91e0 |  6e 3e 22 20 77 69 74 68 20 63 75 72 72 65 6e 74    2e 0a 20 20 28 73 65 74 71 20 74 65 6d 70 6c 61  | n>".with.current....(setq.templa | 
| 9200 |  74 65 20 28 72 65 70 6c 61 63 65 2d 72 65 67 65    78 70 2d 69 6e 2d 73 74 72 69 6e 67 20 22 5c 5c  | te.(replace-regexp-in-string."\\ | 
| 9220 |  28 5c 3c 5c 3c 5b 5b 3a 61 6c 6e 75 6d 3a 5d 5d    3f 2b 6e 5c 3e 5c 3e 5c 5c 29 22 20 63 75 72 72  | (\<\<[[:alnum:]]?+n\>\>\\)".curr | 
| 9240 |  65 6e 74 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ent............................. | 
| 9260 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74    65 6d 70 6c 61 74 65 20 6e 69 6c 20 6e 69 6c 20  | ...............template.nil.nil. | 
| 9280 |  31 29 29 0a 0a 20 20 28 77 68 65 6e 20 70 6f 73    74 2d 70 72 6f 63 65 73 73 2d 74 65 6d 70 6c 61  | 1))....(when.post-process-templa | 
| 92a0 |  74 65 0a 20 20 20 20 28 73 65 74 71 20 74 65 6d    70 6c 61 74 65 20 28 66 75 6e 63 61 6c 6c 20 70  | te.....(setq.template.(funcall.p | 
| 92c0 |  6f 73 74 2d 70 72 6f 63 65 73 73 2d 74 65 6d 70    6c 61 74 65 20 74 65 6d 70 6c 61 74 65 20 66 69  | ost-process-template.template.fi | 
| 92e0 |  6c 65 29 29 29 0a 20 20 74 65 6d 70 6c 61 74 65    29 0a 0a 28 64 65 66 75 6e 20 64 77 69 6d 2d 73  | le)))...template)..(defun.dwim-s | 
| 9300 |  68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 2d 63 6f    6e 74 61 69 6e 73 2d 73 69 6e 67 6c 65 2d 66 69  | hell-command--contains-single-fi | 
| 9320 |  6c 65 2d 72 65 66 20 28 74 65 6d 70 6c 61 74 65    29 0a 20 20 22 43 68 65 63 6b 20 66 6f 72 20 3c  | le-ref.(template)..."Check.for.< | 
| 9340 |  3c 66 3e 3e 2c 20 3c 3c 66 6e 65 3e 3e 2c 20 6f    72 20 3c 3c 65 3e 3e 20 69 6e 20 54 45 4d 50 4c  | <f>>,.<<fne>>,.or.<<e>>.in.TEMPL | 
| 9360 |  41 54 45 2e 22 0a 20 20 28 63 6f 6e 64 20 28 28    73 74 72 69 6e 67 2d 6d 61 74 63 68 20 22 5c 3c  | ATE."...(cond.((string-match."\< | 
| 9380 |  5c 3c 66 5c 3e 5c 3e 22 20 74 65 6d 70 6c 61 74    65 29 0a 20 20 20 20 20 20 20 20 20 22 3c 3c 66  | \<f\>\>".template).........."<<f | 
| 93a0 |  3e 3e 22 29 0a 20 20 20 20 20 20 20 20 28 28 73    74 72 69 6e 67 2d 6d 61 74 63 68 20 22 5c 3c 5c  | >>").........((string-match."\<\ | 
| 93c0 |  3c 66 6e 65 5c 3e 5c 3e 22 20 74 65 6d 70 6c 61    74 65 29 0a 20 20 20 20 20 20 20 20 20 22 3c 3c  | <fne\>\>".template).........."<< | 
| 93e0 |  66 6e 65 3e 3e 22 29 0a 20 20 20 20 20 20 20 20    28 28 73 74 72 69 6e 67 2d 6d 61 74 63 68 20 22  | fne>>").........((string-match." | 
| 9400 |  5c 3c 5c 3c 62 5c 3e 5c 3e 22 20 74 65 6d 70 6c    61 74 65 29 0a 20 20 20 20 20 20 20 20 20 22 3c  | \<\<b\>\>".template).........."< | 
| 9420 |  3c 62 3e 3e 22 29 0a 20 20 20 20 20 20 20 20 28    28 73 74 72 69 6e 67 2d 6d 61 74 63 68 20 22 5c  | <b>>").........((string-match."\ | 
| 9440 |  3c 5c 3c 62 6e 65 5c 3e 5c 3e 22 20 74 65 6d 70    6c 61 74 65 29 0a 20 20 20 20 20 20 20 20 20 22  | <\<bne\>\>".template).........." | 
| 9460 |  3c 3c 62 6e 65 3e 3e 22 29 0a 20 20 20 20 20 20    20 20 28 28 73 74 72 69 6e 67 2d 6d 61 74 63 68  | <<bne>>").........((string-match | 
| 9480 |  20 22 5c 3c 5c 3c 65 5c 3e 5c 3e 22 20 74 65 6d    70 6c 61 74 65 29 0a 20 20 20 20 20 20 20 20 20  | ."\<\<e\>\>".template).......... | 
| 94a0 |  22 3c 3c 65 3e 3e 22 29 29 29 0a 0a 28 64 65 66    75 6e 20 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f  | "<<e>>")))..(defun.dwim-shell-co | 
| 94c0 |  6d 6d 61 6e 64 2d 2d 63 6f 6e 74 61 69 6e 73 2d    6d 75 6c 74 69 2d 66 69 6c 65 2d 72 65 66 20 28  | mmand--contains-multi-file-ref.( | 
| 94e0 |  74 65 6d 70 6c 61 74 65 29 0a 20 20 22 43 68 65    63 6b 20 66 6f 72 20 3c 3c 2a 3e 3e 20 69 6e 20  | template)..."Check.for.<<*>>.in. | 
| 9500 |  54 45 4d 50 4c 41 54 45 2e 22 0a 20 20 28 77 68    65 6e 20 28 73 74 72 69 6e 67 2d 6d 61 74 63 68  | TEMPLATE."...(when.(string-match | 
| 9520 |  20 22 5c 3c 5c 3c 5c 5c 2a 5c 3e 5c 3e 22 20 74    65 6d 70 6c 61 74 65 29 0a 20 20 20 20 22 3c 3c  | ."\<\<\\*\>\>".template)....."<< | 
| 9540 |  2a 3e 3e 22 29 29 0a 0a 28 64 65 66 75 6e 20 64    77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e  | *>>"))..(defun.dwim-shell-comman | 
| 9560 |  64 2d 2d 64 65 66 61 75 6c 74 2d 64 69 72 65 63    74 6f 72 79 2d 66 69 6c 65 73 20 28 6f 76 65 72  | d--default-directory-files.(over | 
| 9580 |  72 69 64 65 29 0a 20 20 22 4c 69 73 74 20 6f 66    20 66 69 6c 65 73 20 69 6e 20 63 75 72 72 65 6e  | ride)..."List.of.files.in.curren | 
| 95a0 |  74 20 62 75 66 66 65 72 27 73 20 60 64 65 66 61    75 6c 74 2d 64 69 72 65 63 74 6f 72 79 27 2e 0a  | t.buffer's.`default-directory'.. | 
| 95c0 |  55 73 65 20 4f 56 45 52 52 49 44 45 20 74 6f 20    6f 76 65 72 72 69 64 65 20 60 64 65 66 61 75 6c  | Use.OVERRIDE.to.override.`defaul | 
| 95e0 |  74 2d 64 69 72 65 63 74 6f 72 79 27 2e 22 0a 20    20 28 77 68 65 6e 2d 6c 65 74 20 28 28 64 65 66  | t-directory'."...(when-let.((def | 
| 9600 |  61 75 6c 74 2d 64 69 72 65 63 74 6f 72 79 20 28    6f 72 20 6f 76 65 72 72 69 64 65 20 64 65 66 61  | ault-directory.(or.override.defa | 
| 9620 |  75 6c 74 2d 64 69 72 65 63 74 6f 72 79 29 29 29    0a 20 20 20 20 28 73 65 71 2d 6d 61 70 20 28 6c  | ult-directory))).....(seq-map.(l | 
| 9640 |  61 6d 62 64 61 20 28 66 69 6c 65 6e 61 6d 65 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ambda.(filename)................ | 
| 9660 |  28 66 69 6c 65 2d 6e 61 6d 65 2d 63 6f 6e 63 61    74 20 64 65 66 61 75 6c 74 2d 64 69 72 65 63 74  | (file-name-concat.default-direct | 
| 9680 |  6f 72 79 20 66 69 6c 65 6e 61 6d 65 29 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 28 63 6c 2d  | ory.filename))..............(cl- | 
| 96a0 |  72 65 6d 6f 76 65 2d 69 66 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20  | remove-if...............(lambda. | 
| 96c0 |  28 65 29 20 28 6d 65 6d 62 65 72 20 65 20 27 28    22 2e 22 20 22 2e 2e 22 29 29 29 0a 20 20 20 20  | (e).(member.e.'("."."..")))..... | 
| 96e0 |  20 20 20 20 20 20 20 20 20 20 28 64 69 72 65 63    74 6f 72 79 2d 66 69 6c 65 73 20 64 65 66 61 75  | ..........(directory-files.defau | 
| 9700 |  6c 74 2d 64 69 72 65 63 74 6f 72 79 29 29 29 29    29 0a 0a 28 64 65 66 75 6e 20 64 77 69 6d 2d 73  | lt-directory)))))..(defun.dwim-s | 
| 9720 |  68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 2d 6c 61    73 74 2d 6d 6f 64 69 66 69 65 64 2d 62 65 74 77  | hell-command--last-modified-betw | 
| 9740 |  65 65 6e 20 28 62 65 66 6f 72 65 20 61 66 74 65    72 29 0a 20 20 22 43 6f 6d 70 61 72 65 20 66 69  | een.(before.after)..."Compare.fi | 
| 9760 |  6c 65 73 20 69 6e 20 42 45 46 4f 52 45 20 61 6e    64 20 41 46 54 45 52 20 61 6e 64 20 72 65 74 75  | les.in.BEFORE.and.AFTER.and.retu | 
| 9780 |  72 6e 20 6f 6c 64 65 73 74 20 66 69 6c 65 20 69    6e 20 64 69 66 66 2e 22 0a 20 20 28 63 61 72 20  | rn.oldest.file.in.diff."...(car. | 
| 97a0 |  28 6c 61 73 74 20 28 73 65 71 2d 73 6f 72 74 20    23 27 66 69 6c 65 2d 6e 65 77 65 72 2d 74 68 61  | (last.(seq-sort.#'file-newer-tha | 
| 97c0 |  6e 2d 66 69 6c 65 2d 70 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | n-file-p........................ | 
| 97e0 |  28 73 65 71 2d 64 69 66 66 65 72 65 6e 63 65 20    61 66 74 65 72 20 62 65 66 6f 72 65 29 29 29 29  | (seq-difference.after.before)))) | 
| 9800 |  29 0a 0a 28 64 65 66 75 6e 20 64 77 69 6d 2d 73    68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 2d 66 69  | )..(defun.dwim-shell-command--fi | 
| 9820 |  6e 61 6c 69 7a 65 20 28 63 61 6c 6c 69 6e 67 2d    62 75 66 66 65 72 20 66 69 6c 65 73 2d 62 65 66  | nalize.(calling-buffer.files-bef | 
| 9840 |  6f 72 65 20 70 72 6f 63 65 73 73 20 70 72 6f 67    72 65 73 73 2d 72 65 70 6f 72 74 65 72 20 6f 6e  | ore.process.progress-reporter.on | 
| 9860 |  2d 63 6f 6d 70 6c 65 74 69 6f 6e 20 73 69 6c 65    6e 74 2d 73 75 63 63 65 73 73 20 65 72 72 6f 72  | -completion.silent-success.error | 
| 9880 |  2d 61 75 74 6f 66 6f 63 75 73 20 6d 6f 6e 69 74    6f 72 2d 64 69 72 65 63 74 6f 72 79 29 0a 20 20  | -autofocus.monitor-directory)... | 
| 98a0 |  22 46 69 6e 61 6c 69 7a 65 20 73 63 72 69 70 74    20 65 78 65 63 75 74 69 6f 6e 2e 0a 0a 43 41 4c  | "Finalize.script.execution...CAL | 
| 98c0 |  4c 49 4e 47 2d 42 55 46 46 45 52 2c 20 46 49 4c    45 53 2d 42 45 46 4f 52 45 2c 20 50 52 4f 43 45  | LING-BUFFER,.FILES-BEFORE,.PROCE | 
| 98e0 |  53 53 2c 20 50 52 4f 47 52 45 53 53 2d 52 45 50    4f 52 54 45 52 2c 0a 45 52 52 4f 52 2d 41 55 54  | SS,.PROGRESS-REPORTER,.ERROR-AUT | 
| 9900 |  4f 46 4f 43 55 53 2c 20 4f 4e 2d 43 4f 4d 50 4c    45 54 49 4f 4e 2c 20 53 49 4c 45 4e 54 2d 53 55  | OFOCUS,.ON-COMPLETION,.SILENT-SU | 
| 9920 |  43 43 45 53 53 2c 20 61 6e 64 20 4d 4f 4e 49 54    4f 52 2d 44 49 52 45 43 54 4f 52 59 20 61 72 65  | CCESS,.and.MONITOR-DIRECTORY.are | 
| 9940 |  0a 61 6c 6c 20 6e 65 65 64 65 64 20 74 6f 20 66    69 6e 61 6c 69 7a 65 20 70 72 6f 63 65 73 73 69  | .all.needed.to.finalize.processi | 
| 9960 |  6e 67 2e 22 0a 20 20 28 6c 65 74 20 28 28 6f 6c    64 65 73 74 2d 6e 65 77 2d 66 69 6c 65 29 0a 20  | ng."...(let.((oldest-new-file).. | 
| 9980 |  20 20 20 20 20 20 20 28 66 69 6c 65 73 2d 61 66    74 65 72 29 29 0a 20 20 20 20 28 77 68 65 6e 20  | .......(files-after)).....(when. | 
| 99a0 |  70 72 6f 67 72 65 73 73 2d 72 65 70 6f 72 74 65    72 0a 20 20 20 20 20 20 28 70 72 6f 67 72 65 73  | progress-reporter.......(progres | 
| 99c0 |  73 2d 72 65 70 6f 72 74 65 72 2d 64 6f 6e 65 20    70 72 6f 67 72 65 73 73 2d 72 65 70 6f 72 74 65  | s-reporter-done.progress-reporte | 
| 99e0 |  72 29 29 0a 20 20 20 20 28 69 66 20 28 3d 20 28    70 72 6f 63 65 73 73 2d 65 78 69 74 2d 73 74 61  | r)).....(if.(=.(process-exit-sta | 
| 9a00 |  74 75 73 20 70 72 6f 63 65 73 73 29 20 30 29 0a    20 20 20 20 20 20 20 20 28 70 72 6f 67 6e 0a 20  | tus.process).0).........(progn.. | 
| 9a20 |  20 20 20 20 20 20 20 20 20 28 64 77 69 6d 2d 73    68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 2d 6d 65  | .........(dwim-shell-command--me | 
| 9a40 |  73 73 61 67 65 20 28 66 75 6e 63 61 6c 6c 20 64    77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e  | ssage.(funcall.dwim-shell-comman | 
| 9a60 |  64 2d 64 6f 6e 65 2d 62 75 66 66 65 72 2d 6e 61    6d 65 20 28 70 72 6f 63 65 73 73 2d 6e 61 6d 65  | d-done-buffer-name.(process-name | 
| 9a80 |  20 70 72 6f 63 65 73 73 29 29 29 0a 20 20 20 20    20 20 20 20 20 20 28 77 69 74 68 2d 63 75 72 72  | .process)))...........(with-curr | 
| 9aa0 |  65 6e 74 2d 62 75 66 66 65 72 20 28 70 72 6f 63    65 73 73 2d 62 75 66 66 65 72 20 70 72 6f 63 65  | ent-buffer.(process-buffer.proce | 
| 9ac0 |  73 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    28 72 65 6e 61 6d 65 2d 62 75 66 66 65 72 20 28  | ss).............(rename-buffer.( | 
| 9ae0 |  67 65 6e 65 72 61 74 65 2d 6e 65 77 2d 62 75 66    66 65 72 2d 6e 61 6d 65 20 28 66 75 6e 63 61 6c  | generate-new-buffer-name.(funcal | 
| 9b00 |  6c 20 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d    6d 61 6e 64 2d 64 6f 6e 65 2d 62 75 66 66 65 72  | l.dwim-shell-command-done-buffer | 
| 9b20 |  2d 6e 61 6d 65 20 28 70 72 6f 63 65 73 73 2d 6e    61 6d 65 20 70 72 6f 63 65 73 73 29 29 29 29 29  | -name.(process-name.process))))) | 
| 9b40 |  0a 20 20 20 20 20 20 20 20 20 20 28 69 66 20 6f    6e 2d 63 6f 6d 70 6c 65 74 69 6f 6e 0a 20 20 20  | ...........(if.on-completion.... | 
| 9b60 |  20 20 20 20 20 20 20 20 20 20 20 28 66 75 6e 63    61 6c 6c 20 6f 6e 2d 63 6f 6d 70 6c 65 74 69 6f  | ...........(funcall.on-completio | 
| 9b80 |  6e 20 28 70 72 6f 63 65 73 73 2d 62 75 66 66 65    72 20 70 72 6f 63 65 73 73 29 20 70 72 6f 63 65  | n.(process-buffer.process).proce | 
| 9ba0 |  73 73 29 0a 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  | ss).............(with-current-bu | 
| 9bc0 |  66 66 65 72 20 63 61 6c 6c 69 6e 67 2d 62 75 66    66 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20  | ffer.calling-buffer............. | 
| 9be0 |  20 20 28 69 66 20 28 65 71 75 61 6c 20 6d 61 6a    6f 72 2d 6d 6f 64 65 20 27 64 69 72 65 64 2d 6d  | ..(if.(equal.major-mode.'dired-m | 
| 9c00 |  6f 64 65 29 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 28 70 72 6f 67 6e 20 28 77  | ode)...................(progn.(w | 
| 9c20 |  68 65 6e 20 72 65 76 65 72 74 2d 62 75 66 66 65    72 2d 66 75 6e 63 74 69 6f 6e 0a 20 20 20 20 20  | hen.revert-buffer-function...... | 
| 9c40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 72  | ......................(funcall.r | 
| 9c60 |  65 76 65 72 74 2d 62 75 66 66 65 72 2d 66 75 6e    63 74 69 6f 6e 20 6e 69 6c 20 74 29 29 0a 20 20  | evert-buffer-function.nil.t))... | 
| 9c80 |  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 52 65 67 69 6f 6e  | .......................;;.Region | 
| 9ca0 |  20 69 73 20 6e 6f 74 20 61 63 63 75 72 61 74 65    20 69 66 20 6e 65 77 20 66 69 6c 65 73 20 61 64  | .is.not.accurate.if.new.files.ad | 
| 9cc0 |  64 65 64 2e 20 57 69 70 65 20 69 74 2e 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ded..Wipe.it.................... | 
| 9ce0 |  20 20 20 20 20 20 20 28 77 68 65 6e 20 28 75 73    65 2d 72 65 67 69 6f 6e 2d 70 29 0a 20 20 20 20  | .......(when.(use-region-p)..... | 
| 9d00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 28 64 65 61 63 74 69 76 61  | .......................(deactiva | 
| 9d20 |  74 65 2d 6d 61 72 6b 29 29 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e  | te-mark))).................(when | 
| 9d40 |  20 28 61 6e 64 20 28 6f 72 20 62 75 66 66 65 72    2d 61 75 74 6f 2d 73 61 76 65 2d 66 69 6c 65 2d  | .(and.(or.buffer-auto-save-file- | 
| 9d60 |  6e 61 6d 65 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | name............................ | 
| 9d80 |  20 20 20 20 62 75 66 66 65 72 2d 66 69 6c 65 2d    6e 61 6d 65 29 0a 20 20 20 20 20 20 20 20 20 20  | ....buffer-file-name)........... | 
| 9da0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 6e 6f 74 20 28 76 65 72 69 66 79 2d 76 69  | .................(not.(verify-vi | 
| 9dc0 |  73 69 74 65 64 2d 66 69 6c 65 2d 6d 6f 64 74 69    6d 65 29 29 29 0a 20 20 20 20 20 20 20 20 20 20  | sited-file-modtime)))........... | 
| 9de0 |  20 20 20 20 20 20 20 20 3b 3b 20 41 6c 72 65 61    64 79 20 76 69 73 69 74 69 6e 67 20 61 20 66 69  | ........;;.Already.visiting.a.fi | 
| 9e00 |  6c 65 2e 20 52 65 76 65 72 74 20 69 66 20 6d 6f    64 69 66 69 65 64 20 62 79 20 63 6f 6d 6d 61 6e  | le..Revert.if.modified.by.comman | 
| 9e20 |  64 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 72 65 76 65 72 74 2d 62 75 66  | d....................(revert-buf | 
| 9e40 |  66 65 72 20 3a 69 67 6e 6f 72 65 2d 61 75 74 6f    20 3a 6e 6f 63 6f 6e 66 69 72 6d 29 29 29 0a 20  | fer.:ignore-auto.:noconfirm))).. | 
| 9e60 |  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 66 66 65  | .............(with-current-buffe | 
| 9e80 |  72 20 28 70 72 6f 63 65 73 73 2d 62 75 66 66 65    72 20 70 72 6f 63 65 73 73 29 0a 20 20 20 20 20  | r.(process-buffer.process)...... | 
| 9ea0 |  20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71    20 66 69 6c 65 73 2d 61 66 74 65 72 20 28 64 77  | ...........(setq.files-after.(dw | 
| 9ec0 |  69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64    2d 2d 64 65 66 61 75 6c 74 2d 64 69 72 65 63 74  | im-shell-command--default-direct | 
| 9ee0 |  6f 72 79 2d 66 69 6c 65 73 20 6d 6f 6e 69 74 6f    72 2d 64 69 72 65 63 74 6f 72 79 29 29 29 0a 20  | ory-files.monitor-directory))).. | 
| 9f00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65    74 71 20 6f 6c 64 65 73 74 2d 6e 65 77 2d 66 69  | .............(setq.oldest-new-fi | 
| 9f20 |  6c 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 28 64 77 69 6d 2d 73 68 65  | le.....................(dwim-she | 
| 9f40 |  6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 2d 6c 61 73 74    2d 6d 6f 64 69 66 69 65 64 2d 62 65 74 77 65 65  | ll-command--last-modified-betwee | 
| 9f60 |  6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 66 69 6c 65 73 2d 62 65 66  | n......................files-bef | 
| 9f80 |  6f 72 65 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 66 69 6c 65 73 2d 61  | ore......................files-a | 
| 9fa0 |  66 74 65 72 29 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 3b 3b 20 54 68 65 72 65 27 73 20  | fter))...............;;.There's. | 
| 9fc0 |  61 74 20 6c 65 61 73 74 20 6f 6e 65 20 6e 65 77    20 66 69 6c 65 2e 20 53 68 6f 77 20 74 68 61 74  | at.least.one.new.file..Show.that | 
| 9fe0 |  2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 69 66 20 6f 6c 64 65 73 74 2d 6e 65 77 2d 66  | ................(if.oldest-new-f | 
| a000 |  69 6c 65 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 64 69 72 65 64 2d 6a 75 6d  | ile...................(dired-jum | 
| a020 |  70 20 6e 69 6c 20 6f 6c 64 65 73 74 2d 6e 65 77    2d 66 69 6c 65 29 0a 20 20 20 20 20 20 20 20 20  | p.nil.oldest-new-file).......... | 
| a040 |  20 20 20 20 20 20 20 3b 3b 20 46 69 6c 65 73 20    6d 61 79 20 68 61 76 65 20 62 65 65 6e 20 64 65  | .......;;.Files.may.have.been.de | 
| a060 |  6c 65 74 65 64 20 62 75 74 20 68 61 72 64 65 72    20 74 6f 20 74 72 61 63 6b 2e 0a 20 20 20 20 20  | leted.but.harder.to.track....... | 
| a080 |  20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 4f 70    65 6e 20 64 69 72 65 64 20 61 6e 64 20 72 65 66  | ...........;;.Open.dired.and.ref | 
| a0a0 |  72 65 73 68 20 74 6f 20 73 68 6f 77 20 66 69 6c    65 73 20 61 72 65 20 67 6f 6e 65 2e 0a 20 20 20  | resh.to.show.files.are.gone..... | 
| a0c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 75 6e    6c 65 73 73 20 28 65 71 75 61 6c 20 28 6c 65 6e  | .............(unless.(equal.(len | 
| a0e0 |  67 74 68 20 66 69 6c 65 73 2d 61 66 74 65 72 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | gth.files-after)................ | 
| a100 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 6c 65 6e 67 74 68 20 66 69 6c 65 73 2d 62 65  | ................(length.files-be | 
| a120 |  66 6f 72 65 29 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 28 64 69 72 65 64 20  | fore))...................(dired. | 
| a140 |  6d 6f 6e 69 74 6f 72 2d 64 69 72 65 63 74 6f 72    79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | monitor-directory).............. | 
| a160 |  20 20 20 20 20 28 77 68 65 6e 20 72 65 76 65 72    74 2d 62 75 66 66 65 72 2d 66 75 6e 63 74 69 6f  | .....(when.revert-buffer-functio | 
| a180 |  6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 66 75 6e 63 61 6c 6c 20 72  | n.....................(funcall.r | 
| a1a0 |  65 76 65 72 74 2d 62 75 66 66 65 72 2d 66 75 6e    63 74 69 6f 6e 20 6e 69 6c 20 74 29 29 29 29 29  | evert-buffer-function.nil.t))))) | 
| a1c0 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 28 75 6e    6c 65 73 73 20 28 65 71 75 61 6c 20 28 70 72 6f  | .............(unless.(equal.(pro | 
| a1e0 |  63 65 73 73 2d 62 75 66 66 65 72 20 70 72 6f 63    65 73 73 29 0a 20 20 20 20 20 20 20 20 20 20 20  | cess-buffer.process)............ | 
| a200 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 77 69 6e 64 6f 77 2d 62 75 66 66 65 72 20 28  | ................(window-buffer.( | 
| a220 |  73 65 6c 65 63 74 65 64 2d 77 69 6e 64 6f 77 29    29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | selected-window))).............. | 
| a240 |  20 28 69 66 20 28 6f 72 20 6f 6c 64 65 73 74 2d    6e 65 77 2d 66 69 6c 65 20 73 69 6c 65 6e 74 2d  | .(if.(or.oldest-new-file.silent- | 
| a260 |  73 75 63 63 65 73 73 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 6b 69 6c 6c  | success)...................(kill | 
| a280 |  2d 62 75 66 66 65 72 20 28 70 72 6f 63 65 73 73    2d 62 75 66 66 65 72 20 70 72 6f 63 65 73 73 29  | -buffer.(process-buffer.process) | 
| a2a0 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 75 6e 6c 65 73 73 20 73 69 6c 65 6e 74  | ).................(unless.silent | 
| a2c0 |  2d 73 75 63 63 65 73 73 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 73 77 69 74  | -success...................(swit | 
| a2e0 |  63 68 2d 74 6f 2d 62 75 66 66 65 72 20 28 70 72    6f 63 65 73 73 2d 62 75 66 66 65 72 20 70 72 6f  | ch-to-buffer.(process-buffer.pro | 
| a300 |  63 65 73 73 29 29 29 29 29 29 29 0a 20 20 20 20    20 20 28 69 66 20 6f 6e 2d 63 6f 6d 70 6c 65 74  | cess))))))).......(if.on-complet | 
| a320 |  69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 28 66    75 6e 63 61 6c 6c 20 6f 6e 2d 63 6f 6d 70 6c 65  | ion...........(funcall.on-comple | 
| a340 |  74 69 6f 6e 20 28 70 72 6f 63 65 73 73 2d 62 75    66 66 65 72 20 70 72 6f 63 65 73 73 29 20 70 72  | tion.(process-buffer.process).pr | 
| a360 |  6f 63 65 73 73 29 0a 20 20 20 20 20 20 20 20 28    69 66 20 28 61 6e 64 20 28 62 75 66 66 65 72 2d  | ocess).........(if.(and.(buffer- | 
| a380 |  6e 61 6d 65 20 28 70 72 6f 63 65 73 73 2d 62 75    66 66 65 72 20 70 72 6f 63 65 73 73 29 29 0a 20  | name.(process-buffer.process)).. | 
| a3a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 6f 72 20 65 72 72 6f 72 2d 61 75 74 6f 66 6f  | ................(or.error-autofo | 
| a3c0 |  63 75 73 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 3b 3b 20 42 75 66 66  | cus......................;;.Buff | 
| a3e0 |  65 72 20 61 6c 72 65 61 64 79 20 73 65 6c 65 63    74 65 64 2e 20 44 6f 6e 27 74 20 61 73 6b 2e 0a  | er.already.selected..Don't.ask.. | 
| a400 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 65 71 75 61 6c 20 28 70 72 6f  | .....................(equal.(pro | 
| a420 |  63 65 73 73 2d 62 75 66 66 65 72 20 70 72 6f 63    65 73 73 29 0a 20 20 20 20 20 20 20 20 20 20 20  | cess-buffer.process)............ | 
| a440 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 77 69 6e 64 6f 77 2d 62 75 66 66 65 72 20  | .................(window-buffer. | 
| a460 |  28 73 65 6c 65 63 74 65 64 2d 77 69 6e 64 6f 77    29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | (selected-window)))............. | 
| a480 |  20 20 20 20 20 20 20 20 20 28 69 67 6e 6f 72 65    2d 65 72 72 6f 72 20 71 75 69 74 0a 20 20 20 20  | .........(ignore-error.quit..... | 
| a4a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 79 2d 6f 72 2d 6e 2d 70 20 28 66 6f  | ...................(y-or-n-p.(fo | 
| a4c0 |  72 6d 61 74 20 22 25 73 20 65 72 72 6f 72 2c 20    73 65 65 20 6f 75 74 70 75 74 3f 20 22 0a 20 20  | rmat."%s.error,.see.output?."... | 
| a4e0 |  20 20 20 20 20 20 20 20 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 28 62 75 66 66 65 72 2d 6e    61 6d 65 20 28 70 72 6f 63 65 73 73 2d 62 75 66  | .......(buffer-name.(process-buf | 
| a520 |  66 65 72 20 70 72 6f 63 65 73 73 29 29 29 29 29    29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28  | fer.process))))))).............( | 
| a540 |  70 72 6f 67 6e 0a 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  | progn...............(with-curren | 
| a560 |  74 2d 62 75 66 66 65 72 20 28 70 72 6f 63 65 73    73 2d 62 75 66 66 65 72 20 70 72 6f 63 65 73 73  | t-buffer.(process-buffer.process | 
| a580 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 72 65 6e 61 6d 65 2d 62 75 66 66 65 72  | ).................(rename-buffer | 
| a5a0 |  20 28 67 65 6e 65 72 61 74 65 2d 6e 65 77 2d 62    75 66 66 65 72 2d 6e 61 6d 65 20 28 66 75 6e 63  | .(generate-new-buffer-name.(func | 
| a5c0 |  61 6c 6c 20 64 77 69 6d 2d 73 68 65 6c 6c 2d 63    6f 6d 6d 61 6e 64 2d 65 72 72 6f 72 2d 62 75 66  | all.dwim-shell-command-error-buf | 
| a5e0 |  66 65 72 2d 6e 61 6d 65 20 28 70 72 6f 63 65 73    73 2d 6e 61 6d 65 20 70 72 6f 63 65 73 73 29 29  | fer-name.(process-name.process)) | 
| a600 |  29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 77 68 65 6e 20 28 6f 72 20 65 72 72 6f  | )))...............(when.(or.erro | 
| a620 |  72 2d 61 75 74 6f 66 6f 63 75 73 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | r-autofocus..................... | 
| a640 |  20 20 20 20 28 65 71 75 61 6c 20 28 70 72 6f 63    65 73 73 2d 62 75 66 66 65 72 20 70 72 6f 63 65  | ....(equal.(process-buffer.proce | 
| a660 |  73 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  | ss)............................. | 
| a680 |  20 20 20 28 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  | ...(window-buffer.(selected-wind | 
| a6a0 |  6f 77 29 29 29 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 28 64 77 69 6d 2d 73 68 65  | ow)))).................(dwim-she | 
| a6c0 |  6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 2d 6d 65 73 73    61 67 65 20 28 66 75 6e 63 61 6c 6c 20 64 77 69  | ll-command--message.(funcall.dwi | 
| a6e0 |  6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d    65 72 72 6f 72 2d 62 75 66 66 65 72 2d 6e 61 6d  | m-shell-command-error-buffer-nam | 
| a700 |  65 20 28 70 72 6f 63 65 73 73 2d 6e 61 6d 65 20    70 72 6f 63 65 73 73 29 29 29 29 0a 20 20 20 20  | e.(process-name.process))))..... | 
| a720 |  20 20 20 20 20 20 20 20 20 20 28 73 77 69 74 63    68 2d 74 6f 2d 62 75 66 66 65 72 20 28 70 72 6f  | ..........(switch-to-buffer.(pro | 
| a740 |  63 65 73 73 2d 62 75 66 66 65 72 20 70 72 6f 63    65 73 73 29 29 29 0a 20 20 20 20 20 20 20 20 20  | cess-buffer.process))).......... | 
| a760 |  20 28 6b 69 6c 6c 2d 62 75 66 66 65 72 20 28 70    72 6f 63 65 73 73 2d 62 75 66 66 65 72 20 70 72  | .(kill-buffer.(process-buffer.pr | 
| a780 |  6f 63 65 73 73 29 29 29 29 29 0a 20 20 20 20 28    73 65 74 71 20 64 77 69 6d 2d 73 68 65 6c 6c 2d  | ocess))))).....(setq.dwim-shell- | 
| a7a0 |  63 6f 6d 6d 61 6e 64 2d 2d 63 6f 6d 6d 61 6e 64    73 0a 20 20 20 20 20 20 20 20 20 20 28 6d 61 70  | command--commands...........(map | 
| a7c0 |  2d 64 65 6c 65 74 65 20 64 77 69 6d 2d 73 68 65    6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 2d 63 6f 6d 6d  | -delete.dwim-shell-command--comm | 
| a7e0 |  61 6e 64 73 20 28 70 72 6f 63 65 73 73 2d 6e 61    6d 65 20 70 72 6f 63 65 73 73 29 29 29 29 29 0a  | ands.(process-name.process))))). | 
| a800 |  0a 28 64 65 66 75 6e 20 64 77 69 6d 2d 73 68 65    6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 2d 75 6e 69 71  | .(defun.dwim-shell-command--uniq | 
| a820 |  75 65 2d 6e 65 77 2d 66 69 6c 65 2d 70 61 74 68    20 28 66 69 6c 65 2d 70 61 74 68 29 0a 20 20 22  | ue-new-file-path.(file-path)..." | 
| a840 |  52 65 74 75 72 6e 20 61 20 75 6e 69 71 75 65 20    46 49 4c 45 2d 50 41 54 48 2e 0a 0a 49 66 20 46  | Return.a.unique.FILE-PATH...If.F | 
| a860 |  49 4c 45 2d 50 41 54 48 20 61 6c 72 65 61 64 79    20 63 6f 6e 74 61 69 6e 73 20 61 20 6e 75 6d 62  | ILE-PATH.already.contains.a.numb | 
| a880 |  65 72 20 69 6e 20 74 68 65 20 66 6f 72 6d 61 74    20 28 6e 29 2c 20 73 65 74 20 63 6f 75 6e 74 65  | er.in.the.format.(n),.set.counte | 
| a8a0 |  72 20 74 6f 20 6e 2e 0a 0a 5c 22 2f 74 6d 70 2f    62 6c 61 68 2e 74 78 74 5c 22 20 2d 3e 20 5c 22  | r.to.n...\"/tmp/blah.txt\".->.\" | 
| a8c0 |  2f 74 6d 70 2f 62 6c 61 68 28 31 29 2e 74 78 74    5c 22 0a 5c 22 2f 74 6d 70 2f 62 6c 61 68 28 32  | /tmp/blah(1).txt\".\"/tmp/blah(2 | 
| a8e0 |  29 2e 74 78 74 5c 22 20 2d 3e 20 5c 22 2f 74 6d    70 2f 62 6c 61 68 28 33 29 2e 74 78 74 5c 22 22  | ).txt\".->.\"/tmp/blah(3).txt\"" | 
| a900 |  0a 20 20 28 6c 65 74 2a 20 28 28 6e 61 6d 65 20    28 66 69 6c 65 2d 6e 61 6d 65 2d 73 61 6e 73 2d  | ...(let*.((name.(file-name-sans- | 
| a920 |  65 78 74 65 6e 73 69 6f 6e 20 66 69 6c 65 2d 70    61 74 68 29 29 0a 20 20 20 20 20 20 20 20 20 28  | extension.file-path))..........( | 
| a940 |  65 78 74 65 6e 73 69 6f 6e 20 28 66 69 6c 65 2d    6e 61 6d 65 2d 65 78 74 65 6e 73 69 6f 6e 20 66  | extension.(file-name-extension.f | 
| a960 |  69 6c 65 2d 70 61 74 68 29 29 0a 20 20 20 20 20    20 20 20 20 28 63 6f 75 6e 74 65 72 20 28 69 66  | ile-path))..........(counter.(if | 
| a980 |  20 28 73 74 72 69 6e 67 2d 6d 61 74 63 68 20 22    28 5c 5c 28 5b 30 2d 39 5d 2b 5c 5c 29 29 24 22  | .(string-match."(\\([0-9]+\\))$" | 
| a9a0 |  20 6e 61 6d 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 28 73 74  | .name).......................(st | 
| a9c0 |  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 31 20 6e  | ring-to-number.(match-string.1.n | 
| a9e0 |  61 6d 65 29 29 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 30 29 29 29 0a 20  | ame)).....................0))).. | 
| aa00 |  20 20 20 28 77 68 65 6e 20 28 73 74 72 69 6e 67    2d 6d 61 74 63 68 20 22 28 5c 5c 28 5b 30 2d 39  | ...(when.(string-match."(\\([0-9 | 
| aa20 |  5d 2b 5c 5c 29 29 24 22 20 6e 61 6d 65 29 0a 20    20 20 20 20 20 28 73 65 74 71 20 6e 61 6d 65 28  | ]+\\))$".name).......(setq.name( | 
| aa40 |  72 65 70 6c 61 63 65 2d 6d 61 74 63 68 20 22 22    20 74 20 74 20 6e 61 6d 65 29 29 29 0a 20 20 20  | replace-match."".t.t.name))).... | 
| aa60 |  20 28 77 68 69 6c 65 20 28 66 69 6c 65 2d 65 78    69 73 74 73 2d 70 20 66 69 6c 65 2d 70 61 74 68  | .(while.(file-exists-p.file-path | 
| aa80 |  29 0a 20 20 20 20 20 20 28 73 65 74 71 20 63 6f    75 6e 74 65 72 20 28 31 2b 20 63 6f 75 6e 74 65  | ).......(setq.counter.(1+.counte | 
| aaa0 |  72 29 29 0a 20 20 20 20 20 20 28 73 65 74 71 20    66 69 6c 65 2d 70 61 74 68 20 28 69 66 20 65 78  | r)).......(setq.file-path.(if.ex | 
| aac0 |  74 65 6e 73 69 6f 6e 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | tension......................... | 
| aae0 |  20 20 28 66 6f 72 6d 61 74 20 22 25 73 28 25 64    29 2e 25 73 22 20 6e 61 6d 65 20 63 6f 75 6e 74  | ..(format."%s(%d).%s".name.count | 
| ab00 |  65 72 20 65 78 74 65 6e 73 69 6f 6e 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | er.extension)................... | 
| ab20 |  20 20 20 20 20 20 28 66 6f 72 6d 61 74 20 22 25    73 28 25 64 29 22 20 6e 61 6d 65 20 63 6f 75 6e  | ......(format."%s(%d)".name.coun | 
| ab40 |  74 65 72 29 29 29 29 0a 20 20 20 20 66 69 6c 65    2d 70 61 74 68 29 29 0a 0a 28 64 65 66 75 6e 20  | ter)))).....file-path))..(defun. | 
| ab60 |  64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61    6e 64 2d 2d 73 65 6e 74 69 6e 65 6c 20 28 70 72  | dwim-shell-command--sentinel.(pr | 
| ab80 |  6f 63 65 73 73 20 5f 29 0a 20 20 22 48 61 6e 64    6c 65 73 20 50 52 4f 43 45 53 53 20 73 65 6e 74  | ocess._)..."Handles.PROCESS.sent | 
| aba0 |  69 6e 65 6c 20 61 6e 64 20 53 54 41 54 45 2e 22    0a 20 20 28 6c 65 74 20 28 28 65 78 65 63 20 28  | inel.and.STATE."...(let.((exec.( | 
| abc0 |  6d 61 70 2d 65 6c 74 20 64 77 69 6d 2d 73 68 65    6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 2d 63 6f 6d 6d  | map-elt.dwim-shell-command--comm | 
| abe0 |  61 6e 64 73 20 28 70 72 6f 63 65 73 73 2d 6e 61    6d 65 20 70 72 6f 63 65 73 73 29 29 29 29 0a 20  | ands.(process-name.process)))).. | 
| ac00 |  20 20 20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d 63    6f 6d 6d 61 6e 64 2d 2d 66 69 6e 61 6c 69 7a 65  | ...(dwim-shell-command--finalize | 
| ac20 |  20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d    6d 61 6e 64 2d 2d 63 6f 6d 6d 61 6e 64 2d 63 61  | .(dwim-shell-command--command-ca | 
| ac40 |  6c 6c 69 6e 67 2d 62 75 66 66 65 72 20 65 78 65    63 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | lling-buffer.exec).............. | 
| ac60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 64 77 69 6d 2d 73 68 65 6c 6c  | .....................(dwim-shell | 
| ac80 |  2d 63 6f 6d 6d 61 6e 64 2d 2d 63 6f 6d 6d 61 6e    64 2d 66 69 6c 65 73 2d 62 65 66 6f 72 65 20 65  | -command--command-files-before.e | 
| aca0 |  78 65 63 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  | xec)............................ | 
| acc0 |  20 20 20 20 20 20 20 70 72 6f 63 65 73 73 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .......process.................. | 
| ace0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d  | .................(dwim-shell-com | 
| ad00 |  6d 61 6e 64 2d 2d 63 6f 6d 6d 61 6e 64 2d 72 65    70 6f 72 74 65 72 20 65 78 65 63 29 0a 20 20 20  | mand--command-reporter.exec).... | 
| ad20 |  20 20 20 20 20 20 20 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  | ...............................( | 
| ad40 |  64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61    6e 64 2d 2d 63 6f 6d 6d 61 6e 64 2d 6f 6e 2d 63  | dwim-shell-command--command-on-c | 
| ad60 |  6f 6d 70 6c 65 74 69 6f 6e 20 65 78 65 63 29 0a    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ompletion.exec)................. | 
| ad80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f  | ..................(dwim-shell-co | 
| ada0 |  6d 6d 61 6e 64 2d 2d 63 6f 6d 6d 61 6e 64 2d 73    69 6c 65 6e 74 2d 73 75 63 63 65 73 73 20 65 78  | mmand--command-silent-success.ex | 
| adc0 |  65 63 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  | ec)............................. | 
| ade0 |  20 20 20 20 20 20 28 64 77 69 6d 2d 73 68 65 6c    6c 2d 63 6f 6d 6d 61 6e 64 2d 2d 63 6f 6d 6d 61  | ......(dwim-shell-command--comma | 
| ae00 |  6e 64 2d 65 72 72 6f 72 2d 61 75 74 6f 66 6f 63    75 73 20 65 78 65 63 29 0a 20 20 20 20 20 20 20  | nd-error-autofocus.exec)........ | 
| ae20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 64 77 69 6d  | ...........................(dwim | 
| ae40 |  2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 2d    63 6f 6d 6d 61 6e 64 2d 6d 6f 6e 69 74 6f 72 2d  | -shell-command--command-monitor- | 
| ae60 |  64 69 72 65 63 74 6f 72 79 20 65 78 65 63 29 29    29 29 0a 0a 28 64 65 66 75 6e 20 64 77 69 6d 2d  | directory.exec))))..(defun.dwim- | 
| ae80 |  73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 2d 66    69 6c 74 65 72 20 28 70 72 6f 63 65 73 73 20 6f  | shell-command--filter.(process.o | 
| aea0 |  75 74 70 75 74 29 0a 20 20 22 48 61 6e 64 6c 65    73 20 50 52 4f 43 45 53 53 20 66 69 6c 74 65 72  | utput)..."Handles.PROCESS.filter | 
| aec0 |  69 6e 67 20 61 6e 64 20 53 54 41 54 45 20 61 6e    64 20 4f 55 54 50 55 54 2e 22 0a 20 20 28 77 68  | ing.and.STATE.and.OUTPUT."...(wh | 
| aee0 |  65 6e 2d 6c 65 74 2a 20 28 28 65 78 65 63 20 28    6d 61 70 2d 65 6c 74 20 64 77 69 6d 2d 73 68 65  | en-let*.((exec.(map-elt.dwim-she | 
| af00 |  6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 2d 63 6f 6d 6d    61 6e 64 73 20 28 70 72 6f 63 65 73 73 2d 6e 61  | ll-command--commands.(process-na | 
| af20 |  6d 65 20 70 72 6f 63 65 73 73 29 29 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 28 72 65 70  | me.process)))...............(rep | 
| af40 |  6f 72 74 65 72 20 28 64 77 69 6d 2d 73 68 65 6c    6c 2d 63 6f 6d 6d 61 6e 64 2d 2d 63 6f 6d 6d 61  | orter.(dwim-shell-command--comma | 
| af60 |  6e 64 2d 72 65 70 6f 72 74 65 72 20 65 78 65 63    29 29 29 0a 20 20 20 20 28 70 72 6f 67 72 65 73  | nd-reporter.exec))).....(progres | 
| af80 |  73 2d 72 65 70 6f 72 74 65 72 2d 75 70 64 61 74    65 20 72 65 70 6f 72 74 65 72 29 29 0a 20 20 28  | s-reporter-update.reporter))...( | 
| afa0 |  63 6f 6d 69 6e 74 2d 6f 75 74 70 75 74 2d 66 69    6c 74 65 72 20 70 72 6f 63 65 73 73 20 6f 75 74  | comint-output-filter.process.out | 
| afc0 |  70 75 74 29 29 0a 0a 28 64 65 66 75 6e 20 64 77    69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64  | put))..(defun.dwim-shell-command | 
| afe0 |  2d 2d 66 69 6c 65 2d 65 78 74 65 6e 73 69 6f 6e    73 20 28 29 0a 20 20 22 52 65 74 75 72 6e 20 62  | --file-extensions.()..."Return.b | 
| b000 |  75 66 66 65 72 20 66 69 6c 65 20 65 78 74 65 6e    73 69 6f 6e 20 6f 72 20 6d 61 72 6b 65 64 2f 72  | uffer.file.extension.or.marked/r | 
| b020 |  65 67 69 6f 6e 20 65 78 74 65 6e 73 69 6f 6e 73    20 66 6f 72 20 61 20 60 64 69 72 65 64 27 20 62  | egion.extensions.for.a.`dired'.b | 
| b040 |  75 66 66 65 72 2e 22 0a 20 20 28 73 65 71 2d 75    6e 69 71 0a 20 20 20 28 73 65 71 2d 6d 61 70 0a  | uffer."...(seq-uniq....(seq-map. | 
| b060 |  20 20 20 20 23 27 66 69 6c 65 2d 6e 61 6d 65 2d    65 78 74 65 6e 73 69 6f 6e 0a 20 20 20 20 28 73  | ....#'file-name-extension.....(s | 
| b080 |  65 71 2d 66 69 6c 74 65 72 0a 20 20 20 20 20 23    27 66 69 6c 65 2d 6e 61 6d 65 2d 65 78 74 65 6e  | eq-filter......#'file-name-exten | 
| b0a0 |  73 69 6f 6e 0a 20 20 20 20 20 28 64 77 69 6d 2d    73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 2d 66  | sion......(dwim-shell-command--f | 
| b0c0 |  69 6c 65 73 29 29 29 29 29 0a 0a 28 64 65 66 75    6e 20 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d  | iles)))))..(defun.dwim-shell-com | 
| b0e0 |  6d 61 6e 64 2d 2d 66 69 6c 65 73 20 28 29 0a 20    20 22 52 65 74 75 72 6e 20 62 75 66 66 65 72 20  | mand--files.()..."Return.buffer. | 
| b100 |  66 69 6c 65 20 28 69 66 20 61 76 61 69 6c 61 62    6c 65 29 20 6f 72 20 6d 61 72 6b 65 64 2f 72 65  | file.(if.available).or.marked/re | 
| b120 |  67 69 6f 6e 20 66 69 6c 65 73 20 66 6f 72 20 61    20 60 64 69 72 65 64 27 20 62 75 66 66 65 72 2e  | gion.files.for.a.`dired'.buffer. | 
| b140 |  22 0a 20 20 28 63 6c 2d 61 73 73 65 72 74 20 28    6e 6f 74 20 28 61 6e 64 20 28 75 73 65 2d 72 65  | "...(cl-assert.(not.(and.(use-re | 
| b160 |  67 69 6f 6e 2d 70 29 20 28 6c 65 74 20 28 28 66    69 6c 65 73 20 28 64 69 72 65 64 2d 67 65 74 2d  | gion-p).(let.((files.(dired-get- | 
| b180 |  6d 61 72 6b 65 64 2d 66 69 6c 65 73 20 6e 69 6c    20 6e 69 6c 20 6e 69 6c 20 74 29 29 29 0a 20 20  | marked-files.nil.nil.nil.t)))... | 
| b1a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| b1c0 |  20 20 20 3b 3b 20 42 61 73 65 64 20 6f 6e 20 60    64 69 72 65 64 2d 6e 75 6d 62 65 72 2d 6f 66 2d  | ...;;.Based.on.`dired-number-of- | 
| b1e0 |  6d 61 72 6b 65 64 2d 66 69 6c 65 73 27 2e 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | marked-files'................... | 
| b200 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 28 63 6f 6e 64 20 28 28 6e 75 6c 6c  | ....................(cond.((null | 
| b220 |  20 28 63 64 72 20 66 69 6c 65 73 29 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .(cdr.files))................... | 
| b240 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 6e 69 6c 29 0a 20  | ..........................nil).. | 
| b260 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| b280 |  20 20 20 20 20 20 20 20 20 20 28 28 61 6e 64 20    28 3d 20 28 6c 65 6e 67 74 68 20 66 69 6c 65 73  | ..........((and.(=.(length.files | 
| b2a0 |  29 20 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  | ).2)............................ | 
| b2c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 65 71 20 28 63 61 72 20 66  | ......................(eq.(car.f | 
| b2e0 |  69 6c 65 73 29 20 74 29 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | iles).t))....................... | 
| b300 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 74 29 0a 20 20 20 20 20 20 20  | ......................t)........ | 
| b320 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| b340 |  20 20 20 20 28 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  | ....(t.......................... | 
| b360 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 6e 6f 74 20 28 73 65 71 2d 65 6d 70  | ...................(not.(seq-emp | 
| b380 |  74 79 2d 70 20 66 69 6c 65 73 29 29 29 29 29 29    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 6e  | ty-p.files)))))))..............n | 
| b3a0 |  69 6c 20 22 52 65 67 69 6f 6e 20 61 6e 64 20 6d    61 72 6b 65 64 20 66 69 6c 65 73 20 62 6f 74 68  | il."Region.and.marked.files.both | 
| b3c0 |  20 61 63 74 69 76 65 2e 20 43 68 6f 6f 73 65 20    6f 6e 65 20 6f 6e 6c 79 2e 22 29 0a 20 20 28 69  | .active..Choose.one.only.")...(i | 
| b3e0 |  66 20 28 62 75 66 66 65 72 2d 66 69 6c 65 2d 6e    61 6d 65 29 0a 20 20 20 20 20 20 28 6c 69 73 74  | f.(buffer-file-name).......(list | 
| b400 |  20 28 62 75 66 66 65 72 2d 66 69 6c 65 2d 6e 61    6d 65 29 29 0a 20 20 20 20 28 6f 72 0a 20 20 20  | .(buffer-file-name)).....(or.... | 
| b420 |  20 20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f    6d 6d 61 6e 64 2d 2d 64 69 72 65 64 2d 70 61 74  | ..(dwim-shell-command--dired-pat | 
| b440 |  68 73 2d 69 6e 2d 72 65 67 69 6f 6e 29 0a 20 20    20 20 20 28 64 69 72 65 64 2d 67 65 74 2d 6d 61  | hs-in-region)......(dired-get-ma | 
| b460 |  72 6b 65 64 2d 66 69 6c 65 73 29 29 29 29 0a 0a    28 64 65 66 75 6e 20 64 77 69 6d 2d 73 68 65 6c  | rked-files))))..(defun.dwim-shel | 
| b480 |  6c 2d 63 6f 6d 6d 61 6e 64 2d 2d 64 69 72 65 64    2d 70 61 74 68 73 2d 69 6e 2d 72 65 67 69 6f 6e  | l-command--dired-paths-in-region | 
| b4a0 |  20 28 29 0a 20 20 22 49 66 20 60 64 69 72 65 64    27 20 62 75 66 66 65 72 2c 20 72 65 74 75 72 6e  | .()..."If.`dired'.buffer,.return | 
| b4c0 |  20 72 65 67 69 6f 6e 20 66 69 6c 65 73 2e 20 20    6e 69 6c 20 6f 74 68 65 72 77 69 73 65 2e 22 0a  | .region.files...nil.otherwise.". | 
| b4e0 |  20 20 28 77 68 65 6e 20 28 61 6e 64 20 28 65 71    75 61 6c 20 6d 61 6a 6f 72 2d 6d 6f 64 65 20 27  | ..(when.(and.(equal.major-mode.' | 
| b500 |  64 69 72 65 64 2d 6d 6f 64 65 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 28 75 73 65 2d 72 65  | dired-mode)..............(use-re | 
| b520 |  67 69 6f 6e 2d 70 29 29 0a 20 20 20 20 28 6c 65    74 20 28 28 73 74 61 72 74 20 28 72 65 67 69 6f  | gion-p)).....(let.((start.(regio | 
| b540 |  6e 2d 62 65 67 69 6e 6e 69 6e 67 29 29 0a 20 20    20 20 20 20 20 20 20 20 28 65 6e 64 20 28 72 65  | n-beginning))...........(end.(re | 
| b560 |  67 69 6f 6e 2d 65 6e 64 29 29 0a 20 20 20 20 20    20 20 20 20 20 28 70 61 74 68 73 29 29 0a 20 20  | gion-end))...........(paths))... | 
| b580 |  20 20 20 20 28 73 61 76 65 2d 65 78 63 75 72 73    69 6f 6e 0a 20 20 20 20 20 20 20 20 28 73 61 76  | ....(save-excursion.........(sav | 
| b5a0 |  65 2d 72 65 73 74 72 69 63 74 69 6f 6e 0a 20 20    20 20 20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68  | e-restriction...........(goto-ch | 
| b5c0 |  61 72 20 73 74 61 72 74 29 0a 20 20 20 20 20 20    20 20 20 20 28 77 68 69 6c 65 20 28 3c 20 28 70  | ar.start)...........(while.(<.(p | 
| b5e0 |  6f 69 6e 74 29 20 65 6e 64 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 3b 3b 20 53 6b 69 70 20 6e  | oint).end).............;;.Skip.n | 
| b600 |  6f 6e 2d 66 69 6c 65 20 6c 69 6e 65 73 2e 0a 20    20 20 20 20 20 20 20 20 20 20 20 28 77 68 69 6c  | on-file.lines..............(whil | 
| b620 |  65 20 28 61 6e 64 20 28 3c 20 28 70 6f 69 6e 74    29 20 65 6e 64 29 20 28 64 69 72 65 64 2d 62 65  | e.(and.(<.(point).end).(dired-be | 
| b640 |  74 77 65 65 6e 2d 66 69 6c 65 73 29 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 28 66 6f 72  | tween-files))...............(for | 
| b660 |  77 61 72 64 2d 6c 69 6e 65 20 31 29 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20  | ward-line.1)).............(when. | 
| b680 |  28 64 69 72 65 64 2d 67 65 74 2d 66 69 6c 65 6e    61 6d 65 20 6e 69 6c 20 74 29 0a 20 20 20 20 20  | (dired-get-filename.nil.t)...... | 
| b6a0 |  20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 70    61 74 68 73 20 28 61 70 70 65 6e 64 20 70 61 74  | .........(setq.paths.(append.pat | 
| b6c0 |  68 73 20 28 6c 69 73 74 20 28 64 69 72 65 64 2d    67 65 74 2d 66 69 6c 65 6e 61 6d 65 20 6e 69 6c  | hs.(list.(dired-get-filename.nil | 
| b6e0 |  20 74 29 29 29 29 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  | .t))))).............(forward-lin | 
| b700 |  65 20 31 29 29 29 29 0a 20 20 20 20 20 20 70 61    74 68 73 29 29 29 0a 0a 28 64 65 66 75 6e 20 64  | e.1)))).......paths)))..(defun.d | 
| b720 |  77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e    64 2d 2d 6e 2d 73 74 61 72 74 2d 76 61 6c 75 65  | wim-shell-command--n-start-value | 
| b740 |  20 28 74 65 6d 70 6c 61 74 65 20 70 61 64 64 69    6e 67 29 0a 20 20 22 45 78 74 72 61 63 74 20 6e  | .(template.padding)..."Extract.n | 
| b760 |  20 73 74 61 72 74 20 76 61 6c 75 65 20 66 72 6f    6d 20 54 45 4d 50 4c 41 54 45 20 75 73 69 6e 67  | .start.value.from.TEMPLATE.using | 
| b780 |  20 50 41 44 44 49 4e 47 2e 0a 46 61 6c 6c 73 20    62 61 63 6b 20 74 6f 20 5c 22 31 5c 22 2e 22 0a  | .PADDING..Falls.back.to.\"1\".". | 
| b7a0 |  20 20 28 77 68 65 6e 20 28 73 74 72 69 6e 67 2d    6d 61 74 63 68 20 22 5c 3c 5c 3c 5c 5c 28 5b 5b  | ..(when.(string-match."\<\<\\([[ | 
| b7c0 |  3a 61 6c 6e 75 6d 3a 5d 5d 3f 2b 5c 5c 29 6e 5c    3e 5c 3e 22 20 74 65 6d 70 6c 61 74 65 29 0a 20  | :alnum:]]?+\\)n\>\>".template).. | 
| b7e0 |  20 20 20 28 69 66 20 28 73 74 72 69 6e 67 2d 65    6d 70 74 79 2d 70 20 28 6d 61 74 63 68 2d 73 74  | ...(if.(string-empty-p.(match-st | 
| b800 |  72 69 6e 67 20 31 20 74 65 6d 70 6c 61 74 65 29    29 0a 20 20 20 20 20 20 20 20 28 64 77 69 6d 2d  | ring.1.template)).........(dwim- | 
| b820 |  73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 2d 69    6e 63 72 65 6d 65 6e 74 2d 73 74 72 69 6e 67 20  | shell-command--increment-string. | 
| b840 |  28 6e 75 6d 62 65 72 2d 74 6f 2d 73 74 72 69 6e    67 20 30 29 20 70 61 64 64 69 6e 67 29 0a 20 20  | (number-to-string.0).padding)... | 
| b860 |  20 20 20 20 28 69 66 2d 6c 65 74 2a 20 28 28 73    74 61 72 74 2d 73 74 72 69 6e 67 20 28 6d 61 74  | ....(if-let*.((start-string.(mat | 
| b880 |  63 68 2d 73 74 72 69 6e 67 20 31 20 74 65 6d 70    6c 61 74 65 29 29 0a 20 20 20 20 20 20 20 20 20  | ch-string.1.template)).......... | 
| b8a0 |  20 20 20 20 20 20 20 28 73 74 61 72 74 2d 6e 20    28 73 74 72 69 6e 67 2d 74 6f 2d 6e 75 6d 62 65  | .......(start-n.(string-to-numbe | 
| b8c0 |  72 20 73 74 61 72 74 2d 73 74 72 69 6e 67 29 29    29 0a 20 20 20 20 20 20 20 20 20 20 28 64 77 69  | r.start-string)))...........(dwi | 
| b8e0 |  6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d    2d 69 6e 63 72 65 6d 65 6e 74 2d 73 74 72 69 6e  | m-shell-command--increment-strin | 
| b900 |  67 20 28 6e 75 6d 62 65 72 2d 74 6f 2d 73 74 72    69 6e 67 20 28 31 2d 20 73 74 61 72 74 2d 6e 29  | g.(number-to-string.(1-.start-n) | 
| b920 |  29 20 70 61 64 64 69 6e 67 29 0a 20 20 20 20 20    20 20 20 28 6d 61 74 63 68 2d 73 74 72 69 6e 67  | ).padding).........(match-string | 
| b940 |  20 31 20 74 65 6d 70 6c 61 74 65 29 29 29 29 29    0a 0a 28 64 65 66 75 6e 20 64 77 69 6d 2d 73 68  | .1.template)))))..(defun.dwim-sh | 
| b960 |  65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 2d 69 6e 63    72 65 6d 65 6e 74 2d 73 74 72 69 6e 67 20 28 74  | ell-command--increment-string.(t | 
| b980 |  65 78 74 20 70 61 64 64 69 6e 67 29 0a 20 20 22    49 6e 63 72 65 6d 65 6e 74 20 54 45 58 54 20 75  | ext.padding)..."Increment.TEXT.u | 
| b9a0 |  73 69 6e 67 20 50 41 44 44 49 4e 47 2e 0a 5c 22    61 5c 22 20 2d 3e 20 5c 22 62 5c 22 0a 5c 22 31  | sing.PADDING..\"a\".->.\"b\".\"1 | 
| b9c0 |  5c 22 20 2d 3e 20 5c 22 32 5c 22 22 0a 20 20 28    63 6f 6e 64 20 28 28 73 74 72 69 6e 67 2d 6d 61  | \".->.\"2\""...(cond.((string-ma | 
| b9e0 |  74 63 68 20 22 5e 5b 5b 3a 61 6c 70 68 61 3a 5d    5d 24 22 20 74 65 78 74 29 20 3b 3b 20 63 68 61  | tch."^[[:alpha:]]$".text).;;.cha | 
| ba00 |  72 0a 20 20 20 20 20 20 20 20 20 28 63 68 61 72    2d 74 6f 2d 73 74 72 69 6e 67 20 28 31 2b 20 28  | r..........(char-to-string.(1+.( | 
| ba20 |  73 74 72 69 6e 67 2d 74 6f 2d 63 68 61 72 20 28    6d 61 74 63 68 2d 73 74 72 69 6e 67 20 30 20 74  | string-to-char.(match-string.0.t | 
| ba40 |  65 78 74 29 29 29 29 29 0a 20 20 20 20 20 20 20    20 28 28 73 74 72 69 6e 67 2d 6d 61 74 63 68 20  | ext))))).........((string-match. | 
| ba60 |  22 5e 5b 5b 3a 64 69 67 69 74 3a 5d 5d 2b 24 22    20 74 65 78 74 29 20 3b 3b 20 63 68 61 72 0a 20  | "^[[:digit:]]+$".text).;;.char.. | 
| ba80 |  20 20 20 20 20 20 20 20 28 64 77 69 6d 2d 73 68    65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 2d 6e 75 6d  | ........(dwim-shell-command--num | 
| baa0 |  62 65 72 2d 74 6f 2d 73 74 72 69 6e 67 20 28 31    2b 20 28 73 74 72 69 6e 67 2d 74 6f 2d 6e 75 6d  | ber-to-string.(1+.(string-to-num | 
| bac0 |  62 65 72 20 28 6d 61 74 63 68 2d 73 74 72 69 6e    67 20 30 20 74 65 78 74 29 29 29 20 70 61 64 64  | ber.(match-string.0.text))).padd | 
| bae0 |  69 6e 67 29 29 29 29 0a 0a 28 64 65 66 75 6e 20    64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61  | ing))))..(defun.dwim-shell-comma | 
| bb00 |  6e 64 2d 2d 70 72 6f 67 72 61 6d 2d 74 65 73 74    20 28 70 72 6f 67 72 61 6d 20 26 72 65 73 74 20  | nd--program-test.(program.&rest. | 
| bb20 |  61 72 67 73 29 0a 20 20 22 54 65 73 74 20 74 68    61 74 20 72 75 6e 6e 69 6e 67 20 50 52 4f 47 52  | args)..."Test.that.running.PROGR | 
| bb40 |  41 4d 20 77 69 74 68 20 41 52 47 53 20 69 73 20    73 75 63 63 65 73 73 66 75 6c 2e 22 0a 20 20 28  | AM.with.ARGS.is.successful."...( | 
| bb60 |  65 71 20 30 20 28 61 70 70 6c 79 20 23 27 63 61    6c 6c 2d 70 72 6f 63 65 73 73 20 70 72 6f 67 72  | eq.0.(apply.#'call-process.progr | 
| bb80 |  61 6d 20 6e 69 6c 20 6e 69 6c 20 6e 69 6c 20 61    72 67 73 29 29 29 0a 0a 28 63 6c 2d 64 65 66 75  | am.nil.nil.nil.args)))..(cl-defu | 
| bba0 |  6e 20 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d    6d 61 6e 64 2d 66 6f 72 65 61 63 68 20 28 66 75  | n.dwim-shell-command-foreach.(fu | 
| bbc0 |  6e 20 26 6b 65 79 20 6d 6f 6e 69 74 6f 72 2d 64    69 72 65 63 74 6f 72 79 29 0a 20 20 22 45 78 65  | n.&key.monitor-directory)..."Exe | 
| bbe0 |  63 75 74 65 20 46 55 4e 20 66 6f 72 20 65 61 63    68 20 66 69 6c 65 2e 0a 4d 6f 6e 69 74 6f 72 20  | cute.FUN.for.each.file..Monitor. | 
| bc00 |  3a 4d 4f 4e 49 54 4f 52 2d 44 49 52 45 43 54 4f    52 59 20 66 6f 72 20 6e 65 77 20 66 69 6c 65 20  | :MONITOR-DIRECTORY.for.new.file. | 
| bc20 |  61 6e 64 20 60 64 69 72 65 64 2d 6a 75 6d 70 27    20 74 6f 20 69 74 2e 22 0a 20 20 28 6c 65 74 20  | and.`dired-jump'.to.it."...(let. | 
| bc40 |  28 28 66 69 6c 65 73 20 28 64 77 69 6d 2d 73 68    65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 2d 66 69 6c  | ((files.(dwim-shell-command--fil | 
| bc60 |  65 73 29 29 0a 20 20 20 20 20 20 20 20 28 66 69    6c 65 73 2d 62 65 66 6f 72 65 20 28 64 77 69 6d  | es)).........(files-before.(dwim | 
| bc80 |  2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 2d    64 65 66 61 75 6c 74 2d 64 69 72 65 63 74 6f 72  | -shell-command--default-director | 
| bca0 |  79 2d 66 69 6c 65 73 20 20 6d 6f 6e 69 74 6f 72    2d 64 69 72 65 63 74 6f 72 79 29 29 0a 20 20 20  | y-files..monitor-directory)).... | 
| bcc0 |  20 20 20 20 20 28 6f 6c 64 65 73 74 2d 6e 65 77    2d 66 69 6c 65 29 0a 20 20 20 20 20 20 20 20 28  | .....(oldest-new-file).........( | 
| bce0 |  63 72 65 61 74 65 64 2d 66 69 6c 65 29 0a 20 20    20 20 20 20 20 20 28 6a 75 6d 70 2d 74 6f 29 29  | created-file).........(jump-to)) | 
| bd00 |  0a 20 20 20 20 28 6d 61 70 63 20 28 6c 61 6d 62    64 61 20 28 66 69 6c 65 2d 70 61 74 68 29 0a 20  | .....(mapc.(lambda.(file-path).. | 
| bd20 |  20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71    20 63 72 65 61 74 65 64 2d 66 69 6c 65 20 28 6f  | ...........(setq.created-file.(o | 
| bd40 |  72 20 28 66 75 6e 63 61 6c 6c 20 66 75 6e 20 66    69 6c 65 2d 70 61 74 68 29 0a 20 20 20 20 20 20  | r.(funcall.fun.file-path)....... | 
| bd60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 63 72 65  | .............................cre | 
| bd80 |  61 74 65 64 2d 66 69 6c 65 29 29 29 0a 20 20 20    20 20 20 20 20 20 20 66 69 6c 65 73 29 0a 20 20  | ated-file)))...........files)... | 
| bda0 |  20 20 28 73 65 74 71 20 6f 6c 64 65 73 74 2d 6e    65 77 2d 66 69 6c 65 20 28 64 77 69 6d 2d 73 68  | ..(setq.oldest-new-file.(dwim-sh | 
| bdc0 |  65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 2d 6c 61 73    74 2d 6d 6f 64 69 66 69 65 64 2d 62 65 74 77 65  | ell-command--last-modified-betwe | 
| bde0 |  65 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 66 69  | en............................fi | 
| be00 |  6c 65 73 2d 62 65 66 6f 72 65 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | les-before...................... | 
| be20 |  20 20 20 20 20 20 28 64 77 69 6d 2d 73 68 65 6c    6c 2d 63 6f 6d 6d 61 6e 64 2d 2d 64 65 66 61 75  | ......(dwim-shell-command--defau | 
| be40 |  6c 74 2d 64 69 72 65 63 74 6f 72 79 2d 66 69 6c    65 73 20 6d 6f 6e 69 74 6f 72 2d 64 69 72 65 63  | lt-directory-files.monitor-direc | 
| be60 |  74 6f 72 79 29 29 29 0a 20 20 20 20 28 73 65 74    71 20 6a 75 6d 70 2d 74 6f 20 28 6f 72 20 6f 6c  | tory))).....(setq.jump-to.(or.ol | 
| be80 |  64 65 73 74 2d 6e 65 77 2d 66 69 6c 65 20 63 72    65 61 74 65 64 2d 66 69 6c 65 29 29 0a 20 20 20  | dest-new-file.created-file)).... | 
| bea0 |  20 28 77 68 65 6e 20 6a 75 6d 70 2d 74 6f 0a 20    20 20 20 20 20 28 64 69 72 65 64 2d 6a 75 6d 70  | .(when.jump-to.......(dired-jump | 
| bec0 |  20 6e 69 6c 20 6a 75 6d 70 2d 74 6f 29 29 29 29    0a 0a 28 70 72 6f 76 69 64 65 20 27 64 77 69 6d  | .nil.jump-to))))..(provide.'dwim | 
| bee0 |  2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 29 0a    0a 3b 3b 3b 20 64 77 69 6d 2d 73 68 65 6c 6c 2d  | -shell-command)..;;;.dwim-shell- | 
| bf00 |  63 6f 6d 6d 61 6e 64 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  | command.el.ends.here............ | 
| bf20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| bf40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| bf60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| bf80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| bfa0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| bfc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| bfe0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| c000 |  64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61    6e 64 2d 32 30 32 35 30 32 31 38 2e 31 37 32 30  | dwim-shell-command-20250218.1720 | 
| c020 |  2f 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d    61 6e 64 73 2e 65 6c 00 00 00 00 00 00 00 00 00  | /dwim-shell-commands.el......... | 
| c040 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| c060 |  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 | 
| c080 |  30 31 37 35 33 37 31 00 30 30 30 30 30 30 30 30    30 30 30 00 30 32 30 36 37 33 00 20 30 00 00 00  | 0175371.00000000000.020673..0... | 
| c0a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| c0c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| c0e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| c100 |  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................... | 
| c120 |  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................... | 
| c140 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| c160 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| c180 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| c1a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| c1c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| c1e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| c200 |  3b 3b 3b 20 64 77 69 6d 2d 73 68 65 6c 6c 2d 63    6f 6d 6d 61 6e 64 73 2e 65 6c 20 2d 2d 2d 20 55  | ;;;.dwim-shell-commands.el.---.U | 
| c220 |  73 65 66 75 6c 20 63 6f 6d 6d 61 6e 64 73 20 2d    2a 2d 20 6c 65 78 69 63 61 6c 2d 62 69 6e 64 69  | seful.commands.-*-.lexical-bindi | 
| c240 |  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 32  | ng:.t;.-*-..;;.Copyright.(C).202 | 
| c260 |  32 20 41 6c 76 61 72 6f 20 52 61 6d 69 72 65 7a    0a 0a 3b 3b 20 41 75 74 68 6f 72 3a 20 41 6c 76  | 2.Alvaro.Ramirez..;;.Author:.Alv | 
| c280 |  61 72 6f 20 52 61 6d 69 72 65 7a 0a 3b 3b 20 55    52 4c 3a 20 68 74 74 70 73 3a 2f 2f 67 69 74 68  | aro.Ramirez.;;.URL:.https://gith | 
| c2a0 |  75 62 2e 63 6f 6d 2f 78 65 6e 6f 64 69 75 6d 2f    64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61  | ub.com/xenodium/dwim-shell-comma | 
| c2c0 |  6e 64 0a 0a 3b 3b 20 54 68 69 73 20 70 61 63 6b    61 67 65 20 69 73 20 66 72 65 65 20 73 6f 66 74  | nd..;;.This.package.is.free.soft | 
| c2e0 |  77 61 72 65 3b 20 79 6f 75 20 63 61 6e 20 72 65    64 69 73 74 72 69 62 75 74 65 20 69 74 20 61 6e  | ware;.you.can.redistribute.it.an | 
| c300 |  64 2f 6f 72 20 6d 6f 64 69 66 79 0a 3b 3b 20 69    74 20 75 6e 64 65 72 20 74 68 65 20 74 65 72 6d  | d/or.modify.;;.it.under.the.term | 
| c320 |  73 20 6f 66 20 74 68 65 20 47 4e 55 20 47 65 6e    65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69 63 65  | s.of.the.GNU.General.Public.Lice | 
| c340 |  6e 73 65 20 61 73 20 70 75 62 6c 69 73 68 65 64    20 62 79 0a 3b 3b 20 74 68 65 20 46 72 65 65 20  | nse.as.published.by.;;.the.Free. | 
| c360 |  53 6f 66 74 77 61 72 65 20 46 6f 75 6e 64 61 74    69 6f 6e 3b 20 65 69 74 68 65 72 20 76 65 72 73  | Software.Foundation;.either.vers | 
| c380 |  69 6f 6e 20 33 2c 20 6f 72 20 28 61 74 20 79 6f    75 72 20 6f 70 74 69 6f 6e 29 0a 3b 3b 20 61 6e  | ion.3,.or.(at.your.option).;;.an | 
| c3a0 |  79 20 6c 61 74 65 72 20 76 65 72 73 69 6f 6e 2e    0a 0a 3b 3b 20 54 68 69 73 20 70 61 63 6b 61 67  | y.later.version...;;.This.packag | 
| c3c0 |  65 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 68 61  | e.is.distributed.in.the.hope.tha | 
| c3e0 |  74 20 69 74 20 77 69 6c 6c 20 62 65 20 75 73 65    66 75 6c 2c 0a 3b 3b 20 62 75 74 20 57 49 54 48  | t.it.will.be.useful,.;;.but.WITH | 
| c400 |  4f 55 54 20 41 4e 59 20 57 41 52 52 41 4e 54 59    3b 20 77 69 74 68 6f 75 74 20 65 76 65 6e 20 74  | OUT.ANY.WARRANTY;.without.even.t | 
| c420 |  68 65 20 69 6d 70 6c 69 65 64 20 77 61 72 72 61    6e 74 79 20 6f 66 0a 3b 3b 20 4d 45 52 43 48 41  | he.implied.warranty.of.;;.MERCHA | 
| c440 |  4e 54 41 42 49 4c 49 54 59 20 6f 72 20 46 49 54    4e 45 53 53 20 46 4f 52 20 41 20 50 41 52 54 49  | NTABILITY.or.FITNESS.FOR.A.PARTI | 
| c460 |  43 55 4c 41 52 20 50 55 52 50 4f 53 45 2e 20 20    53 65 65 20 74 68 65 0a 3b 3b 20 47 4e 55 20 47  | CULAR.PURPOSE...See.the.;;.GNU.G | 
| c480 |  65 6e 65 72 61 6c 20 50 75 62 6c 69 63 20 4c 69    63 65 6e 73 65 20 66 6f 72 20 6d 6f 72 65 20 64  | eneral.Public.License.for.more.d | 
| c4a0 |  65 74 61 69 6c 73 2e 0a 0a 3b 3b 20 59 6f 75 20    73 68 6f 75 6c 64 20 68 61 76 65 20 72 65 63 65  | etails...;;.You.should.have.rece | 
| c4c0 |  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 | 
| c4e0 |  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. | 
| c500 |  45 6d 61 63 73 2e 20 20 49 66 20 6e 6f 74 2c 20    73 65 65 20 3c 68 74 74 70 73 3a 2f 2f 77 77 77  | Emacs...If.not,.see.<https://www | 
| c520 |  2e 67 6e 75 2e 6f 72 67 2f 6c 69 63 65 6e 73 65    73 2f 3e 2e 0a 0a 3b 3b 3b 20 43 6f 6d 6d 65 6e  | .gnu.org/licenses/>...;;;.Commen | 
| c540 |  74 61 72 79 3a 0a 0a 3b 3b 20 41 20 63 6f 6c 6c    65 63 74 69 6f 6e 20 6f 66 20 75 73 65 66 75 6c  | tary:..;;.A.collection.of.useful | 
| c560 |  20 63 6f 6d 6d 61 6e 64 73 20 63 72 65 61 74 65    64 20 76 69 61 0a 3b 3b 20 60 64 77 69 6d 2d 73  | .commands.created.via.;;.`dwim-s | 
| c580 |  68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 6f 6e 2d    6d 61 72 6b 65 64 2d 66 69 6c 65 73 27 2e 0a 0a  | hell-command-on-marked-files'... | 
| c5a0 |  3b 3b 3b 20 43 6f 64 65 3a 0a 0a 28 72 65 71 75    69 72 65 20 27 62 72 6f 77 73 65 2d 75 72 6c 29  | ;;;.Code:..(require.'browse-url) | 
| c5c0 |  0a 28 72 65 71 75 69 72 65 20 27 63 6c 2d 6c 69    62 29 0a 28 72 65 71 75 69 72 65 20 27 64 77 69  | .(require.'cl-lib).(require.'dwi | 
| c5e0 |  6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 29    0a 28 72 65 71 75 69 72 65 20 27 66 69 6c 65 73  | m-shell-command).(require.'files | 
| c600 |  29 0a 28 72 65 71 75 69 72 65 20 27 70 72 6f 63    65 64 29 0a 28 72 65 71 75 69 72 65 20 27 73 65  | ).(require.'proced).(require.'se | 
| c620 |  71 29 0a 28 72 65 71 75 69 72 65 20 27 73 75 62    72 2d 78 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f  | q).(require.'subr-x)..;;;###auto | 
| c640 |  6c 6f 61 64 0a 28 64 65 66 75 6e 20 64 77 69 6d    2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 73 2d  | load.(defun.dwim-shell-commands- | 
| c660 |  61 75 64 69 6f 2d 74 6f 2d 6d 70 33 20 28 29 0a    20 20 22 43 6f 6e 76 65 72 74 20 61 6c 6c 20 6d  | audio-to-mp3.()..."Convert.all.m | 
| c680 |  61 72 6b 65 64 20 61 75 64 69 6f 20 74 6f 20 6d    70 33 28 73 29 2e 22 0a 20 20 28 69 6e 74 65 72  | arked.audio.to.mp3(s)."...(inter | 
| c6a0 |  61 63 74 69 76 65 29 0a 20 20 28 64 77 69 6d 2d    73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 6f 6e  | active)...(dwim-shell-command-on | 
| c6c0 |  2d 6d 61 72 6b 65 64 2d 66 69 6c 65 73 0a 20 20    20 22 43 6f 6e 76 65 72 74 20 74 6f 20 6d 70 33  | -marked-files...."Convert.to.mp3 | 
| c6e0 |  22 0a 20 20 20 22 66 66 6d 70 65 67 20 2d 73 74    61 74 73 20 2d 6e 20 2d 69 20 27 3c 3c 66 3e 3e  | "...."ffmpeg.-stats.-n.-i.'<<f>> | 
| c700 |  27 20 2d 61 63 6f 64 65 63 20 6c 69 62 6d 70 33    6c 61 6d 65 20 27 3c 3c 66 6e 65 3e 3e 2e 6d 70  | '.-acodec.libmp3lame.'<<fne>>.mp | 
| c720 |  33 27 22 0a 20 20 20 3a 75 74 69 6c 73 20 22 66    66 6d 70 65 67 22 29 29 0a 0a 3b 3b 3b 23 23 23  | 3'"....:utils."ffmpeg"))..;;;### | 
| c740 |  61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20    64 77 69 6d 2d 73 68 65 6c 6c 2d 65 78 74 72 61  | autoload.(defun.dwim-shell-extra | 
| c760 |  63 74 2d 68 61 72 2d 63 6f 6e 74 65 6e 74 20 28    70 72 65 66 69 78 29 0a 20 20 22 45 78 74 72 61  | ct-har-content.(prefix)..."Extra | 
| c780 |  63 74 20 61 6c 6c 20 68 61 72 20 63 6f 6e 74 65    6e 74 20 66 69 65 6c 64 73 20 74 6f 20 66 69 6c  | ct.all.har.content.fields.to.fil | 
| c7a0 |  65 73 2e 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 77 68 65 6e  | es."...(interactive."P")...(when | 
| c7c0 |  20 70 72 65 66 69 78 0a 20 20 20 20 28 73 65 74    71 20 70 72 65 66 69 78 20 28 73 74 72 69 6e 67  | .prefix.....(setq.prefix.(string | 
| c7e0 |  2d 74 72 69 6d 20 28 72 65 61 64 2d 73 74 72 69    6e 67 20 22 54 72 61 6e 73 63 72 69 70 74 69 6f  | -trim.(read-string."Transcriptio | 
| c800 |  6e 20 6c 6f 63 61 6c 65 3a 20 22 20 22 6a 61 2d    4a 50 22 29 29 29 0a 20 20 20 20 28 77 68 65 6e  | n.locale:."."ja-JP"))).....(when | 
| c820 |  20 28 73 74 72 69 6e 67 2d 65 6d 70 74 79 2d 70    20 70 72 65 66 69 78 29 0a 20 20 20 20 20 20 28  | .(string-empty-p.prefix).......( | 
| c840 |  65 72 72 6f 72 20 22 4e 6f 20 6c 6f 63 61 6c 65    20 67 69 76 65 6e 22 29 29 29 0a 20 20 28 64 77  | error."No.locale.given")))...(dw | 
| c860 |  69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64    2d 6f 6e 2d 6d 61 72 6b 65 64 2d 66 69 6c 65 73  | im-shell-command-on-marked-files | 
| c880 |  0a 20 20 20 22 45 78 74 72 61 63 74 20 68 61 72    20 72 65 73 70 6f 6e 73 65 20 63 6f 6e 74 65 6e  | ...."Extract.har.response.conten | 
| c8a0 |  74 22 0a 20 20 20 28 66 6f 72 6d 61 74 20 22 64    65 63 6c 61 72 65 20 2d 41 20 6d 69 6d 65 5f 6d  | t"....(format."declare.-A.mime_m | 
| c8c0 |  61 70 3d 28 20 5c 0a 20 20 5b 5c 22 61 75 64 69    6f 2f 6d 70 65 67 5c 22 5d 3d 5c 22 6d 70 33 5c  | ap=(.\...[\"audio/mpeg\"]=\"mp3\ | 
| c8e0 |  22 20 5c 0a 20 20 5b 5c 22 69 6d 61 67 65 2f 6a    70 65 67 5c 22 5d 3d 5c 22 6a 70 67 5c 22 20 5c  | ".\...[\"image/jpeg\"]=\"jpg\".\ | 
| c900 |  0a 20 20 5b 5c 22 74 65 78 74 2f 70 6c 61 69 6e    5c 22 5d 3d 5c 22 74 78 74 5c 22 20 5c 0a 20 20  | ...[\"text/plain\"]=\"txt\".\... | 
| c920 |  5b 5c 22 61 70 70 6c 69 63 61 74 69 6f 6e 2f 6a    73 6f 6e 5c 22 5d 3d 5c 22 6a 73 6f 6e 5c 22 20  | [\"application/json\"]=\"json\". | 
| c940 |  5c 0a 20 20 23 20 54 4f 44 4f 3a 20 41 64 64 20    6d 6f 72 65 20 6d 61 70 70 69 6e 67 73 20 69 66  | \...#.TODO:.Add.more.mappings.if | 
| c960 |  20 6e 65 65 64 65 64 2e 0a 29 0a 6f 75 74 64 69    72 3d 27 3c 3c 66 6e 65 3e 3e 27 0a 6d 6b 64 69  | .needed..).outdir='<<fne>>'.mkdi | 
| c980 |  72 20 2d 70 20 5c 22 24 7b 6f 75 74 64 69 72 7d    5c 22 0a 20 20 3a 20 3e 20 5c 22 24 7b 6f 75 74  | r.-p.\"${outdir}\"...:.>.\"${out | 
| c9a0 |  64 69 72 7d 2f 3c 3c 62 6e 65 3e 3e 2e 6f 72 67    5c 22 0a 6a 71 20 2d 72 20 27 2e 6c 6f 67 2e 65  | dir}/<<bne>>.org\".jq.-r.'.log.e | 
| c9c0 |  6e 74 72 69 65 73 5b 5d 20 7c 20 40 62 61 73 65    36 34 27 20 27 3c 3c 66 3e 3e 27 20 7c 20 77 68  | ntries[].|.@base64'.'<<f>>'.|.wh | 
| c9e0 |  69 6c 65 20 72 65 61 64 20 2d 72 20 65 6e 74 72    79 3b 20 64 6f 0a 20 20 75 72 6c 3d 24 28 65 63  | ile.read.-r.entry;.do...url=$(ec | 
| ca00 |  68 6f 20 5c 22 24 65 6e 74 72 79 5c 22 20 7c 20    62 61 73 65 36 34 20 2d 2d 64 65 63 6f 64 65 20  | ho.\"$entry\".|.base64.--decode. | 
| ca20 |  7c 20 6a 71 20 2d 72 20 27 2e 72 65 71 75 65 73    74 2e 75 72 6c 27 29 0a 20 20 62 61 73 65 6e 61  | |.jq.-r.'.request.url')...basena | 
| ca40 |  6d 65 3d 24 28 65 63 68 6f 20 5c 22 24 65 6e 74    72 79 5c 22 20 7c 20 62 61 73 65 36 34 20 2d 2d  | me=$(echo.\"$entry\".|.base64.-- | 
| ca60 |  64 65 63 6f 64 65 20 7c 20 6a 71 20 2d 72 20 27    2e 72 65 71 75 65 73 74 2e 75 72 6c 20 7c 20 63  | decode.|.jq.-r.'.request.url.|.c | 
| ca80 |  61 70 74 75 72 65 28 5c 22 28 3f 3c 3d 2f 2f 29    5b 5e 2f 5d 2b 2f 28 3f 3c 70 61 74 68 3e 2e 2a  | apture(\"(?<=//)[^/]+/(?<path>.* | 
| caa0 |  29 5c 22 29 20 7c 20 2e 70 61 74 68 20 7c 20 67    73 75 62 28 5c 22 5b 5e 61 2d 7a 41 2d 5a 30 2d  | )\").|..path.|.gsub(\"[^a-zA-Z0- | 
| cac0 |  39 5d 5c 22 3b 20 5c 22 5f 5c 22 29 27 29 0a 20    20 6d 69 6d 65 3d 24 28 65 63 68 6f 20 5c 22 24  | 9]\";.\"_\")')...mime=$(echo.\"$ | 
| cae0 |  65 6e 74 72 79 5c 22 20 7c 20 62 61 73 65 36 34    20 2d 2d 64 65 63 6f 64 65 20 7c 20 6a 71 20 2d  | entry\".|.base64.--decode.|.jq.- | 
| cb00 |  72 20 27 2e 72 65 73 70 6f 6e 73 65 2e 63 6f 6e    74 65 6e 74 2e 6d 69 6d 65 54 79 70 65 27 29 0a  | r.'.response.content.mimeType'). | 
| cb20 |  20 20 65 78 74 65 6e 73 69 6f 6e 3d 24 7b 6d 69    6d 65 5f 6d 61 70 5b 24 6d 69 6d 65 5d 3a 2d 5c  | ..extension=${mime_map[$mime]:-\ | 
| cb40 |  22 62 69 6e 5c 22 7d 0a 20 20 6e 61 6d 65 3d 5c    22 24 7b 6f 75 74 64 69 72 7d 2f 24 7b 62 61 73  | "bin\"}...name=\"${outdir}/${bas | 
| cb60 |  65 6e 61 6d 65 3a 30 3a 32 35 35 7d 2e 24 7b 65    78 74 65 6e 73 69 6f 6e 7d 5c 22 0a 20 20 65 63  | ename:0:255}.${extension}\"...ec | 
| cb80 |  68 6f 20 5c 22 24 7b 6e 61 6d 65 7d 5c 22 0a 20    20 63 6f 6e 74 65 6e 74 3d 24 28 65 63 68 6f 20  | ho.\"${name}\"...content=$(echo. | 
| cba0 |  5c 22 24 65 6e 74 72 79 5c 22 20 7c 20 62 61 73    65 36 34 20 2d 2d 64 65 63 6f 64 65 20 7c 20 6a  | \"$entry\".|.base64.--decode.|.j | 
| cbc0 |  71 20 2d 72 20 27 2e 72 65 73 70 6f 6e 73 65 2e    63 6f 6e 74 65 6e 74 2e 74 65 78 74 27 29 0a 20  | q.-r.'.response.content.text').. | 
| cbe0 |  20 65 63 68 6f 20 5c 22 24 63 6f 6e 74 65 6e 74    5c 22 20 7c 20 62 61 73 65 36 34 20 2d 2d 64 65  | .echo.\"$content\".|.base64.--de | 
| cc00 |  63 6f 64 65 20 3e 20 5c 22 24 7b 6e 61 6d 65 7d    5c 22 0a 20 20 69 66 20 5b 20 2d 66 20 5c 22 24  | code.>.\"${name}\"...if.[.-f.\"$ | 
| cc20 |  7b 6e 61 6d 65 7d 5c 22 20 5d 20 26 26 20 25 73    3b 20 74 68 65 6e 0a 20 20 20 20 74 72 61 6e 73  | {name}\".].&&.%s;.then.....trans | 
| cc40 |  63 72 69 70 74 69 6f 6e 3d 24 28 6d 61 63 6f 73    72 65 63 20 2d 2d 73 70 65 65 63 68 2d 74 6f 2d  | cription=$(macosrec.--speech-to- | 
| cc60 |  74 65 78 74 20 2d 2d 6c 6f 63 61 6c 65 20 25 73    20 2d 2d 69 6e 70 75 74 20 5c 22 24 7b 6e 61 6d  | text.--locale.%s.--input.\"${nam | 
| cc80 |  65 7d 5c 22 29 0a 20 20 20 20 69 66 20 5b 20 24    3f 20 2d 65 71 20 30 20 5d 3b 20 74 68 65 6e 0a  | e}\").....if.[.$?.-eq.0.];.then. | 
| cca0 |  20 20 20 20 20 20 74 72 61 6e 73 63 72 69 62 65    64 5f 6e 61 6d 65 3d 5c 22 24 7b 6f 75 74 64 69  | ......transcribed_name=\"${outdi | 
| ccc0 |  72 7d 2f 24 7b 74 72 61 6e 73 63 72 69 70 74 69    6f 6e 7d 2e 24 7b 65 78 74 65 6e 73 69 6f 6e 7d  | r}/${transcription}.${extension} | 
| cce0 |  5c 22 0a 20 20 20 20 20 20 6d 76 20 5c 22 24 7b    6e 61 6d 65 7d 5c 22 20 5c 22 24 7b 74 72 61 6e  | \".......mv.\"${name}\".\"${tran | 
| cd00 |  73 63 72 69 62 65 64 5f 6e 61 6d 65 7d 5c 22 0a    20 20 20 20 20 20 62 61 73 65 6e 61 6d 65 3d 24  | scribed_name}\".......basename=$ | 
| cd20 |  28 62 61 73 65 6e 61 6d 65 20 5c 22 24 7b 74 72    61 6e 73 63 72 69 62 65 64 5f 6e 61 6d 65 7d 5c  | (basename.\"${transcribed_name}\ | 
| cd40 |  22 29 0a 20 20 20 20 20 20 65 63 68 6f 20 5c 22    5b 5b 66 69 6c 65 3a 24 7b 62 61 73 65 6e 61 6d  | ").......echo.\"[[file:${basenam | 
| cd60 |  65 7d 5d 5b 24 7b 74 72 61 6e 73 63 72 69 70 74    69 6f 6e 7d 5d 5d 20 5b 5b 24 7b 75 72 6c 7d 5d  | e}][${transcription}]].[[${url}] | 
| cd80 |  5b 72 65 6d 6f 74 65 5d 5d 5c 22 20 3e 3e 20 5c    22 24 7b 6f 75 74 64 69 72 7d 2f 3c 3c 62 6e 65  | [remote]]\".>>.\"${outdir}/<<bne | 
| cda0 |  3e 3e 2e 6f 72 67 5c 22 0a 20 20 20 20 66 69 0a    20 20 66 69 0a 64 6f 6e 65 22 0a 20 20 20 20 20  | >>.org\".....fi...fi.done"...... | 
| cdc0 |  20 20 20 20 20 20 28 69 66 20 70 72 65 66 69 78    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ......(if.prefix................ | 
| cde0 |  22 74 72 75 65 22 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 22 66 61 6c 73 65 22 29 0a 20 20 20  | "true".............."false").... | 
| ce00 |  20 20 20 20 20 20 20 20 70 72 65 66 69 78 0a 20    20 20 20 20 20 20 20 20 20 20 28 69 66 20 70 72  | ........prefix............(if.pr | 
| ce20 |  65 66 69 78 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 22 74 72 75 65 22 0a 20 20 20 20 20  | efix................"true"...... | 
| ce40 |  20 20 20 20 20 20 20 20 22 66 61 6c 73 65 22 29    29 0a 20 20 20 3a 75 74 69 6c 73 20 22 6a 71 22  | ........"false"))....:utils."jq" | 
| ce60 |  0a 20 20 20 3a 65 78 74 65 6e 73 69 6f 6e 73 20    22 68 61 72 22 29 29 0a 0a 3b 3b 3b 23 23 23 61  | ....:extensions."har"))..;;;###a | 
| ce80 |  75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 64    77 69 6d 2d 73 68 65 6c 6c 2d 65 78 74 72 61 63  | utoload.(defun.dwim-shell-extrac | 
| cea0 |  74 2d 68 61 72 2d 75 72 6c 73 20 28 29 0a 20 20    22 47 65 74 20 61 6c 6c 20 72 65 71 75 65 73 74  | t-har-urls.()..."Get.all.request | 
| cec0 |  20 55 52 4c 73 2e 22 0a 20 20 28 69 6e 74 65 72    61 63 74 69 76 65 29 0a 20 20 28 64 77 69 6d 2d  | .URLs."...(interactive)...(dwim- | 
| cee0 |  73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 6f 6e    2d 6d 61 72 6b 65 64 2d 66 69 6c 65 73 0a 20 20  | shell-command-on-marked-files... | 
| cf00 |  20 22 45 78 74 72 61 63 74 20 68 61 72 20 72 65    71 75 65 73 74 20 55 52 4c 73 22 0a 20 20 20 22  | ."Extract.har.request.URLs"...." | 
| cf20 |  6a 71 20 2d 72 20 27 2e 6c 6f 67 2e 65 6e 74 72    69 65 73 5b 5d 2e 72 65 71 75 65 73 74 2e 75 72  | jq.-r.'.log.entries[].request.ur | 
| cf40 |  6c 27 20 27 3c 3c 66 3e 3e 27 22 0a 20 20 20 3a    75 74 69 6c 73 20 22 6a 71 22 29 29 0a 0a 3b 3b  | l'.'<<f>>'"....:utils."jq"))..;; | 
| cf60 |  3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65    66 75 6e 20 64 77 69 6d 2d 73 68 65 6c 6c 2d 76  | ;###autoload.(defun.dwim-shell-v | 
| cf80 |  69 65 77 2d 6f 70 65 6e 2d 70 6f 72 74 73 2d 70    65 72 2d 61 70 70 20 28 29 0a 20 20 22 56 69 65  | iew-open-ports-per-app.()..."Vie | 
| cfa0 |  77 20 6f 70 65 6e 20 70 6f 72 74 73 20 70 65 72    20 61 70 70 22 0a 20 20 28 69 6e 74 65 72 61 63  | w.open.ports.per.app"...(interac | 
| cfc0 |  74 69 76 65 29 0a 20 20 28 64 77 69 6d 2d 73 68    65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d  | tive)...(dwim-shell-command-on-m | 
| cfe0 |  61 72 6b 65 64 2d 66 69 6c 65 73 0a 20 20 20 22    50 6f 72 74 73 20 70 65 72 20 61 70 70 22 0a 20  | arked-files...."Ports.per.app".. | 
| d000 |  20 20 3b 3b 20 68 74 74 70 73 3a 2f 2f 78 2e 63    6f 6d 2f 6e 75 72 6d 69 77 69 6c 6c 69 61 6d 2f  | ..;;.https://x.com/nurmiwilliam/ | 
| d020 |  73 74 61 74 75 73 2f 31 38 32 33 32 32 38 36 33    30 36 36 34 36 33 34 36 39 35 0a 20 20 20 22 73  | status/1823228630664634695...."s | 
| d040 |  75 64 6f 20 6c 73 6f 66 20 2d 69 54 43 50 20 2d    73 54 43 50 3a 4c 49 53 54 45 4e 20 2d 6e 20 2d  | udo.lsof.-iTCP.-sTCP:LISTEN.-n.- | 
| d060 |  50 20 7c 20 61 77 6b 20 27 4e 52 3e 31 20 7b 70    72 69 6e 74 20 24 39 2c 20 24 31 2c 20 24 32 7d  | P.|.awk.'NR>1.{print.$9,.$1,.$2} | 
| d080 |  27 20 7c 20 73 65 64 20 27 73 2f 2e 2a 3a 2f 2f    27 20 7c 20 73 6f 72 74 20 2d 75 20 7c 20 77 68  | '.|.sed.'s/.*://'.|.sort.-u.|.wh | 
| d0a0 |  69 6c 65 20 72 65 61 64 20 70 6f 72 74 20 70 72    6f 63 65 73 73 20 70 69 64 3b 20 64 6f 20 65 63  | ile.read.port.process.pid;.do.ec | 
| d0c0 |  68 6f 20 5c 22 50 6f 72 74 20 24 70 6f 72 74 3a    20 24 28 70 73 20 2d 70 20 24 70 69 64 20 2d 6f  | ho.\"Port.$port:.$(ps.-p.$pid.-o | 
| d0e0 |  20 63 6f 6d 6d 61 6e 64 3d 20 7c 20 73 65 64 20    27 73 2f 5e 2d 2f 2f 27 29 20 28 50 49 44 3a 20  | .command=.|.sed.'s/^-//').(PID:. | 
| d100 |  24 70 69 64 29 5c 22 3b 20 64 6f 6e 65 20 7c 20    73 6f 72 74 20 2d 6e 22 0a 20 20 20 3a 75 74 69  | $pid)\";.done.|.sort.-n"....:uti | 
| d120 |  6c 73 20 22 6a 71 22 29 29 0a 0a 3b 3b 3b 23 23    23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e  | ls."jq"))..;;;###autoload.(defun | 
| d140 |  20 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d    61 6e 64 73 2d 6f 70 65 6e 2d 63 6c 69 70 62 6f  | .dwim-shell-commands-open-clipbo | 
| d160 |  61 72 64 2d 75 72 6c 20 28 29 0a 20 20 22 4f 70    65 6e 20 63 6c 69 70 62 6f 61 72 64 20 55 52 4c  | ard-url.()..."Open.clipboard.URL | 
| d180 |  2e 20 20 4f 66 66 65 72 20 74 6f 20 73 74 72 65    61 6d 20 69 66 20 70 6f 73 73 69 62 6c 65 2e 22  | ...Offer.to.stream.if.possible." | 
| d1a0 |  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 75 72 6c 20 28 6f  | ...(interactive)...(let.((url.(o | 
| d1c0 |  72 20 28 63 75 72 72 65 6e 74 2d 6b 69 6c 6c 20    30 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | r.(current-kill.0).............. | 
| d1e0 |  20 20 20 20 28 75 73 65 72 2d 65 72 72 6f 72 20    22 4e 6f 74 68 69 6e 67 20 69 6e 20 63 6c 69 70  | ....(user-error."Nothing.in.clip | 
| d200 |  62 6f 61 72 64 22 29 29 29 29 0a 20 20 20 20 28    64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61  | board")))).....(dwim-shell-comma | 
| d220 |  6e 64 73 2d 75 72 6c 2d 62 72 6f 77 73 65 20 75    72 6c 29 29 29 0a 0a 28 64 65 66 75 6e 20 64 77  | nds-url-browse.url)))..(defun.dw | 
| d240 |  69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64    73 2d 75 72 6c 2d 62 72 6f 77 73 65 20 28 75 72  | im-shell-commands-url-browse.(ur | 
| d260 |  6c 20 26 72 65 73 74 20 61 72 67 73 29 0a 20 20    22 49 66 20 55 52 4c 20 69 73 20 70 6c 61 79 61  | l.&rest.args)..."If.URL.is.playa | 
| d280 |  62 6c 65 20 6d 65 64 69 61 2c 20 6f 66 66 65 72    20 74 6f 20 6f 70 65 6e 20 69 6e 20 6d 70 76 2e  | ble.media,.offer.to.open.in.mpv. | 
| d2a0 |  20 20 45 6c 73 65 20 62 72 6f 77 73 65 72 2e 0a    4f 70 74 69 6f 6e 61 6c 20 61 72 67 75 6d 65 6e  | ..Else.browser..Optional.argumen | 
| d2c0 |  74 20 41 52 47 53 20 61 73 20 70 65 72 20 60 62    72 6f 77 73 65 2d 75 72 6c 2d 64 65 66 61 75 6c  | t.ARGS.as.per.`browse-url-defaul | 
| d2e0 |  74 2d 62 72 6f 77 73 65 72 27 22 0a 20 20 28 69    66 20 28 61 6e 64 20 28 6f 72 20 28 73 74 72 69  | t-browser'"...(if.(and.(or.(stri | 
| d300 |  6e 67 2d 6d 61 74 63 68 2d 70 20 22 5e 68 74 74    70 5b 73 5d 3f 3a 2f 2f 2e 2a 79 6f 75 74 75 62  | ng-match-p."^http[s]?://.*youtub | 
| d320 |  65 2e 63 6f 6d 22 20 75 72 6c 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 73 74 72 69  | e.com".url)................(stri | 
| d340 |  6e 67 2d 6d 61 74 63 68 2d 70 20 22 5e 68 74 74    70 5b 73 5d 3f 3a 2f 2f 2e 2a 6d 2e 79 6f 75 74  | ng-match-p."^http[s]?://.*m.yout | 
| d360 |  75 62 65 2e 63 6f 6d 22 20 75 72 6c 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 74  | ube.com".url)................(st | 
| d380 |  72 69 6e 67 2d 6d 61 74 63 68 2d 70 20 22 5e 68    74 74 70 5b 73 5d 3f 3a 2f 2f 2e 2a 79 6f 75 74  | ring-match-p."^http[s]?://.*yout | 
| d3a0 |  75 2e 62 65 22 20 75 72 6c 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 73 74 72 69 6e  | u.be".url)................(strin | 
| d3c0 |  67 2d 6d 61 74 63 68 2d 70 20 22 5e 68 74 74 70    5b 73 5d 3f 3a 2f 2f 2e 2a 73 6f 75 6e 64 63 6c  | g-match-p."^http[s]?://.*soundcl | 
| d3e0 |  6f 75 64 2e 63 6f 6d 22 20 75 72 6c 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 74  | oud.com".url)................(st | 
| d400 |  72 69 6e 67 2d 6d 61 74 63 68 2d 70 20 22 5e 68    74 74 70 5b 73 5d 3f 3a 2f 2f 2e 2a 72 65 64 64  | ring-match-p."^http[s]?://.*redd | 
| d420 |  69 74 6d 65 64 69 61 2e 63 6f 6d 22 20 75 72 6c    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | itmedia.com".url)............... | 
| d440 |  20 28 73 74 72 69 6e 67 2d 6d 61 74 63 68 2d 70    20 22 5e 68 74 74 70 5b 73 5d 3f 3a 2f 2f 2e 2a  | .(string-match-p."^http[s]?://.* | 
| d460 |  72 65 64 64 69 74 2e 63 6f 6d 22 20 75 72 6c 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | reddit.com".url)................ | 
| d480 |  28 73 74 72 69 6e 67 2d 6d 61 74 63 68 2d 70 20    22 5e 68 74 74 70 5b 73 5d 3f 3a 2f 2f 2e 2a 62  | (string-match-p."^http[s]?://.*b | 
| d4a0 |  61 6e 64 63 61 6d 70 2e 63 6f 6d 22 20 75 72 6c    29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 79  | andcamp.com".url))............(y | 
| d4c0 |  2d 6f 72 2d 6e 2d 70 20 22 53 74 72 65 61 6d 20    66 72 6f 6d 20 6d 70 76 3f 20 22 29 29 0a 20 20  | -or-n-p."Stream.from.mpv?."))... | 
| d4e0 |  20 20 20 20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d    63 6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d 61 72 6b 65  | ....(dwim-shell-command-on-marke | 
| d500 |  64 2d 66 69 6c 65 73 0a 20 20 20 20 20 20 20 22    53 74 72 65 61 6d 69 6e 67 22 0a 20 20 20 20 20  | d-files........"Streaming"...... | 
| d520 |  20 20 28 66 6f 72 6d 61 74 20 22 6d 70 76 20 2d    2d 67 65 6f 6d 65 74 72 79 3d 33 30 25 25 78 33  | ..(format."mpv.--geometry=30%%x3 | 
| d540 |  30 25 25 2b 31 30 30 25 25 2b 30 25 25 20 27 25    73 27 22 20 75 72 6c 29 0a 20 20 20 20 20 20 20  | 0%%+100%%+0%%.'%s'".url)........ | 
| d560 |  3a 75 74 69 6c 73 20 22 6d 70 76 22 0a 20 20 20    20 20 20 20 3a 6e 6f 2d 70 72 6f 67 72 65 73 73  | :utils."mpv"........:no-progress | 
| d580 |  20 74 0a 20 20 20 20 20 20 20 3a 65 72 72 6f 72    2d 61 75 74 6f 66 6f 63 75 73 20 74 0a 20 20 20  | .t........:error-autofocus.t.... | 
| d5a0 |  20 20 20 20 3a 73 69 6c 65 6e 74 2d 73 75 63 63    65 73 73 20 74 29 0a 20 20 20 20 28 66 75 6e 63  | ....:silent-success.t).....(func | 
| d5c0 |  61 6c 6c 20 23 27 62 72 6f 77 73 65 2d 75 72 6c    2d 64 65 66 61 75 6c 74 2d 62 72 6f 77 73 65 72  | all.#'browse-url-default-browser | 
| d5e0 |  20 75 72 6c 20 61 72 67 73 29 29 29 0a 0a 3b 3b    3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65  | .url.args)))..;;;###autoload.(de | 
| d600 |  66 75 6e 20 64 77 69 6d 2d 73 68 65 6c 6c 2d 63    6f 6d 6d 61 6e 64 73 2d 73 74 72 65 61 6d 2d 63  | fun.dwim-shell-commands-stream-c | 
| d620 |  6c 69 70 62 6f 61 72 64 2d 75 72 6c 20 28 29 0a    20 20 22 53 74 72 65 61 6d 20 63 6c 69 70 62 6f  | lipboard-url.()..."Stream.clipbo | 
| d640 |  61 72 64 20 55 52 4c 20 75 73 69 6e 67 20 6d 70    76 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69  | ard.URL.using.mpv."...(interacti | 
| d660 |  76 65 29 0a 20 20 28 63 6c 2d 61 73 73 65 72 74    20 28 73 74 72 69 6e 67 2d 6d 61 74 63 68 2d 70  | ve)...(cl-assert.(string-match-p | 
| d680 |  20 22 5e 68 74 74 70 5b 73 5d 3f 3a 2f 2f 22 20    28 63 75 72 72 65 6e 74 2d 6b 69 6c 6c 20 30 29  | ."^http[s]?://".(current-kill.0) | 
| d6a0 |  29 20 6e 69 6c 20 22 4e 6f 74 20 61 20 55 52 4c    22 29 0a 20 20 28 64 77 69 6d 2d 73 68 65 6c 6c  | ).nil."Not.a.URL")...(dwim-shell | 
| d6c0 |  2d 63 6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d 61 72 6b    65 64 2d 66 69 6c 65 73 0a 20 20 20 22 53 74 72  | -command-on-marked-files...."Str | 
| d6e0 |  65 61 6d 69 6e 67 22 0a 20 20 20 22 6d 70 76 20    2d 2d 67 65 6f 6d 65 74 72 79 3d 33 30 25 78 33  | eaming"...."mpv.--geometry=30%x3 | 
| d700 |  30 25 2b 31 30 30 25 2b 30 25 20 5c 22 3c 3c 63    62 3e 3e 5c 22 22 0a 20 20 20 3a 75 74 69 6c 73  | 0%+100%+0%.\"<<cb>>\""....:utils | 
| d720 |  20 22 6d 70 76 22 0a 20 20 20 3a 6e 6f 2d 70 72    6f 67 72 65 73 73 20 74 0a 20 20 20 3a 65 72 72  | ."mpv"....:no-progress.t....:err | 
| d740 |  6f 72 2d 61 75 74 6f 66 6f 63 75 73 20 74 0a 20    20 20 3a 73 69 6c 65 6e 74 2d 73 75 63 63 65 73  | or-autofocus.t....:silent-succes | 
| d760 |  73 20 74 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74    6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 64 77 69  | s.t))..;;;###autoload.(defun.dwi | 
| d780 |  6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 73    2d 64 6f 77 6e 6c 6f 61 64 2d 63 6c 69 70 62 6f  | m-shell-commands-download-clipbo | 
| d7a0 |  61 72 64 2d 73 74 72 65 61 6d 2d 75 72 6c 20 28    29 0a 20 20 22 44 6f 77 6e 6c 6f 61 64 20 63 6c  | ard-stream-url.()..."Download.cl | 
| d7c0 |  69 70 62 6f 61 72 64 20 55 52 4c 2e 22 0a 20 20    28 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20  | ipboard.URL."...(interactive)... | 
| d7e0 |  28 63 6c 2d 61 73 73 65 72 74 20 28 73 74 72 69    6e 67 2d 6d 61 74 63 68 2d 70 20 22 5e 68 74 74  | (cl-assert.(string-match-p."^htt | 
| d800 |  70 5b 73 5d 3f 3a 2f 2f 22 20 28 63 75 72 72 65    6e 74 2d 6b 69 6c 6c 20 30 29 29 20 6e 69 6c 20  | p[s]?://".(current-kill.0)).nil. | 
| d820 |  22 4e 6f 74 20 61 20 55 52 4c 22 29 0a 20 20 28    64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61  | "Not.a.URL")...(dwim-shell-comma | 
| d840 |  6e 64 2d 6f 6e 2d 6d 61 72 6b 65 64 2d 66 69 6c    65 73 0a 20 20 20 22 44 6f 77 6e 6c 6f 61 64 69  | nd-on-marked-files...."Downloadi | 
| d860 |  6e 67 22 0a 20 20 20 22 79 6f 75 74 75 62 65 2d    64 6c 20 2d 2d 6e 65 77 6c 69 6e 65 20 2d 6f 20  | ng"...."youtube-dl.--newline.-o. | 
| d880 |  5c 22 7e 2f 44 6f 77 6e 6c 6f 61 64 73 2f 25 28    74 69 74 6c 65 29 73 2e 25 28 65 78 74 29 73 5c  | \"~/Downloads/%(title)s.%(ext)s\ | 
| d8a0 |  22 20 5c 22 3c 3c 63 62 3e 3e 5c 22 22 0a 20 20    20 3a 75 74 69 6c 73 20 22 79 6f 75 74 75 62 65  | ".\"<<cb>>\""....:utils."youtube | 
| d8c0 |  2d 64 6c 22 0a 20 20 20 3a 6e 6f 2d 70 72 6f 67    72 65 73 73 20 74 0a 20 20 20 3a 65 72 72 6f 72  | -dl"....:no-progress.t....:error | 
| d8e0 |  2d 61 75 74 6f 66 6f 63 75 73 20 74 0a 20 20 20    3a 6d 6f 6e 69 74 6f 72 2d 64 69 72 65 63 74 6f  | -autofocus.t....:monitor-directo | 
| d900 |  72 79 20 22 7e 2f 44 6f 77 6e 6c 6f 61 64 73 22    0a 20 20 20 3a 73 69 6c 65 6e 74 2d 73 75 63 63  | ry."~/Downloads"....:silent-succ | 
| d920 |  65 73 73 20 74 29 29 0a 0a 3b 3b 3b 23 23 23 61    75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 64  | ess.t))..;;;###autoload.(defun.d | 
| d940 |  77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e    64 73 2d 69 6d 61 67 65 2d 63 6c 65 61 72 2d 65  | wim-shell-commands-image-clear-e | 
| d960 |  78 69 66 2d 6d 65 74 61 64 61 74 61 20 28 29 0a    20 20 22 43 6c 65 61 72 20 45 58 49 46 20 6d 65  | xif-metadata.()..."Clear.EXIF.me | 
| d980 |  74 61 64 61 74 61 20 69 6e 20 69 6d 61 67 65 28    73 29 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74  | tadata.in.image(s)."...(interact | 
| d9a0 |  69 76 65 29 0a 20 20 28 64 77 69 6d 2d 73 68 65    6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d 61  | ive)...(dwim-shell-command-on-ma | 
| d9c0 |  72 6b 65 64 2d 66 69 6c 65 73 0a 20 20 20 22 56    69 65 77 20 45 58 49 46 22 0a 20 20 20 22 63 70  | rked-files...."View.EXIF"...."cp | 
| d9e0 |  20 27 3c 3c 66 3e 3e 27 20 27 3c 3c 66 6e 65 3e    3e 5f 63 6c 65 61 72 65 64 2e 3c 3c 65 3e 3e 27  | .'<<f>>'.'<<fne>>_cleared.<<e>>' | 
| da00 |  0a 20 20 20 20 65 78 69 66 74 6f 6f 6c 20 2d 61    6c 6c 3a 61 6c 6c 3d 20 2d 6f 76 65 72 77 72 69  | .....exiftool.-all:all=.-overwri | 
| da20 |  74 65 5f 6f 72 69 67 69 6e 61 6c 20 27 3c 3c 66    6e 65 3e 3e 5f 63 6c 65 61 72 65 64 2e 3c 3c 65  | te_original.'<<fne>>_cleared.<<e | 
| da40 |  3e 3e 27 22 0a 20 20 20 3a 75 74 69 6c 73 20 22    65 78 69 66 74 6f 6f 6c 22 29 29 0a 0a 3b 3b 3b  | >>'"....:utils."exiftool"))..;;; | 
| da60 |  23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66    75 6e 20 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f  | ###autoload.(defun.dwim-shell-co | 
| da80 |  6d 6d 61 6e 64 73 2d 69 6d 61 67 65 2d 73 63 61    6e 2d 63 6f 64 65 20 28 29 0a 20 20 22 53 63 61  | mmands-image-scan-code.()..."Sca | 
| daa0 |  6e 20 61 6e 79 20 63 6f 64 65 20 28 69 65 2e 20    71 72 2c 20 62 61 72 2c 20 65 74 63 29 20 66 72  | n.any.code.(ie..qr,.bar,.etc).fr | 
| dac0 |  6f 6d 20 69 6d 61 67 65 28 73 29 2e 22 0a 20 20    28 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20  | om.image(s)."...(interactive)... | 
| dae0 |  28 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d    61 6e 64 2d 6f 6e 2d 6d 61 72 6b 65 64 2d 66 69  | (dwim-shell-command-on-marked-fi | 
| db00 |  6c 65 73 0a 20 20 20 22 53 63 61 6e 20 63 6f 64    65 22 0a 20 20 20 22 7a 62 61 72 69 6d 67 20 2d  | les...."Scan.code"...."zbarimg.- | 
| db20 |  2d 71 75 69 65 74 20 27 3c 3c 66 3e 3e 27 22 0a    20 20 20 3a 75 74 69 6c 73 20 22 7a 62 61 72 69  | -quiet.'<<f>>'"....:utils."zbari | 
| db40 |  6d 67 22 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74    6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 64 77 69  | mg"))..;;;###autoload.(defun.dwi | 
| db60 |  6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 73    2d 69 6d 61 67 65 2d 65 78 69 66 2d 6d 65 74 61  | m-shell-commands-image-exif-meta | 
| db80 |  64 61 74 61 20 28 29 0a 20 20 22 56 69 65 77 20    45 58 49 46 20 6d 65 74 61 64 61 74 61 20 69 6e  | data.()..."View.EXIF.metadata.in | 
| dba0 |  20 69 6d 61 67 65 28 73 29 2e 22 0a 20 20 28 69    6e 74 65 72 61 63 74 69 76 65 29 0a 20 20 28 64  | .image(s)."...(interactive)...(d | 
| dbc0 |  77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e    64 2d 6f 6e 2d 6d 61 72 6b 65 64 2d 66 69 6c 65  | wim-shell-command-on-marked-file | 
| dbe0 |  73 0a 20 20 20 22 56 69 65 77 20 45 58 49 46 22    0a 20 20 20 22 65 78 69 66 74 6f 6f 6c 20 27 3c  | s...."View.EXIF"...."exiftool.'< | 
| dc00 |  3c 66 3e 3e 27 22 0a 20 20 20 3a 75 74 69 6c 73    20 22 65 78 69 66 74 6f 6f 6c 22 29 29 0a 0a 3b  | <f>>'"....:utils."exiftool"))..; | 
| dc20 |  3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64    65 66 75 6e 20 64 77 69 6d 2d 73 68 65 6c 6c 2d  | ;;###autoload.(defun.dwim-shell- | 
| dc40 |  63 6f 6d 6d 61 6e 64 73 2d 74 65 73 73 65 72 61    63 74 2d 6f 63 72 2d 74 65 78 74 2d 66 72 6f 6d  | commands-tesseract-ocr-text-from | 
| dc60 |  2d 69 6d 61 67 65 20 28 29 0a 20 20 22 45 78 74    72 61 63 74 20 74 65 78 74 20 66 72 6f 6d 20 69  | -image.()..."Extract.text.from.i | 
| dc80 |  6d 61 67 65 20 76 69 61 20 74 65 73 73 65 72 61    63 74 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74  | mage.via.tesseract."...(interact | 
| dca0 |  69 76 65 29 0a 20 20 28 64 77 69 6d 2d 73 68 65    6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d 61  | ive)...(dwim-shell-command-on-ma | 
| dcc0 |  72 6b 65 64 2d 66 69 6c 65 73 0a 20 20 20 22 45    78 74 72 61 63 74 20 74 65 78 74 20 66 72 6f 6d  | rked-files...."Extract.text.from | 
| dce0 |  20 69 6d 61 67 65 20 76 69 61 20 74 65 73 73 65    72 61 63 74 2e 22 0a 20 20 20 22 74 65 73 73 65  | .image.via.tesseract."...."tesse | 
| dd00 |  72 61 63 74 20 27 3c 3c 66 3e 3e 27 20 2d 22 0a    20 20 20 3a 75 74 69 6c 73 20 22 74 65 73 73 65  | ract.'<<f>>'.-"....:utils."tesse | 
| dd20 |  72 61 63 74 22 29 29 0a 0a 3b 3b 3b 23 23 23 61    75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 64  | ract"))..;;;###autoload.(defun.d | 
| dd40 |  77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e    64 73 2d 69 6d 61 67 65 2d 76 69 65 77 2d 6c 6f  | wim-shell-commands-image-view-lo | 
| dd60 |  63 61 74 69 6f 6e 2d 69 6e 2d 6f 70 65 6e 73 74    72 65 65 74 6d 61 70 20 28 29 0a 20 20 22 4f 70  | cation-in-openstreetmap.()..."Op | 
| dd80 |  65 6e 20 69 6d 61 67 65 28 73 29 20 6c 6f 63 61    74 69 6f 6e 20 69 6e 20 6d 61 70 2f 62 72 6f 77  | en.image(s).location.in.map/brow | 
| dda0 |  73 65 72 2e 22 0a 20 20 28 69 6e 74 65 72 61 63    74 69 76 65 29 0a 20 20 28 64 77 69 6d 2d 73 68  | ser."...(interactive)...(dwim-sh | 
| ddc0 |  65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d    61 72 6b 65 64 2d 66 69 6c 65 73 0a 20 20 20 22  | ell-command-on-marked-files...." | 
| dde0 |  42 72 6f 77 73 65 20 6c 6f 63 61 74 69 6f 6e 22    0a 20 20 20 22 6c 61 74 3d 5c 22 24 28 65 78 69  | Browse.location"...."lat=\"$(exi | 
| de00 |  66 74 6f 6f 6c 20 2d 63 73 76 20 2d 6e 20 2d 67    70 73 6c 61 74 69 74 75 64 65 20 2d 67 70 73 6c  | ftool.-csv.-n.-gpslatitude.-gpsl | 
| de20 |  6f 6e 67 69 74 75 64 65 20 27 3c 3c 66 3e 3e 27    20 7c 20 74 61 69 6c 20 2d 6e 20 31 20 7c 20 63  | ongitude.'<<f>>'.|.tail.-n.1.|.c | 
| de40 |  75 74 20 2d 73 20 2d 64 27 2c 27 20 2d 66 32 2d    32 29 5c 22 0a 20 20 20 20 69 66 20 5b 20 2d 7a  | ut.-s.-d','.-f2-2)\".....if.[.-z | 
| de60 |  20 5c 22 24 6c 61 74 5c 22 20 5d 3b 20 74 68 65    6e 0a 20 20 20 20 20 20 65 63 68 6f 20 5c 22 6e  | .\"$lat\".];.then.......echo.\"n | 
| de80 |  6f 20 6c 61 74 69 74 75 64 65 5c 22 0a 20 20 20    20 20 20 65 78 69 74 20 31 0a 20 20 20 20 66 69  | o.latitude\".......exit.1.....fi | 
| dea0 |  0a 20 20 20 20 6c 6f 6e 3d 5c 22 24 28 65 78 69    66 74 6f 6f 6c 20 2d 63 73 76 20 2d 6e 20 2d 67  | .....lon=\"$(exiftool.-csv.-n.-g | 
| dec0 |  70 73 6c 61 74 69 74 75 64 65 20 2d 67 70 73 6c    6f 6e 67 69 74 75 64 65 20 27 3c 3c 66 3e 3e 27  | pslatitude.-gpslongitude.'<<f>>' | 
| dee0 |  20 7c 20 74 61 69 6c 20 2d 6e 20 31 20 7c 20 63    75 74 20 2d 73 20 2d 64 27 2c 27 20 2d 66 33 2d  | .|.tail.-n.1.|.cut.-s.-d','.-f3- | 
| df00 |  33 29 5c 22 0a 20 20 20 20 69 66 20 5b 20 2d 7a    20 5c 22 24 6c 6f 6e 5c 22 20 5d 3b 20 74 68 65  | 3)\".....if.[.-z.\"$lon\".];.the | 
| df20 |  6e 0a 20 20 20 20 20 20 65 63 68 6f 20 5c 22 6e    6f 20 6c 6f 6e 67 69 74 75 64 65 5c 22 0a 20 20  | n.......echo.\"no.longitude\"... | 
| df40 |  20 20 20 20 65 78 69 74 20 31 0a 20 20 20 20 66    69 0a 20 20 20 20 69 66 20 5b 5b 20 24 4f 53 54  | ....exit.1.....fi.....if.[[.$OST | 
| df60 |  59 50 45 20 3d 3d 20 64 61 72 77 69 6e 2a 20 5d    5d 3b 20 74 68 65 6e 0a 20 20 20 20 20 20 6f 70  | YPE.==.darwin*.]];.then.......op | 
| df80 |  65 6e 20 5c 22 68 74 74 70 3a 2f 2f 77 77 77 2e    6f 70 65 6e 73 74 72 65 65 74 6d 61 70 2e 6f 72  | en.\"http://www.openstreetmap.or | 
| dfa0 |  67 2f 3f 6d 6c 61 74 3d 24 7b 6c 61 74 7d 26 6d    6c 6f 6e 3d 24 7b 6c 6f 6e 7d 26 6c 61 79 65 72  | g/?mlat=${lat}&mlon=${lon}&layer | 
| dfc0 |  73 3d 43 5c 22 0a 20 20 20 20 65 6c 73 65 0a 20    20 20 20 20 20 78 64 67 2d 6f 70 65 6e 20 5c 22  | s=C\".....else.......xdg-open.\" | 
| dfe0 |  68 74 74 70 3a 2f 2f 77 77 77 2e 6f 70 65 6e 73    74 72 65 65 74 6d 61 70 2e 6f 72 67 2f 3f 6d 6c  | http://www.openstreetmap.org/?ml | 
| e000 |  61 74 3d 24 7b 6c 61 74 7d 26 6d 6c 6f 6e 3d 24    7b 6c 6f 6e 7d 26 6c 61 79 65 72 73 3d 43 5c 22  | at=${lat}&mlon=${lon}&layers=C\" | 
| e020 |  0a 20 20 20 20 66 69 22 0a 20 20 20 3a 75 74 69    6c 73 20 22 65 78 69 66 74 6f 6f 6c 22 0a 20 20  | .....fi"....:utils."exiftool"... | 
| e040 |  20 3a 65 72 72 6f 72 2d 61 75 74 6f 66 6f 63 75    73 20 74 0a 20 20 20 3a 73 69 6c 65 6e 74 2d 73  | .:error-autofocus.t....:silent-s | 
| e060 |  75 63 63 65 73 73 20 74 29 29 0a 0a 3b 3b 3b 23    23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75  | uccess.t))..;;;###autoload.(defu | 
| e080 |  6e 20 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d    6d 61 6e 64 73 2d 69 6d 61 67 65 2d 72 65 76 65  | n.dwim-shell-commands-image-reve | 
| e0a0 |  72 73 65 2d 67 65 6f 63 6f 64 65 2d 6c 6f 63 61    74 69 6f 6e 20 28 29 0a 20 20 22 52 65 76 65 72  | rse-geocode-location.()..."Rever | 
| e0c0 |  73 65 20 67 65 6f 63 6f 64 65 20 69 6d 61 67 65    28 73 29 20 6c 6f 63 61 74 69 6f 6e 2e 22 0a 20  | se.geocode.image(s).location.".. | 
| e0e0 |  20 28 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20    20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d  | .(interactive)...(dwim-shell-com | 
| e100 |  6d 61 6e 64 2d 6f 6e 2d 6d 61 72 6b 65 64 2d 66    69 6c 65 73 0a 20 20 20 22 52 65 76 65 72 73 65  | mand-on-marked-files...."Reverse | 
| e120 |  20 67 65 6f 63 6f 64 65 22 0a 20 20 20 22 6c 61    74 3d 5c 22 24 28 65 78 69 66 74 6f 6f 6c 20 2d  | .geocode"...."lat=\"$(exiftool.- | 
| e140 |  63 73 76 20 2d 6e 20 2d 67 70 73 6c 61 74 69 74    75 64 65 20 2d 67 70 73 6c 6f 6e 67 69 74 75 64  | csv.-n.-gpslatitude.-gpslongitud | 
| e160 |  65 20 27 3c 3c 66 3e 3e 27 20 7c 20 74 61 69 6c    20 2d 6e 20 31 20 7c 20 63 75 74 20 2d 73 20 2d  | e.'<<f>>'.|.tail.-n.1.|.cut.-s.- | 
| e180 |  64 27 2c 27 20 2d 66 32 2d 32 29 5c 22 0a 20 20    20 20 69 66 20 5b 20 2d 7a 20 5c 22 24 6c 61 74  | d','.-f2-2)\".....if.[.-z.\"$lat | 
| e1a0 |  5c 22 20 5d 3b 20 74 68 65 6e 0a 20 20 20 20 20    20 65 63 68 6f 20 5c 22 6e 6f 20 6c 61 74 69 74  | \".];.then.......echo.\"no.latit | 
| e1c0 |  75 64 65 5c 22 0a 20 20 20 20 20 20 65 78 69 74    20 31 0a 20 20 20 20 66 69 0a 20 20 20 20 6c 6f  | ude\".......exit.1.....fi.....lo | 
| e1e0 |  6e 3d 5c 22 24 28 65 78 69 66 74 6f 6f 6c 20 2d    63 73 76 20 2d 6e 20 2d 67 70 73 6c 61 74 69 74  | n=\"$(exiftool.-csv.-n.-gpslatit | 
| e200 |  75 64 65 20 2d 67 70 73 6c 6f 6e 67 69 74 75 64    65 20 27 3c 3c 66 3e 3e 27 20 7c 20 74 61 69 6c  | ude.-gpslongitude.'<<f>>'.|.tail | 
| e220 |  20 2d 6e 20 31 20 7c 20 63 75 74 20 2d 73 20 2d    64 27 2c 27 20 2d 66 33 2d 33 29 5c 22 0a 20 20  | .-n.1.|.cut.-s.-d','.-f3-3)\"... | 
| e240 |  20 20 69 66 20 5b 20 2d 7a 20 5c 22 24 6c 6f 6e    5c 22 20 5d 3b 20 74 68 65 6e 0a 20 20 20 20 20  | ..if.[.-z.\"$lon\".];.then...... | 
| e260 |  20 65 63 68 6f 20 5c 22 6e 6f 20 6c 6f 6e 67 69    74 75 64 65 5c 22 0a 20 20 20 20 20 20 65 78 69  | .echo.\"no.longitude\".......exi | 
| e280 |  74 20 31 0a 20 20 20 20 66 69 0a 20 20 20 20 6a    73 6f 6e 3d 24 28 63 75 72 6c 20 5c 22 68 74 74  | t.1.....fi.....json=$(curl.\"htt | 
| e2a0 |  70 73 3a 2f 2f 6e 6f 6d 69 6e 61 74 69 6d 2e 6f    70 65 6e 73 74 72 65 65 74 6d 61 70 2e 6f 72 67  | ps://nominatim.openstreetmap.org | 
| e2c0 |  2f 72 65 76 65 72 73 65 3f 66 6f 72 6d 61 74 3d    6a 73 6f 6e 26 61 63 63 65 70 74 2d 6c 61 6e 67  | /reverse?format=json&accept-lang | 
| e2e0 |  75 61 67 65 3d 65 6e 26 6c 61 74 3d 24 7b 6c 61    74 7d 26 6c 6f 6e 3d 24 7b 6c 6f 6e 7d 26 7a 6f  | uage=en&lat=${lat}&lon=${lon}&zo | 
| e300 |  6f 6d 3d 31 38 26 61 64 64 72 65 73 73 64 65 74    61 69 6c 73 3d 31 5c 22 29 0a 20 20 20 20 65 63  | om=18&addressdetails=1\").....ec | 
| e320 |  68 6f 20 5c 22 6a 73 6f 6e 5f 73 74 61 72 74 20    24 6a 73 6f 6e 20 6a 73 6f 6e 5f 65 6e 64 5c 22  | ho.\"json_start.$json.json_end\" | 
| e340 |  22 0a 20 20 20 3a 75 74 69 6c 73 20 27 28 22 65    78 69 66 74 6f 6f 6c 22 20 22 63 75 72 6c 22 29  | "....:utils.'("exiftool"."curl") | 
| e360 |  0a 20 20 20 3a 73 69 6c 65 6e 74 2d 73 75 63 63    65 73 73 20 74 0a 20 20 20 3a 65 72 72 6f 72 2d  | ....:silent-success.t....:error- | 
| e380 |  61 75 74 6f 66 6f 63 75 73 20 74 0a 20 20 20 3a    6f 6e 2d 63 6f 6d 70 6c 65 74 69 6f 6e 20 28 6c  | autofocus.t....:on-completion.(l | 
| e3a0 |  61 6d 62 64 61 20 28 62 75 66 66 65 72 20 5f 70    72 6f 63 65 73 73 29 0a 20 20 20 20 20 20 20 20  | ambda.(buffer._process)......... | 
| e3c0 |  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 | 
| e3e0 |  20 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 28 67  | .buffer.......................(g | 
| e400 |  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 20 20  | oto-char.(point-min))........... | 
| e420 |  20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74    20 28 28 6d 61 74 63 68 65 73 20 27 28 29 29 29  | ............(let.((matches.'())) | 
| e440 |  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 77 68 69 6c 65 20  | .........................(while. | 
| e460 |  28 72 65 2d 73 65 61 72 63 68 2d 66 6f 72 77 61    72 64 20 22 5e 6a 73 6f 6e 5f 73 74 61 72 74 5c  | (re-search-forward."^json_start\ | 
| e480 |  5c 28 2e 2a 3f 5c 5c 29 6a 73 6f 6e 5f 65 6e 64    22 20 6e 69 6c 20 74 29 0a 20 20 20 20 20 20 20  | \(.*?\\)json_end".nil.t)........ | 
| e4a0 |  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 6d 61 74 63 68 2d  | ...................(push.(match- | 
| e4c0 |  73 74 72 69 6e 67 20 31 29 20 6d 61 74 63 68 65    73 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | string.1).matches))............. | 
| e4e0 |  20 20 20 20 20 20 20 20 20 20 20 20 28 6d 65 73    73 61 67 65 20 22 25 73 22 20 28 73 74 72 69 6e  | ............(message."%s".(strin | 
| e500 |  67 2d 6a 6f 69 6e 20 28 73 65 71 2d 6d 61 70 20    28 6c 61 6d 62 64 61 20 28 6a 73 6f 6e 29 0a 20  | g-join.(seq-map.(lambda.(json).. | 
| e520 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| e540 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 61  | .............................(ma | 
| e560 |  70 2d 65 6c 74 20 28 6a 73 6f 6e 2d 70 61 72 73    65 2d 73 74 72 69 6e 67 20 6a 73 6f 6e 20 3a 6f  | p-elt.(json-parse-string.json.:o | 
| e580 |  62 6a 65 63 74 2d 74 79 70 65 20 27 61 6c 69 73    74 29 20 27 64 69 73 70 6c 61 79 5f 6e 61 6d 65  | bject-type.'alist).'display_name | 
| e5a0 |  29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | )).............................. | 
| e5c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d  | ...............................m | 
| e5e0 |  61 74 63 68 65 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  | atches)......................... | 
| e600 |  20 20 20 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 6e 22 29  | ..........................."\n") | 
| e620 |  29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 28 6b 69 6c 6c 2d 62  | )).......................(kill-b | 
| e640 |  75 66 66 65 72 20 62 75 66 66 65 72 29 29 29 29    29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61  | uffer.buffer)))))..;;;###autoloa | 
| e660 |  64 0a 28 64 65 66 75 6e 20 64 77 69 6d 2d 73 68    65 6c 6c 2d 63 6f 6d 6d 61 6e 64 73 2d 69 6d 61  | d.(defun.dwim-shell-commands-ima | 
| e680 |  67 65 2d 68 6f 72 69 7a 6f 6e 74 61 6c 2d 66 6c    69 70 20 28 29 0a 20 20 22 48 6f 72 69 7a 6f 6e  | ge-horizontal-flip.()..."Horizon | 
| e6a0 |  74 61 6c 6c 79 20 66 6c 69 70 20 69 6d 61 67 65    28 73 29 2e 22 0a 20 20 28 69 6e 74 65 72 61 63  | tally.flip.image(s)."...(interac | 
| e6c0 |  74 69 76 65 29 0a 20 20 28 64 77 69 6d 2d 73 68    65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d  | tive)...(dwim-shell-command-on-m | 
| e6e0 |  61 72 6b 65 64 2d 66 69 6c 65 73 0a 20 20 20 22    49 6d 61 67 65 20 68 6f 72 69 7a 6f 6e 74 61 6c  | arked-files...."Image.horizontal | 
| e700 |  20 66 6c 69 70 22 0a 20 20 20 22 63 6f 6e 76 65    72 74 20 2d 76 65 72 62 6f 73 65 20 2d 66 6c 6f  | .flip"...."convert.-verbose.-flo | 
| e720 |  70 20 27 3c 3c 66 3e 3e 27 20 27 3c 3c 66 6e 65    3e 3e 5f 68 5f 66 6c 69 70 70 65 64 2e 3c 3c 65  | p.'<<f>>'.'<<fne>>_h_flipped.<<e | 
| e740 |  3e 3e 27 22 0a 20 20 20 3a 75 74 69 6c 73 20 22    63 6f 6e 76 65 72 74 22 29 29 0a 0a 3b 3b 3b 23  | >>'"....:utils."convert"))..;;;# | 
| e760 |  23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75    6e 20 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d  | ##autoload.(defun.dwim-shell-com | 
| e780 |  6d 61 6e 64 73 2d 69 6d 61 67 65 2d 76 65 72 74    69 63 61 6c 2d 66 6c 69 70 20 28 29 0a 20 20 22  | mands-image-vertical-flip.()..." | 
| e7a0 |  48 6f 72 69 7a 6f 6e 74 61 6c 6c 79 20 66 6c 69    70 20 69 6d 61 67 65 28 73 29 2e 22 0a 20 20 28  | Horizontally.flip.image(s)."...( | 
| e7c0 |  69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20 28    64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61  | interactive)...(dwim-shell-comma | 
| e7e0 |  6e 64 2d 6f 6e 2d 6d 61 72 6b 65 64 2d 66 69 6c    65 73 0a 20 20 20 22 49 6d 61 67 65 20 76 65 72  | nd-on-marked-files...."Image.ver | 
| e800 |  74 69 63 61 6c 20 66 6c 69 70 22 0a 20 20 20 22    63 6f 6e 76 65 72 74 20 2d 76 65 72 62 6f 73 65  | tical.flip"...."convert.-verbose | 
| e820 |  20 2d 66 6c 69 70 20 27 3c 3c 66 3e 3e 27 20 27    3c 3c 66 6e 65 3e 3e 5f 76 5f 66 6c 69 70 70 65  | .-flip.'<<f>>'.'<<fne>>_v_flippe | 
| e840 |  64 2e 3c 3c 65 3e 3e 27 22 0a 20 20 20 3a 75 74    69 6c 73 20 22 63 6f 6e 76 65 72 74 22 29 29 0a  | d.<<e>>'"....:utils."convert")). | 
| e860 |  0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a    28 64 65 66 75 6e 20 64 77 69 6d 2d 73 68 65 6c  | .;;;###autoload.(defun.dwim-shel | 
| e880 |  6c 2d 63 6f 6d 6d 61 6e 64 73 2d 69 6d 61 67 65    2d 74 6f 2d 6a 70 67 20 28 29 0a 20 20 22 43 6f  | l-commands-image-to-jpg.()..."Co | 
| e8a0 |  6e 76 65 72 74 20 61 6c 6c 20 6d 61 72 6b 65 64    20 69 6d 61 67 65 73 20 74 6f 20 6a 70 67 28 73  | nvert.all.marked.images.to.jpg(s | 
| e8c0 |  29 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69    76 65 29 0a 20 20 28 64 77 69 6d 2d 73 68 65 6c  | )."...(interactive)...(dwim-shel | 
| e8e0 |  6c 2d 63 6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d 61 72    6b 65 64 2d 66 69 6c 65 73 0a 20 20 20 22 43 6f  | l-command-on-marked-files...."Co | 
| e900 |  6e 76 65 72 74 20 74 6f 20 6a 70 67 22 0a 20 20    20 22 63 6f 6e 76 65 72 74 20 2d 76 65 72 62 6f  | nvert.to.jpg"...."convert.-verbo | 
| e920 |  73 65 20 27 3c 3c 66 3e 3e 27 20 27 3c 3c 66 6e    65 3e 3e 2e 6a 70 67 27 22 0a 20 20 20 3a 75 74  | se.'<<f>>'.'<<fne>>.jpg'"....:ut | 
| e940 |  69 6c 73 20 22 63 6f 6e 76 65 72 74 22 29 29 0a    0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a  | ils."convert"))..;;;###autoload. | 
| e960 |  28 64 65 66 75 6e 20 64 77 69 6d 2d 73 68 65 6c    6c 2d 63 6f 6d 6d 61 6e 64 73 2d 69 6d 61 67 65  | (defun.dwim-shell-commands-image | 
| e980 |  2d 74 6f 2d 70 6e 67 20 28 29 0a 20 20 22 43 6f    6e 76 65 72 74 20 61 6c 6c 20 6d 61 72 6b 65 64  | -to-png.()..."Convert.all.marked | 
| e9a0 |  20 69 6d 61 67 65 73 20 74 6f 20 70 6e 67 28 73    29 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69  | .images.to.png(s)."...(interacti | 
| e9c0 |  76 65 29 0a 20 20 28 64 77 69 6d 2d 73 68 65 6c    6c 2d 63 6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d 61 72  | ve)...(dwim-shell-command-on-mar | 
| e9e0 |  6b 65 64 2d 66 69 6c 65 73 0a 20 20 20 22 43 6f    6e 76 65 72 74 20 74 6f 20 70 6e 67 22 0a 20 20  | ked-files...."Convert.to.png"... | 
| ea00 |  20 22 63 6f 6e 76 65 72 74 20 2d 76 65 72 62 6f    73 65 20 27 3c 3c 66 3e 3e 27 20 27 3c 3c 66 6e  | ."convert.-verbose.'<<f>>'.'<<fn | 
| ea20 |  65 3e 3e 2e 70 6e 67 27 22 0a 20 20 20 3a 75 74    69 6c 73 20 22 63 6f 6e 76 65 72 74 22 29 29 0a  | e>>.png'"....:utils."convert")). | 
| ea40 |  0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a    28 64 65 66 75 6e 20 64 77 69 6d 2d 73 68 65 6c  | .;;;###autoload.(defun.dwim-shel | 
| ea60 |  6c 2d 63 6f 6d 6d 61 6e 64 73 2d 73 76 67 2d 74    6f 2d 70 6e 67 20 28 29 0a 20 20 22 43 6f 6e 76  | l-commands-svg-to-png.()..."Conv | 
| ea80 |  65 72 74 20 61 6c 6c 20 6d 61 72 6b 65 64 20 73    76 67 28 73 29 20 74 6f 20 70 6e 67 28 73 29 2e  | ert.all.marked.svg(s).to.png(s). | 
| eaa0 |  22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65    29 0a 20 20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d  | "...(interactive)...(dwim-shell- | 
| eac0 |  63 6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d 61 72 6b 65    64 2d 66 69 6c 65 73 0a 20 20 20 22 43 6f 6e 76  | command-on-marked-files...."Conv | 
| eae0 |  65 72 74 20 74 6f 20 70 6e 67 22 0a 20 20 20 22    72 73 76 67 2d 63 6f 6e 76 65 72 74 20 2d 62 20  | ert.to.png"...."rsvg-convert.-b. | 
| eb00 |  77 68 69 74 65 20 27 3c 3c 66 3e 3e 27 20 2d 66    20 70 6e 67 20 2d 6f 20 27 3c 3c 66 6e 65 3e 3e  | white.'<<f>>'.-f.png.-o.'<<fne>> | 
| eb20 |  2e 70 6e 67 27 22 0a 20 20 20 3a 75 74 69 6c 73    20 22 72 73 76 67 2d 63 6f 6e 76 65 72 74 22 29  | .png'"....:utils."rsvg-convert") | 
| eb40 |  29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61    64 0a 28 64 65 66 75 6e 20 64 77 69 6d 2d 73 68  | )..;;;###autoload.(defun.dwim-sh | 
| eb60 |  65 6c 6c 2d 63 6f 6d 6d 61 6e 64 73 2d 73 76 67    2d 74 6f 2d 66 61 76 69 63 6f 6e 73 20 28 29 0a  | ell-commands-svg-to-favicons.(). | 
| eb80 |  20 20 22 43 6f 6e 76 65 72 74 20 73 76 67 20 74    6f 20 63 6f 6d 6d 6f 6e 20 66 61 76 69 63 6f 6e  | .."Convert.svg.to.common.favicon | 
| eba0 |  73 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69    76 65 29 0a 20 20 28 64 77 69 6d 2d 73 68 65 6c  | s."...(interactive)...(dwim-shel | 
| ebc0 |  6c 2d 63 6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d 61 72    6b 65 64 2d 66 69 6c 65 73 0a 20 20 20 22 43 72  | l-command-on-marked-files...."Cr | 
| ebe0 |  65 61 74 65 20 66 61 76 69 63 6f 6e 73 22 0a 20    20 20 22 65 63 68 6f 20 27 3c 6c 69 6e 6b 20 72  | eate.favicons"...."echo.'<link.r | 
| ec00 |  65 6c 3d 5c 22 69 63 6f 6e 5c 22 20 74 79 70 65    3d 5c 22 69 6d 61 67 65 2f 73 76 67 2b 78 6d 6c  | el=\"icon\".type=\"image/svg+xml | 
| ec20 |  5c 22 20 68 72 65 66 3d 5c 22 3c 3c 66 3e 3e 5c    22 3e 27 0a 20 20 20 72 73 76 67 2d 63 6f 6e 76  | \".href=\"<<f>>\">'....rsvg-conv | 
| ec40 |  65 72 74 20 2d 6f 20 27 3c 3c 66 6e 65 3e 3e 2d    31 36 2e 70 6e 67 27 20 2d 77 20 31 36 20 2d 68  | ert.-o.'<<fne>>-16.png'.-w.16.-h | 
| ec60 |  20 31 36 20 27 3c 3c 66 3e 3e 27 0a 20 20 20 65    63 68 6f 20 27 3c 6c 69 6e 6b 20 72 65 6c 3d 5c  | .16.'<<f>>'....echo.'<link.rel=\ | 
| ec80 |  22 69 63 6f 6e 5c 22 20 74 79 70 65 3d 5c 22 69    6d 61 67 65 2f 70 6e 67 5c 22 20 68 72 65 66 3d  | "icon\".type=\"image/png\".href= | 
| eca0 |  5c 22 3c 3c 66 6e 65 3e 3e 2d 31 36 2e 70 6e 67    5c 22 20 73 69 7a 65 73 3d 5c 22 31 36 78 31 36  | \"<<fne>>-16.png\".sizes=\"16x16 | 
| ecc0 |  5c 22 3e 27 0a 20 20 20 72 73 76 67 2d 63 6f 6e    76 65 72 74 20 2d 6f 20 27 3c 3c 66 6e 65 3e 3e  | \">'....rsvg-convert.-o.'<<fne>> | 
| ece0 |  2d 33 32 2e 70 6e 67 27 20 2d 77 20 33 32 20 2d    68 20 33 32 20 27 3c 3c 66 3e 3e 27 0a 20 20 20  | -32.png'.-w.32.-h.32.'<<f>>'.... | 
| ed00 |  65 63 68 6f 20 27 3c 6c 69 6e 6b 20 72 65 6c 3d    5c 22 69 63 6f 6e 5c 22 20 74 79 70 65 3d 5c 22  | echo.'<link.rel=\"icon\".type=\" | 
| ed20 |  69 6d 61 67 65 2f 70 6e 67 5c 22 20 68 72 65 66    3d 5c 22 3c 3c 66 6e 65 3e 3e 2d 33 32 2e 70 6e  | image/png\".href=\"<<fne>>-32.pn | 
| ed40 |  67 5c 22 20 73 69 7a 65 73 3d 5c 22 33 32 78 33    32 5c 22 3e 27 0a 20 20 20 72 73 76 67 2d 63 6f  | g\".sizes=\"32x32\">'....rsvg-co | 
| ed60 |  6e 76 65 72 74 20 2d 6f 20 27 3c 3c 66 6e 65 3e    3e 2d 34 38 2e 70 6e 67 27 20 2d 77 20 34 38 20  | nvert.-o.'<<fne>>-48.png'.-w.48. | 
| ed80 |  2d 68 20 34 38 20 27 3c 3c 66 3e 3e 27 0a 20 20    20 65 63 68 6f 20 27 3c 6c 69 6e 6b 20 72 65 6c  | -h.48.'<<f>>'....echo.'<link.rel | 
| eda0 |  3d 5c 22 69 63 6f 6e 5c 22 20 74 79 70 65 3d 5c    22 69 6d 61 67 65 2f 70 6e 67 5c 22 20 68 72 65  | =\"icon\".type=\"image/png\".hre | 
| edc0 |  66 3d 5c 22 3c 3c 66 6e 65 3e 3e 2d 34 38 2e 70    6e 67 5c 22 20 73 69 7a 65 73 3d 5c 22 34 38 78  | f=\"<<fne>>-48.png\".sizes=\"48x | 
| ede0 |  34 38 5c 22 3e 27 0a 20 20 20 63 6f 6e 76 65 72    74 20 27 3c 3c 66 6e 65 3e 3e 2d 31 36 2e 70 6e  | 48\">'....convert.'<<fne>>-16.pn | 
| ee00 |  67 27 20 27 3c 3c 66 6e 65 3e 3e 2d 33 32 2e 70    6e 67 27 20 27 3c 3c 66 6e 65 3e 3e 2d 34 38 2e  | g'.'<<fne>>-32.png'.'<<fne>>-48. | 
| ee20 |  70 6e 67 27 20 27 3c 3c 66 6e 65 3e 3e 2e 69 63    6f 27 0a 20 20 20 65 63 68 6f 20 27 3c 6c 69 6e  | png'.'<<fne>>.ico'....echo.'<lin | 
| ee40 |  6b 20 72 65 6c 3d 5c 22 69 63 6f 6e 5c 22 20 74    79 70 65 3d 5c 22 69 6d 61 67 65 2f 78 2d 69 63  | k.rel=\"icon\".type=\"image/x-ic | 
| ee60 |  6f 6e 5c 22 20 68 72 65 66 3d 5c 22 2f 27 3c 3c    66 6e 65 3e 3e 2e 69 63 6f 27 5c 22 3e 27 0a 20  | on\".href=\"/'<<fne>>.ico'\">'.. | 
| ee80 |  20 20 72 73 76 67 2d 63 6f 6e 76 65 72 74 20 2d    6f 20 27 3c 3c 66 6e 65 3e 3e 2d 36 34 2e 70 6e  | ..rsvg-convert.-o.'<<fne>>-64.pn | 
| eea0 |  67 27 20 2d 77 20 36 34 20 2d 68 20 36 34 20 27    3c 3c 66 3e 3e 27 0a 20 20 20 65 63 68 6f 20 27  | g'.-w.64.-h.64.'<<f>>'....echo.' | 
| eec0 |  3c 6c 69 6e 6b 20 72 65 6c 3d 5c 22 69 63 6f 6e    5c 22 20 74 79 70 65 3d 5c 22 69 6d 61 67 65 2f  | <link.rel=\"icon\".type=\"image/ | 
| eee0 |  70 6e 67 5c 22 20 68 72 65 66 3d 5c 22 3c 3c 66    6e 65 3e 3e 2d 36 34 2e 70 6e 67 5c 22 20 73 69  | png\".href=\"<<fne>>-64.png\".si | 
| ef00 |  7a 65 73 3d 5c 22 36 34 78 36 34 5c 22 3e 27 0a    20 20 20 72 73 76 67 2d 63 6f 6e 76 65 72 74 20  | zes=\"64x64\">'....rsvg-convert. | 
| ef20 |  2d 6f 20 27 3c 3c 66 6e 65 3e 3e 2d 31 38 30 2e    70 6e 67 27 20 2d 77 20 31 38 30 20 2d 68 20 31  | -o.'<<fne>>-180.png'.-w.180.-h.1 | 
| ef40 |  38 30 20 27 3c 3c 66 3e 3e 27 0a 20 20 20 65 63    68 6f 20 27 3c 6c 69 6e 6b 20 72 65 6c 3d 5c 22  | 80.'<<f>>'....echo.'<link.rel=\" | 
| ef60 |  61 70 70 6c 65 2d 74 6f 75 63 68 2d 69 63 6f 6e    5c 22 20 68 72 65 66 3d 5c 22 3c 3c 66 6e 65 3e  | apple-touch-icon\".href=\"<<fne> | 
| ef80 |  3e 2d 31 38 30 2e 70 6e 67 5c 22 20 73 69 7a 65    73 3d 5c 22 31 38 30 78 31 38 30 5c 22 3e 27 0a  | >-180.png\".sizes=\"180x180\">'. | 
| efa0 |  20 20 20 72 65 61 64 20 2d 6e 20 31 20 2d 73 20    2d 72 22 0a 20 20 20 3a 65 78 74 65 6e 73 69 6f  | ...read.-n.1.-s.-r"....:extensio | 
| efc0 |  6e 73 20 22 73 76 67 22 0a 20 20 20 3a 75 74 69    6c 73 20 27 28 22 63 6f 6e 76 65 72 74 22 20 22  | ns."svg"....:utils.'("convert"." | 
| efe0 |  72 73 76 67 2d 63 6f 6e 76 65 72 74 22 29 0a 20    20 20 3a 66 6f 63 75 73 2d 6e 6f 77 20 74 29 29  | rsvg-convert")....:focus-now.t)) | 
| f000 |  0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64    0a 28 64 65 66 75 6e 20 64 77 69 6d 2d 73 68 65  | ..;;;###autoload.(defun.dwim-she | 
| f020 |  6c 6c 2d 63 6f 6d 6d 61 6e 64 73 2d 6d 61 6b 65    2d 74 72 61 6e 73 70 61 72 65 6e 74 2d 70 6e 67  | ll-commands-make-transparent-png | 
| f040 |  20 28 29 0a 20 20 22 43 72 65 61 74 65 20 61 20    74 72 61 6e 73 70 61 72 65 6e 74 20 70 6e 67 2e  | .()..."Create.a.transparent.png. | 
| f060 |  22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65    29 0a 20 20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d  | "...(interactive)...(dwim-shell- | 
| f080 |  63 6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d 61 72 6b 65    64 2d 66 69 6c 65 73 0a 20 20 20 22 43 72 65 61  | command-on-marked-files...."Crea | 
| f0a0 |  74 65 20 74 72 61 6e 73 70 61 72 65 6e 74 20 70    6e 67 22 0a 20 20 20 22 63 6f 6e 76 65 72 74 20  | te.transparent.png"...."convert. | 
| f0c0 |  2d 76 65 72 62 6f 73 65 20 2d 73 69 7a 65 20 3c    3c 77 69 64 74 68 3a 32 30 30 3e 3e 78 3c 3c 68  | -verbose.-size.<<width:200>>x<<h | 
| f0e0 |  65 69 67 68 74 3a 32 30 30 3e 3e 20 78 63 3a 6e    6f 6e 65 20 27 3c 3c 65 6d 70 74 79 3c 3c 77 69  | eight:200>>.xc:none.'<<empty<<wi | 
| f100 |  64 74 68 3a 32 30 30 3e 3e 78 3c 3c 68 65 69 67    68 74 3a 32 30 30 3e 3e 2e 70 6e 67 28 75 29 3e  | dth:200>>x<<height:200>>.png(u)> | 
| f120 |  3e 27 22 0a 20 20 20 3a 75 74 69 6c 73 20 22 63    6f 6e 76 65 72 74 22 29 29 0a 0a 3b 3b 3b 23 23  | >'"....:utils."convert"))..;;;## | 
| f140 |  23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e    20 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d  | #autoload.(defun.dwim-shell-comm | 
| f160 |  61 6e 64 73 2d 6a 6f 69 6e 2d 61 73 2d 70 64 66    20 28 29 0a 20 20 22 4a 6f 69 6e 20 61 6c 6c 20  | ands-join-as-pdf.()..."Join.all. | 
| f180 |  6d 61 72 6b 65 64 20 69 6d 61 67 65 73 20 61 73    20 61 20 73 69 6e 67 6c 65 20 70 64 66 2e 22 0a  | marked.images.as.a.single.pdf.". | 
| f1a0 |  20 20 28 69 6e 74 65 72 61 63 74 69 76 65 29 0a    20 20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f  | ..(interactive)...(dwim-shell-co | 
| f1c0 |  6d 6d 61 6e 64 2d 6f 6e 2d 6d 61 72 6b 65 64 2d    66 69 6c 65 73 0a 20 20 20 22 4a 6f 69 6e 20 61  | mmand-on-marked-files...."Join.a | 
| f1e0 |  73 20 70 64 66 22 0a 20 20 20 28 66 6f 72 6d 61    74 20 22 63 6f 6e 76 65 72 74 20 2d 76 65 72 62  | s.pdf"....(format."convert.-verb | 
| f200 |  6f 73 65 20 27 3c 3c 2a 3e 3e 27 20 27 3c 3c 25    73 28 75 29 3e 3e 27 22 0a 20 20 20 20 20 20 20  | ose.'<<*>>'.'<<%s(u)>>'"........ | 
| f220 |  20 20 20 20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d    63 6f 6d 6d 61 6e 64 2d 72 65 61 64 2d 66 69 6c  | ....(dwim-shell-command-read-fil | 
| f240 |  65 2d 6e 61 6d 65 0a 20 20 20 20 20 20 20 20 20    20 20 20 22 4a 6f 69 6e 20 61 73 20 70 64 66 20  | e-name............."Join.as.pdf. | 
| f260 |  6e 61 6d 65 64 20 28 64 65 66 61 75 6c 74 20 5c    22 6a 6f 69 6e 65 64 2e 70 64 66 5c 22 29 3a 20  | named.(default.\"joined.pdf\"):. | 
| f280 |  22 0a 20 20 20 20 20 20 20 20 20 20 20 20 3a 65    78 74 65 6e 73 69 6f 6e 20 22 70 64 66 22 0a 20  | ".............:extension."pdf".. | 
| f2a0 |  20 20 20 20 20 20 20 20 20 20 20 3a 64 65 66 61    75 6c 74 20 22 6a 6f 69 6e 65 64 2e 70 64 66 22  | ...........:default."joined.pdf" | 
| f2c0 |  29 29 0a 20 20 20 3a 75 74 69 6c 73 20 22 63 6f    6e 76 65 72 74 22 29 29 0a 0a 3b 3b 3b 23 23 23  | ))....:utils."convert"))..;;;### | 
| f2e0 |  61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20    64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61  | autoload.(defun.dwim-shell-comma | 
| f300 |  6e 64 73 2d 6b 65 65 70 2d 70 64 66 2d 70 61 67    65 20 28 29 0a 20 20 22 4b 65 65 70 20 61 20 70  | nds-keep-pdf-page.()..."Keep.a.p | 
| f320 |  61 67 65 20 66 72 6f 6d 20 70 64 66 2e 22 0a 20    20 28 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20  | age.from.pdf."...(interactive).. | 
| f340 |  20 28 6c 65 74 20 28 28 70 61 67 65 2d 6e 75 6d    20 28 72 65 61 64 2d 6e 75 6d 62 65 72 20 22 4b  | .(let.((page-num.(read-number."K | 
| f360 |  65 65 70 20 70 61 67 65 20 6e 75 6d 62 65 72 3a    20 22 20 31 29 29 29 0a 20 20 20 20 28 64 77 69  | eep.page.number:.".1))).....(dwi | 
| f380 |  6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d    6f 6e 2d 6d 61 72 6b 65 64 2d 66 69 6c 65 73 0a  | m-shell-command-on-marked-files. | 
| f3a0 |  20 20 20 20 20 22 4b 65 65 70 20 70 64 66 20 70    61 67 65 22 0a 20 20 20 20 20 28 66 6f 72 6d 61  | ....."Keep.pdf.page"......(forma | 
| f3c0 |  74 20 22 71 70 64 66 20 27 3c 3c 66 3e 3e 27 20    2d 2d 70 61 67 65 73 20 2e 20 25 64 20 2d 2d 20  | t."qpdf.'<<f>>'.--pages...%d.--. | 
| f3e0 |  27 3c 3c 66 6e 65 3e 3e 5f 25 64 2e 3c 3c 65 3e    3e 27 22 20 70 61 67 65 2d 6e 75 6d 20 70 61 67  | '<<fne>>_%d.<<e>>'".page-num.pag | 
| f400 |  65 2d 6e 75 6d 29 0a 20 20 20 20 20 3a 75 74 69    6c 73 20 22 71 70 64 66 22 29 29 29 0a 0a 3b 3b  | e-num)......:utils."qpdf")))..;; | 
| f420 |  3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65    66 75 6e 20 64 77 69 6d 2d 73 68 65 6c 6c 2d 63  | ;###autoload.(defun.dwim-shell-c | 
| f440 |  6f 6d 6d 61 6e 64 73 2d 6a 6f 69 6e 2d 69 6d 61    67 65 73 2d 68 6f 72 69 7a 6f 6e 74 61 6c 6c 79  | ommands-join-images-horizontally | 
| f460 |  20 28 29 0a 20 20 22 4a 6f 69 6e 20 61 6c 6c 20    6d 61 72 6b 65 64 20 69 6d 61 67 65 73 20 68 6f  | .()..."Join.all.marked.images.ho | 
| f480 |  72 69 7a 6f 6e 74 61 6c 6c 79 20 61 73 20 61 20    73 69 6e 67 6c 65 20 69 6d 61 67 65 2e 22 0a 20  | rizontally.as.a.single.image.".. | 
| f4a0 |  20 28 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20    20 28 6c 65 74 20 28 28 66 69 6c 65 6e 61 6d 65  | .(interactive)...(let.((filename | 
| f4c0 |  20 28 66 6f 72 6d 61 74 20 22 6a 6f 69 6e 65 64    2e 25 73 22 0a 20 20 20 20 20 20 20 20 20 20 20  | .(format."joined.%s"............ | 
| f4e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    6f 72 20 28 73 65 71 2d 66 69 72 73 74 20 28 64  | ...............(or.(seq-first.(d | 
| f500 |  77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e    64 2d 2d 66 69 6c 65 2d 65 78 74 65 6e 73 69 6f  | wim-shell-command--file-extensio | 
| f520 |  6e 73 29 29 20 22 70 6e 67 22 29 29 29 29 0a 20    20 20 20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d 63  | ns))."png")))).....(dwim-shell-c | 
| f540 |  6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d 61 72 6b 65 64    2d 66 69 6c 65 73 0a 20 20 20 20 20 22 4a 6f 69  | ommand-on-marked-files......"Joi | 
| f560 |  6e 20 69 6d 61 67 65 73 20 68 6f 72 69 7a 6f 6e    74 61 6c 6c 79 22 0a 20 20 20 20 20 28 66 6f 72  | n.images.horizontally"......(for | 
| f580 |  6d 61 74 20 22 63 6f 6e 76 65 72 74 20 2d 76 65    72 62 6f 73 65 20 27 3c 3c 2a 3e 3e 27 20 2b 61  | mat."convert.-verbose.'<<*>>'.+a | 
| f5a0 |  70 70 65 6e 64 20 27 3c 3c 25 73 28 75 29 3e 3e    27 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | ppend.'<<%s(u)>>'".............. | 
| f5c0 |  28 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d    61 6e 64 2d 72 65 61 64 2d 66 69 6c 65 2d 6e 61  | (dwim-shell-command-read-file-na | 
| f5e0 |  6d 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 66 6f 72 6d 61 74 20 22 4a 6f 69 6e 20 61  | me...............(format."Join.a | 
| f600 |  73 20 69 6d 61 67 65 20 6e 61 6d 65 64 20 28 64    65 66 61 75 6c 74 20 5c 22 25 73 5c 22 29 3a 20  | s.image.named.(default.\"%s\"):. | 
| f620 |  22 20 66 69 6c 65 6e 61 6d 65 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 3a 64 65 66 61 75  | ".filename)...............:defau | 
| f640 |  6c 74 20 66 69 6c 65 6e 61 6d 65 29 29 0a 20 20    20 20 20 3a 75 74 69 6c 73 20 22 63 6f 6e 76 65  | lt.filename))......:utils."conve | 
| f660 |  72 74 22 29 29 29 0a 0a 3b 3b 3b 23 23 23 61 75    74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 64 77  | rt")))..;;;###autoload.(defun.dw | 
| f680 |  69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64    73 2d 6a 6f 69 6e 2d 69 6d 61 67 65 73 2d 76 65  | im-shell-commands-join-images-ve | 
| f6a0 |  72 74 69 63 61 6c 6c 79 20 28 29 0a 20 20 22 4a    6f 69 6e 20 61 6c 6c 20 6d 61 72 6b 65 64 20 69  | rtically.()..."Join.all.marked.i | 
| f6c0 |  6d 61 67 65 73 20 76 65 72 74 69 63 61 6c 6c 79    20 61 73 20 61 20 73 69 6e 67 6c 65 20 69 6d 61  | mages.vertically.as.a.single.ima | 
| f6e0 |  67 65 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74    69 76 65 29 0a 20 20 28 6c 65 74 20 28 28 66 69  | ge."...(interactive)...(let.((fi | 
| f700 |  6c 65 6e 61 6d 65 20 28 66 6f 72 6d 61 74 20 22    6a 6f 69 6e 65 64 2e 25 73 22 0a 20 20 20 20 20  | lename.(format."joined.%s"...... | 
| f720 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 6f 72 20 28 73 65 71 2d 66 69  | .....................(or.(seq-fi | 
| f740 |  72 73 74 20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d    63 6f 6d 6d 61 6e 64 2d 2d 66 69 6c 65 2d 65 78  | rst.(dwim-shell-command--file-ex | 
| f760 |  74 65 6e 73 69 6f 6e 73 29 29 20 22 70 6e 67 22    29 29 29 29 0a 20 20 20 20 28 64 77 69 6d 2d 73  | tensions))."png")))).....(dwim-s | 
| f780 |  68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 6f 6e 2d    6d 61 72 6b 65 64 2d 66 69 6c 65 73 0a 20 20 20  | hell-command-on-marked-files.... | 
| f7a0 |  20 20 22 4a 6f 69 6e 20 69 6d 61 67 65 73 20 76    65 72 74 69 63 61 6c 6c 79 22 0a 20 20 20 20 20  | .."Join.images.vertically"...... | 
| f7c0 |  28 66 6f 72 6d 61 74 20 22 63 6f 6e 76 65 72 74    20 2d 76 65 72 62 6f 73 65 20 27 3c 3c 2a 3e 3e  | (format."convert.-verbose.'<<*>> | 
| f7e0 |  27 20 2d 67 72 61 76 69 74 79 20 63 65 6e 74 65    72 20 2d 61 70 70 65 6e 64 20 27 3c 3c 25 73 28  | '.-gravity.center.-append.'<<%s( | 
| f800 |  75 29 3e 3e 27 22 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d  | u)>>'"..............(dwim-shell- | 
| f820 |  63 6f 6d 6d 61 6e 64 2d 72 65 61 64 2d 66 69 6c    65 2d 6e 61 6d 65 0a 20 20 20 20 20 20 20 20 20  | command-read-file-name.......... | 
| f840 |  20 20 20 20 20 28 66 6f 72 6d 61 74 20 22 4a 6f    69 6e 20 61 73 20 69 6d 61 67 65 20 6e 61 6d 65  | .....(format."Join.as.image.name | 
| f860 |  64 20 28 64 65 66 61 75 6c 74 20 5c 22 25 73 5c    22 29 3a 20 22 20 66 69 6c 65 6e 61 6d 65 29 0a  | d.(default.\"%s\"):.".filename). | 
| f880 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a 64    65 66 61 75 6c 74 20 66 69 6c 65 6e 61 6d 65 29  | ..............:default.filename) | 
| f8a0 |  29 0a 20 20 20 20 20 3a 75 74 69 6c 73 20 22 63    6f 6e 76 65 72 74 22 29 29 29 0a 0a 3b 3b 3b 23  | )......:utils."convert")))..;;;# | 
| f8c0 |  23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75    6e 20 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d  | ##autoload.(defun.dwim-shell-com | 
| f8e0 |  6d 61 6e 64 73 2d 69 6d 61 67 65 2d 74 6f 2d 67    72 61 79 73 63 61 6c 65 20 28 29 0a 20 20 22 43  | mands-image-to-grayscale.()..."C | 
| f900 |  6f 6e 76 65 72 74 20 61 6c 6c 20 6d 61 72 6b 65    64 20 69 6d 61 67 65 73 20 74 6f 20 67 72 61 79  | onvert.all.marked.images.to.gray | 
| f920 |  73 63 61 6c 65 2e 22 0a 20 20 28 69 6e 74 65 72    61 63 74 69 76 65 29 0a 20 20 28 64 77 69 6d 2d  | scale."...(interactive)...(dwim- | 
| f940 |  73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 6f 6e    2d 6d 61 72 6b 65 64 2d 66 69 6c 65 73 0a 20 20  | shell-command-on-marked-files... | 
| f960 |  20 22 43 6f 6e 76 65 72 74 20 69 6d 61 67 65 20    74 6f 20 67 72 61 79 73 63 61 6c 65 22 0a 20 20  | ."Convert.image.to.grayscale"... | 
| f980 |  20 22 63 6f 6e 76 65 72 74 20 2d 76 65 72 62 6f    73 65 20 2d 74 79 70 65 20 47 72 61 79 73 63 61  | ."convert.-verbose.-type.Graysca | 
| f9a0 |  6c 65 20 27 3c 3c 66 3e 3e 27 20 27 3c 3c 66 6e    65 3e 3e 5f 67 72 61 79 73 63 61 6c 65 2e 3c 3c  | le.'<<f>>'.'<<fne>>_grayscale.<< | 
| f9c0 |  65 3e 3e 27 22 0a 20 20 20 3a 75 74 69 6c 73 20    22 63 6f 6e 76 65 72 74 22 29 29 0a 0a 3b 3b 3b  | e>>'"....:utils."convert"))..;;; | 
| f9e0 |  23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66    75 6e 20 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f  | ###autoload.(defun.dwim-shell-co | 
| fa00 |  6d 6d 61 6e 64 73 2d 72 65 6f 72 69 65 6e 74 2d    69 6d 61 67 65 20 28 29 0a 20 20 22 52 65 6f 72  | mmands-reorient-image.()..."Reor | 
| fa20 |  69 65 6e 74 20 69 6d 61 67 65 73 2e 22 0a 20 20    28 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20  | ient.images."...(interactive)... | 
| fa40 |  28 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d    61 6e 64 2d 6f 6e 2d 6d 61 72 6b 65 64 2d 66 69  | (dwim-shell-command-on-marked-fi | 
| fa60 |  6c 65 73 0a 20 20 20 22 52 65 6f 72 69 65 6e 74    20 69 6d 61 67 65 22 0a 20 20 20 22 63 6f 6e 76  | les...."Reorient.image"...."conv | 
| fa80 |  65 72 74 20 2d 76 65 72 62 6f 73 65 20 2d 61 75    74 6f 2d 6f 72 69 65 6e 74 20 27 3c 3c 66 3e 3e  | ert.-verbose.-auto-orient.'<<f>> | 
| faa0 |  27 20 27 3c 3c 66 6e 65 3e 3e 5f 72 65 6f 72 69    65 6e 74 65 64 2e 3c 3c 65 3e 3e 27 22 0a 20 20  | '.'<<fne>>_reoriented.<<e>>'"... | 
| fac0 |  20 3a 75 74 69 6c 73 20 22 63 6f 6e 76 65 72 74    22 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c  | .:utils."convert"))..;;;###autol | 
| fae0 |  6f 61 64 0a 28 64 65 66 75 6e 20 64 77 69 6d 2d    73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 73 2d 67  | oad.(defun.dwim-shell-commands-g | 
| fb00 |  69 66 2d 74 6f 2d 76 69 64 65 6f 20 28 29 0a 20    20 22 43 6f 6e 76 65 72 74 20 61 6c 6c 20 6d 61  | if-to-video.()..."Convert.all.ma | 
| fb20 |  72 6b 65 64 20 67 69 66 28 73 29 20 74 6f 20 76    69 64 65 6f 28 73 29 2e 22 0a 20 20 28 69 6e 74  | rked.gif(s).to.video(s)."...(int | 
| fb40 |  65 72 61 63 74 69 76 65 29 0a 20 20 28 64 77 69    6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d  | eractive)...(dwim-shell-command- | 
| fb60 |  6f 6e 2d 6d 61 72 6b 65 64 2d 66 69 6c 65 73 0a    20 20 20 22 43 6f 6e 76 65 72 74 20 74 6f 20 67  | on-marked-files...."Convert.to.g | 
| fb80 |  69 66 22 0a 20 20 20 22 66 66 6d 70 65 67 20 2d    69 20 27 3c 3c 66 3e 3e 27 20 2d 6d 6f 76 66 6c  | if"...."ffmpeg.-i.'<<f>>'.-movfl | 
| fba0 |  61 67 73 20 66 61 73 74 73 74 61 72 74 20 2d 70    69 78 5f 66 6d 74 20 79 75 76 34 32 30 70 20 2d  | ags.faststart.-pix_fmt.yuv420p.- | 
| fbc0 |  76 66 20 27 73 63 61 6c 65 3d 74 72 75 6e 63 28    69 77 2f 32 29 2a 32 3a 74 72 75 6e 63 28 69 68  | vf.'scale=trunc(iw/2)*2:trunc(ih | 
| fbe0 |  2f 32 29 2a 32 27 20 27 3c 3c 66 6e 65 3e 3e 2e    6d 70 34 27 22 0a 20 20 20 3a 75 74 69 6c 73 20  | /2)*2'.'<<fne>>.mp4'"....:utils. | 
| fc00 |  22 66 66 6d 70 65 67 22 29 29 0a 0a 3b 3b 3b 23    23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75  | "ffmpeg"))..;;;###autoload.(defu | 
| fc20 |  6e 20 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d    6d 61 6e 64 73 2d 6d 61 63 6f 73 2d 65 6d 70 74  | n.dwim-shell-commands-macos-empt | 
| fc40 |  79 2d 74 72 61 73 68 20 28 29 0a 20 20 22 45 6d    70 74 79 20 6d 61 63 4f 53 20 74 72 61 73 68 2e  | y-trash.()..."Empty.macOS.trash. | 
| fc60 |  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 20 28 79 2d 6f 72 2d  | "...(interactive)...(when.(y-or- | 
| fc80 |  6e 2d 70 20 22 45 6d 70 74 79 20 6d 61 63 4f 53    20 74 72 61 73 68 3f 20 22 29 0a 20 20 20 20 28  | n-p."Empty.macOS.trash?.").....( | 
| fca0 |  64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61    6e 64 2d 6f 6e 2d 6d 61 72 6b 65 64 2d 66 69 6c  | dwim-shell-command-on-marked-fil | 
| fcc0 |  65 73 0a 20 20 20 20 20 22 45 6d 70 74 79 20 6d    61 63 4f 53 20 74 72 61 73 68 22 0a 20 20 20 20  | es......"Empty.macOS.trash"..... | 
| fce0 |  20 22 74 72 61 73 68 20 2d 65 20 2d 79 22 0a 20    20 20 20 20 3a 73 69 6c 65 6e 74 2d 73 75 63 63  | ."trash.-e.-y"......:silent-succ | 
| fd00 |  65 73 73 20 74 0a 20 20 20 20 20 3a 75 74 69 6c    73 20 22 74 72 61 73 68 22 29 29 29 0a 0a 3b 3b  | ess.t......:utils."trash")))..;; | 
| fd20 |  3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65    66 75 6e 20 64 77 69 6d 2d 73 68 65 6c 6c 2d 63  | ;###autoload.(defun.dwim-shell-c | 
| fd40 |  6f 6d 6d 61 6e 64 73 2d 6d 61 63 6f 73 2d 6f 63    72 2d 74 65 78 74 2d 66 72 6f 6d 2d 64 65 73 6b  | ommands-macos-ocr-text-from-desk | 
| fd60 |  74 6f 70 2d 72 65 67 69 6f 6e 20 28 29 0a 20 20    22 53 65 6c 65 63 74 20 61 20 6d 61 63 4f 53 20  | top-region.()..."Select.a.macOS. | 
| fd80 |  64 65 73 6b 74 6f 70 20 61 72 65 61 20 74 6f 20    4f 43 52 20 61 6e 64 20 63 6f 70 79 20 72 65 63  | desktop.area.to.OCR.and.copy.rec | 
| fda0 |  6f 67 6e 69 7a 65 64 20 74 65 78 74 20 74 6f 20    6b 69 6c 6c 20 72 69 6e 67 2e 22 0a 20 20 28 69  | ognized.text.to.kill.ring."...(i | 
| fdc0 |  6e 74 65 72 61 63 74 69 76 65 29 0a 20 20 28 64    77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e  | nteractive)...(dwim-shell-comman | 
| fde0 |  64 2d 6f 6e 2d 6d 61 72 6b 65 64 2d 66 69 6c 65    73 0a 20 20 20 22 4f 43 52 20 61 72 65 61 22 0a  | d-on-marked-files...."OCR.area". | 
| fe00 |  20 20 20 22 6d 61 63 6f 73 72 65 63 20 2d 2d 6f    63 72 22 0a 20 20 20 3b 3b 20 62 72 65 77 20 69  | ..."macosrec.--ocr"....;;.brew.i | 
| fe20 |  6e 73 74 61 6c 6c 20 78 65 6e 6f 64 69 75 6d 2f    6d 61 63 6f 73 72 65 63 2f 6d 61 63 6f 73 72 65  | nstall.xenodium/macosrec/macosre | 
| fe40 |  63 0a 20 20 20 3a 75 74 69 6c 73 20 22 6d 61 63    6f 73 72 65 63 22 0a 20 20 20 3a 6f 6e 2d 63 6f  | c....:utils."macosrec"....:on-co | 
| fe60 |  6d 70 6c 65 74 69 6f 6e 0a 20 20 20 28 6c 61 6d    62 64 61 20 28 62 75 66 66 65 72 20 70 72 6f 63  | mpletion....(lambda.(buffer.proc | 
| fe80 |  65 73 73 29 0a 20 20 20 20 20 28 77 68 65 6e 2d    6c 65 74 20 28 28 73 75 63 63 65 73 73 20 28 3d  | ess)......(when-let.((success.(= | 
| fea0 |  20 28 70 72 6f 63 65 73 73 2d 65 78 69 74 2d 73    74 61 74 75 73 20 70 72 6f 63 65 73 73 29 20 30  | .(process-exit-status.process).0 | 
| fec0 |  29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 74 65 78 74 20 28 77 69 74 68 2d 63  | )).................(text.(with-c | 
| fee0 |  75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 62 75    66 66 65 72 0a 20 20 20 20 20 20 20 20 20 20 20  | urrent-buffer.buffer............ | 
| ff00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 74    72 69 6e 67 2d 74 72 69 6d 20 28 62 75 66 66 65  | .............(string-trim.(buffe | 
| ff20 |  72 2d 73 74 72 69 6e 67 29 29 29 29 29 0a 20 20    20 20 20 20 20 28 70 72 6f 67 6e 0a 20 20 20 20  | r-string)))))........(progn..... | 
| ff40 |  20 20 20 20 20 28 6b 69 6c 6c 2d 6e 65 77 20 74    65 78 74 29 0a 20 20 20 20 20 20 20 20 20 28 73  | .....(kill-new.text)..........(s | 
| ff60 |  77 69 74 63 68 2d 74 6f 2d 62 75 66 66 65 72 20    62 75 66 66 65 72 29 0a 20 20 20 20 20 20 20 20  | witch-to-buffer.buffer)......... | 
| ff80 |  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 20  | .(goto-char.(point-min))........ | 
| ffa0 |  20 20 28 6d 65 73 73 61 67 65 20 22 4f 43 52 20    63 6f 70 69 65 64 20 74 6f 20 63 6c 69 70 62 6f  | ..(message."OCR.copied.to.clipbo | 
| ffc0 |  61 72 64 22 29 29 29 29 29 29 0a 0a 3b 3b 3b 23    23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75  | ard"))))))..;;;###autoload.(defu | 
| ffe0 |  6e 20 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d    6d 61 6e 64 73 2d 6d 61 63 6f 73 2d 6f 63 72 2d  | n.dwim-shell-commands-macos-ocr- | 
| 10000 |  74 65 78 74 2d 66 72 6f 6d 2d 69 6d 61 67 65 20    28 29 0a 20 20 22 4f 43 52 20 66 69 6c 65 20 61  | text-from-image.()..."OCR.file.a | 
| 10020 |  6e 64 20 63 6f 70 79 20 72 65 63 6f 67 6e 69 7a    65 64 20 74 65 78 74 20 74 6f 20 6b 69 6c 6c 20  | nd.copy.recognized.text.to.kill. | 
| 10040 |  72 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 64 77 69 6d 2d 73  | ring."...(interactive)...(dwim-s | 
| 10060 |  68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 6f 6e 2d    6d 61 72 6b 65 64 2d 66 69 6c 65 73 0a 20 20 20  | hell-command-on-marked-files.... | 
| 10080 |  22 4f 43 52 20 61 72 65 61 22 0a 20 20 20 22 6d    61 63 6f 73 72 65 63 20 2d 2d 6f 63 72 20 2d 2d  | "OCR.area"...."macosrec.--ocr.-- | 
| 100a0 |  63 6c 69 70 62 6f 61 72 64 20 2d 2d 69 6e 70 75    74 20 27 3c 3c 66 3e 3e 27 22 0a 20 20 20 3b 3b  | clipboard.--input.'<<f>>'"....;; | 
| 100c0 |  20 62 72 65 77 20 69 6e 73 74 61 6c 6c 20 78 65    6e 6f 64 69 75 6d 2f 6d 61 63 6f 73 72 65 63 2f  | .brew.install.xenodium/macosrec/ | 
| 100e0 |  6d 61 63 6f 73 72 65 63 0a 20 20 20 3a 75 74 69    6c 73 20 22 6d 61 63 6f 73 72 65 63 22 0a 20 20  | macosrec....:utils."macosrec"... | 
| 10100 |  20 3a 6f 6e 2d 63 6f 6d 70 6c 65 74 69 6f 6e 0a    20 20 20 28 6c 61 6d 62 64 61 20 28 62 75 66 66  | .:on-completion....(lambda.(buff | 
| 10120 |  65 72 20 70 72 6f 63 65 73 73 29 0a 20 20 20 20    20 28 77 68 65 6e 2d 6c 65 74 20 28 28 73 75 63  | er.process)......(when-let.((suc | 
| 10140 |  63 65 73 73 20 28 3d 20 28 70 72 6f 63 65 73 73    2d 65 78 69 74 2d 73 74 61 74 75 73 20 70 72 6f  | cess.(=.(process-exit-status.pro | 
| 10160 |  63 65 73 73 29 20 30 29 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 74 65 78 74 20  | cess).0)).................(text. | 
| 10180 |  28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75    66 66 65 72 20 62 75 66 66 65 72 0a 20 20 20 20  | (with-current-buffer.buffer..... | 
| 101a0 |  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 2d 74 72 69 6d  | ....................(string-trim | 
| 101c0 |  20 28 62 75 66 66 65 72 2d 73 74 72 69 6e 67 29    29 29 29 29 0a 20 20 20 20 20 20 20 28 70 72 6f  | .(buffer-string)))))........(pro | 
| 101e0 |  67 6e 0a 20 20 20 20 20 20 20 20 20 28 6b 69 6c    6c 2d 6e 65 77 20 74 65 78 74 29 0a 20 20 20 20  | gn..........(kill-new.text)..... | 
| 10200 |  20 20 20 20 20 28 73 77 69 74 63 68 2d 74 6f 2d    62 75 66 66 65 72 20 62 75 66 66 65 72 29 0a 20  | .....(switch-to-buffer.buffer).. | 
| 10220 |  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 0a  | ........(goto-char.(point-min)). | 
| 10240 |  20 20 20 20 20 20 20 20 20 28 6d 65 73 73 61 67    65 20 22 4f 43 52 20 63 6f 70 69 65 64 20 74 6f  | .........(message."OCR.copied.to | 
| 10260 |  20 63 6c 69 70 62 6f 61 72 64 22 29 29 29 29 29    29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61  | .clipboard"))))))..;;;###autoloa | 
| 10280 |  64 0a 28 64 65 66 75 6e 20 64 77 69 6d 2d 73 68    65 6c 6c 2d 63 6f 6d 6d 61 6e 64 73 2d 6d 61 63  | d.(defun.dwim-shell-commands-mac | 
| 102a0 |  6f 73 2d 63 6f 6e 76 65 72 74 2d 74 6f 2d 6d 70    34 20 28 29 0a 20 20 22 43 6f 6e 76 65 72 74 20  | os-convert-to-mp4.()..."Convert. | 
| 102c0 |  74 6f 20 6d 6f 76 20 74 6f 20 6d 70 34 22 0a 20    20 28 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20  | to.mov.to.mp4"...(interactive).. | 
| 102e0 |  20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d    6d 61 6e 64 2d 6f 6e 2d 6d 61 72 6b 65 64 2d 66  | .(dwim-shell-command-on-marked-f | 
| 10300 |  69 6c 65 73 0a 20 20 20 22 43 6f 6e 76 65 72 74    20 74 6f 20 6d 6f 76 20 74 6f 20 6d 70 34 22 0a  | iles...."Convert.to.mov.to.mp4". | 
| 10320 |  20 20 20 3b 3b 20 22 66 66 6d 70 65 67 20 2d 6c    6f 67 6c 65 76 65 6c 20 71 75 69 65 74 20 2d 73  | ...;;."ffmpeg.-loglevel.quiet.-s | 
| 10340 |  74 61 74 73 20 2d 79 20 2d 69 20 3c 3c 66 3e 3e    2e 6d 6f 76 20 2d 76 63 6f 64 65 63 20 68 32 36  | tats.-y.-i.<<f>>.mov.-vcodec.h26 | 
| 10360 |  34 20 2d 61 63 6f 64 65 63 20 63 6f 70 79 20 3c    3c 66 6e 65 3e 3e 2e 6d 70 34 22 0a 20 20 20 3b  | 4.-acodec.copy.<<fne>>.mp4"....; | 
| 10380 |  3b 20 46 6f 75 6e 64 20 74 68 65 20 65 6e 63 6f    64 65 72 20 76 69 61 20 66 66 6d 70 65 67 20 2d  | ;.Found.the.encoder.via.ffmpeg.- | 
| 103a0 |  65 6e 63 6f 64 65 72 73 20 7c 20 67 72 65 70 20    76 69 64 65 6f 74 6f 6f 6c 62 6f 78 2c 0a 20 20  | encoders.|.grep.videotoolbox,... | 
| 103c0 |  20 3b 3b 20 73 6f 75 72 63 65 20 68 74 74 70 73    3a 2f 2f 77 77 77 2e 72 65 64 64 69 74 2e 63 6f  | .;;.source.https://www.reddit.co | 
| 103e0 |  6d 2f 72 2f 66 66 6d 70 65 67 2f 63 6f 6d 6d 65    6e 74 73 2f 31 34 70 71 65 65 78 2f 67 65 74 74  | m/r/ffmpeg/comments/14pqeex/gett | 
| 10400 |  69 6e 67 5f 30 5f 67 70 75 5f 75 74 69 6c 69 7a    61 74 69 6f 6e 5f 77 69 74 68 5f 61 70 70 6c 65  | ing_0_gpu_utilization_with_apple | 
| 10420 |  5f 73 69 6c 69 63 6f 6e 73 2f 0a 20 20 20 22 66    66 6d 70 65 67 20 2d 69 20 27 3c 3c 66 3e 3e 27  | _silicons/...."ffmpeg.-i.'<<f>>' | 
| 10440 |  20 2d 6d 61 70 5f 6d 65 74 61 64 61 74 61 20 30    20 5c 0a 20 20 20 20 20 2d 63 3a 76 20 68 65 76  | .-map_metadata.0.\......-c:v.hev | 
| 10460 |  63 5f 76 69 64 65 6f 74 6f 6f 6c 62 6f 78 20 2d    71 3a 76 20 33 35 20 2d 70 72 65 73 65 74 20 66  | c_videotoolbox.-q:v.35.-preset.f | 
| 10480 |  61 73 74 20 2d 63 3a 61 20 61 61 63 20 2d 62 3a    61 20 31 32 38 6b 20 2d 74 61 67 3a 76 20 68 76  | ast.-c:a.aac.-b:a.128k.-tag:v.hv | 
| 104a0 |  63 31 20 27 3c 3c 66 6e 65 3e 3e 27 2e 6d 70 34    22 0a 20 20 20 3a 75 74 69 6c 73 20 22 66 66 6d  | c1.'<<fne>>'.mp4"....:utils."ffm | 
| 104c0 |  70 65 67 22 29 29 0a 0a 3b 3b 3b 23 23 23 61 75    74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 64 77  | peg"))..;;;###autoload.(defun.dw | 
| 104e0 |  69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64    73 2d 76 69 64 65 6f 2d 74 6f 2d 67 69 66 20 28  | im-shell-commands-video-to-gif.( | 
| 10500 |  29 0a 20 20 22 43 6f 6e 76 65 72 74 20 61 6c 6c    20 6d 61 72 6b 65 64 20 76 69 64 65 6f 73 20 74  | )..."Convert.all.marked.videos.t | 
| 10520 |  6f 20 67 69 66 28 73 29 2e 22 0a 20 20 28 69 6e    74 65 72 61 63 74 69 76 65 29 0a 20 20 28 64 77  | o.gif(s)."...(interactive)...(dw | 
| 10540 |  69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64    2d 6f 6e 2d 6d 61 72 6b 65 64 2d 66 69 6c 65 73  | im-shell-command-on-marked-files | 
| 10560 |  0a 20 20 20 22 43 6f 6e 76 65 72 74 20 74 6f 20    67 69 66 22 0a 20 20 20 22 66 66 6d 70 65 67 20  | ...."Convert.to.gif"...."ffmpeg. | 
| 10580 |  2d 6c 6f 67 6c 65 76 65 6c 20 71 75 69 65 74 20    2d 73 74 61 74 73 20 2d 79 20 2d 69 20 27 3c 3c  | -loglevel.quiet.-stats.-y.-i.'<< | 
| 105a0 |  66 3e 3e 27 20 2d 70 69 78 5f 66 6d 74 20 72 67    62 32 34 20 2d 72 20 31 35 20 27 3c 3c 66 6e 65  | f>>'.-pix_fmt.rgb24.-r.15.'<<fne | 
| 105c0 |  3e 3e 2e 67 69 66 27 22 0a 20 20 20 3a 75 74 69    6c 73 20 22 66 66 6d 70 65 67 22 29 29 0a 0a 3b  | >>.gif'"....:utils."ffmpeg"))..; | 
| 105e0 |  3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64    65 66 75 6e 20 64 77 69 6d 2d 73 68 65 6c 6c 2d  | ;;###autoload.(defun.dwim-shell- | 
| 10600 |  63 6f 6d 6d 61 6e 64 73 2d 76 69 64 65 6f 2d 74    6f 2d 6d 6f 76 20 28 29 0a 20 20 22 43 6f 6e 76  | commands-video-to-mov.()..."Conv | 
| 10620 |  65 72 74 20 61 6c 6c 20 6d 61 72 6b 65 64 20 76    69 64 65 6f 73 20 74 6f 20 6d 6f 76 28 73 29 2e  | ert.all.marked.videos.to.mov(s). | 
| 10640 |  22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65    29 0a 20 20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d  | "...(interactive)...(dwim-shell- | 
| 10660 |  63 6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d 61 72 6b 65    64 2d 66 69 6c 65 73 0a 20 20 20 22 43 6f 6e 76  | command-on-marked-files...."Conv | 
| 10680 |  65 72 74 20 74 6f 20 6d 6f 76 22 0a 20 20 20 22    66 66 6d 70 65 67 20 2d 69 20 20 27 3c 3c 66 3e  | ert.to.mov"...."ffmpeg.-i..'<<f> | 
| 106a0 |  3e 27 20 2d 63 3a 76 20 6c 69 62 78 32 36 34 20    2d 63 3a 61 20 61 61 63 20 20 27 3c 3c 66 6e 65  | >'.-c:v.libx264.-c:a.aac..'<<fne | 
| 106c0 |  3e 3e 2e 6d 6f 76 27 22 0a 20 20 20 3a 75 74 69    6c 73 20 22 66 66 6d 70 65 67 22 29 29 0a 0a 3b  | >>.mov'"....:utils."ffmpeg"))..; | 
| 106e0 |  3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64    65 66 75 6e 20 64 77 69 6d 2d 73 68 65 6c 6c 2d  | ;;###autoload.(defun.dwim-shell- | 
| 10700 |  63 6f 6d 6d 61 6e 64 73 2d 76 69 64 65 6f 2d 74    6f 2d 77 65 62 70 20 28 29 0a 20 20 22 43 6f 6e  | commands-video-to-webp.()..."Con | 
| 10720 |  76 65 72 74 20 61 6c 6c 20 6d 61 72 6b 65 64 20    76 69 64 65 6f 73 20 74 6f 20 77 65 62 70 28 73  | vert.all.marked.videos.to.webp(s | 
| 10740 |  29 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69    76 65 29 0a 20 20 28 64 77 69 6d 2d 73 68 65 6c  | )."...(interactive)...(dwim-shel | 
| 10760 |  6c 2d 63 6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d 61 72    6b 65 64 2d 66 69 6c 65 73 0a 20 20 20 22 43 6f  | l-command-on-marked-files...."Co | 
| 10780 |  6e 76 65 72 74 20 74 6f 20 77 65 62 70 22 0a 20    20 20 22 66 66 6d 70 65 67 20 2d 69 20 27 3c 3c  | nvert.to.webp"...."ffmpeg.-i.'<< | 
| 107a0 |  66 3e 3e 27 20 2d 76 63 6f 64 65 63 20 6c 69 62    77 65 62 70 20 2d 66 69 6c 74 65 72 3a 76 20 66  | f>>'.-vcodec.libwebp.-filter:v.f | 
| 107c0 |  70 73 3d 66 70 73 3d 31 30 20 2d 63 6f 6d 70 72    65 73 73 69 6f 6e 5f 6c 65 76 65 6c 20 33 20 2d  | ps=fps=10.-compression_level.3.- | 
| 107e0 |  6c 6f 73 73 6c 65 73 73 20 31 20 2d 6c 6f 6f 70    20 30 20 2d 70 72 65 73 65 74 20 64 65 66 61 75  | lossless.1.-loop.0.-preset.defau | 
| 10800 |  6c 74 20 2d 61 6e 20 2d 76 73 79 6e 63 20 30 20    27 3c 3c 66 6e 65 3e 3e 27 2e 77 65 62 70 22 0a  | lt.-an.-vsync.0.'<<fne>>'.webp". | 
| 10820 |  20 20 20 3a 75 74 69 6c 73 20 22 66 66 6d 70 65    67 22 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f  | ...:utils."ffmpeg"))..;;;###auto | 
| 10840 |  6c 6f 61 64 0a 28 64 65 66 75 6e 20 64 77 69 6d    2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 73 2d  | load.(defun.dwim-shell-commands- | 
| 10860 |  77 65 62 70 2d 74 6f 2d 76 69 64 65 6f 20 28 29    0a 20 20 22 43 6f 6e 76 65 72 74 20 61 6c 6c 20  | webp-to-video.()..."Convert.all. | 
| 10880 |  6d 61 72 6b 65 64 20 77 65 62 70 28 73 29 20 74    6f 20 76 69 64 65 6f 28 73 29 2e 22 0a 20 20 28  | marked.webp(s).to.video(s)."...( | 
| 108a0 |  69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20 28    64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61  | interactive)...(dwim-shell-comma | 
| 108c0 |  6e 64 2d 6f 6e 2d 6d 61 72 6b 65 64 2d 66 69 6c    65 73 0a 20 20 20 22 43 6f 6e 76 65 72 74 20 77  | nd-on-marked-files...."Convert.w | 
| 108e0 |  65 62 70 20 74 6f 20 76 69 64 65 6f 22 0a 20 20    20 22 63 6f 6e 76 65 72 74 20 27 3c 3c 66 3e 3e  | ebp.to.video"...."convert.'<<f>> | 
| 10900 |  27 20 27 3c 3c 74 64 3e 3e 2f 3c 3c 62 6e 65 3e    3e 2e 67 69 66 27 0a 20 20 20 20 66 66 6d 70 65  | '.'<<td>>/<<bne>>.gif'.....ffmpe | 
| 10920 |  67 20 2d 69 20 27 3c 3c 74 64 3e 3e 2f 3c 3c 62    6e 65 3e 3e 2e 67 69 66 27 20 2d 6d 6f 76 66 6c  | g.-i.'<<td>>/<<bne>>.gif'.-movfl | 
| 10940 |  61 67 73 20 66 61 73 74 73 74 61 72 74 20 2d 70    69 78 5f 66 6d 74 20 79 75 76 34 32 30 70 20 2d  | ags.faststart.-pix_fmt.yuv420p.- | 
| 10960 |  76 66 20 27 73 63 61 6c 65 3d 74 72 75 6e 63 28    69 77 2f 32 29 2a 32 3a 74 72 75 6e 63 28 69 68  | vf.'scale=trunc(iw/2)*2:trunc(ih | 
| 10980 |  2f 32 29 2a 32 27 20 27 3c 3c 66 6e 65 3e 3e 2e    6d 70 34 27 22 0a 20 20 20 3a 75 74 69 6c 73 20  | /2)*2'.'<<fne>>.mp4'"....:utils. | 
| 109a0 |  27 28 22 66 66 6d 70 65 67 22 20 22 63 6f 6e 76    65 72 74 22 29 0a 20 20 20 3a 65 78 74 65 6e 73  | '("ffmpeg"."convert")....:extens | 
| 109c0 |  69 6f 6e 73 20 22 77 65 62 70 22 29 29 0a 0a 3b    3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64  | ions."webp"))..;;;###autoload.(d | 
| 109e0 |  65 66 75 6e 20 64 77 69 6d 2d 73 68 65 6c 6c 2d    63 6f 6d 6d 61 6e 64 73 2d 77 65 62 70 2d 74 6f  | efun.dwim-shell-commands-webp-to | 
| 10a00 |  2d 67 69 66 20 28 29 0a 20 20 22 43 6f 6e 76 65    72 74 20 61 6c 6c 20 6d 61 72 6b 65 64 20 77 65  | -gif.()..."Convert.all.marked.we | 
| 10a20 |  62 70 28 73 29 20 74 6f 20 67 69 66 28 73 29 2e    22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65  | bp(s).to.gif(s)."...(interactive | 
| 10a40 |  29 0a 20 20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d    63 6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d 61 72 6b 65  | )...(dwim-shell-command-on-marke | 
| 10a60 |  64 2d 66 69 6c 65 73 0a 20 20 20 22 43 6f 6e 76    65 72 74 20 77 65 62 70 20 74 6f 20 76 69 64 65  | d-files...."Convert.webp.to.vide | 
| 10a80 |  6f 22 0a 20 20 20 22 63 6f 6e 76 65 72 74 20 27    3c 3c 66 3e 3e 27 20 27 3c 3c 66 6e 65 3e 3e 2e  | o"...."convert.'<<f>>'.'<<fne>>. | 
| 10aa0 |  67 69 66 27 22 0a 20 20 20 3a 75 74 69 6c 73 20    27 28 22 63 6f 6e 76 65 72 74 22 29 0a 20 20 20  | gif'"....:utils.'("convert").... | 
| 10ac0 |  3a 65 78 74 65 6e 73 69 6f 6e 73 20 22 77 65 62    70 22 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f  | :extensions."webp"))..;;;###auto | 
| 10ae0 |  6c 6f 61 64 0a 28 64 65 66 75 6e 20 64 77 69 6d    2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 73 2d  | load.(defun.dwim-shell-commands- | 
| 10b00 |  76 69 64 65 6f 2d 74 6f 2d 68 65 76 63 2d 6d 6b    76 20 28 29 0a 20 20 22 43 6f 6e 76 65 72 74 20  | video-to-hevc-mkv.()..."Convert. | 
| 10b20 |  61 6c 6c 20 6d 61 72 6b 65 64 20 76 69 64 65 6f    73 20 74 6f 20 68 65 76 63 20 6d 6b 76 2e 22 0a  | all.marked.videos.to.hevc.mkv.". | 
| 10b40 |  20 20 28 69 6e 74 65 72 61 63 74 69 76 65 29 0a    20 20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f  | ..(interactive)...(dwim-shell-co | 
| 10b60 |  6d 6d 61 6e 64 2d 6f 6e 2d 6d 61 72 6b 65 64 2d    66 69 6c 65 73 0a 20 20 20 22 43 6f 6e 76 65 72  | mmand-on-marked-files...."Conver | 
| 10b80 |  74 20 76 69 64 65 6f 20 74 6f 20 68 32 36 35 20    22 0a 20 20 20 22 52 45 50 4f 5f 44 49 52 3d 2f  | t.video.to.h265."...."REPO_DIR=/ | 
| 10ba0 |  74 6d 70 2f 6f 74 68 65 72 5f 76 69 64 65 6f 5f    74 72 61 6e 73 63 6f 64 69 6e 67 0a 20 20 20 20  | tmp/other_video_transcoding..... | 
| 10bc0 |  69 66 20 21 20 5b 20 2d 64 20 5c 22 24 52 45 50    4f 5f 44 49 52 5c 22 20 5d 0a 20 20 20 20 74 68  | if.!.[.-d.\"$REPO_DIR\".].....th | 
| 10be0 |  65 6e 0a 20 20 20 20 20 20 67 69 74 20 63 6c 6f    6e 65 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75  | en.......git.clone.https://githu | 
| 10c00 |  62 2e 63 6f 6d 2f 64 6f 6e 6d 65 6c 74 6f 6e 2f    6f 74 68 65 72 5f 76 69 64 65 6f 5f 74 72 61 6e  | b.com/donmelton/other_video_tran | 
| 10c20 |  73 63 6f 64 69 6e 67 2e 67 69 74 20 24 52 45 50    4f 5f 44 49 52 0a 20 20 20 20 66 69 0a 20 20 20  | scoding.git.$REPO_DIR.....fi.... | 
| 10c40 |  20 70 75 73 68 64 20 24 52 45 50 4f 5f 44 49 52    0a 20 20 20 20 67 69 74 20 70 75 6c 6c 20 6f 72  | .pushd.$REPO_DIR.....git.pull.or | 
| 10c60 |  69 67 69 6e 20 6d 61 73 74 65 72 20 7c 7c 20 65    63 68 6f 20 5c 22 73 6b 69 70 70 69 6e 67 20 72  | igin.master.||.echo.\"skipping.r | 
| 10c80 |  65 70 6f 20 75 70 64 61 74 65 2e 2e 2e 5c 22 0a    20 20 20 20 70 6f 70 64 0a 20 20 20 20 72 75 62  | epo.update...\".....popd.....rub | 
| 10ca0 |  79 20 24 52 45 50 4f 5f 44 49 52 2f 62 69 6e 2f    6f 74 68 65 72 2d 74 72 61 6e 73 63 6f 64 65 20  | y.$REPO_DIR/bin/other-transcode. | 
| 10cc0 |  2d 2d 68 65 76 63 20 27 3c 3c 66 3e 3e 27 22 0a    20 20 20 3a 75 74 69 6c 73 20 27 28 22 67 69 74  | --hevc.'<<f>>'"....:utils.'("git | 
| 10ce0 |  22 20 22 66 66 6d 70 65 67 22 20 22 6d 6b 76 74    6f 6f 6c 6e 69 78 22 20 22 6d 70 76 22 29 29 29  | "."ffmpeg"."mkvtoolnix"."mpv"))) | 
| 10d00 |  0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64    0a 28 64 65 66 75 6e 20 64 77 69 6d 2d 73 68 65  | ..;;;###autoload.(defun.dwim-she | 
| 10d20 |  6c 6c 2d 63 6f 6d 6d 61 6e 64 73 2d 76 69 64 65    6f 2d 74 6f 2d 6f 70 74 69 6d 69 7a 65 64 2d 67  | ll-commands-video-to-optimized-g | 
| 10d40 |  69 66 20 28 29 0a 20 20 22 43 6f 6e 76 65 72 74    20 61 6c 6c 20 6d 61 72 6b 65 64 20 76 69 64 65  | if.()..."Convert.all.marked.vide | 
| 10d60 |  6f 73 20 74 6f 20 6f 70 74 69 6d 69 7a 65 64 20    67 69 66 28 73 29 2e 22 0a 20 20 28 69 6e 74 65  | os.to.optimized.gif(s)."...(inte | 
| 10d80 |  72 61 63 74 69 76 65 29 0a 20 20 28 64 77 69 6d    2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 6f  | ractive)...(dwim-shell-command-o | 
| 10da0 |  6e 2d 6d 61 72 6b 65 64 2d 66 69 6c 65 73 0a 20    20 20 22 43 6f 6e 76 65 72 74 20 74 6f 20 6f 70  | n-marked-files...."Convert.to.op | 
| 10dc0 |  74 69 6d 69 7a 65 64 20 67 69 66 22 0a 20 20 20    22 66 66 6d 70 65 67 20 2d 6c 6f 67 6c 65 76 65  | timized.gif"...."ffmpeg.-logleve | 
| 10de0 |  6c 20 71 75 69 65 74 20 2d 73 74 61 74 73 20 2d    79 20 2d 69 20 27 3c 3c 66 3e 3e 27 20 2d 70 69  | l.quiet.-stats.-y.-i.'<<f>>'.-pi | 
| 10e00 |  78 5f 66 6d 74 20 72 67 62 32 34 20 2d 72 20 31    35 20 27 3c 3c 66 6e 65 3e 3e 2e 67 69 66 27 0a  | x_fmt.rgb24.-r.15.'<<fne>>.gif'. | 
| 10e20 |  20 20 20 20 67 69 66 73 69 63 6c 65 20 2d 4f 33    20 27 3c 3c 66 6e 65 3e 3e 2e 67 69 66 27 20 2d  | ....gifsicle.-O3.'<<fne>>.gif'.- | 
| 10e40 |  2d 6c 6f 73 73 79 3d 38 30 20 2d 6f 20 27 3c 3c    66 6e 65 3e 3e 2e 67 69 66 27 22 0a 20 20 20 3a  | -lossy=80.-o.'<<fne>>.gif'"....: | 
| 10e60 |  75 74 69 6c 73 20 27 28 22 66 66 6d 70 65 67 22    20 22 67 69 66 73 69 63 6c 65 22 29 29 29 0a 0a  | utils.'("ffmpeg"."gifsicle"))).. | 
| 10e80 |  3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28    64 65 66 75 6e 20 64 77 69 6d 2d 73 68 65 6c 6c  | ;;;###autoload.(defun.dwim-shell | 
| 10ea0 |  2d 63 6f 6d 6d 61 6e 64 73 2d 75 6e 7a 69 70 20    28 29 0a 20 20 22 55 6e 7a 69 70 20 61 6c 6c 20  | -commands-unzip.()..."Unzip.all. | 
| 10ec0 |  6d 61 72 6b 65 64 20 61 72 63 68 69 76 65 73 20    28 6f 66 20 61 6e 79 20 6b 69 6e 64 29 20 75 73  | marked.archives.(of.any.kind).us | 
| 10ee0 |  69 6e 67 20 60 61 74 6f 6f 6c 27 2e 22 0a 20 20    28 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20  | ing.`atool'."...(interactive)... | 
| 10f00 |  28 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d    61 6e 64 2d 6f 6e 2d 6d 61 72 6b 65 64 2d 66 69  | (dwim-shell-command-on-marked-fi | 
| 10f20 |  6c 65 73 0a 20 20 20 22 55 6e 7a 69 70 22 20 22    61 74 6f 6f 6c 20 2d 2d 65 78 74 72 61 63 74 20  | les...."Unzip"."atool.--extract. | 
| 10f40 |  2d 2d 65 78 70 6c 61 69 6e 20 27 3c 3c 66 3e 3e    27 22 0a 20 20 20 3a 75 74 69 6c 73 20 22 61 74  | --explain.'<<f>>'"....:utils."at | 
| 10f60 |  6f 6f 6c 22 29 29 0a 0a 3b 3b 3b 23 23 23 61 75    74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 64 77  | ool"))..;;;###autoload.(defun.dw | 
| 10f80 |  69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64    73 2d 7a 69 70 20 28 29 0a 20 20 22 5a 69 70 20  | im-shell-commands-zip.()..."Zip. | 
| 10fa0 |  61 6c 6c 20 6d 61 72 6b 65 64 20 66 69 6c 65 73    20 69 6e 74 6f 20 61 72 63 68 69 76 65 2e 7a 69  | all.marked.files.into.archive.zi | 
| 10fc0 |  70 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69    76 65 29 0a 20 20 28 64 77 69 6d 2d 73 68 65 6c  | p."...(interactive)...(dwim-shel | 
| 10fe0 |  6c 2d 63 6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d 61 72    6b 65 64 2d 66 69 6c 65 73 0a 20 20 20 22 5a 69  | l-command-on-marked-files...."Zi | 
| 11000 |  70 22 20 28 69 66 20 28 65 71 20 31 20 28 73 65    71 2d 6c 65 6e 67 74 68 20 28 64 77 69 6d 2d 73  | p".(if.(eq.1.(seq-length.(dwim-s | 
| 11020 |  68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 2d 66 69    6c 65 73 29 29 29 0a 20 20 20 20 20 20 20 20 20  | hell-command--files))).......... | 
| 11040 |  20 20 20 20 22 7a 69 70 20 2d 72 20 27 3c 3c 66    6e 65 3e 3e 2e 3c 3c 65 3e 3e 27 20 27 3c 3c 66  | ...."zip.-r.'<<fne>>.<<e>>'.'<<f | 
| 11060 |  3e 3e 27 22 0a 20 20 20 20 20 20 20 20 20 20 20    22 7a 69 70 20 2d 72 20 27 3c 3c 61 72 63 68 69  | >>'"............"zip.-r.'<<archi | 
| 11080 |  76 65 2e 7a 69 70 28 75 29 3e 3e 27 20 27 3c 3c    2a 3e 3e 27 22 29 0a 20 20 20 3a 75 74 69 6c 73  | ve.zip(u)>>'.'<<*>>'")....:utils | 
| 110a0 |  20 22 7a 69 70 22 29 29 0a 0a 3b 3b 3b 23 23 23    61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20  | ."zip"))..;;;###autoload.(defun. | 
| 110c0 |  64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61    6e 64 73 2d 7a 69 70 2d 70 61 73 73 77 6f 72 64  | dwim-shell-commands-zip-password | 
| 110e0 |  2d 70 72 6f 74 65 63 74 20 28 29 0a 20 20 22 50    72 6f 74 65 63 74 2f 65 6e 63 72 79 70 74 20 7a  | -protect.()..."Protect/encrypt.z | 
| 11100 |  69 70 20 66 69 6c 65 28 73 29 20 77 69 74 68 20    70 61 73 73 77 6f 72 64 2e 22 0a 20 20 28 69 6e  | ip.file(s).with.password."...(in | 
| 11120 |  74 65 72 61 63 74 69 76 65 29 0a 20 20 28 64 77    69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64  | teractive)...(dwim-shell-command | 
| 11140 |  2d 6f 6e 2d 6d 61 72 6b 65 64 2d 66 69 6c 65 73    0a 20 20 20 22 41 64 64 20 7a 69 70 20 70 61 73  | -on-marked-files...."Add.zip.pas | 
| 11160 |  73 77 6f 72 64 22 20 22 7a 69 70 63 6c 6f 61 6b    20 2d 2d 6f 75 74 70 75 74 2d 66 69 6c 65 20 27  | sword"."zipcloak.--output-file.' | 
| 11180 |  3c 3c 66 6e 65 3e 3e 5f 70 72 6f 74 65 63 74 65    64 2e 3c 3c 65 3e 3e 27 20 27 3c 3c 66 3e 3e 27  | <<fne>>_protected.<<e>>'.'<<f>>' | 
| 111a0 |  22 0a 20 20 20 3a 65 78 74 65 6e 73 69 6f 6e 73    20 22 7a 69 70 22 0a 20 20 20 3a 75 74 69 6c 73  | "....:extensions."zip"....:utils | 
| 111c0 |  20 22 7a 69 70 63 6c 6f 61 6b 22 29 29 0a 0a 3b    3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64  | ."zipcloak"))..;;;###autoload.(d | 
| 111e0 |  65 66 75 6e 20 64 77 69 6d 2d 73 68 65 6c 6c 2d    63 6f 6d 6d 61 6e 64 73 2d 6f 70 74 69 6d 69 7a  | efun.dwim-shell-commands-optimiz | 
| 11200 |  65 2d 67 69 66 20 28 29 0a 20 20 22 43 6f 6e 76    65 72 74 20 61 6c 6c 20 6d 61 72 6b 65 64 20 76  | e-gif.()..."Convert.all.marked.v | 
| 11220 |  69 64 65 6f 73 20 74 6f 20 6f 70 74 69 6d 69 7a    65 64 20 67 69 66 28 73 29 2e 22 0a 20 20 28 69  | ideos.to.optimized.gif(s)."...(i | 
| 11240 |  6e 74 65 72 61 63 74 69 76 65 29 0a 20 20 28 64    77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e  | nteractive)...(dwim-shell-comman | 
| 11260 |  64 2d 6f 6e 2d 6d 61 72 6b 65 64 2d 66 69 6c 65    73 0a 20 20 20 22 43 6f 6e 76 65 72 74 20 74 6f  | d-on-marked-files...."Convert.to | 
| 11280 |  20 6f 70 74 69 6d 69 7a 65 64 20 67 69 66 22 0a    20 20 20 22 67 69 66 73 69 63 6c 65 20 2d 4f 33  | .optimized.gif"...."gifsicle.-O3 | 
| 112a0 |  20 27 3c 3c 66 3e 3e 27 20 2d 2d 6c 6f 73 73 79    3d 39 30 20 2d 6f 20 27 3c 3c 66 6e 65 3e 3e 5f  | .'<<f>>'.--lossy=90.-o.'<<fne>>_ | 
| 112c0 |  6f 70 74 69 6d 69 7a 65 64 2e 67 69 66 27 22 0a    20 20 20 3a 75 74 69 6c 73 20 27 28 22 66 66 6d  | optimized.gif'"....:utils.'("ffm | 
| 112e0 |  70 65 67 22 20 22 67 69 66 73 69 63 6c 65 22 29    29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f  | peg"."gifsicle")))..;;;###autolo | 
| 11300 |  61 64 0a 28 64 65 66 75 6e 20 64 77 69 6d 2d 73    68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 73 2d 73 70  | ad.(defun.dwim-shell-commands-sp | 
| 11320 |  65 65 64 2d 75 70 2d 67 69 66 20 28 29 0a 20 20    22 53 70 65 65 64 73 20 75 70 20 67 69 66 28 73  | eed-up-gif.()..."Speeds.up.gif(s | 
| 11340 |  29 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 66 61 63  | )."...(interactive)...(let.((fac | 
| 11360 |  74 6f 72 20 28 73 74 72 69 6e 67 2d 74 6f 2d 6e    75 6d 62 65 72 0a 20 20 20 20 20 20 20 20 20 20  | tor.(string-to-number........... | 
| 11380 |  20 20 20 20 20 20 20 28 63 6f 6d 70 6c 65 74 69    6e 67 2d 72 65 61 64 20 22 53 70 65 65 64 20 75  | .......(completing-read."Speed.u | 
| 113a0 |  70 20 78 20 74 69 6d 65 73 3a 20 22 20 27 28 22    31 22 20 22 31 2e 35 22 20 22 32 22 20 22 32 2e  | p.x.times:.".'("1"."1.5"."2"."2. | 
| 113c0 |  35 22 20 22 33 22 20 22 34 22 29 29 29 29 29 0a    20 20 20 20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d  | 5"."3"."4"))))).....(dwim-shell- | 
| 113e0 |  63 6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d 61 72 6b 65    64 2d 66 69 6c 65 73 0a 20 20 20 20 20 22 53 70  | command-on-marked-files......"Sp | 
| 11400 |  65 65 64 20 75 70 20 67 69 66 22 0a 20 20 20 20    20 28 66 6f 72 6d 61 74 20 22 67 69 66 73 69 63  | eed.up.gif"......(format."gifsic | 
| 11420 |  6c 65 20 2d 55 20 27 3c 3c 66 3e 3e 27 20 3c 3c    66 72 61 6d 65 73 3e 3e 20 2d 4f 32 20 2d 6f 20  | le.-U.'<<f>>'.<<frames>>.-O2.-o. | 
| 11440 |  27 3c 3c 66 6e 65 3e 3e 5f 78 25 73 2e 3c 3c 65    3e 3e 27 22 20 66 61 63 74 6f 72 29 0a 20 20 20  | '<<fne>>_x%s.<<e>>'".factor).... | 
| 11460 |  20 20 3a 65 78 74 65 6e 73 69 6f 6e 73 20 22 67    69 66 22 20 3a 75 74 69 6c 73 20 27 28 22 67 69  | ..:extensions."gif".:utils.'("gi | 
| 11480 |  66 73 69 63 6c 65 22 20 22 69 64 65 6e 74 69 66    79 22 29 0a 20 20 20 20 20 3a 70 6f 73 74 2d 70  | fsicle"."identify")......:post-p | 
| 114a0 |  72 6f 63 65 73 73 2d 74 65 6d 70 6c 61 74 65 20    28 6c 61 6d 62 64 61 20 28 73 63 72 69 70 74 20  | rocess-template.(lambda.(script. | 
| 114c0 |  66 69 6c 65 29 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | file)........................... | 
| 114e0 |  20 20 20 20 28 73 74 72 69 6e 67 2d 72 65 70 6c    61 63 65 20 22 3c 3c 66 72 61 6d 65 73 3e 3e 22  | ....(string-replace."<<frames>>" | 
| 11500 |  20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d    6d 61 6e 64 73 2d 2d 67 69 66 73 69 63 6c 65 2d  | .(dwim-shell-commands--gifsicle- | 
| 11520 |  66 72 61 6d 65 73 2d 65 76 65 72 79 20 66 61 63    74 6f 72 20 66 69 6c 65 29 20 73 63 72 69 70 74  | frames-every.factor.file).script | 
| 11540 |  29 29 29 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74    6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 64 77 69  | )))))..;;;###autoload.(defun.dwi | 
| 11560 |  6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 73    2d 69 6d 61 67 65 2d 61 70 70 6c 79 2d 69 6f 73  | m-shell-commands-image-apply-ios | 
| 11580 |  2d 72 6f 75 6e 64 2d 63 6f 72 6e 65 72 73 20 28    29 0a 20 20 22 41 70 70 6c 79 20 69 4f 53 20 72  | -round-corners.()..."Apply.iOS.r | 
| 115a0 |  6f 75 6e 64 20 63 6f 72 6e 65 72 73 20 74 6f 20    69 6d 61 67 65 28 73 29 2e 22 0a 20 20 28 69 6e  | ound.corners.to.image(s)."...(in | 
| 115c0 |  74 65 72 61 63 74 69 76 65 29 0a 20 20 28 64 77    69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64  | teractive)...(dwim-shell-command | 
| 115e0 |  2d 6f 6e 2d 6d 61 72 6b 65 64 2d 66 69 6c 65 73    0a 20 20 20 22 53 70 65 65 64 20 75 70 20 67 69  | -on-marked-files...."Speed.up.gi | 
| 11600 |  66 22 0a 20 20 20 22 73 65 74 20 2d 6f 20 78 74    72 61 63 65 0a 20 20 20 20 20 20 77 69 64 74 68  | f"...."set.-o.xtrace.......width | 
| 11620 |  3d 24 28 66 66 70 72 6f 62 65 20 2d 76 20 65 72    72 6f 72 20 2d 73 65 6c 65 63 74 5f 73 74 72 65  | =$(ffprobe.-v.error.-select_stre | 
| 11640 |  61 6d 73 20 76 3a 30 20 2d 73 68 6f 77 5f 65 6e    74 72 69 65 73 20 73 74 72 65 61 6d 3d 77 69 64  | ams.v:0.-show_entries.stream=wid | 
| 11660 |  74 68 20 2d 6f 66 20 64 65 66 61 75 6c 74 3d 6e    6f 70 72 69 6e 74 5f 77 72 61 70 70 65 72 73 3d  | th.-of.default=noprint_wrappers= | 
| 11680 |  31 3a 6e 6f 6b 65 79 3d 31 20 27 3c 3c 66 3e 3e    27 29 0a 20 20 20 20 20 20 68 65 69 67 68 74 3d  | 1:nokey=1.'<<f>>').......height= | 
| 116a0 |  24 28 66 66 70 72 6f 62 65 20 2d 76 20 65 72 72    6f 72 20 2d 73 65 6c 65 63 74 5f 73 74 72 65 61  | $(ffprobe.-v.error.-select_strea | 
| 116c0 |  6d 73 20 76 3a 30 20 2d 73 68 6f 77 5f 65 6e 74    72 69 65 73 20 73 74 72 65 61 6d 3d 68 65 69 67  | ms.v:0.-show_entries.stream=heig | 
| 116e0 |  68 74 20 2d 6f 66 20 64 65 66 61 75 6c 74 3d 6e    6f 70 72 69 6e 74 5f 77 72 61 70 70 65 72 73 3d  | ht.-of.default=noprint_wrappers= | 
| 11700 |  31 3a 6e 6f 6b 65 79 3d 31 20 27 3c 3c 66 3e 3e    27 29 0a 20 20 20 20 20 20 63 6f 72 6e 65 72 3d  | 1:nokey=1.'<<f>>').......corner= | 
| 11720 |  24 28 28 24 7b 77 69 64 74 68 7d 2f 34 29 29 0a    20 20 20 20 20 20 65 63 68 6f 20 24 7b 63 6f 72  | $((${width}/4)).......echo.${cor | 
| 11740 |  6e 65 72 7d 0a 20 20 20 20 20 20 63 6f 6e 76 65    72 74 20 2d 73 69 7a 65 20 24 7b 77 69 64 74 68  | ner}.......convert.-size.${width | 
| 11760 |  7d 78 24 7b 68 65 69 67 68 74 7d 20 78 63 3a 6e    6f 6e 65 20 2d 66 69 6c 6c 20 77 68 69 74 65 20  | }x${height}.xc:none.-fill.white. | 
| 11780 |  2d 64 72 61 77 20 5c 22 72 6f 75 6e 64 52 65 63    74 61 6e 67 6c 65 20 30 2c 30 20 24 7b 77 69 64  | -draw.\"roundRectangle.0,0.${wid | 
| 117a0 |  74 68 7d 2c 24 7b 68 65 69 67 68 74 7d 20 24 7b    63 6f 72 6e 65 72 7d 2c 24 7b 63 6f 72 6e 65 72  | th},${height}.${corner},${corner | 
| 117c0 |  7d 5c 22 20 27 3c 3c 66 3e 3e 27 20 2d 63 6f 6d    70 6f 73 65 20 53 72 63 49 6e 20 2d 63 6f 6d 70  | }\".'<<f>>'.-compose.SrcIn.-comp | 
| 117e0 |  6f 73 69 74 65 20 27 3c 3c 66 6e 65 3e 3e 5f 69    6f 73 5f 72 6f 75 6e 64 2e 3c 3c 65 3e 3e 27 22  | osite.'<<fne>>_ios_round.<<e>>'" | 
| 11800 |  0a 20 20 20 3a 75 74 69 6c 73 20 27 28 22 66 66    70 72 6f 62 65 22 20 22 63 6f 6e 76 65 72 74 22  | ....:utils.'("ffprobe"."convert" | 
| 11820 |  29 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c    6f 61 64 0a 28 64 65 66 75 6e 20 64 77 69 6d 2d  | )))..;;;###autoload.(defun.dwim- | 
| 11840 |  73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 73 2d 63    6c 69 70 2d 72 6f 75 6e 64 2d 72 65 63 74 2d 67  | shell-commands-clip-round-rect-g | 
| 11860 |  69 66 20 28 29 0a 20 20 22 43 6c 69 70 20 67 69    66 28 73 29 20 77 69 74 68 20 72 6f 75 6e 64 20  | if.()..."Clip.gif(s).with.round. | 
| 11880 |  72 65 63 74 61 6e 67 6c 65 2e 22 0a 20 20 28 69    6e 74 65 72 61 63 74 69 76 65 29 0a 20 20 28 64  | rectangle."...(interactive)...(d | 
| 118a0 |  77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e    64 2d 6f 6e 2d 6d 61 72 6b 65 64 2d 66 69 6c 65  | wim-shell-command-on-marked-file | 
| 118c0 |  73 0a 20 20 20 22 43 6c 69 70 20 72 6f 75 6e 64    20 72 65 63 74 20 67 69 66 28 73 29 22 0a 20 20  | s...."Clip.round.rect.gif(s)"... | 
| 118e0 |  20 22 77 69 64 74 68 3d 24 28 66 66 70 72 6f 62    65 20 2d 76 20 65 72 72 6f 72 20 2d 73 65 6c 65  | ."width=$(ffprobe.-v.error.-sele | 
| 11900 |  63 74 5f 73 74 72 65 61 6d 73 20 76 3a 30 20 2d    73 68 6f 77 5f 65 6e 74 72 69 65 73 20 73 74 72  | ct_streams.v:0.-show_entries.str | 
| 11920 |  65 61 6d 3d 77 69 64 74 68 20 2d 6f 66 20 64 65    66 61 75 6c 74 3d 6e 6f 70 72 69 6e 74 5f 77 72  | eam=width.-of.default=noprint_wr | 
| 11940 |  61 70 70 65 72 73 3d 31 3a 6e 6f 6b 65 79 3d 31    20 27 3c 3c 66 3e 3e 27 29 0a 20 20 20 20 68 65  | appers=1:nokey=1.'<<f>>').....he | 
| 11960 |  69 67 68 74 3d 24 28 66 66 70 72 6f 62 65 20 2d    76 20 65 72 72 6f 72 20 2d 73 65 6c 65 63 74 5f  | ight=$(ffprobe.-v.error.-select_ | 
| 11980 |  73 74 72 65 61 6d 73 20 76 3a 30 20 2d 73 68 6f    77 5f 65 6e 74 72 69 65 73 20 73 74 72 65 61 6d  | streams.v:0.-show_entries.stream | 
| 119a0 |  3d 68 65 69 67 68 74 20 2d 6f 66 20 64 65 66 61    75 6c 74 3d 6e 6f 70 72 69 6e 74 5f 77 72 61 70  | =height.-of.default=noprint_wrap | 
| 119c0 |  70 65 72 73 3d 31 3a 6e 6f 6b 65 79 3d 31 20 27    3c 3c 66 3e 3e 27 29 0a 20 20 20 20 63 6f 6e 76  | pers=1:nokey=1.'<<f>>').....conv | 
| 119e0 |  65 72 74 20 2d 71 75 69 65 74 20 2d 73 69 7a 65    20 5c 22 24 7b 77 69 64 74 68 7d 78 24 7b 68 65  | ert.-quiet.-size.\"${width}x${he | 
| 11a00 |  69 67 68 74 7d 5c 22 20 78 63 3a 6e 6f 6e 65 20    2d 66 69 6c 6c 20 62 6c 61 63 6b 20 2d 64 72 61  | ight}\".xc:none.-fill.black.-dra | 
| 11a20 |  77 20 5c 22 72 6f 75 6e 64 52 65 63 74 61 6e 67    6c 65 20 30 2c 30 2c 24 7b 77 69 64 74 68 7d 2c  | w.\"roundRectangle.0,0,${width}, | 
| 11a40 |  24 7b 68 65 69 67 68 74 7d 20 3c 3c 57 69 64 74    68 20 77 69 64 74 68 3a 32 37 3e 3e 2c 3c 3c 57  | ${height}.<<Width.width:27>>,<<W | 
| 11a60 |  69 64 74 68 20 77 69 64 74 68 3a 32 37 3e 3e 5c    22 20 27 3c 3c 74 64 3e 3e 2f 6d 61 73 6b 2e 70  | idth.width:27>>\".'<<td>>/mask.p | 
| 11a80 |  6e 67 27 0a 20 20 20 20 63 6f 6e 76 65 72 74 20    20 27 3c 3c 66 3e 3e 27 20 2d 63 6f 61 6c 65 73  | ng'.....convert..'<<f>>'.-coales | 
| 11aa0 |  63 65 20 2d 62 61 63 6b 67 72 6f 75 6e 64 20 62    6c 61 63 6b 20 2d 61 6c 70 68 61 20 72 65 6d 6f  | ce.-background.black.-alpha.remo | 
| 11ac0 |  76 65 20 2d 61 6c 70 68 61 20 6f 66 66 20 27 3c    3c 74 64 3e 3e 2f 6e 6f 5f 61 6c 70 68 61 2e 3c  | ve.-alpha.off.'<<td>>/no_alpha.< | 
| 11ae0 |  3c 65 3e 3e 27 0a 20 20 20 20 23 20 68 74 74 70    73 3a 2f 2f 73 74 61 63 6b 6f 76 65 72 66 6c 6f  | <e>>'.....#.https://stackoverflo | 
| 11b00 |  77 2e 63 6f 6d 2f 61 2f 36 36 39 39 30 31 33 35    0a 20 20 20 20 63 6f 6e 76 65 72 74 20 27 3c 3c  | w.com/a/66990135.....convert.'<< | 
| 11b20 |  74 64 3e 3e 2f 6e 6f 5f 61 6c 70 68 61 2e 3c 3c    65 3e 3e 27 20 2d 71 75 69 65 74 20 2d 63 6f 61  | td>>/no_alpha.<<e>>'.-quiet.-coa | 
| 11b40 |  6c 65 73 63 65 20 2d 61 6c 70 68 61 20 65 78 74    72 61 63 74 20 6e 75 6c 6c 3a 20 5c 5c 28 20 27  | lesce.-alpha.extract.null:.\\(.' | 
| 11b60 |  3c 3c 74 64 3e 3e 2f 6d 61 73 6b 2e 70 6e 67 27    20 2d 61 6c 70 68 61 20 65 78 74 72 61 63 74 20  | <<td>>/mask.png'.-alpha.extract. | 
| 11b80 |  5c 5c 29 20 2d 63 6f 6d 70 6f 73 65 20 6d 75 6c    74 69 70 6c 79 20 2d 6c 61 79 65 72 73 20 63 6f  | \\).-compose.multiply.-layers.co | 
| 11ba0 |  6d 70 6f 73 69 74 65 20 27 3c 3c 74 64 3e 3e 2f    61 6c 70 68 61 2e 67 69 66 27 0a 20 20 20 20 63  | mposite.'<<td>>/alpha.gif'.....c | 
| 11bc0 |  6f 6e 76 65 72 74 20 27 3c 3c 74 64 3e 3e 2f 6e    6f 5f 61 6c 70 68 61 2e 3c 3c 65 3e 3e 27 20 6e  | onvert.'<<td>>/no_alpha.<<e>>'.n | 
| 11be0 |  75 6c 6c 3a 20 27 3c 3c 74 64 3e 3e 2f 61 6c 70    68 61 2e 67 69 66 27 20 2d 71 75 69 65 74 20 2d  | ull:.'<<td>>/alpha.gif'.-quiet.- | 
| 11c00 |  61 6c 70 68 61 20 6f 66 66 20 2d 63 6f 6d 70 6f    73 65 20 63 6f 70 79 5f 6f 70 61 63 69 74 79 20  | alpha.off.-compose.copy_opacity. | 
| 11c20 |  2d 6c 61 79 65 72 73 20 63 6f 6d 70 6f 73 69 74    65 20 27 3c 3c 66 6e 65 3e 3e 5f 72 6f 75 6e 64  | -layers.composite.'<<fne>>_round | 
| 11c40 |  65 64 2e 3c 3c 65 3e 3e 27 0a 20 20 20 20 23 20    54 75 72 6e 20 6c 6f 6f 70 69 6e 67 20 6f 6e 2e  | ed.<<e>>'.....#.Turn.looping.on. | 
| 11c60 |  0a 20 20 20 20 6d 6f 67 72 69 66 79 20 2d 6c 6f    6f 70 20 30 20 27 3c 3c 66 6e 65 3e 3e 5f 72 6f  | .....mogrify.-loop.0.'<<fne>>_ro | 
| 11c80 |  75 6e 64 65 64 2e 3c 3c 65 3e 3e 27 0a 20 20 20    20 67 69 66 73 69 63 6c 65 20 2d 4f 33 20 20 27  | unded.<<e>>'.....gifsicle.-O3..' | 
| 11ca0 |  3c 3c 66 6e 65 3e 3e 5f 72 6f 75 6e 64 65 64 2e    3c 3c 65 3e 3e 27 20 2d 2d 6c 6f 73 73 79 3d 38  | <<fne>>_rounded.<<e>>'.--lossy=8 | 
| 11cc0 |  30 20 2d 6f 20 27 3c 3c 66 6e 65 3e 3e 5f 72 6f    75 6e 64 65 64 2e 3c 3c 65 3e 3e 27 22 0a 20 20  | 0.-o.'<<fne>>_rounded.<<e>>'"... | 
| 11ce0 |  20 3a 65 78 74 65 6e 73 69 6f 6e 73 20 22 67 69    66 22 0a 20 20 20 3a 75 74 69 6c 73 20 27 28 22  | .:extensions."gif"....:utils.'(" | 
| 11d00 |  66 66 70 72 6f 62 65 22 20 22 63 6f 6e 76 65 72    74 22 29 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74  | ffprobe"."convert")))..;;;###aut | 
| 11d20 |  6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 64 77 69    6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 73  | oload.(defun.dwim-shell-commands | 
| 11d40 |  2d 72 65 73 69 7a 65 2d 67 69 66 20 28 29 0a 20    20 22 52 65 73 69 7a 65 20 6d 61 72 6b 65 64 20  | -resize-gif.()..."Resize.marked. | 
| 11d60 |  67 69 66 28 73 29 2e 22 0a 20 20 28 69 6e 74 65    72 61 63 74 69 76 65 29 0a 20 20 28 64 77 69 6d  | gif(s)."...(interactive)...(dwim | 
| 11d80 |  2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 6f    6e 2d 6d 61 72 6b 65 64 2d 66 69 6c 65 73 0a 20  | -shell-command-on-marked-files.. | 
| 11da0 |  20 20 22 52 65 73 69 7a 65 20 6d 61 72 6b 65 64    20 67 69 66 28 73 29 22 0a 20 20 20 22 67 69 66  | .."Resize.marked.gif(s)"...."gif | 
| 11dc0 |  73 69 63 6c 65 20 2d 2d 73 63 61 6c 65 20 3c 3c    53 63 61 6c 69 6e 67 20 66 61 63 74 6f 72 3a 30  | sicle.--scale.<<Scaling.factor:0 | 
| 11de0 |  2e 35 3e 3e 20 27 3c 3c 66 3e 3e 27 20 2d 6f 20    27 3c 3c 66 6e 65 3e 3e 5f 78 3c 3c 53 63 61 6c  | .5>>.'<<f>>'.-o.'<<fne>>_x<<Scal | 
| 11e00 |  69 6e 67 20 66 61 63 74 6f 72 3a 30 2e 35 3e 3e    2e 67 69 66 27 22 0a 20 20 20 3a 65 78 74 65 6e  | ing.factor:0.5>>.gif'"....:exten | 
| 11e20 |  73 69 6f 6e 73 20 22 67 69 66 22 0a 20 20 20 3a    75 74 69 6c 73 20 22 67 69 66 73 69 63 6c 65 22  | sions."gif"....:utils."gifsicle" | 
| 11e40 |  29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f    61 64 0a 28 64 65 66 75 6e 20 64 77 69 6d 2d 73  | ))..;;;###autoload.(defun.dwim-s | 
| 11e60 |  68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 73 2d 65 70    75 62 2d 74 6f 2d 6f 72 67 20 28 29 0a 20 20 22  | hell-commands-epub-to-org.()..." | 
| 11e80 |  43 6f 6e 76 65 72 74 20 65 70 75 62 28 73 29 20    74 6f 20 6f 72 67 2e 22 0a 20 20 28 69 6e 74 65  | Convert.epub(s).to.org."...(inte | 
| 11ea0 |  72 61 63 74 69 76 65 29 0a 20 20 28 64 77 69 6d    2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 6f  | ractive)...(dwim-shell-command-o | 
| 11ec0 |  6e 2d 6d 61 72 6b 65 64 2d 66 69 6c 65 73 0a 20    20 20 22 65 70 75 62 20 74 6f 20 6f 72 67 22 0a  | n-marked-files...."epub.to.org". | 
| 11ee0 |  20 20 20 22 70 61 6e 64 6f 63 20 2d 2d 66 72 6f    6d 3d 65 70 75 62 20 2d 2d 74 6f 3d 6f 72 67 20  | ..."pandoc.--from=epub.--to=org. | 
| 11f00 |  27 3c 3c 66 3e 3e 27 20 3e 20 27 3c 3c 66 6e 65    3e 3e 2e 6f 72 67 27 22 0a 20 20 20 3a 65 78 74  | '<<f>>'.>.'<<fne>>.org'"....:ext | 
| 11f20 |  65 6e 73 69 6f 6e 73 20 22 65 70 75 62 22 0a 20    20 20 3a 75 74 69 6c 73 20 22 70 61 6e 64 6f 63  | ensions."epub"....:utils."pandoc | 
| 11f40 |  22 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c    6f 61 64 0a 28 64 65 66 75 6e 20 64 77 69 6d 2d  | "))..;;;###autoload.(defun.dwim- | 
| 11f60 |  73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 73 2d 64    6f 63 78 2d 74 6f 2d 70 64 66 20 28 29 0a 20 20  | shell-commands-docx-to-pdf.()... | 
| 11f80 |  22 43 6f 6e 76 65 72 74 20 64 6f 63 78 28 73 29    20 74 6f 20 70 64 66 20 28 76 69 61 20 6c 61 74  | "Convert.docx(s).to.pdf.(via.lat | 
| 11fa0 |  65 78 29 2e 22 0a 20 20 28 69 6e 74 65 72 61 63    74 69 76 65 29 0a 20 20 28 64 77 69 6d 2d 73 68  | ex)."...(interactive)...(dwim-sh | 
| 11fc0 |  65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d    61 72 6b 65 64 2d 66 69 6c 65 73 0a 20 20 20 22  | ell-command-on-marked-files...." | 
| 11fe0 |  64 6f 63 78 20 74 6f 20 70 64 66 20 28 76 69 61    20 6c 61 74 65 78 29 22 0a 20 20 20 22 70 61 6e  | docx.to.pdf.(via.latex)"...."pan | 
| 12000 |  64 6f 63 20 2d 74 20 6c 61 74 65 78 20 27 3c 3c    66 3e 3e 27 20 2d 6f 20 27 3c 3c 66 6e 65 3e 3e  | doc.-t.latex.'<<f>>'.-o.'<<fne>> | 
| 12020 |  2e 70 64 66 27 22 0a 20 20 20 3a 65 78 74 65 6e    73 69 6f 6e 73 20 22 64 6f 63 78 22 20 3b 3b 20  | .pdf'"....:extensions."docx".;;. | 
| 12040 |  62 72 65 77 20 69 6e 73 74 61 6c 6c 20 6d 61 63    74 65 78 0a 20 20 20 3a 75 74 69 6c 73 20 22 70  | brew.install.mactex....:utils."p | 
| 12060 |  64 66 6c 61 74 65 78 22 29 29 0a 0a 3b 3b 3b 23    23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75  | dflatex"))..;;;###autoload.(defu | 
| 12080 |  6e 20 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d    6d 61 6e 64 73 2d 6b 69 6c 6c 2d 70 72 6f 63 65  | n.dwim-shell-commands-kill-proce | 
| 120a0 |  73 73 20 28 29 0a 20 20 22 53 65 6c 65 63 74 20    61 6e 64 20 6b 69 6c 6c 20 70 72 6f 63 65 73 73  | ss.()..."Select.and.kill.process | 
| 120c0 |  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 2a 20 28 28 70 69 64  | ."...(interactive)...(let*.((pid | 
| 120e0 |  2d 77 69 64 74 68 20 35 29 0a 20 20 20 20 20 20    20 20 20 28 63 6f 6d 6d 2d 77 69 64 74 68 20 32  | -width.5)..........(comm-width.2 | 
| 12100 |  35 29 0a 20 20 20 20 20 20 20 20 20 28 75 73 65    72 2d 77 69 64 74 68 20 31 30 29 0a 20 20 20 20  | 5)..........(user-width.10)..... | 
| 12120 |  20 20 20 20 20 28 70 72 6f 63 65 73 73 65 73 20    28 70 72 6f 63 65 64 2d 70 72 6f 63 65 73 73 2d  | .....(processes.(proced-process- | 
| 12140 |  61 74 74 72 69 62 75 74 65 73 29 29 0a 20 20 20    20 20 20 20 20 20 28 63 61 6e 64 69 64 61 74 65  | attributes))..........(candidate | 
| 12160 |  73 0a 20 20 20 20 20 20 20 20 20 20 28 6d 61 70    63 61 72 20 28 6c 61 6d 62 64 61 20 28 61 74 74  | s...........(mapcar.(lambda.(att | 
| 12180 |  72 69 62 75 74 65 73 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65  | ributes).....................(le | 
| 121a0 |  74 2a 20 28 28 70 72 6f 63 65 73 73 20 28 63 64    72 20 61 74 74 72 69 62 75 74 65 73 29 29 0a 20  | t*.((process.(cdr.attributes)).. | 
| 121c0 |  20 20 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 69 64 20 28  | ..........................(pid.( | 
| 121e0 |  66 6f 72 6d 61 74 20 28 66 6f 72 6d 61 74 20 22    25 25 25 64 73 22 20 70 69 64 2d 77 69 64 74 68  | format.(format."%%%ds".pid-width | 
| 12200 |  29 20 28 6d 61 70 2d 65 6c 74 20 70 72 6f 63 65    73 73 20 27 70 69 64 29 29 29 0a 20 20 20 20 20  | ).(map-elt.process.'pid)))...... | 
| 12220 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 75 73 65 72 20 28 66 6f 72  | ......................(user.(for | 
| 12240 |  6d 61 74 20 28 66 6f 72 6d 61 74 20 22 25 25 2d    25 64 73 22 20 75 73 65 72 2d 77 69 64 74 68 29  | mat.(format."%%-%ds".user-width) | 
| 12260 |  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  | ................................ | 
| 12280 |  20 20 20 20 20 20 20 20 20 20 28 74 72 75 6e 63    61 74 65 2d 73 74 72 69 6e 67 2d 74 6f 2d 77 69  | ..........(truncate-string-to-wi | 
| 122a0 |  64 74 68 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | dth............................. | 
| 122c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d    61 70 2d 65 6c 74 20 70 72 6f 63 65 73 73 20 27  | ..............(map-elt.process.' | 
| 122e0 |  75 73 65 72 29 20 75 73 65 72 2d 77 69 64 74 68    20 6e 69 6c 20 6e 69 6c 20 74 29 29 29 0a 20 20  | user).user-width.nil.nil.t)))... | 
| 12300 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 28 63 6f 6d 6d 20 28  | .........................(comm.( | 
| 12320 |  66 6f 72 6d 61 74 20 28 66 6f 72 6d 61 74 20 22    25 25 2d 25 64 73 22 20 63 6f 6d 6d 2d 77 69 64  | format.(format."%%-%ds".comm-wid | 
| 12340 |  74 68 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | th)............................. | 
| 12360 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 74 72    75 6e 63 61 74 65 2d 73 74 72 69 6e 67 2d 74 6f  | .............(truncate-string-to | 
| 12380 |  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 20 20 20 20 20 20 20  | -width.......................... | 
| 123a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 6d 61 70 2d 65 6c 74 20 70 72 6f 63 65 73  | .................(map-elt.proces | 
| 123c0 |  73 20 27 63 6f 6d 6d 29 20 63 6f 6d 6d 2d 77 69    64 74 68 20 6e 69 6c 20 6e 69 6c 20 74 29 29 29  | s.'comm).comm-width.nil.nil.t))) | 
| 123e0 |  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 61 72 67  | ............................(arg | 
| 12400 |  73 2d 77 69 64 74 68 20 28 2d 20 28 77 69 6e 64    6f 77 2d 77 69 64 74 68 29 20 28 2b 20 70 69 64  | s-width.(-.(window-width).(+.pid | 
| 12420 |  2d 77 69 64 74 68 20 75 73 65 72 2d 77 69 64 74    68 20 63 6f 6d 6d 2d 77 69 64 74 68 20 33 29 29  | -width.user-width.comm-width.3)) | 
| 12440 |  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 28 61 72  | )............................(ar | 
| 12460 |  67 73 20 28 6d 61 70 2d 65 6c 74 20 70 72 6f 63    65 73 73 20 27 61 72 67 73 29 29 29 0a 20 20 20  | gs.(map-elt.process.'args))).... | 
| 12480 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 63 6f 6e 73 20 28 69 66 20 61 72 67  | ...................(cons.(if.arg | 
| 124a0 |  73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | s............................... | 
| 124c0 |  20 20 28 66 6f 72 6d 61 74 20 22 25 73 20 25 73    20 25 73 20 25 73 22 20 70 69 64 20 75 73 65 72  | ..(format."%s.%s.%s.%s".pid.user | 
| 124e0 |  20 63 6f 6d 6d 20 28 74 72 75 6e 63 61 74 65 2d    73 74 72 69 6e 67 2d 74 6f 2d 77 69 64 74 68 20  | .comm.(truncate-string-to-width. | 
| 12500 |  61 72 67 73 20 61 72 67 73 2d 77 69 64 74 68 20    6e 69 6c 20 6e 69 6c 20 74 29 29 0a 20 20 20 20  | args.args-width.nil.nil.t))..... | 
| 12520 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 66 6f 72 6d 61  | ..........................(forma | 
| 12540 |  74 20 22 25 73 20 25 73 20 25 73 22 20 70 69 64    20 75 73 65 72 20 63 6f 6d 6d 29 29 0a 20 20 20  | t."%s.%s.%s".pid.user.comm)).... | 
| 12560 |  20 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 63 65 73 73  | .........................process | 
| 12580 |  29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 70 72 6f 63 65 73 73 65 73 29  | )))...................processes) | 
| 125a0 |  29 0a 20 20 20 20 20 20 20 20 20 28 73 65 6c 65    63 74 69 6f 6e 20 28 6d 61 70 2d 65 6c 74 20 63  | )..........(selection.(map-elt.c | 
| 125c0 |  61 6e 64 69 64 61 74 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  | andidates....................... | 
| 125e0 |  20 20 20 20 20 20 20 28 63 6f 6d 70 6c 65 74 69    6e 67 2d 72 65 61 64 20 22 6b 69 6c 6c 20 70 72  | .......(completing-read."kill.pr | 
| 12600 |  6f 63 65 73 73 3a 20 22 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ocess:."........................ | 
| 12620 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 28 73 65 71 2d 73 6f 72 74  | .......................(seq-sort | 
| 12640 |  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  | ................................ | 
| 12660 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 6c 61 6d 62 64 61 20 28 70 31 20 70 32 29 0a  | ................(lambda.(p1.p2). | 
| 12680 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 126a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 73 74 72 69 6e 67 2d 6c 65 73 73 70 20 28  | .................(string-lessp.( | 
| 126c0 |  6e 74 68 20 32 20 28 73 70 6c 69 74 2d 73 74 72    69 6e 67 20 28 73 74 72 69 6e 67 2d 74 72 69 6d  | nth.2.(split-string.(string-trim | 
| 126e0 |  20 28 63 61 72 20 70 31 29 29 29 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .(car.p1)))).................... | 
| 12700 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 12720 |  20 20 20 20 20 20 20 20 20 20 20 20 28 6e 74 68    20 32 20 28 73 70 6c 69 74 2d 73 74 72 69 6e 67  | ............(nth.2.(split-string | 
| 12740 |  20 28 73 74 72 69 6e 67 2d 74 72 69 6d 20 28 63    61 72 20 70 32 29 29 29 29 29 29 0a 20 20 20 20  | .(string-trim.(car.p2))))))..... | 
| 12760 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 12780 |  20 20 20 20 20 20 20 20 20 20 20 63 61 6e 64 69    64 61 74 65 73 29 20 6e 69 6c 20 74 29 29 29 0a  | ...........candidates).nil.t))). | 
| 127a0 |  20 20 20 20 20 20 20 20 20 28 70 72 6f 6d 70 74    2d 74 69 74 6c 65 20 28 66 6f 72 6d 61 74 20 22  | .........(prompt-title.(format." | 
| 127c0 |  25 73 20 25 73 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  | %s.%s.%s"....................... | 
| 127e0 |  20 20 20 20 20 20 20 20 20 28 6d 61 70 2d 65 6c    74 20 73 65 6c 65 63 74 69 6f 6e 20 27 70 69 64  | .........(map-elt.selection.'pid | 
| 12800 |  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  | )............................... | 
| 12820 |  20 28 6d 61 70 2d 65 6c 74 20 73 65 6c 65 63 74    69 6f 6e 20 27 75 73 65 72 29 0a 20 20 20 20 20  | .(map-elt.selection.'user)...... | 
| 12840 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 6d 61 70 2d 65  | ..........................(map-e | 
| 12860 |  6c 74 20 73 65 6c 65 63 74 69 6f 6e 20 27 63 6f    6d 6d 29 29 29 29 0a 20 20 20 20 28 77 68 65 6e  | lt.selection.'comm)))).....(when | 
| 12880 |  20 28 79 2d 6f 72 2d 6e 2d 70 20 28 66 6f 72 6d    61 74 20 22 4b 69 6c 6c 20 25 73 3f 22 20 70 72  | .(y-or-n-p.(format."Kill.%s?".pr | 
| 128a0 |  6f 6d 70 74 2d 74 69 74 6c 65 29 29 0a 20 20 20    20 20 20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d 63  | ompt-title)).......(dwim-shell-c | 
| 128c0 |  6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d 61 72 6b 65 64    2d 66 69 6c 65 73 0a 20 20 20 20 20 20 20 28 66  | ommand-on-marked-files........(f | 
| 128e0 |  6f 72 6d 61 74 20 22 4b 69 6c 6c 20 25 73 22 20    70 72 6f 6d 70 74 2d 74 69 74 6c 65 29 0a 20 20  | ormat."Kill.%s".prompt-title)... | 
| 12900 |  20 20 20 20 20 28 66 6f 72 6d 61 74 20 22 6b 69    6c 6c 20 2d 39 20 25 64 22 20 28 6d 61 70 2d 65  | .....(format."kill.-9.%d".(map-e | 
| 12920 |  6c 74 20 73 65 6c 65 63 74 69 6f 6e 20 27 70 69    64 29 29 0a 20 20 20 20 20 20 20 3a 75 74 69 6c  | lt.selection.'pid))........:util | 
| 12940 |  73 20 22 6b 69 6c 6c 22 0a 20 20 20 20 20 20 20    3a 65 72 72 6f 72 2d 61 75 74 6f 66 6f 63 75 73  | s."kill"........:error-autofocus | 
| 12960 |  20 74 0a 20 20 20 20 20 20 20 3a 73 69 6c 65 6e    74 2d 73 75 63 63 65 73 73 20 74 29 29 29 29 0a  | .t........:silent-success.t)))). | 
| 12980 |  0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a    28 64 65 66 75 6e 20 64 77 69 6d 2d 73 68 65 6c  | .;;;###autoload.(defun.dwim-shel | 
| 129a0 |  6c 2d 63 6f 6d 6d 61 6e 64 73 2d 6d 61 63 6f 73    2d 61 64 64 2d 74 6f 2d 70 68 6f 74 6f 73 20 28  | l-commands-macos-add-to-photos.( | 
| 129c0 |  29 0a 20 20 22 41 64 64 20 74 6f 20 50 68 6f 74    6f 73 2e 61 70 70 2e 22 0a 20 20 28 69 6e 74 65  | )..."Add.to.Photos.app."...(inte | 
| 129e0 |  72 61 63 74 69 76 65 29 0a 20 20 28 64 77 69 6d    2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 6f  | ractive)...(dwim-shell-command-o | 
| 12a00 |  6e 2d 6d 61 72 6b 65 64 2d 66 69 6c 65 73 0a 20    20 20 22 41 64 64 20 74 6f 20 50 68 6f 74 6f 73  | n-marked-files...."Add.to.Photos | 
| 12a20 |  2e 61 70 70 22 0a 20 20 20 22 6f 73 61 73 63 72    69 70 74 20 3c 3c 45 4f 46 0a 20 20 74 65 6c 6c  | .app"...."osascript.<<EOF...tell | 
| 12a40 |  20 61 70 70 6c 69 63 61 74 69 6f 6e 20 5c 22 50    68 6f 74 6f 73 5c 22 0a 20 20 20 20 69 6d 70 6f  | .application.\"Photos\".....impo | 
| 12a60 |  72 74 20 50 4f 53 49 58 20 66 69 6c 65 20 5c 22    3c 3c 66 3e 3e 5c 22 0a 20 20 65 6e 64 20 74 65  | rt.POSIX.file.\"<<f>>\"...end.te | 
| 12a80 |  6c 6c 0a 45 4f 46 22 0a 20 20 20 3a 73 69 6c 65    6e 74 2d 73 75 63 63 65 73 73 20 74 0a 20 20 20  | ll.EOF"....:silent-success.t.... | 
| 12aa0 |  3a 75 74 69 6c 73 20 22 6f 73 61 73 63 72 69 70    74 22 0a 20 20 20 3a 6f 6e 2d 63 6f 6d 70 6c 65  | :utils."osascript"....:on-comple | 
| 12ac0 |  74 69 6f 6e 20 28 6c 61 6d 62 64 61 20 28 62 75    66 66 65 72 20 70 72 6f 63 65 73 73 29 0a 20 20  | tion.(lambda.(buffer.process)... | 
| 12ae0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 69 66 2d 6c 65 74 20 28 28 73 75 63 63  | ..................(if-let.((succ | 
| 12b00 |  65 73 73 20 28 3d 20 28 70 72 6f 63 65 73 73 2d    65 78 69 74 2d 73 74 61 74 75 73 20 70 72 6f 63  | ess.(=.(process-exit-status.proc | 
| 12b20 |  65 73 73 29 20 30 29 29 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ess).0)))....................... | 
| 12b40 |  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 20 20 20 20 20 20  | ..(progn........................ | 
| 12b60 |  20 20 20 28 6b 69 6c 6c 2d 62 75 66 66 65 72 20    62 75 66 66 65 72 29 0a 20 20 20 20 20 20 20 20  | ...(kill-buffer.buffer)......... | 
| 12b80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 28 73 74 61 72 74 2d 70 72 6f 63 65 73 73  | ..................(start-process | 
| 12ba0 |  20 22 4f 70 65 6e 20 50 68 6f 74 6f 73 22 20 6e    69 6c 20 22 6f 70 65 6e 22 20 22 2d 61 22 20 22  | ."Open.Photos".nil."open"."-a"." | 
| 12bc0 |  50 68 6f 74 6f 73 22 29 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | Photos"))....................... | 
| 12be0 |  28 73 77 69 74 63 68 2d 74 6f 2d 62 75 66 66 65    72 20 62 75 66 66 65 72 29 29 29 29 29 0a 0a 3b  | (switch-to-buffer.buffer)))))..; | 
| 12c00 |  3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64    65 66 75 6e 20 64 77 69 6d 2d 73 68 65 6c 6c 2d  | ;;###autoload.(defun.dwim-shell- | 
| 12c20 |  63 6f 6d 6d 61 6e 64 73 2d 6d 61 63 6f 73 2d 74    6f 67 67 6c 65 2d 62 6c 75 65 74 6f 6f 74 68 2d  | commands-macos-toggle-bluetooth- | 
| 12c40 |  64 65 76 69 63 65 2d 63 6f 6e 6e 65 63 74 69 6f    6e 20 28 29 0a 20 20 22 54 6f 67 67 6c 65 20 42  | device-connection.()..."Toggle.B | 
| 12c60 |  6c 75 65 74 6f 6f 74 68 20 64 65 76 69 63 65 20    63 6f 6e 6e 65 63 74 69 6f 6e 2e 22 0a 20 20 28  | luetooth.device.connection."...( | 
| 12c80 |  69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20 28    6c 65 74 2a 20 28 28 64 65 76 69 63 65 73 20 28  | interactive)...(let*.((devices.( | 
| 12ca0 |  73 65 71 2d 66 69 6c 74 65 72 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c  | seq-filter....................(l | 
| 12cc0 |  61 6d 62 64 61 20 28 6c 69 6e 65 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ambda.(line).................... | 
| 12ce0 |  20 20 3b 3b 20 4b 65 65 70 20 6c 69 6e 65 73 20    6c 69 6b 65 3a 20 61 66 2d 38 63 2d 33 62 2d 62  | ..;;.Keep.lines.like:.af-8c-3b-b | 
| 12d00 |  31 2d 39 39 2d 61 66 20 2d 20 44 65 76 69 63 65    20 6e 61 6d 65 0a 20 20 20 20 20 20 20 20 20 20  | 1-99-af.-.Device.name........... | 
| 12d20 |  20 20 20 20 20 20 20 20 20 20 20 28 73 74 72 69    6e 67 2d 6d 61 74 63 68 2d 70 20 22 5e 5b 30 2d  | ...........(string-match-p."^[0- | 
| 12d40 |  39 61 2d 66 5d 5c 5c 7b 32 5c 5c 7d 22 20 6c 69    6e 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20  | 9a-f]\\{2\\}".line))............ | 
| 12d60 |  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 67 65  | ........(with-current-buffer.(ge | 
| 12d80 |  74 2d 62 75 66 66 65 72 2d 63 72 65 61 74 65 20    22 2a 42 6c 75 65 74 6f 6f 74 68 43 6f 6e 6e 65  | t-buffer-create."*BluetoothConne | 
| 12da0 |  63 74 6f 72 2a 22 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 72  | ctor*")......................(er | 
| 12dc0 |  61 73 65 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 20 20 20  | ase-buffer)..................... | 
| 12de0 |  20 3b 3b 20 42 6c 75 65 74 6f 6f 74 68 43 6f 6e    6e 65 63 74 6f 72 20 65 78 69 74 73 20 77 69 74  | .;;.BluetoothConnector.exits.wit | 
| 12e00 |  68 20 36 34 20 69 66 20 6e 6f 20 70 61 72 61 6d    20 69 73 20 67 69 76 65 6e 2e 0a 20 20 20 20 20  | h.64.if.no.param.is.given....... | 
| 12e20 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    3b 3b 20 49 6e 76 6f 6b 65 20 77 69 74 68 20 6e  | ................;;.Invoke.with.n | 
| 12e40 |  6f 20 70 61 72 61 6d 73 20 74 6f 20 67 65 74 20    61 20 6c 69 73 74 20 6f 66 20 64 65 76 69 63 65  | o.params.to.get.a.list.of.device | 
| 12e60 |  73 2e 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 73 20  | s.......................(unless. | 
| 12e80 |  28 65 71 20 36 34 20 28 63 61 6c 6c 2d 70 72 6f    63 65 73 73 20 22 42 6c 75 65 74 6f 6f 74 68 43  | (eq.64.(call-process."BluetoothC | 
| 12ea0 |  6f 6e 6e 65 63 74 6f 72 22 20 6e 69 6c 20 28 63    75 72 72 65 6e 74 2d 62 75 66 66 65 72 29 29 29  | onnector".nil.(current-buffer))) | 
| 12ec0 |  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 6b 69 6c 6c 2d 62 75  | ........................(kill-bu | 
| 12ee0 |  66 66 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  | ffer.(current-buffer)).......... | 
| 12f00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65    72 72 6f 72 20 28 62 75 66 66 65 72 2d 73 74 72  | ..............(error.(buffer-str | 
| 12f20 |  69 6e 67 29 29 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 74  | ing)))......................(let | 
| 12f40 |  20 28 28 6c 69 6e 65 73 20 28 73 70 6c 69 74 2d    73 74 72 69 6e 67 20 28 62 75 66 66 65 72 2d 73  | .((lines.(split-string.(buffer-s | 
| 12f60 |  74 72 69 6e 67 29 20 22 5c 6e 22 29 29 29 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | tring)."\n"))).................. | 
| 12f80 |  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 75 66 66  | ......(kill-buffer.(current-buff | 
| 12fa0 |  65 72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 6c 69 6e 65  | er))........................line | 
| 12fc0 |  73 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 28    63 61 6e 64 69 64 61 74 65 73 20 28 6d 61 70 63  | s))))..........(candidates.(mapc | 
| 12fe0 |  61 72 20 28 6c 61 6d 62 64 61 20 28 64 65 76 69    63 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20  | ar.(lambda.(device)............. | 
| 13000 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 3b 3b 20 6b 65 79 20 28 64 65 76 69 63  | ...................;;.key.(devic | 
| 13020 |  65 20 6e 61 6d 65 29 20 3a 20 76 61 6c 75 65 20    28 61 64 64 72 65 73 73 29 0a 20 20 20 20 20 20  | e.name).:.value.(address)....... | 
| 13040 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 20 28  | .........................(cons.( | 
| 13060 |  6e 74 68 20 31 20 28 73 70 6c 69 74 2d 73 74 72    69 6e 67 20 64 65 76 69 63 65 20 22 20 2d 20 22  | nth.1.(split-string.device.".-." | 
| 13080 |  29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | )).............................. | 
| 130a0 |  20 20 20 20 20 20 20 20 28 6e 74 68 20 30 20 28    73 70 6c 69 74 2d 73 74 72 69 6e 67 20 64 65 76  | ........(nth.0.(split-string.dev | 
| 130c0 |  69 63 65 20 22 20 2d 20 22 29 29 29 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ice.".-."))))................... | 
| 130e0 |  20 20 20 20 20 20 20 20 20 20 20 64 65 76 69 63    65 73 29 29 0a 20 20 20 20 20 20 20 20 20 28 73  | ...........devices))..........(s | 
| 13100 |  65 6c 65 63 74 65 64 2d 6e 61 6d 65 20 28 63 6f    6d 70 6c 65 74 69 6e 67 2d 72 65 61 64 20 22 54  | elected-name.(completing-read."T | 
| 13120 |  6f 67 67 6c 65 20 63 6f 6e 6e 65 63 74 69 6f 6e    3a 20 22 0a 20 20 20 20 20 20 20 20 20 20 20 20  | oggle.connection:."............. | 
| 13140 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65  | .............................(se | 
| 13160 |  71 2d 73 6f 72 74 20 23 27 73 74 72 69 6e 67 2d    6c 65 73 73 70 20 63 61 6e 64 69 64 61 74 65 73  | q-sort.#'string-lessp.candidates | 
| 13180 |  29 20 6e 69 6c 20 74 29 29 0a 20 20 20 20 20 20    20 20 20 28 61 64 64 72 65 73 73 20 28 6d 61 70  | ).nil.t))..........(address.(map | 
| 131a0 |  2d 65 6c 74 20 63 61 6e 64 69 64 61 74 65 73 20    73 65 6c 65 63 74 65 64 2d 6e 61 6d 65 29 29 29  | -elt.candidates.selected-name))) | 
| 131c0 |  0a 20 20 20 20 28 64 77 69 6d 2d 73 68 65 6c 6c    2d 63 6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d 61 72 6b  | .....(dwim-shell-command-on-mark | 
| 131e0 |  65 64 2d 66 69 6c 65 73 0a 20 20 20 20 20 28 66    6f 72 6d 61 74 20 22 54 6f 67 67 6c 65 20 25 73  | ed-files......(format."Toggle.%s | 
| 13200 |  22 20 73 65 6c 65 63 74 65 64 2d 6e 61 6d 65 29    0a 20 20 20 20 20 28 66 6f 72 6d 61 74 20 22 42  | ".selected-name)......(format."B | 
| 13220 |  6c 75 65 74 6f 6f 74 68 43 6f 6e 6e 65 63 74 6f    72 20 25 73 20 2d 2d 6e 6f 74 69 66 79 22 20 61  | luetoothConnector.%s.--notify".a | 
| 13240 |  64 64 72 65 73 73 29 0a 20 20 20 20 20 3a 75 74    69 6c 73 20 22 42 6c 75 65 74 6f 6f 74 68 43 6f  | ddress)......:utils."BluetoothCo | 
| 13260 |  6e 6e 65 63 74 6f 72 22 0a 20 20 20 20 20 3b 3b    20 3a 65 72 72 6f 72 2d 61 75 74 6f 66 6f 63 75  | nnector"......;;.:error-autofocu | 
| 13280 |  73 20 74 0a 20 20 20 20 20 3b 3b 20 3a 73 69 6c    65 6e 74 2d 73 75 63 63 65 73 73 20 74 0a 20 20  | s.t......;;.:silent-success.t... | 
| 132a0 |  20 20 20 29 29 29 0a 0a 3b 3b 3b 23 23 23 61 75    74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 64 77  | ...)))..;;;###autoload.(defun.dw | 
| 132c0 |  69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64    73 2d 6d 61 63 6f 73 2d 62 69 6e 2d 70 6c 69 73  | im-shell-commands-macos-bin-plis | 
| 132e0 |  74 2d 74 6f 2d 78 6d 6c 20 28 29 0a 20 20 22 43    6f 6e 76 65 72 74 20 62 69 6e 61 72 79 20 70 6c  | t-to-xml.()..."Convert.binary.pl | 
| 13300 |  69 73 74 20 74 6f 20 78 6d 6c 2e 22 0a 20 20 28    69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20 28  | ist.to.xml."...(interactive)...( | 
| 13320 |  64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61    6e 64 2d 6f 6e 2d 6d 61 72 6b 65 64 2d 66 69 6c  | dwim-shell-command-on-marked-fil | 
| 13340 |  65 73 0a 20 20 20 22 43 6f 6e 76 65 72 74 20 62    69 6e 61 72 79 20 70 6c 69 73 74 20 74 6f 20 78  | es...."Convert.binary.plist.to.x | 
| 13360 |  6d 6c 22 0a 20 20 20 22 70 6c 75 74 69 6c 20 2d    63 6f 6e 76 65 72 74 20 78 6d 6c 31 20 2d 6f 20  | ml"...."plutil.-convert.xml1.-o. | 
| 13380 |  27 3c 3c 66 6e 65 3e 3e 2e 78 6d 6c 27 20 27 3c    3c 66 3e 3e 27 22 0a 20 20 20 3a 75 74 69 6c 73  | '<<fne>>.xml'.'<<f>>'"....:utils | 
| 133a0 |  20 22 70 6c 75 74 69 6c 22 29 29 0a 0a 3b 3b 3b    23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66  | ."plutil"))..;;;###autoload.(def | 
| 133c0 |  75 6e 20 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f    6d 6d 61 6e 64 73 2d 6d 61 63 6f 73 2d 74 6f 67  | un.dwim-shell-commands-macos-tog | 
| 133e0 |  67 6c 65 2d 64 61 72 6b 2d 6d 6f 64 65 20 28 29    0a 20 20 22 54 6f 67 67 6c 65 20 6d 61 63 4f 53  | gle-dark-mode.()..."Toggle.macOS | 
| 13400 |  20 64 61 72 6b 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  | .dark.mode."...(interactive)...( | 
| 13420 |  64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61    6e 64 2d 6f 6e 2d 6d 61 72 6b 65 64 2d 66 69 6c  | dwim-shell-command-on-marked-fil | 
| 13440 |  65 73 0a 20 20 20 22 54 6f 67 67 6c 65 20 64 61    72 6b 20 6d 6f 64 65 22 0a 20 20 20 22 64 61 72  | es...."Toggle.dark.mode"...."dar | 
| 13460 |  6b 2d 6d 6f 64 65 22 0a 20 20 20 3a 75 74 69 6c    73 20 22 64 61 72 6b 2d 6d 6f 64 65 22 20 3b 3b  | k-mode"....:utils."dark-mode".;; | 
| 13480 |  20 62 72 65 77 20 69 6e 73 74 61 6c 6c 20 64 61    72 6b 2d 6d 6f 64 65 0a 20 20 20 3a 73 69 6c 65  | .brew.install.dark-mode....:sile | 
| 134a0 |  6e 74 2d 73 75 63 63 65 73 73 20 74 29 29 0a 0a    3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28  | nt-success.t))..;;;###autoload.( | 
| 134c0 |  64 65 66 75 6e 20 64 77 69 6d 2d 73 68 65 6c 6c    2d 63 6f 6d 6d 61 6e 64 73 2d 6d 61 63 6f 73 2d  | defun.dwim-shell-commands-macos- | 
| 134e0 |  74 6f 67 67 6c 65 2d 6d 65 6e 75 2d 62 61 72 2d    61 75 74 6f 68 69 64 65 20 28 29 0a 20 20 22 54  | toggle-menu-bar-autohide.()..."T | 
| 13500 |  6f 67 67 6c 65 20 6d 61 63 4f 53 20 64 61 72 6b    20 6d 6f 64 65 2e 22 0a 20 20 28 69 6e 74 65 72  | oggle.macOS.dark.mode."...(inter | 
| 13520 |  61 63 74 69 76 65 29 0a 20 20 28 64 77 69 6d 2d    73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 6f 6e  | active)...(dwim-shell-command-on | 
| 13540 |  2d 6d 61 72 6b 65 64 2d 66 69 6c 65 73 0a 20 20    20 22 54 6f 67 67 6c 65 20 6d 65 6e 75 20 62 61  | -marked-files...."Toggle.menu.ba | 
| 13560 |  72 20 61 75 74 6f 2d 68 69 64 65 2e 22 0a 20 20    20 22 63 75 72 72 65 6e 74 5f 73 74 61 74 75 73  | r.auto-hide."...."current_status | 
| 13580 |  3d 24 28 6f 73 61 73 63 72 69 70 74 20 2d 65 20    27 74 65 6c 6c 20 61 70 70 6c 69 63 61 74 69 6f  | =$(osascript.-e.'tell.applicatio | 
| 135a0 |  6e 20 5c 22 53 79 73 74 65 6d 20 45 76 65 6e 74    73 5c 22 20 74 6f 20 67 65 74 20 61 75 74 6f 68  | n.\"System.Events\".to.get.autoh | 
| 135c0 |  69 64 65 20 6d 65 6e 75 20 62 61 72 20 6f 66 20    64 6f 63 6b 20 70 72 65 66 65 72 65 6e 63 65 73  | ide.menu.bar.of.dock.preferences | 
| 135e0 |  27 29 0a 0a 69 66 20 5b 20 5c 22 24 63 75 72 72    65 6e 74 5f 73 74 61 74 75 73 5c 22 20 3d 20 5c  | ')..if.[.\"$current_status\".=.\ | 
| 13600 |  22 74 72 75 65 5c 22 20 5d 3b 20 74 68 65 6e 0a    20 20 20 20 6f 73 61 73 63 72 69 70 74 20 2d 65  | "true\".];.then.....osascript.-e | 
| 13620 |  20 27 74 65 6c 6c 20 61 70 70 6c 69 63 61 74 69    6f 6e 20 5c 22 53 79 73 74 65 6d 20 45 76 65 6e  | .'tell.application.\"System.Even | 
| 13640 |  74 73 5c 22 20 74 6f 20 73 65 74 20 61 75 74 6f    68 69 64 65 20 6d 65 6e 75 20 62 61 72 20 6f 66  | ts\".to.set.autohide.menu.bar.of | 
| 13660 |  20 64 6f 63 6b 20 70 72 65 66 65 72 65 6e 63 65    73 20 74 6f 20 66 61 6c 73 65 27 0a 20 20 20 20  | .dock.preferences.to.false'..... | 
| 13680 |  65 63 68 6f 20 5c 22 41 75 74 6f 2d 68 69 64 65    20 64 69 73 61 62 6c 65 64 2e 5c 22 0a 65 6c 73  | echo.\"Auto-hide.disabled.\".els | 
| 136a0 |  65 0a 20 20 20 20 6f 73 61 73 63 72 69 70 74 20    2d 65 20 27 74 65 6c 6c 20 61 70 70 6c 69 63 61  | e.....osascript.-e.'tell.applica | 
| 136c0 |  74 69 6f 6e 20 5c 22 53 79 73 74 65 6d 20 45 76    65 6e 74 73 5c 22 20 74 6f 20 73 65 74 20 61 75  | tion.\"System.Events\".to.set.au | 
| 136e0 |  74 6f 68 69 64 65 20 6d 65 6e 75 20 62 61 72 20    6f 66 20 64 6f 63 6b 20 70 72 65 66 65 72 65 6e  | tohide.menu.bar.of.dock.preferen | 
| 13700 |  63 65 73 20 74 6f 20 74 72 75 65 27 0a 20 20 20    20 65 63 68 6f 20 5c 22 41 75 74 6f 2d 68 69 64  | ces.to.true'.....echo.\"Auto-hid | 
| 13720 |  65 20 65 6e 61 62 6c 65 64 2e 5c 22 0a 66 69 22    0a 20 20 20 3a 75 74 69 6c 73 20 22 6f 73 61 73  | e.enabled.\".fi"....:utils."osas | 
| 13740 |  63 72 69 70 74 22 0a 20 20 20 3a 73 68 65 6c 6c    2d 75 74 69 6c 20 22 7a 73 68 22 0a 20 20 20 3a  | cript"....:shell-util."zsh"....: | 
| 13760 |  73 69 6c 65 6e 74 2d 73 75 63 63 65 73 73 20 74    29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f  | silent-success.t))..;;;###autolo | 
| 13780 |  61 64 0a 28 64 65 66 75 6e 20 64 77 69 6d 2d 73    68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 73 2d 70 64  | ad.(defun.dwim-shell-commands-pd | 
| 137a0 |  66 2d 74 6f 2d 74 78 74 20 28 29 0a 20 20 22 43    6f 6e 76 65 72 74 20 70 64 66 20 74 6f 20 74 78  | f-to-txt.()..."Convert.pdf.to.tx | 
| 137c0 |  74 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69    76 65 29 0a 20 20 28 64 77 69 6d 2d 73 68 65 6c  | t."...(interactive)...(dwim-shel | 
| 137e0 |  6c 2d 63 6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d 61 72    6b 65 64 2d 66 69 6c 65 73 0a 20 20 20 22 70 64  | l-command-on-marked-files...."pd | 
| 13800 |  66 20 74 6f 20 74 78 74 22 0a 20 20 20 22 70 64    66 74 6f 74 65 78 74 20 2d 6c 61 79 6f 75 74 20  | f.to.txt"...."pdftotext.-layout. | 
| 13820 |  27 3c 3c 66 3e 3e 27 20 27 3c 3c 66 6e 65 3e 3e    2e 74 78 74 27 22 0a 20 20 20 3a 75 74 69 6c 73  | '<<f>>'.'<<fne>>.txt'"....:utils | 
| 13840 |  20 22 70 64 66 74 6f 74 65 78 74 22 29 29 0a 0a    3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28  | ."pdftotext"))..;;;###autoload.( | 
| 13860 |  64 65 66 75 6e 20 64 77 69 6d 2d 73 68 65 6c 6c    2d 63 6f 6d 6d 61 6e 64 73 2d 72 65 73 69 7a 65  | defun.dwim-shell-commands-resize | 
| 13880 |  2d 69 6d 61 67 65 2d 62 79 2d 66 61 63 74 6f 72    20 28 29 0a 20 20 22 52 65 73 69 7a 65 20 6d 61  | -image-by-factor.()..."Resize.ma | 
| 138a0 |  72 6b 65 64 20 69 6d 61 67 65 28 73 29 20 62 79    20 66 61 63 74 6f 72 2e 22 0a 20 20 28 69 6e 74  | rked.image(s).by.factor."...(int | 
| 138c0 |  65 72 61 63 74 69 76 65 29 0a 20 20 28 64 77 69    6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d  | eractive)...(dwim-shell-command- | 
| 138e0 |  6f 6e 2d 6d 61 72 6b 65 64 2d 66 69 6c 65 73 0a    20 20 20 22 52 65 73 69 7a 65 20 69 6d 61 67 65  | on-marked-files...."Resize.image | 
| 13900 |  22 0a 20 20 20 28 6c 65 74 20 28 28 66 61 63 74    6f 72 20 28 72 65 61 64 2d 6e 75 6d 62 65 72 20  | "....(let.((factor.(read-number. | 
| 13920 |  22 52 65 73 69 7a 65 20 73 63 61 6c 69 6e 67 20    66 61 63 74 6f 72 3a 20 22 20 30 2e 35 29 29 29  | "Resize.scaling.factor:.".0.5))) | 
| 13940 |  0a 20 20 20 20 20 28 66 6f 72 6d 61 74 20 22 63    6f 6e 76 65 72 74 20 2d 72 65 73 69 7a 65 20 25  | ......(format."convert.-resize.% | 
| 13960 |  25 25 64 20 27 3c 3c 66 3e 3e 27 20 27 3c 3c 66    6e 65 3e 3e 5f 78 25 2e 32 66 2e 3c 3c 65 3e 3e  | %%d.'<<f>>'.'<<fne>>_x%.2f.<<e>> | 
| 13980 |  27 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    28 2a 20 31 30 30 20 66 61 63 74 6f 72 29 20 66  | '"..............(*.100.factor).f | 
| 139a0 |  61 63 74 6f 72 29 29 0a 20 20 20 3a 75 74 69 6c    73 20 22 63 6f 6e 76 65 72 74 22 29 29 0a 0a 3b  | actor))....:utils."convert"))..; | 
| 139c0 |  3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64    65 66 75 6e 20 64 77 69 6d 2d 73 68 65 6c 6c 2d  | ;;###autoload.(defun.dwim-shell- | 
| 139e0 |  63 6f 6d 6d 61 6e 64 73 2d 72 65 73 69 7a 65 2d    69 6d 61 67 65 2d 69 6e 2d 70 69 78 65 6c 73 20  | commands-resize-image-in-pixels. | 
| 13a00 |  28 29 0a 20 20 22 52 65 73 69 7a 65 20 6d 61 72    6b 65 64 20 69 6d 61 67 65 28 73 29 20 69 6e 20  | ()..."Resize.marked.image(s).in. | 
| 13a20 |  70 69 78 65 6c 73 2e 22 0a 20 20 28 69 6e 74 65    72 61 63 74 69 76 65 29 0a 20 20 28 64 77 69 6d  | pixels."...(interactive)...(dwim | 
| 13a40 |  2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 6f    6e 2d 6d 61 72 6b 65 64 2d 66 69 6c 65 73 0a 20  | -shell-command-on-marked-files.. | 
| 13a60 |  20 20 22 52 65 73 69 7a 65 20 69 6d 61 67 65 22    0a 20 20 20 28 6c 65 74 20 28 28 77 69 64 74 68  | .."Resize.image"....(let.((width | 
| 13a80 |  20 28 72 65 61 64 2d 6e 75 6d 62 65 72 20 22 52    65 73 69 7a 65 20 77 69 64 74 68 20 28 70 69 78  | .(read-number."Resize.width.(pix | 
| 13aa0 |  65 6c 73 29 3a 20 22 20 35 30 30 29 29 29 0a 20    20 20 20 20 28 66 6f 72 6d 61 74 20 22 63 6f 6e  | els):.".500)))......(format."con | 
| 13ac0 |  76 65 72 74 20 2d 72 65 73 69 7a 65 20 25 64 78    20 27 3c 3c 66 3e 3e 27 20 27 3c 3c 66 6e 65 3e  | vert.-resize.%dx.'<<f>>'.'<<fne> | 
| 13ae0 |  3e 5f 78 25 64 2e 3c 3c 65 3e 3e 27 22 20 77 69    64 74 68 20 77 69 64 74 68 29 29 0a 20 20 20 3a  | >_x%d.<<e>>'".width.width))....: | 
| 13b00 |  75 74 69 6c 73 20 22 63 6f 6e 76 65 72 74 22 29    29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61  | utils."convert"))..;;;###autoloa | 
| 13b20 |  64 0a 28 64 65 66 75 6e 20 64 77 69 6d 2d 73 68    65 6c 6c 2d 63 6f 6d 6d 61 6e 64 73 2d 70 64 66  | d.(defun.dwim-shell-commands-pdf | 
| 13b40 |  2d 70 61 73 73 77 6f 72 64 2d 70 72 6f 74 65 63    74 20 28 29 0a 20 20 22 41 64 64 20 61 20 70 61  | -password-protect.()..."Add.a.pa | 
| 13b60 |  73 73 77 6f 72 64 20 74 6f 20 70 64 66 28 73 29    2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76  | ssword.to.pdf(s)."...(interactiv | 
| 13b80 |  65 29 0a 20 20 28 64 77 69 6d 2d 73 68 65 6c 6c    2d 63 6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d 61 72 6b  | e)...(dwim-shell-command-on-mark | 
| 13ba0 |  65 64 2d 66 69 6c 65 73 0a 20 20 20 22 50 61 73    73 77 6f 72 64 20 70 72 6f 74 65 63 74 20 70 64  | ed-files...."Password.protect.pd | 
| 13bc0 |  66 22 0a 20 20 20 28 66 6f 72 6d 61 74 20 22 71    70 64 66 20 2d 2d 76 65 72 62 6f 73 65 20 2d 2d  | f"....(format."qpdf.--verbose.-- | 
| 13be0 |  65 6e 63 72 79 70 74 20 27 25 73 27 20 27 25 73    27 20 32 35 36 20 2d 2d 20 27 3c 3c 66 3e 3e 27  | encrypt.'%s'.'%s'.256.--.'<<f>>' | 
| 13c00 |  20 27 3c 3c 66 6e 65 3e 3e 5f 70 72 6f 74 65 63    74 65 64 2e 3c 3c 65 3e 3e 27 22 0a 20 20 20 20  | .'<<fne>>_protected.<<e>>'"..... | 
| 13c20 |  20 20 20 20 20 20 20 28 72 65 61 64 2d 70 61 73    73 77 64 20 22 75 73 65 72 2d 70 61 73 73 77 6f  | .......(read-passwd."user-passwo | 
| 13c40 |  72 64 3a 20 22 29 0a 20 20 20 20 20 20 20 20 20    20 20 28 72 65 61 64 2d 70 61 73 73 77 64 20 22  | rd:.")............(read-passwd." | 
| 13c60 |  6f 77 6e 65 72 2d 70 61 73 73 77 6f 72 64 3a 20    22 29 29 0a 20 20 20 3a 75 74 69 6c 73 20 22 71  | owner-password:."))....:utils."q | 
| 13c80 |  70 64 66 22 0a 20 20 20 3a 65 78 74 65 6e 73 69    6f 6e 73 20 22 70 64 66 22 29 29 0a 0a 3b 3b 3b  | pdf"....:extensions."pdf"))..;;; | 
| 13ca0 |  23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66    75 6e 20 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f  | ###autoload.(defun.dwim-shell-co | 
| 13cc0 |  6d 6d 61 6e 64 73 2d 70 64 66 2d 70 61 73 73 77    6f 72 64 2d 75 6e 70 72 6f 74 65 63 74 20 28 29  | mmands-pdf-password-unprotect.() | 
| 13ce0 |  0a 20 20 22 52 65 6d 6f 76 65 20 61 20 70 61 73    73 77 6f 72 64 20 66 72 6f 6d 20 70 64 66 28 73  | ..."Remove.a.password.from.pdf(s | 
| 13d00 |  29 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69    76 65 29 0a 20 20 28 64 77 69 6d 2d 73 68 65 6c  | )."...(interactive)...(dwim-shel | 
| 13d20 |  6c 2d 63 6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d 61 72    6b 65 64 2d 66 69 6c 65 73 0a 20 20 20 22 52 65  | l-command-on-marked-files...."Re | 
| 13d40 |  6d 6f 76 65 20 70 72 6f 74 65 63 74 69 6f 6e 20    66 72 6f 6d 20 70 64 66 22 0a 20 20 20 28 66 6f  | move.protection.from.pdf"....(fo | 
| 13d60 |  72 6d 61 74 20 22 71 70 64 66 20 2d 2d 76 65 72    62 6f 73 65 20 2d 2d 64 65 63 72 79 70 74 20 2d  | rmat."qpdf.--verbose.--decrypt.- | 
| 13d80 |  2d 70 61 73 73 77 6f 72 64 3d 27 25 73 27 20 2d    2d 20 27 3c 3c 66 3e 3e 27 20 27 3c 3c 66 6e 65  | -password='%s'.--.'<<f>>'.'<<fne | 
| 13da0 |  3e 3e 5f 75 6e 70 72 6f 74 65 63 74 65 64 2e 3c    3c 65 3e 3e 27 22 0a 20 20 20 20 20 20 20 20 20  | >>_unprotected.<<e>>'".......... | 
| 13dc0 |  20 20 28 72 65 61 64 2d 70 61 73 73 77 64 20 22    70 61 73 73 77 6f 72 64 3a 20 22 29 29 0a 20 20  | ..(read-passwd."password:."))... | 
| 13de0 |  20 3a 75 74 69 6c 73 20 22 71 70 64 66 22 0a 20    20 20 3a 65 78 74 65 6e 73 69 6f 6e 73 20 22 70  | .:utils."qpdf"....:extensions."p | 
| 13e00 |  64 66 22 29 29 0a 0a 28 64 65 66 75 6e 20 64 77    69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64  | df"))..(defun.dwim-shell-command | 
| 13e20 |  73 2d 2d 67 69 66 73 69 63 6c 65 2d 66 72 61 6d    65 73 2d 65 76 65 72 79 20 28 73 6b 69 70 70 69  | s--gifsicle-frames-every.(skippi | 
| 13e40 |  6e 67 2d 65 76 65 72 79 20 66 69 6c 65 29 0a 20    20 22 47 65 6e 65 72 61 74 65 20 66 72 61 6d 65  | ng-every.file)..."Generate.frame | 
| 13e60 |  73 20 53 4b 49 50 50 49 4e 47 2d 45 56 45 52 59    20 63 6f 75 6e 74 20 66 6f 72 20 76 69 64 65 6f  | s.SKIPPING-EVERY.count.for.video | 
| 13e80 |  20 46 49 4c 45 2e 22 0a 20 20 28 73 74 72 69 6e    67 2d 6a 6f 69 6e 0a 20 20 20 28 73 65 71 2d 6d  | .FILE."...(string-join....(seq-m | 
| 13ea0 |  61 70 20 28 6c 61 6d 62 64 61 20 28 6e 29 20 28    66 6f 72 6d 61 74 20 22 27 23 25 64 27 22 20 6e  | ap.(lambda.(n).(format."'#%d'".n | 
| 13ec0 |  29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28    6e 75 6d 62 65 72 2d 73 65 71 75 65 6e 63 65 20  | )).............(number-sequence. | 
| 13ee0 |  30 20 28 73 74 72 69 6e 67 2d 74 6f 2d 6e 75 6d    62 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20  | 0.(string-to-number............. | 
| 13f00 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 3b 3b 20 47 65 74 20 74 6f 74 61 6c  | ....................;;.Get.total | 
| 13f20 |  20 66 72 61 6d 65 73 20 63 6f 75 6e 74 2e 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .frames.count................... | 
| 13f40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    73 65 71 2d 66 69 72 73 74 20 28 70 72 6f 63 65  | ...............(seq-first.(proce | 
| 13f60 |  73 73 2d 6c 69 6e 65 73 20 22 69 64 65 6e 74 69    66 79 22 20 22 2d 66 6f 72 6d 61 74 22 20 22 25  | ss-lines."identify"."-format"."% | 
| 13f80 |  6e 5c 6e 22 20 66 69 6c 65 29 29 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | n\n".file))).................... | 
| 13fa0 |  20 20 20 20 20 20 20 20 20 20 73 6b 69 70 70 69    6e 67 2d 65 76 65 72 79 29 29 20 22 20 22 29 29  | ..........skipping-every)).".")) | 
| 13fc0 |  0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64    0a 28 64 65 66 75 6e 20 64 77 69 6d 2d 73 68 65  | ..;;;###autoload.(defun.dwim-she | 
| 13fe0 |  6c 6c 2d 63 6f 6d 6d 61 6e 64 73 2d 76 69 64 65    6f 2d 74 6f 2d 6d 70 33 20 28 29 0a 20 20 22 43  | ll-commands-video-to-mp3.()..."C | 
| 14000 |  6f 6e 76 65 72 74 20 76 69 64 65 6f 28 73 29 20    74 6f 20 6d 70 33 2e 22 0a 20 20 28 69 6e 74 65  | onvert.video(s).to.mp3."...(inte | 
| 14020 |  72 61 63 74 69 76 65 29 0a 20 20 28 64 77 69 6d    2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 6f  | ractive)...(dwim-shell-command-o | 
| 14040 |  6e 2d 6d 61 72 6b 65 64 2d 66 69 6c 65 73 0a 20    20 20 22 43 6f 6e 76 65 72 74 20 74 6f 20 6d 70  | n-marked-files...."Convert.to.mp | 
| 14060 |  33 22 0a 20 20 20 22 66 66 6d 70 65 67 20 2d 69    20 27 3c 3c 66 3e 3e 27 20 2d 76 6e 20 2d 61 62  | 3"...."ffmpeg.-i.'<<f>>'.-vn.-ab | 
| 14080 |  20 31 32 38 6b 20 2d 61 72 20 34 34 31 30 30 20    2d 79 20 27 3c 3c 66 6e 65 3e 3e 2e 6d 70 33 27  | .128k.-ar.44100.-y.'<<fne>>.mp3' | 
| 140a0 |  22 0a 20 20 20 3a 75 74 69 6c 73 20 22 66 66 6d    70 65 67 22 29 29 0a 0a 3b 3b 3b 23 23 23 61 75  | "....:utils."ffmpeg"))..;;;###au | 
| 140c0 |  74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 64 77    69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64  | toload.(defun.dwim-shell-command | 
| 140e0 |  73 2d 76 69 64 65 6f 2d 74 6f 2d 6d 70 33 2d 77    69 74 68 2d 61 72 74 77 6f 72 6b 20 28 29 0a 20  | s-video-to-mp3-with-artwork.().. | 
| 14100 |  20 22 43 6f 6e 76 65 72 74 20 76 69 64 65 6f 28    73 29 20 74 6f 20 6d 70 33 20 28 6b 65 65 70 20  | ."Convert.video(s).to.mp3.(keep. | 
| 14120 |  66 72 61 6d 65 20 61 73 20 61 72 74 77 6f 72 6b    29 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69  | frame.as.artwork)."...(interacti | 
| 14140 |  76 65 29 0a 20 20 28 64 77 69 6d 2d 73 68 65 6c    6c 2d 63 6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d 61 72  | ve)...(dwim-shell-command-on-mar | 
| 14160 |  6b 65 64 2d 66 69 6c 65 73 0a 20 20 20 22 43 6f    6e 76 65 72 74 20 74 6f 20 6d 70 33 22 0a 20 20  | ked-files...."Convert.to.mp3"... | 
| 14180 |  20 22 66 66 6d 70 65 67 20 2d 69 20 27 3c 3c 66    3e 3e 27 20 2d 76 66 20 27 73 65 6c 65 63 74 3d  | ."ffmpeg.-i.'<<f>>'.-vf.'select= | 
| 141a0 |  65 71 28 6e 5c 5c 2c 30 29 27 20 2d 71 3a 76 20    33 20 63 6f 76 65 72 2e 6a 70 67 20 2d 69 20 27  | eq(n\\,0)'.-q:v.3.cover.jpg.-i.' | 
| 141c0 |  3c 3c 66 3e 3e 27 20 2d 76 6e 20 2d 61 62 20 31    32 38 6b 20 2d 61 72 20 34 34 31 30 30 20 2d 79  | <<f>>'.-vn.-ab.128k.-ar.44100.-y | 
| 141e0 |  20 2d 6d 61 70 5f 6d 65 74 61 64 61 74 61 20 30    20 2d 69 64 33 76 32 5f 76 65 72 73 69 6f 6e 20  | .-map_metadata.0.-id3v2_version. | 
| 14200 |  33 20 2d 77 72 69 74 65 5f 69 64 33 76 31 20 31    20 2d 6d 65 74 61 64 61 74 61 3a 73 3a 76 20 74  | 3.-write_id3v1.1.-metadata:s:v.t | 
| 14220 |  69 74 6c 65 3d 27 41 6c 62 75 6d 20 63 6f 76 65    72 27 20 2d 6d 65 74 61 64 61 74 61 3a 73 3a 76  | itle='Album.cover'.-metadata:s:v | 
| 14240 |  20 63 6f 6d 6d 65 6e 74 3d 27 43 6f 76 65 72 20    28 66 72 6f 6e 74 29 27 20 27 3c 3c 66 6e 65 3e  | .comment='Cover.(front)'.'<<fne> | 
| 14260 |  3e 2e 6d 70 33 27 22 0a 20 20 20 3a 75 74 69 6c    73 20 22 66 66 6d 70 65 67 22 29 29 0a 0a 3b 3b  | >.mp3'"....:utils."ffmpeg"))..;; | 
| 14280 |  3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65    66 75 6e 20 64 77 69 6d 2d 73 68 65 6c 6c 2d 63  | ;###autoload.(defun.dwim-shell-c | 
| 142a0 |  6f 6d 6d 61 6e 64 73 2d 6e 64 6a 73 6f 6e 2d 74    6f 2d 6f 72 67 20 28 29 0a 20 20 22 43 6f 6e 76  | ommands-ndjson-to-org.()..."Conv | 
| 142c0 |  65 72 74 20 6e 64 6a 73 6f 6e 20 66 69 6c 65 20    74 6f 20 6f 72 67 2e 22 0a 20 20 28 69 6e 74 65  | ert.ndjson.file.to.org."...(inte | 
| 142e0 |  72 61 63 74 69 76 65 29 0a 20 20 28 75 6e 6c 65    73 73 20 28 65 71 20 28 6c 65 6e 67 74 68 20 28  | ractive)...(unless.(eq.(length.( | 
| 14300 |  64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61    6e 64 2d 2d 66 69 6c 65 73 29 29 20 31 29 0a 20  | dwim-shell-command--files)).1).. | 
| 14320 |  20 20 20 28 65 72 72 6f 72 20 22 4f 6e 6c 79 20    31 20 66 69 6c 65 20 73 75 70 70 6f 72 74 65 64  | ...(error."Only.1.file.supported | 
| 14340 |  22 29 29 0a 20 20 28 6c 65 74 2a 20 28 28 65 6d    61 63 73 2d 62 69 6e 20 28 66 69 6c 65 2d 74 72  | "))...(let*.((emacs-bin.(file-tr | 
| 14360 |  75 65 6e 61 6d 65 20 28 65 78 70 61 6e 64 2d 66    69 6c 65 2d 6e 61 6d 65 20 69 6e 76 6f 63 61 74  | uename.(expand-file-name.invocat | 
| 14380 |  69 6f 6e 2d 6e 61 6d 65 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ion-name........................ | 
| 143a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 6e  | ..............................in | 
| 143c0 |  76 6f 63 61 74 69 6f 6e 2d 64 69 72 65 63 74 6f    72 79 29 29 29 0a 20 20 20 20 20 20 20 20 20 28  | vocation-directory)))..........( | 
| 143e0 |  73 6f 75 72 63 65 20 28 6e 74 68 20 30 20 28 64    77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e  | source.(nth.0.(dwim-shell-comman | 
| 14400 |  64 2d 2d 66 69 6c 65 73 29 29 29 0a 20 20 20 20    20 20 20 20 20 28 64 65 73 74 69 6e 61 74 69 6f  | d--files)))..........(destinatio | 
| 14420 |  6e 20 28 63 6f 6e 63 61 74 20 28 66 69 6c 65 2d    6e 61 6d 65 2d 73 61 6e 73 2d 65 78 74 65 6e 73  | n.(concat.(file-name-sans-extens | 
| 14440 |  69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ion............................. | 
| 14460 |  20 20 20 73 6f 75 72 63 65 29 20 22 2e 6f 72 67    22 29 29 0a 20 20 20 20 20 20 20 20 20 28 66 69  | ...source).".org"))..........(fi | 
| 14480 |  65 6c 64 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  | elds.(with-temp-buffer.......... | 
| 144a0 |  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 74 73 20  | ..........(insert-file-contents. | 
| 144c0 |  73 6f 75 72 63 65 29 0a 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 62 75 66 66  | source)....................(buff | 
| 144e0 |  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 6f 69 6e  | er-substring-no-properties.(poin | 
| 14500 |  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 29 0a 20 20 20 20  | t-min).(line-end-position))..... | 
| 14520 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    72 65 61 64 2d 73 74 72 69 6e 67 20 22 46 69 65  | ...............(read-string."Fie | 
| 14540 |  6c 64 73 3a 20 22 20 28 6d 61 70 63 6f 6e 63 61    74 20 27 69 64 65 6e 74 69 74 79 20 28 6d 61 70  | lds:.".(mapconcat.'identity.(map | 
| 14560 |  63 61 72 20 28 6c 61 6d 62 64 61 20 28 69 74 65    6d 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | car.(lambda.(item).............. | 
| 14580 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 145a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 79  | .............................(sy | 
| 145c0 |  6d 62 6f 6c 2d 6e 61 6d 65 20 28 63 61 72 20 69    74 65 6d 29 29 29 0a 20 20 20 20 20 20 20 20 20  | mbol-name.(car.item))).......... | 
| 145e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 14600 |  20 20 20 20 20 20 20 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  | ...............................( | 
| 14620 |  6a 73 6f 6e 2d 72 65 61 64 2d 66 72 6f 6d 2d 73    74 72 69 6e 67 0a 20 20 20 20 20 20 20 20 20 20  | json-read-from-string........... | 
| 14640 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 14660 |  20 20 20 20 20 20 20 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  | ...............................( | 
| 14680 |  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 0a 20  | buffer-substring-no-properties.. | 
| 146a0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 146c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 146e0 |  20 20 20 20 20 20 20 20 20 28 70 6f 69 6e 74 2d    6d 69 6e 29 20 28 6c 69 6e 65 2d 65 6e 64 2d 70  | .........(point-min).(line-end-p | 
| 14700 |  6f 73 69 74 69 6f 6e 29 29 29 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | osition))))..................... | 
| 14720 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 14740 |  20 20 22 20 22 29 29 29 29 29 0a 20 20 20 20 28    64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61  | .."."))))).....(dwim-shell-comma | 
| 14760 |  6e 64 2d 6f 6e 2d 6d 61 72 6b 65 64 2d 66 69 6c    65 73 0a 20 20 20 20 20 22 43 6f 6e 76 65 72 74  | nd-on-marked-files......"Convert | 
| 14780 |  20 6e 64 6a 73 6f 6e 20 74 6f 20 6f 72 67 22 0a    20 20 20 20 20 28 66 6f 72 6d 61 74 20 22 25 73  | .ndjson.to.org"......(format."%s | 
| 147a0 |  20 2d 2d 71 75 69 63 6b 20 2d 2d 62 61 74 63 68    20 2d 2d 65 76 61 6c 20 5c 22 25 73 5c 22 22 20  | .--quick.--batch.--eval.\"%s\"". | 
| 147c0 |  65 6d 61 63 73 2d 62 69 6e 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 28 72 65 70 6c 61 63 65 2d  | emacs-bin..............(replace- | 
| 147e0 |  72 65 67 65 78 70 2d 69 6e 2d 73 74 72 69 6e 67    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22  | regexp-in-string..............." | 
| 14800 |  5c 22 22 20 22 5c 5c 5c 5c 5c 22 22 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 70 72 69 6e  | \""."\\\\\""...............(prin | 
| 14820 |  31 2d 74 6f 2d 73 74 72 69 6e 67 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 60 28 70 72 6f  | 1-to-string................`(pro | 
| 14840 |  67 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 72 65 71 75 69 72 65 20 27 6f  | gn...................(require.'o | 
| 14860 |  72 67 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 72 65 71 75 69 72 65 20 27  | rg)...................(require.' | 
| 14880 |  6a 73 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 28 64 65 66 75 6e 20 63  | json)...................(defun.c | 
| 148a0 |  6f 6e 76 65 72 74 2d 74 6f 2d 6f 72 67 2d 74 61    62 6c 65 20 28 6e 64 6a 73 6f 6e 29 0a 20 20 20  | onvert-to-org-table.(ndjson).... | 
| 148c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 6c 65 74 20 28 28 72 6f 77 73 20 28 6d 61  | .................(let.((rows.(ma | 
| 148e0 |  70 63 61 72 20 23 27 6a 73 6f 6e 2d 72 65 61 64    2d 66 72 6f 6d 2d 73 74 72 69 6e 67 0a 20 20 20  | pcar.#'json-read-from-string.... | 
| 14900 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 14920 |  20 20 20 20 20 28 73 70 6c 69 74 2d 73 74 72 69    6e 67 20 6e 64 6a 73 6f 6e 20 22 5c 6e 22 20 74  | .....(split-string.ndjson."\n".t | 
| 14940 |  29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 6f 72 67 74  | )))).......................(orgt | 
| 14960 |  62 6c 2d 74 6f 2d 6f 72 67 74 62 6c 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | bl-to-orgtbl.................... | 
| 14980 |  20 20 20 20 28 61 70 70 65 6e 64 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ....(append..................... | 
| 149a0 |  20 20 20 20 28 6c 69 73 74 20 28 73 70 6c 69 74    2d 73 74 72 69 6e 67 20 2c 66 69 65 6c 64 73 29  | ....(list.(split-string.,fields) | 
| 149c0 |  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 27 28 68 6c 69 6e  | ).........................'(hlin | 
| 149e0 |  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 28 6d 61 70 63  | e).........................(mapc | 
| 14a00 |  61 72 20 28 6c 61 6d 62 64 61 20 28 6f 62 6a 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ar.(lambda.(obj)................ | 
| 14a20 |  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 28 6c 61 6d 62  | ...................(mapcar.(lamb | 
| 14a40 |  64 61 20 28 6b 65 79 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | da.(key)........................ | 
| 14a60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 6f 72 20 28 61 6c 69 73 74 2d  | .....................(or.(alist- | 
| 14a80 |  67 65 74 20 28 69 6e 74 65 72 6e 20 6b 65 79 29    20 6f 62 6a 29 20 22 22 29 29 0a 20 20 20 20 20  | get.(intern.key).obj).""))...... | 
| 14aa0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 14ac0 |  20 20 20 20 20 28 73 70 6c 69 74 2d 73 74 72 69    6e 67 20 2c 66 69 65 6c 64 73 29 29 29 0a 20 20  | .....(split-string.,fields)))... | 
| 14ae0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 6f  | ..............................ro | 
| 14b00 |  77 73 29 29 20 6e 69 6c 29 29 29 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77  | ws)).nil)))...................(w | 
| 14b20 |  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 20 20 20 20 20 20  | ith-temp-buffer................. | 
| 14b40 |  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 2c 73 6f 75 72 63  | ....(insert-file-contents.,sourc | 
| 14b60 |  65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 28 6c 65 74 20 28 28 6f 72  | e).....................(let.((or | 
| 14b80 |  67 20 28 63 6f 6e 76 65 72 74 2d 74 6f 2d 6f 72    67 2d 74 61 62 6c 65 20 28 62 75 66 66 65 72 2d  | g.(convert-to-org-table.(buffer- | 
| 14ba0 |  73 74 72 69 6e 67 29 29 29 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | string))))...................... | 
| 14bc0 |  20 28 77 69 74 68 2d 74 65 6d 70 2d 66 69 6c 65    20 2c 64 65 73 74 69 6e 61 74 69 6f 6e 0a 20 20  | .(with-temp-file.,destination... | 
| 14be0 |  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 6f 72  | ......................(insert.or | 
| 14c00 |  67 29 29 29 29 29 29 29 29 0a 20 20 20 20 20 3a    65 78 74 65 6e 73 69 6f 6e 73 20 22 6e 64 6a 73  | g))))))))......:extensions."ndjs | 
| 14c20 |  6f 6e 22 29 29 29 0a 0a 3b 3b 3b 23 23 23 61 75    74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 64 77  | on")))..;;;###autoload.(defun.dw | 
| 14c40 |  69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64    73 2d 73 65 74 2d 6d 65 64 69 61 2d 61 72 74 77  | im-shell-commands-set-media-artw | 
| 14c60 |  6f 72 6b 2d 69 6d 61 67 65 2d 6d 65 74 61 64 61    74 61 20 28 29 0a 20 20 22 53 65 74 20 69 6d 61  | ork-image-metadata.()..."Set.ima | 
| 14c80 |  67 65 20 61 72 74 77 6f 72 6b 20 6d 65 74 61 64    61 74 61 20 66 6f 72 20 6d 65 64 69 61 20 66 69  | ge.artwork.metadata.for.media.fi | 
| 14ca0 |  6c 65 28 73 29 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  | le(s)."...(interactive)...(let.( | 
| 14cc0 |  28 61 72 74 77 6f 72 6b 2d 66 69 6c 65 20 28 66    69 6c 65 2d 6e 61 6d 65 2d 75 6e 71 75 6f 74 65  | (artwork-file.(file-name-unquote | 
| 14ce0 |  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 72 65 61 64 2d 66 69  | ........................(read-fi | 
| 14d00 |  6c 65 2d 6e 61 6d 65 20 22 53 65 6c 65 63 74 20    61 72 74 77 6f 72 6b 20 69 6d 61 67 65 3a 20 22  | le-name."Select.artwork.image:." | 
| 14d20 |  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  | ................................ | 
| 14d40 |  20 20 20 20 20 20 20 20 6e 69 6c 20 6e 69 6c 20    74 29 29 29 0a 20 20 20 20 20 20 20 20 28 73 68  | ........nil.nil.t))).........(sh | 
| 14d60 |  6f 75 6c 64 2d 62 61 63 6b 75 70 20 28 79 2d 6f    72 2d 6e 2d 70 20 22 43 72 65 61 74 65 20 62 61  | ould-backup.(y-or-n-p."Create.ba | 
| 14d80 |  63 6b 75 70 20 66 69 6c 65 73 3f 20 22 29 29 29    0a 20 20 20 20 28 75 6e 6c 65 73 73 20 28 66 69  | ckup.files?."))).....(unless.(fi | 
| 14da0 |  6c 65 2d 72 65 67 75 6c 61 72 2d 70 20 61 72 74    77 6f 72 6b 2d 66 69 6c 65 29 0a 20 20 20 20 20  | le-regular-p.artwork-file)...... | 
| 14dc0 |  20 28 75 73 65 72 2d 65 72 72 6f 72 20 22 4e 6f    74 20 61 20 66 69 6c 65 22 29 29 0a 20 20 20 20  | .(user-error."Not.a.file"))..... | 
| 14de0 |  28 75 6e 6c 65 73 73 20 73 68 6f 75 6c 64 2d 62    61 63 6b 75 70 0a 20 20 20 20 20 20 28 75 6e 6c  | (unless.should-backup.......(unl | 
| 14e00 |  65 73 73 20 28 79 2d 6f 72 2d 6e 2d 70 20 22 4f    76 65 72 72 69 64 65 20 66 69 6c 65 28 73 29 3f  | ess.(y-or-n-p."Override.file(s)? | 
| 14e20 |  20 22 29 0a 20 20 20 20 20 20 20 20 28 75 73 65    72 2d 65 72 72 6f 72 20 22 41 62 6f 72 74 65 64  | .").........(user-error."Aborted | 
| 14e40 |  22 29 29 29 0a 20 20 20 20 28 64 77 69 6d 2d 73    68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 6f 6e 2d  | "))).....(dwim-shell-command-on- | 
| 14e60 |  6d 61 72 6b 65 64 2d 66 69 6c 65 73 0a 20 20 20    20 20 22 53 65 74 20 61 6c 62 75 6d 20 61 72 74  | marked-files......"Set.album.art | 
| 14e80 |  77 6f 72 6b 22 0a 20 20 20 20 20 28 66 6f 72 6d    61 74 20 28 69 66 20 73 68 6f 75 6c 64 2d 62 61  | work"......(format.(if.should-ba | 
| 14ea0 |  63 6b 75 70 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 22 66 66 6d 70 65 67 20 2d 69  | ckup.................."ffmpeg.-i | 
| 14ec0 |  20 27 3c 3c 66 3e 3e 27 20 2d 69 20 27 25 73 27    20 2d 6d 61 70 5f 6d 65 74 61 64 61 74 61 20 30  | .'<<f>>'.-i.'%s'.-map_metadata.0 | 
| 14ee0 |  20 2d 6d 61 70 20 30 3a 61 20 2d 6d 61 70 20 31    20 2d 63 20 63 6f 70 79 20 2d 64 69 73 70 6f 73  | .-map.0:a.-map.1.-c.copy.-dispos | 
| 14f00 |  69 74 69 6f 6e 3a 76 3a 30 20 61 74 74 61 63 68    65 64 5f 70 69 63 20 27 3c 3c 66 3e 3e 2e 74 6d  | ition:v:0.attached_pic.'<<f>>.tm | 
| 14f20 |  70 2e 3c 3c 65 3e 3e 27 20 26 26 20 6d 76 20 2d    66 20 27 3c 3c 66 3e 3e 27 20 27 3c 3c 66 3e 3e  | p.<<e>>'.&&.mv.-f.'<<f>>'.'<<f>> | 
| 14f40 |  2e 62 61 6b 27 20 26 26 20 6d 76 20 27 3c 3c 66    3e 3e 2e 74 6d 70 2e 3c 3c 65 3e 3e 27 20 27 3c  | .bak'.&&.mv.'<<f>>.tmp.<<e>>'.'< | 
| 14f60 |  3c 66 3e 3e 27 22 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 22 66 66 6d 70 65 67 20 2d 69  | <f>>'"................"ffmpeg.-i | 
| 14f80 |  20 27 3c 3c 66 3e 3e 27 20 2d 69 20 27 25 73 27    20 2d 6d 61 70 5f 6d 65 74 61 64 61 74 61 20 30  | .'<<f>>'.-i.'%s'.-map_metadata.0 | 
| 14fa0 |  20 2d 6d 61 70 20 30 3a 61 20 2d 6d 61 70 20 31    20 2d 63 20 63 6f 70 79 20 2d 64 69 73 70 6f 73  | .-map.0:a.-map.1.-c.copy.-dispos | 
| 14fc0 |  69 74 69 6f 6e 3a 76 3a 30 20 61 74 74 61 63 68    65 64 5f 70 69 63 20 27 3c 3c 66 3e 3e 2e 74 6d  | ition:v:0.attached_pic.'<<f>>.tm | 
| 14fe0 |  70 2e 3c 3c 65 3e 3e 27 20 26 26 20 6d 76 20 2d    66 20 27 3c 3c 66 3e 3e 2e 74 6d 70 2e 3c 3c 65  | p.<<e>>'.&&.mv.-f.'<<f>>.tmp.<<e | 
| 15000 |  3e 3e 27 20 27 3c 3c 66 3e 3e 27 22 29 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 61 72 74 77 6f  | >>'.'<<f>>'")..............artwo | 
| 15020 |  72 6b 2d 66 69 6c 65 29 0a 20 20 20 20 20 3a 75    74 69 6c 73 20 22 41 74 6f 6d 69 63 50 61 72 73  | rk-file)......:utils."AtomicPars | 
| 15040 |  6c 65 79 22 0a 20 20 20 20 20 3a 73 69 6c 65 6e    74 2d 73 75 63 63 65 73 73 20 74 29 29 29 0a 0a  | ley"......:silent-success.t))).. | 
| 15060 |  3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28    64 65 66 75 6e 20 64 77 69 6d 2d 73 68 65 6c 6c  | ;;;###autoload.(defun.dwim-shell | 
| 15080 |  2d 63 6f 6d 6d 61 6e 64 73 2d 76 69 64 65 6f 2d    74 72 69 6d 2d 62 65 67 69 6e 6e 69 6e 67 20 28  | -commands-video-trim-beginning.( | 
| 150a0 |  29 0a 20 20 22 44 72 6f 70 20 61 75 64 69 6f 20    66 72 6f 6d 20 61 6c 6c 20 6d 61 72 6b 65 64 20  | )..."Drop.audio.from.all.marked. | 
| 150c0 |  76 69 64 65 6f 73 2e 22 0a 20 20 28 69 6e 74 65    72 61 63 74 69 76 65 29 0a 20 20 28 64 77 69 6d  | videos."...(interactive)...(dwim | 
| 150e0 |  2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 6f    6e 2d 6d 61 72 6b 65 64 2d 66 69 6c 65 73 0a 20  | -shell-command-on-marked-files.. | 
| 15100 |  20 20 22 54 72 69 6d 20 62 65 67 69 6e 6e 69 6e    67 22 0a 20 20 20 22 66 66 6d 70 65 67 20 2d 69  | .."Trim.beginning"...."ffmpeg.-i | 
| 15120 |  20 27 3c 3c 66 3e 3e 27 20 2d 79 20 2d 73 73 20    3c 3c 53 65 63 6f 6e 64 73 3a 35 3e 3e 20 2d 63  | .'<<f>>'.-y.-ss.<<Seconds:5>>.-c | 
| 15140 |  3a 76 20 63 6f 70 79 20 2d 63 3a 61 20 63 6f 70    79 20 27 3c 3c 66 6e 65 3e 3e 5f 74 72 69 6d 6d  | :v.copy.-c:a.copy.'<<fne>>_trimm | 
| 15160 |  65 64 2e 3c 3c 65 3e 3e 27 22 0a 20 20 20 3a 73    69 6c 65 6e 74 2d 73 75 63 63 65 73 73 20 74 0a  | ed.<<e>>'"....:silent-success.t. | 
| 15180 |  20 20 20 3a 75 74 69 6c 73 20 22 66 66 6d 70 65    67 22 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f  | ...:utils."ffmpeg"))..;;;###auto | 
| 151a0 |  6c 6f 61 64 0a 28 64 65 66 75 6e 20 64 77 69 6d    2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 73 2d  | load.(defun.dwim-shell-commands- | 
| 151c0 |  76 69 64 65 6f 2d 74 72 69 6d 2d 65 6e 64 20 28    29 0a 20 20 22 44 72 6f 70 20 61 75 64 69 6f 20  | video-trim-end.()..."Drop.audio. | 
| 151e0 |  66 72 6f 6d 20 61 6c 6c 20 6d 61 72 6b 65 64 20    76 69 64 65 6f 73 2e 22 0a 20 20 28 69 6e 74 65  | from.all.marked.videos."...(inte | 
| 15200 |  72 61 63 74 69 76 65 29 0a 20 20 28 64 77 69 6d    2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 6f  | ractive)...(dwim-shell-command-o | 
| 15220 |  6e 2d 6d 61 72 6b 65 64 2d 66 69 6c 65 73 0a 20    20 20 22 54 72 69 6d 20 62 65 67 69 6e 6e 69 6e  | n-marked-files...."Trim.beginnin | 
| 15240 |  67 22 0a 20 20 20 22 66 66 6d 70 65 67 20 2d 73    73 65 6f 66 20 2d 3c 3c 53 65 63 6f 6e 64 73 3a  | g"...."ffmpeg.-sseof.-<<Seconds: | 
| 15260 |  35 3e 3e 20 2d 69 20 27 3c 3c 66 3e 3e 27 20 2d    79 20 2d 63 3a 76 20 63 6f 70 79 20 2d 63 3a 61  | 5>>.-i.'<<f>>'.-y.-c:v.copy.-c:a | 
| 15280 |  20 63 6f 70 79 20 27 3c 3c 66 6e 65 3e 3e 5f 74    72 69 6d 6d 65 64 2e 3c 3c 65 3e 3e 27 22 0a 20  | .copy.'<<fne>>_trimmed.<<e>>'".. | 
| 152a0 |  20 20 3a 73 69 6c 65 6e 74 2d 73 75 63 63 65 73    73 20 74 0a 20 20 20 3a 75 74 69 6c 73 20 22 66  | ..:silent-success.t....:utils."f | 
| 152c0 |  66 6d 70 65 67 22 29 29 0a 0a 3b 3b 3b 23 23 23    61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20  | fmpeg"))..;;;###autoload.(defun. | 
| 152e0 |  64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61    6e 64 73 2d 76 69 64 65 6f 2d 74 6f 2d 74 68 75  | dwim-shell-commands-video-to-thu | 
| 15300 |  6d 62 6e 61 69 6c 20 28 29 0a 20 20 22 47 65 6e    65 72 61 74 65 20 61 20 74 68 75 6d 62 6e 61 69  | mbnail.()..."Generate.a.thumbnai | 
| 15320 |  6c 20 66 6f 72 20 6d 61 72 6b 65 64 20 76 69 64    65 6f 28 73 29 2e 22 0a 20 20 28 69 6e 74 65 72  | l.for.marked.video(s)."...(inter | 
| 15340 |  61 63 74 69 76 65 29 0a 20 20 28 6c 65 74 20 28    28 74 65 6d 70 2d 64 69 72 20 28 6d 61 6b 65 2d  | active)...(let.((temp-dir.(make- | 
| 15360 |  74 65 6d 70 2d 66 69 6c 65 20 22 74 68 75 6d 62    6e 61 69 6c 73 2d 22 20 74 29 29 29 0a 20 20 20  | temp-file."thumbnails-".t))).... | 
| 15380 |  20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d    6d 61 6e 64 2d 6f 6e 2d 6d 61 72 6b 65 64 2d 66  | .(dwim-shell-command-on-marked-f | 
| 153a0 |  69 6c 65 73 0a 20 20 20 20 20 22 54 68 75 6d 62    6e 61 69 6c 20 77 69 74 68 20 66 66 6d 70 65 67  | iles......"Thumbnail.with.ffmpeg | 
| 153c0 |  22 0a 20 20 20 20 20 22 66 66 6d 70 65 67 20 2d    69 20 27 3c 3c 66 3e 3e 27 20 2d 73 73 20 30 30  | "......"ffmpeg.-i.'<<f>>'.-ss.00 | 
| 153e0 |  3a 30 30 3a 30 31 2e 30 30 30 20 2d 76 66 72 61    6d 65 73 20 31 20 27 3c 3c 66 6e 65 3e 3e 2e 6a  | :00:01.000.-vframes.1.'<<fne>>.j | 
| 15400 |  70 67 27 22 0a 20 20 20 20 20 3a 75 74 69 6c 73    20 22 66 66 6d 70 65 67 22 29 29 29 0a 0a 3b 3b  | pg'"......:utils."ffmpeg")))..;; | 
| 15420 |  3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65    66 75 6e 20 64 77 69 6d 2d 73 68 65 6c 6c 2d 63  | ;###autoload.(defun.dwim-shell-c | 
| 15440 |  6f 6d 6d 61 6e 64 73 2d 64 72 6f 70 2d 76 69 64    65 6f 2d 61 75 64 69 6f 20 28 29 0a 20 20 22 44  | ommands-drop-video-audio.()..."D | 
| 15460 |  72 6f 70 20 61 75 64 69 6f 20 66 72 6f 6d 20 61    6c 6c 20 6d 61 72 6b 65 64 20 76 69 64 65 6f 73  | rop.audio.from.all.marked.videos | 
| 15480 |  2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76    65 29 0a 20 20 28 64 77 69 6d 2d 73 68 65 6c 6c  | ."...(interactive)...(dwim-shell | 
| 154a0 |  2d 63 6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d 61 72 6b    65 64 2d 66 69 6c 65 73 0a 20 20 20 22 44 72 6f  | -command-on-marked-files...."Dro | 
| 154c0 |  70 20 61 75 64 69 6f 22 0a 20 20 20 22 66 66 6d    70 65 67 20 2d 69 20 27 3c 3c 66 3e 3e 27 20 2d  | p.audio"...."ffmpeg.-i.'<<f>>'.- | 
| 154e0 |  63 20 63 6f 70 79 20 2d 61 6e 20 27 3c 3c 66 6e    65 3e 3e 5f 6e 6f 5f 61 75 64 69 6f 2e 3c 3c 65  | c.copy.-an.'<<fne>>_no_audio.<<e | 
| 15500 |  3e 3e 27 22 0a 20 20 20 3a 75 74 69 6c 73 20 22    66 66 6d 70 65 67 22 29 29 0a 0a 3b 3b 3b 23 23  | >>'"....:utils."ffmpeg"))..;;;## | 
| 15520 |  23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e    20 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d  | #autoload.(defun.dwim-shell-comm | 
| 15540 |  61 6e 64 73 2d 70 69 6e 67 2d 67 6f 6f 67 6c 65    20 28 29 0a 20 20 22 50 69 6e 67 20 67 6f 6f 67  | ands-ping-google.()..."Ping.goog | 
| 15560 |  6c 65 2e 63 6f 6d 2e 22 0a 20 20 28 69 6e 74 65    72 61 63 74 69 76 65 29 0a 20 20 28 64 77 69 6d  | le.com."...(interactive)...(dwim | 
| 15580 |  2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 6f    6e 2d 6d 61 72 6b 65 64 2d 66 69 6c 65 73 0a 20  | -shell-command-on-marked-files.. | 
| 155a0 |  20 20 22 50 69 6e 67 20 67 6f 6f 67 6c 65 2e 63    6f 6d 22 0a 20 20 20 22 70 69 6e 67 20 2d 63 20  | .."Ping.google.com"...."ping.-c. | 
| 155c0 |  33 20 67 6f 6f 67 6c 65 2e 63 6f 6d 22 0a 20 20    20 3a 75 74 69 6c 73 20 22 70 69 6e 67 22 0a 20  | 3.google.com"....:utils."ping".. | 
| 155e0 |  20 20 3a 66 6f 63 75 73 2d 6e 6f 77 20 74 29 29    0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64  | ..:focus-now.t))..;;;###autoload | 
| 15600 |  0a 28 64 65 66 75 6e 20 64 77 69 6d 2d 73 68 65    6c 6c 2d 63 6f 6d 6d 61 6e 64 73 2d 73 70 65 65  | .(defun.dwim-shell-commands-spee | 
| 15620 |  64 2d 75 70 2d 76 69 64 65 6f 20 28 29 0a 20 20    22 53 70 65 65 64 20 75 70 20 76 69 64 65 6f 28  | d-up-video.()..."Speed.up.video( | 
| 15640 |  73 29 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74    69 76 65 29 0a 20 20 28 64 77 69 6d 2d 73 68 65  | s)."...(interactive)...(dwim-she | 
| 15660 |  6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d 61    72 6b 65 64 2d 66 69 6c 65 73 0a 20 20 20 22 53  | ll-command-on-marked-files...."S | 
| 15680 |  70 65 65 64 20 75 70 20 76 69 64 65 6f 22 0a 20    20 20 28 6c 65 74 20 28 28 66 61 63 74 6f 72 20  | peed.up.video"....(let.((factor. | 
| 156a0 |  28 72 65 61 64 2d 6e 75 6d 62 65 72 20 22 52 65    73 69 7a 65 20 73 63 61 6c 69 6e 67 20 66 61 63  | (read-number."Resize.scaling.fac | 
| 156c0 |  74 6f 72 3a 20 22 20 32 29 29 29 0a 20 20 20 20    20 28 66 6f 72 6d 61 74 20 22 66 66 6d 70 65 67  | tor:.".2)))......(format."ffmpeg | 
| 156e0 |  20 2d 69 20 27 3c 3c 66 3e 3e 27 20 2d 61 6e 20    2d 66 69 6c 74 65 72 3a 76 20 27 73 65 74 70 74  | .-i.'<<f>>'.-an.-filter:v.'setpt | 
| 15700 |  73 3d 25 73 2a 50 54 53 27 20 27 3c 3c 66 6e 65    3e 3e 5f 78 25 73 2e 3c 3c 65 3e 3e 27 22 0a 20  | s=%s*PTS'.'<<fne>>_x%s.<<e>>'".. | 
| 15720 |  20 20 20 20 20 20 20 20 20 20 20 20 28 2f 20 31    20 28 66 6c 6f 61 74 20 66 61 63 74 6f 72 29 29  | ............(/.1.(float.factor)) | 
| 15740 |  20 66 61 63 74 6f 72 29 29 0a 20 20 20 3a 75 74    69 6c 73 20 22 66 66 6d 70 65 67 22 29 29 0a 0a  | .factor))....:utils."ffmpeg")).. | 
| 15760 |  3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28    64 65 66 75 6e 20 64 77 69 6d 2d 73 68 65 6c 6c  | ;;;###autoload.(defun.dwim-shell | 
| 15780 |  2d 63 6f 6d 6d 61 6e 64 73 2d 73 70 65 65 64 2d    75 70 2d 76 69 64 65 6f 2d 66 72 61 67 6d 65 6e  | -commands-speed-up-video-fragmen | 
| 157a0 |  74 20 28 29 0a 20 20 22 53 70 65 65 64 20 75 70    20 66 72 61 67 6d 65 6e 74 20 69 6e 20 76 69 64  | t.()..."Speed.up.fragment.in.vid | 
| 157c0 |  65 6f 28 73 29 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  | eo(s)."...(interactive)...(let.( | 
| 157e0 |  28 73 74 61 72 74 20 28 72 65 61 64 2d 6e 75 6d    62 65 72 20 22 53 74 61 72 74 20 28 73 65 63 6f  | (start.(read-number."Start.(seco | 
| 15800 |  6e 64 73 29 3a 20 22 29 29 0a 20 20 20 20 20 20    20 20 28 65 6e 64 20 28 72 65 61 64 2d 6e 75 6d  | nds):.")).........(end.(read-num | 
| 15820 |  62 65 72 20 22 45 6e 64 20 28 73 65 63 6f 6e 64    73 29 3a 20 22 29 29 0a 20 20 20 20 20 20 20 20  | ber."End.(seconds):."))......... | 
| 15840 |  28 66 61 63 74 6f 72 20 28 72 65 61 64 2d 6e 75    6d 62 65 72 20 22 53 70 65 65 64 20 75 70 20 66  | (factor.(read-number."Speed.up.f | 
| 15860 |  61 63 74 6f 72 3a 20 22 20 32 29 29 29 0a 20 20    20 20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f  | actor:.".2))).....(dwim-shell-co | 
| 15880 |  6d 6d 61 6e 64 2d 6f 6e 2d 6d 61 72 6b 65 64 2d    66 69 6c 65 73 0a 20 20 20 20 20 22 53 70 65 65  | mmand-on-marked-files......"Spee | 
| 158a0 |  64 20 75 70 20 66 72 61 67 6d 65 6e 74 20 69 6e    20 76 69 64 65 6f 22 0a 20 20 20 20 20 28 66 6f  | d.up.fragment.in.video"......(fo | 
| 158c0 |  72 6d 61 74 20 22 66 66 6d 70 65 67 20 2d 69 20    27 3c 3c 66 3e 3e 27 20 2d 66 69 6c 74 65 72 5f  | rmat."ffmpeg.-i.'<<f>>'.-filter_ | 
| 158e0 |  63 6f 6d 70 6c 65 78 20 27 5b 30 3a 76 5d 74 72    69 6d 3d 73 74 61 72 74 3d 30 3a 65 6e 64 3d 25  | complex.'[0:v]trim=start=0:end=% | 
| 15900 |  64 2c 73 65 74 70 74 73 3d 50 54 53 2d 53 54 41    52 54 50 54 53 5b 76 30 5d 3b 5b 30 3a 76 5d 74  | d,setpts=PTS-STARTPTS[v0];[0:v]t | 
| 15920 |  72 69 6d 3d 73 74 61 72 74 3d 25 64 3a 65 6e 64    3d 25 64 2c 73 65 74 70 74 73 3d 28 50 54 53 2d  | rim=start=%d:end=%d,setpts=(PTS- | 
| 15940 |  31 29 2f 25 64 5b 76 31 5d 3b 5b 30 3a 76 5d 74    72 69 6d 3d 73 74 61 72 74 3d 25 64 2c 73 65 74  | 1)/%d[v1];[0:v]trim=start=%d,set | 
| 15960 |  70 74 73 3d 50 54 53 2d 53 54 41 52 54 50 54 53    5b 76 32 5d 3b 5b 76 30 5d 5b 76 31 5d 5b 76 32  | pts=PTS-STARTPTS[v2];[v0][v1][v2 | 
| 15980 |  5d 63 6f 6e 63 61 74 3d 6e 3d 33 3a 76 3d 31 3a    61 3d 30 27 20 2d 70 72 65 73 65 74 20 66 61 73  | ]concat=n=3:v=1:a=0'.-preset.fas | 
| 159a0 |  74 20 27 3c 3c 66 6e 65 3e 3e 5f 25 64 3a 25 64    78 25 64 2e 3c 3c 65 3e 3e 27 22 20 73 74 61 72  | t.'<<fne>>_%d:%dx%d.<<e>>'".star | 
| 159c0 |  74 20 73 74 61 72 74 20 65 6e 64 20 66 61 63 74    6f 72 20 65 6e 64 20 73 74 61 72 74 20 65 6e 64  | t.start.end.factor.end.start.end | 
| 159e0 |  20 66 61 63 74 6f 72 29 0a 20 20 20 20 20 3a 75    74 69 6c 73 20 22 66 66 6d 70 65 67 22 29 29 29  | .factor)......:utils."ffmpeg"))) | 
| 15a00 |  0a 0a 28 64 65 66 75 6e 20 64 77 69 6d 2d 73 68    65 6c 6c 2d 63 6f 6d 6d 61 6e 64 73 2d 73 65 74  | ..(defun.dwim-shell-commands-set | 
| 15a20 |  2d 73 6f 6e 67 2d 74 69 74 6c 65 20 28 29 0a 20    20 22 53 65 74 20 73 6f 6e 67 28 73 29 20 74 69  | -song-title.()..."Set.song(s).ti | 
| 15a40 |  74 6c 65 2e 22 0a 20 20 28 69 6e 74 65 72 61 63    74 69 76 65 29 0a 20 20 28 6c 65 74 20 28 28 74  | tle."...(interactive)...(let.((t | 
| 15a60 |  69 74 6c 65 20 28 72 65 70 6c 61 63 65 2d 72 65    67 65 78 70 2d 69 6e 2d 73 74 72 69 6e 67 20 22  | itle.(replace-regexp-in-string." | 
| 15a80 |  27 22 20 22 5c 27 22 20 28 72 65 61 64 2d 73 74    72 69 6e 67 20 22 4e 65 77 20 74 69 74 6c 65 3a  | '"."\'".(read-string."New.title: | 
| 15aa0 |  20 22 29 29 29 29 0a 20 20 20 20 28 64 77 69 6d    2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 6f  | .")))).....(dwim-shell-command-o | 
| 15ac0 |  6e 2d 6d 61 72 6b 65 64 2d 66 69 6c 65 73 0a 20    20 20 20 20 22 53 65 74 20 73 6f 6e 67 28 73 29  | n-marked-files......"Set.song(s) | 
| 15ae0 |  20 74 69 74 6c 65 22 0a 20 20 20 20 20 28 66 6f    72 6d 61 74 20 22 66 66 6d 70 65 67 20 2d 69 20  | .title"......(format."ffmpeg.-i. | 
| 15b00 |  27 3c 3c 66 3e 3e 27 20 2d 6d 65 74 61 64 61 74    61 20 74 69 74 6c 65 3d 27 25 73 27 20 2d 63 6f  | '<<f>>'.-metadata.title='%s'.-co | 
| 15b20 |  64 65 63 20 63 6f 70 79 20 27 3c 3c 74 64 3e 3e    2f 3c 3c 62 6e 65 3e 3e 5f 74 65 6d 70 2e 3c 3c  | dec.copy.'<<td>>/<<bne>>_temp.<< | 
| 15b40 |  65 3e 3e 27 20 26 26 20 6d 76 20 2d 66 20 27 3c    3c 74 64 3e 3e 2f 3c 3c 62 6e 65 3e 3e 5f 74 65  | e>>'.&&.mv.-f.'<<td>>/<<bne>>_te | 
| 15b60 |  6d 70 2e 3c 3c 65 3e 3e 27 20 27 3c 3c 66 3e 3e    27 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | mp.<<e>>'.'<<f>>'".............. | 
| 15b80 |  74 69 74 6c 65 29 0a 20 20 20 20 20 3a 75 74 69    6c 73 20 22 66 66 6d 70 65 67 22 29 29 29 0a 0a  | title)......:utils."ffmpeg"))).. | 
| 15ba0 |  3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28    64 65 66 75 6e 20 64 77 69 6d 2d 73 68 65 6c 6c  | ;;;###autoload.(defun.dwim-shell | 
| 15bc0 |  2d 63 6f 6d 6d 61 6e 64 73 2d 72 65 73 69 7a 65    2d 76 69 64 65 6f 20 28 29 0a 20 20 22 52 65 73  | -commands-resize-video.()..."Res | 
| 15be0 |  69 7a 65 20 6d 61 72 6b 65 64 20 69 6d 61 67 65    73 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69  | ize.marked.images."...(interacti | 
| 15c00 |  76 65 29 0a 20 20 28 64 77 69 6d 2d 73 68 65 6c    6c 2d 63 6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d 61 72  | ve)...(dwim-shell-command-on-mar | 
| 15c20 |  6b 65 64 2d 66 69 6c 65 73 0a 20 20 20 22 52 65    73 69 7a 65 20 76 69 64 65 6f 22 0a 20 20 20 22  | ked-files...."Resize.video"...." | 
| 15c40 |  0a 65 76 61 6c 20 24 28 66 66 70 72 6f 62 65 20    2d 76 20 71 75 69 65 74 20 2d 73 68 6f 77 5f 66  | .eval.$(ffprobe.-v.quiet.-show_f | 
| 15c60 |  6f 72 6d 61 74 20 2d 6f 66 20 66 6c 61 74 3d 73    3d 5f 20 2d 73 68 6f 77 5f 65 6e 74 72 69 65 73  | ormat.-of.flat=s=_.-show_entries | 
| 15c80 |  20 73 74 72 65 61 6d 3d 77 69 64 74 68 20 27 3c    3c 66 3e 3e 27 29 3b 0a 77 69 64 74 68 3d 24 7b  | .stream=width.'<<f>>');.width=${ | 
| 15ca0 |  73 74 72 65 61 6d 73 5f 73 74 72 65 61 6d 5f 30    5f 77 69 64 74 68 7d 3b 0a 7a 6d 6f 64 6c 6f 61  | streams_stream_0_width};.zmodloa | 
| 15cc0 |  64 20 7a 73 68 2f 6d 61 74 68 66 75 6e 63 0a 77    69 64 74 68 3d 24 28 28 72 69 6e 74 28 24 77 69  | d.zsh/mathfunc.width=$((rint($wi | 
| 15ce0 |  64 74 68 20 2a 20 3c 3c 53 63 61 6c 69 6e 67 20    66 61 63 74 6f 72 3a 30 2e 35 3e 3e 29 29 29 3b  | dth.*.<<Scaling.factor:0.5>>))); | 
| 15d00 |  0a 23 20 4d 61 6b 65 20 69 74 20 65 76 65 6e 20    6f 72 20 66 61 63 65 20 27 6e 6f 74 20 64 69 76  | .#.Make.it.even.or.face.'not.div | 
| 15d20 |  69 73 69 62 6c 65 20 62 79 20 32 27 20 65 72 72    6f 72 73 2e 0a 69 66 20 5b 5b 20 24 28 28 77 69  | isible.by.2'.errors..if.[[.$((wi | 
| 15d40 |  64 74 68 25 32 29 29 20 2d 6e 65 20 30 20 5d 5d    20 74 68 65 6e 0a 20 20 77 69 64 74 68 3d 24 28  | dth%2)).-ne.0.]].then...width=$( | 
| 15d60 |  28 24 77 69 64 74 68 20 2d 20 31 29 29 0a 66 69    0a 66 66 6d 70 65 67 20 2d 6e 20 2d 69 20 27 3c  | ($width.-.1)).fi.ffmpeg.-n.-i.'< | 
| 15d80 |  3c 66 3e 3e 27 20 2d 76 66 20 5c 22 73 63 61 6c    65 3d 24 77 69 64 74 68 3a 2d 32 5c 22 20 27 3c  | <f>>'.-vf.\"scale=$width:-2\".'< | 
| 15da0 |  3c 66 6e 65 3e 3e 5f 78 3c 3c 53 63 61 6c 69 6e    67 20 66 61 63 74 6f 72 3a 30 2e 35 3e 3e 2e 3c  | <fne>>_x<<Scaling.factor:0.5>>.< | 
| 15dc0 |  3c 65 3e 3e 27 22 0a 20 20 20 3a 75 74 69 6c 73    20 22 66 66 6d 70 65 67 22 29 29 0a 0a 3b 3b 3b  | <e>>'"....:utils."ffmpeg"))..;;; | 
| 15de0 |  23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66    75 6e 20 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f  | ###autoload.(defun.dwim-shell-co | 
| 15e00 |  6d 6d 61 6e 64 73 2d 63 6c 69 70 62 6f 61 72 64    2d 74 6f 2d 71 72 20 28 29 0a 20 20 22 47 65 6e  | mmands-clipboard-to-qr.()..."Gen | 
| 15e20 |  65 72 61 74 65 20 61 20 51 52 20 63 6f 64 65 20    66 72 6f 6d 20 63 6c 69 70 62 6f 61 72 64 2e 22  | erate.a.QR.code.from.clipboard." | 
| 15e40 |  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 74 65 6d 70 2d 66  | ...(interactive)...(let.((temp-f | 
| 15e60 |  69 6c 65 20 28 63 6f 6e 63 61 74 20 28 74 65 6d    70 6f 72 61 72 79 2d 66 69 6c 65 2d 64 69 72 65  | ile.(concat.(temporary-file-dire | 
| 15e80 |  63 74 6f 72 79 29 20 22 71 72 2d 63 6f 64 65 22    29 29 29 0a 20 20 20 20 28 64 77 69 6d 2d 73 68  | ctory)."qr-code"))).....(dwim-sh | 
| 15ea0 |  65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d    61 72 6b 65 64 2d 66 69 6c 65 73 0a 20 20 20 20  | ell-command-on-marked-files..... | 
| 15ec0 |  20 22 47 65 6e 65 72 61 74 65 20 61 20 51 52 20    63 6f 64 65 20 66 72 6f 6d 20 63 6c 69 70 62 6f  | ."Generate.a.QR.code.from.clipbo | 
| 15ee0 |  61 72 64 22 0a 20 20 20 20 20 28 66 6f 72 6d 61    74 20 22 71 72 65 6e 63 6f 64 65 20 2d 73 31 30  | ard"......(format."qrencode.-s10 | 
| 15f00 |  20 2d 6f 20 25 73 20 25 73 22 20 74 65 6d 70 2d    66 69 6c 65 20 28 73 68 65 6c 6c 2d 71 75 6f 74  | .-o.%s.%s".temp-file.(shell-quot | 
| 15f20 |  65 2d 61 72 67 75 6d 65 6e 74 20 28 63 75 72 72    65 6e 74 2d 6b 69 6c 6c 20 30 29 29 29 0a 20 20  | e-argument.(current-kill.0)))... | 
| 15f40 |  20 20 20 3a 75 74 69 6c 73 20 22 71 72 65 6e 63    6f 64 65 22 0a 20 20 20 20 20 3a 6f 6e 2d 63 6f  | ...:utils."qrencode"......:on-co | 
| 15f60 |  6d 70 6c 65 74 69 6f 6e 20 28 6c 61 6d 62 64 61    20 28 62 75 66 66 65 72 20 5f 70 72 6f 63 65 73  | mpletion.(lambda.(buffer._proces | 
| 15f80 |  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 28 6b 69 6c 6c 2d 62  | s).......................(kill-b | 
| 15fa0 |  75 66 66 65 72 20 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 20  | uffer.buffer)................... | 
| 15fc0 |  20 20 20 20 28 73 77 69 74 63 68 2d 74 6f 2d 62    75 66 66 65 72 20 28 66 69 6e 64 2d 66 69 6c 65  | ....(switch-to-buffer.(find-file | 
| 15fe0 |  2d 6e 6f 73 65 6c 65 63 74 20 74 65 6d 70 2d 66    69 6c 65 20 74 29 29 29 29 29 29 0a 0a 3b 3b 3b  | -noselect.temp-file.t))))))..;;; | 
| 16000 |  23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66    75 6e 20 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f  | ###autoload.(defun.dwim-shell-co | 
| 16020 |  6d 6d 61 6e 64 73 2d 73 68 61 2d 32 35 36 2d 68    61 73 68 2d 66 69 6c 65 2d 61 74 2d 63 6c 69 70  | mmands-sha-256-hash-file-at-clip | 
| 16040 |  62 6f 61 72 64 2d 75 72 6c 20 28 29 0a 20 20 22    44 6f 77 6e 6c 6f 61 64 20 66 69 6c 65 20 61 74  | board-url.()..."Download.file.at | 
| 16060 |  20 63 6c 69 70 62 6f 61 72 64 20 55 52 4c 20 61    6e 64 20 67 65 6e 65 72 61 74 65 20 53 48 41 2d  | .clipboard.URL.and.generate.SHA- | 
| 16080 |  32 35 36 20 68 61 73 68 2e 22 0a 20 20 28 69 6e    74 65 72 61 63 74 69 76 65 29 0a 20 20 28 75 6e  | 256.hash."...(interactive)...(un | 
| 160a0 |  6c 65 73 73 20 28 73 74 72 69 6e 67 2d 6d 61 74    63 68 2d 70 20 22 5e 68 74 74 70 5b 73 5d 3f 3a  | less.(string-match-p."^http[s]?: | 
| 160c0 |  2f 2f 22 20 28 63 75 72 72 65 6e 74 2d 6b 69 6c    6c 20 30 29 29 0a 20 20 20 20 28 75 73 65 72 2d  | //".(current-kill.0)).....(user- | 
| 160e0 |  65 72 72 6f 72 20 22 4e 6f 20 55 52 4c 20 69 6e    20 63 6c 69 70 62 6f 61 72 64 22 29 29 0a 20 20  | error."No.URL.in.clipboard"))... | 
| 16100 |  28 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d    61 6e 64 2d 6f 6e 2d 6d 61 72 6b 65 64 2d 66 69  | (dwim-shell-command-on-marked-fi | 
| 16120 |  6c 65 73 0a 20 20 20 22 47 65 6e 65 72 61 74 65    20 53 48 41 2d 32 35 36 20 68 61 73 68 20 66 72  | les...."Generate.SHA-256.hash.fr | 
| 16140 |  6f 6d 20 63 6c 69 70 62 6f 61 72 64 20 55 52 4c    2e 22 0a 20 20 20 22 63 75 72 6c 20 2d 73 20 27  | om.clipboard.URL."...."curl.-s.' | 
| 16160 |  3c 3c 63 62 3e 3e 27 20 7c 20 73 68 61 32 35 36    73 75 6d 20 2d 20 7c 20 63 75 74 20 2d 64 20 27  | <<cb>>'.|.sha256sum.-.|.cut.-d.' | 
| 16180 |  20 27 20 2d 66 31 22 0a 20 20 20 3a 75 74 69 6c    73 20 27 28 22 63 75 72 6c 22 20 22 73 68 61 32  | .'.-f1"....:utils.'("curl"."sha2 | 
| 161a0 |  35 36 73 75 6d 22 29 0a 20 20 20 3a 6f 6e 2d 63    6f 6d 70 6c 65 74 69 6f 6e 0a 20 20 20 28 6c 61  | 56sum")....:on-completion....(la | 
| 161c0 |  6d 62 64 61 20 28 62 75 66 66 65 72 20 70 72 6f    63 65 73 73 29 0a 20 20 20 20 20 28 69 66 2d 6c  | mbda.(buffer.process)......(if-l | 
| 161e0 |  65 74 20 28 28 73 75 63 63 65 73 73 20 28 3d 20    28 70 72 6f 63 65 73 73 2d 65 78 69 74 2d 73 74  | et.((success.(=.(process-exit-st | 
| 16200 |  61 74 75 73 20 70 72 6f 63 65 73 73 29 20 30 29    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | atus.process).0))............... | 
| 16220 |  28 68 61 73 68 20 28 77 69 74 68 2d 63 75 72 72    65 6e 74 2d 62 75 66 66 65 72 20 62 75 66 66 65  | (hash.(with-current-buffer.buffe | 
| 16240 |  72 0a 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 2d  | r.......................(string- | 
| 16260 |  74 72 69 6d 20 28 62 75 66 66 65 72 2d 73 74 72    69 6e 67 29 29 29 29 29 0a 20 20 20 20 20 20 20  | trim.(buffer-string)))))........ | 
| 16280 |  20 20 28 70 72 6f 67 6e 0a 20 20 20 20 20 20 20    20 20 20 20 28 6b 69 6c 6c 2d 62 75 66 66 65 72  | ..(progn............(kill-buffer | 
| 162a0 |  20 62 75 66 66 65 72 29 0a 20 20 20 20 20 20 20    20 20 20 20 28 6b 69 6c 6c 2d 6e 65 77 20 68 61  | .buffer)............(kill-new.ha | 
| 162c0 |  73 68 29 0a 20 20 20 20 20 20 20 20 20 20 20 28    6d 65 73 73 61 67 65 20 22 43 6f 70 69 65 64 20  | sh)............(message."Copied. | 
| 162e0 |  25 73 20 74 6f 20 63 6c 69 70 62 6f 61 72 64 22    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | %s.to.clipboard"................ | 
| 16300 |  20 20 20 20 20 28 70 72 6f 70 65 72 74 69 7a 65    20 68 61 73 68 20 27 66 61 63 65 20 27 66 6f 6e  | .....(propertize.hash.'face.'fon | 
| 16320 |  74 2d 6c 6f 63 6b 2d 73 74 72 69 6e 67 2d 66 61    63 65 29 29 29 0a 20 20 20 20 20 20 20 28 73 77  | t-lock-string-face)))........(sw | 
| 16340 |  69 74 63 68 2d 74 6f 2d 62 75 66 66 65 72 20 62    75 66 66 65 72 29 29 29 29 29 0a 0a 3b 3b 3b 23  | itch-to-buffer.buffer)))))..;;;# | 
| 16360 |  23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75    6e 20 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d  | ##autoload.(defun.dwim-shell-com | 
| 16380 |  6d 61 6e 64 73 2d 76 69 65 77 2d 73 71 6c 69 74    65 2d 73 63 68 65 6d 61 2d 64 69 61 67 72 61 6d  | mands-view-sqlite-schema-diagram | 
| 163a0 |  20 28 29 0a 20 20 22 56 69 65 77 20 73 71 6c 69    74 65 20 73 63 68 65 6d 61 20 64 69 61 67 72 61  | .()..."View.sqlite.schema.diagra | 
| 163c0 |  6d 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69    76 65 29 0a 20 20 28 64 77 69 6d 2d 73 68 65 6c  | m."...(interactive)...(dwim-shel | 
| 163e0 |  6c 2d 63 6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d 61 72    6b 65 64 2d 66 69 6c 65 73 0a 20 20 20 22 56 69  | l-command-on-marked-files...."Vi | 
| 16400 |  65 77 20 73 71 6c 69 74 65 20 73 63 68 65 6d 61    22 0a 20 20 20 22 73 65 74 20 2d 65 0a 74 65 6d  | ew.sqlite.schema"...."set.-e.tem | 
| 16420 |  70 5f 64 69 72 3d 5c 22 24 7b 54 4d 50 44 49 52    3a 2d 2f 74 6d 70 2f 7d 5c 22 0a 66 69 6c 65 5f  | p_dir=\"${TMPDIR:-/tmp/}\".file_ | 
| 16440 |  6e 61 6d 65 3d 5c 22 73 71 6c 69 74 65 2d 73 63    68 65 6d 61 2d 64 69 61 67 72 61 6d 2e 73 71 6c  | name=\"sqlite-schema-diagram.sql | 
| 16460 |  5c 22 0a 66 69 6c 65 5f 70 61 74 68 3d 5c 22 24    7b 74 65 6d 70 5f 64 69 72 7d 2f 24 7b 66 69 6c  | \".file_path=\"${temp_dir}/${fil | 
| 16480 |  65 5f 6e 61 6d 65 7d 5c 22 0a 75 72 6c 3d 5c 22    68 74 74 70 73 3a 2f 2f 67 69 74 6c 61 62 2e 63  | e_name}\".url=\"https://gitlab.c | 
| 164a0 |  6f 6d 2f 53 63 72 65 77 74 61 70 65 6c 6c 6f 2f    73 71 6c 69 74 65 2d 73 63 68 65 6d 61 2d 64 69  | om/Screwtapello/sqlite-schema-di | 
| 164c0 |  61 67 72 61 6d 2f 2d 2f 72 61 77 2f 6d 61 69 6e    2f 73 71 6c 69 74 65 2d 73 63 68 65 6d 61 2d 64  | agram/-/raw/main/sqlite-schema-d | 
| 164e0 |  69 61 67 72 61 6d 2e 73 71 6c 5c 22 0a 0a 69 66    20 5b 5b 20 21 20 2d 66 20 5c 22 24 66 69 6c 65  | iagram.sql\"..if.[[.!.-f.\"$file | 
| 16500 |  5f 70 61 74 68 5c 22 20 5d 5d 3b 20 74 68 65 6e    0a 20 20 63 75 72 6c 20 2d 6f 20 5c 22 24 66 69  | _path\".]];.then...curl.-o.\"$fi | 
| 16520 |  6c 65 5f 70 61 74 68 5c 22 20 5c 22 24 75 72 6c    5c 22 0a 66 69 0a 0a 73 71 6c 69 74 65 33 20 2d  | le_path\".\"$url\".fi..sqlite3.- | 
| 16540 |  6c 69 73 74 20 5c 22 3c 3c 66 3e 3e 5c 22 20 3c    20 24 66 69 6c 65 5f 70 61 74 68 20 3e 20 5c 22  | list.\"<<f>>\".<.$file_path.>.\" | 
| 16560 |  3c 3c 66 6e 65 3e 3e 2e 64 6f 74 5c 22 0a 64 6f    74 20 2d 54 73 76 67 20 5c 22 3c 3c 66 6e 65 3e  | <<fne>>.dot\".dot.-Tsvg.\"<<fne> | 
| 16580 |  3e 2e 64 6f 74 5c 22 20 3e 20 5c 22 3c 3c 66 6e    65 3e 3e 2e 73 76 67 5c 22 0a 65 63 68 6f 20 5c  | >.dot\".>.\"<<fne>>.svg\".echo.\ | 
| 165a0 |  22 3c 3c 66 6e 65 3e 3e 2e 73 76 67 5c 22 0a 22    0a 20 20 20 3a 75 74 69 6c 73 20 27 28 22 64 6f  | "<<fne>>.svg\"."....:utils.'("do | 
| 165c0 |  74 22 20 22 73 71 6c 69 74 65 33 22 29 0a 20 20    20 3a 6f 6e 2d 63 6f 6d 70 6c 65 74 69 6f 6e 0a  | t"."sqlite3")....:on-completion. | 
| 165e0 |  20 20 20 28 6c 61 6d 62 64 61 20 28 62 75 66 66    65 72 20 70 72 6f 63 65 73 73 29 0a 20 20 20 20  | ...(lambda.(buffer.process)..... | 
| 16600 |  20 28 69 66 20 28 3d 20 28 70 72 6f 63 65 73 73    2d 65 78 69 74 2d 73 74 61 74 75 73 20 70 72 6f  | .(if.(=.(process-exit-status.pro | 
| 16620 |  63 65 73 73 29 20 30 29 0a 20 20 20 20 20 20 20    20 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d  | cess).0)..........(with-current- | 
| 16640 |  62 75 66 66 65 72 20 62 75 66 66 65 72 0a 20 20    20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28  | buffer.buffer............(let.(( | 
| 16660 |  73 76 67 2d 66 69 6c 65 20 28 73 74 72 69 6e 67    2d 74 72 69 6d 20 28 62 75 66 66 65 72 2d 73 74  | svg-file.(string-trim.(buffer-st | 
| 16680 |  72 69 6e 67 29 29 29 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 28 69 66 20 28 73 74 72 69 6e  | ring))))..............(if.(strin | 
| 166a0 |  67 2d 73 75 66 66 69 78 2d 70 20 22 73 76 67 22    20 73 76 67 2d 66 69 6c 65 29 0a 20 20 20 20 20  | g-suffix-p."svg".svg-file)...... | 
| 166c0 |  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 20 20  | ............(progn.............. | 
| 166e0 |  20 20 20 20 20 20 28 66 69 6e 64 2d 66 69 6c 65    20 73 76 67 2d 66 69 6c 65 29 0a 20 20 20 20 20  | ......(find-file.svg-file)...... | 
| 16700 |  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 62 75 66 66 65  | ..............(kill-buffer.buffe | 
| 16720 |  72 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 28 73 77 69 74 63 68 2d 74 6f 2d 62 75  | r))................(switch-to-bu | 
| 16740 |  66 66 65 72 20 62 75 66 66 65 72 29 29 29 29 0a    20 20 20 20 20 20 20 28 73 77 69 74 63 68 2d 74  | ffer.buffer))))........(switch-t | 
| 16760 |  6f 2d 62 75 66 66 65 72 20 62 75 66 66 65 72 29    29 29 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f  | o-buffer.buffer)))))..;;;###auto | 
| 16780 |  6c 6f 61 64 0a 28 64 65 66 75 6e 20 64 77 69 6d    2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 73 2d  | load.(defun.dwim-shell-commands- | 
| 167a0 |  6f 70 65 6e 2d 65 78 74 65 72 6e 61 6c 6c 79 20    28 29 0a 20 20 22 4f 70 65 6e 20 66 69 6c 65 28  | open-externally.()..."Open.file( | 
| 167c0 |  73 29 20 65 78 74 65 72 6e 61 6c 6c 79 2e 22 0a    20 20 28 69 6e 74 65 72 61 63 74 69 76 65 29 0a  | s).externally."...(interactive). | 
| 167e0 |  20 20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f    6d 6d 61 6e 64 2d 6f 6e 2d 6d 61 72 6b 65 64 2d  | ..(dwim-shell-command-on-marked- | 
| 16800 |  66 69 6c 65 73 0a 20 20 20 22 4f 70 65 6e 20 65    78 74 65 72 6e 61 6c 6c 79 22 0a 20 20 20 28 69  | files...."Open.externally"....(i | 
| 16820 |  66 20 28 65 71 20 73 79 73 74 65 6d 2d 74 79 70    65 20 27 64 61 72 77 69 6e 29 0a 20 20 20 20 20  | f.(eq.system-type.'darwin)...... | 
| 16840 |  20 20 28 69 66 20 28 64 65 72 69 76 65 64 2d 6d    6f 64 65 2d 70 20 27 70 72 6f 67 2d 6d 6f 64 65  | ..(if.(derived-mode-p.'prog-mode | 
| 16860 |  29 0a 20 20 20 20 20 20 20 20 20 20 20 28 66 6f    72 6d 61 74 20 22 78 65 64 20 2d 2d 6c 69 6e 65  | )............(format."xed.--line | 
| 16880 |  20 25 64 20 27 3c 3c 66 3e 3e 27 22 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .%d.'<<f>>'".................... | 
| 168a0 |  28 6c 69 6e 65 2d 6e 75 6d 62 65 72 2d 61 74 2d    70 6f 73 20 28 70 6f 69 6e 74 29 29 29 0a 20 20  | (line-number-at-pos.(point)))... | 
| 168c0 |  20 20 20 20 20 20 20 22 6f 70 65 6e 20 27 3c 3c    66 3e 3e 27 22 29 0a 20 20 20 20 20 22 78 64 67  | ......."open.'<<f>>'")......"xdg | 
| 168e0 |  2d 6f 70 65 6e 20 27 3c 3c 66 3e 3e 27 22 29 0a    20 20 20 3a 73 68 65 6c 6c 2d 75 74 69 6c 20 22  | -open.'<<f>>'")....:shell-util." | 
| 16900 |  7a 73 68 22 0a 20 20 20 3a 73 68 65 6c 6c 2d 61    72 67 73 20 27 28 22 2d 78 22 20 22 2d 63 22 29  | zsh"....:shell-args.'("-x"."-c") | 
| 16920 |  0a 20 20 20 3a 73 69 6c 65 6e 74 2d 73 75 63 63    65 73 73 20 74 0a 20 20 20 3a 75 74 69 6c 73 20  | ....:silent-success.t....:utils. | 
| 16940 |  28 69 66 20 28 65 71 20 73 79 73 74 65 6d 2d 74    79 70 65 20 27 64 61 72 77 69 6e 29 0a 20 20 20  | (if.(eq.system-type.'darwin).... | 
| 16960 |  20 20 20 20 20 20 20 20 20 20 20 22 6f 70 65 6e    22 0a 20 20 20 20 20 20 20 20 20 20 20 20 22 78  | ..........."open"............."x | 
| 16980 |  64 67 2d 6f 70 65 6e 22 29 29 29 0a 0a 3b 3b 3b    23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66  | dg-open")))..;;;###autoload.(def | 
| 169a0 |  75 6e 20 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f    6d 6d 61 6e 64 73 2d 6d 61 63 6f 73 2d 63 61 66  | un.dwim-shell-commands-macos-caf | 
| 169c0 |  66 65 69 6e 61 74 65 20 28 29 0a 20 20 22 49 6e    76 6f 6b 65 20 63 61 66 66 65 69 6e 61 74 65 20  | feinate.()..."Invoke.caffeinate. | 
| 169e0 |  74 6f 20 70 72 65 76 65 6e 74 20 6d 61 63 20 66    72 6f 6d 20 73 6c 65 65 70 69 6e 67 2e 22 0a 20  | to.prevent.mac.from.sleeping.".. | 
| 16a00 |  20 28 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20    20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d  | .(interactive)...(dwim-shell-com | 
| 16a20 |  6d 61 6e 64 2d 6f 6e 2d 6d 61 72 6b 65 64 2d 66    69 6c 65 73 0a 20 20 20 22 43 61 66 66 65 69 6e  | mand-on-marked-files...."Caffein | 
| 16a40 |  61 74 65 22 0a 20 20 20 22 63 61 66 66 65 69 6e    61 74 65 22 0a 20 20 20 3a 75 74 69 6c 73 20 22  | ate"...."caffeinate"....:utils." | 
| 16a60 |  63 61 66 66 65 69 6e 61 74 65 22 0a 20 20 20 3a    6e 6f 2d 70 72 6f 67 72 65 73 73 20 74 0a 20 20  | caffeinate"....:no-progress.t... | 
| 16a80 |  20 3a 66 6f 63 75 73 2d 6e 6f 77 20 74 29 29 0a    0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a  | .:focus-now.t))..;;;###autoload. | 
| 16aa0 |  28 64 65 66 75 6e 20 64 77 69 6d 2d 73 68 65 6c    6c 2d 63 6f 6d 6d 61 6e 64 73 2d 6d 61 63 6f 73  | (defun.dwim-shell-commands-macos | 
| 16ac0 |  2d 6d 61 6b 65 2d 66 69 6e 64 65 72 2d 61 6c 69    61 73 20 28 29 0a 20 20 22 4d 61 6b 65 20 6d 61  | -make-finder-alias.()..."Make.ma | 
| 16ae0 |  63 4f 53 20 46 69 6e 64 65 72 20 61 6c 69 61 73    2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76  | cOS.Finder.alias."...(interactiv | 
| 16b00 |  65 29 0a 20 20 28 6c 65 74 20 28 28 66 69 6c 65    73 20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f  | e)...(let.((files.(dwim-shell-co | 
| 16b20 |  6d 6d 61 6e 64 2d 2d 66 69 6c 65 73 29 29 0a 20    20 20 20 20 20 20 20 28 74 61 72 67 65 74 2d 64  | mmand--files)).........(target-d | 
| 16b40 |  69 72 20 28 72 65 61 64 2d 64 69 72 65 63 74 6f    72 79 2d 6e 61 6d 65 20 22 53 65 6c 65 63 74 20  | ir.(read-directory-name."Select. | 
| 16b60 |  74 61 72 67 65 74 20 64 69 72 3a 20 22 20 22 2f    41 70 70 6c 69 63 61 74 69 6f 6e 73 22 20 6e 69  | target.dir:."."/Applications".ni | 
| 16b80 |  6c 20 74 29 29 29 0a 20 20 20 20 28 64 77 69 6d    2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 6f  | l.t))).....(dwim-shell-command-o | 
| 16ba0 |  6e 2d 6d 61 72 6b 65 64 2d 66 69 6c 65 73 0a 20    20 20 20 20 22 4d 61 6b 65 20 6d 61 63 4f 53 20  | n-marked-files......"Make.macOS. | 
| 16bc0 |  61 6c 69 61 73 22 0a 20 20 20 20 20 28 66 6f 72    6d 61 74 20 22 6f 73 61 73 63 72 69 70 74 20 2d  | alias"......(format."osascript.- | 
| 16be0 |  65 20 27 74 65 6c 6c 20 61 70 70 6c 69 63 61 74    69 6f 6e 20 5c 22 46 69 6e 64 65 72 5c 22 20 74  | e.'tell.application.\"Finder\".t | 
| 16c00 |  6f 20 6d 61 6b 65 20 61 6c 69 61 73 20 66 69 6c    65 20 74 6f 20 50 4f 53 49 58 20 66 69 6c 65 20  | o.make.alias.file.to.POSIX.file. | 
| 16c20 |  5c 22 3c 3c 66 3e 3e 5c 22 20 61 74 20 50 4f 53    49 58 20 66 69 6c 65 20 5c 22 25 73 5c 22 27 22  | \"<<f>>\".at.POSIX.file.\"%s\"'" | 
| 16c40 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 74 61    72 67 65 74 2d 64 69 72 29 0a 20 20 20 20 20 3a  | ..............target-dir)......: | 
| 16c60 |  75 74 69 6c 73 20 22 6f 73 61 73 63 72 69 70 74    22 0a 20 20 20 20 20 3a 6e 6f 2d 70 72 6f 67 72  | utils."osascript"......:no-progr | 
| 16c80 |  65 73 73 20 74 0a 20 20 20 20 20 3a 73 69 6c 65    6e 74 2d 73 75 63 63 65 73 73 20 74 0a 20 20 20  | ess.t......:silent-success.t.... | 
| 16ca0 |  20 20 3a 6f 6e 2d 63 6f 6d 70 6c 65 74 69 6f 6e    20 28 6c 61 6d 62 64 61 20 28 62 75 66 66 65 72  | ..:on-completion.(lambda.(buffer | 
| 16cc0 |  20 5f 70 72 6f 63 65 73 73 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ._process)...................... | 
| 16ce0 |  20 28 6b 69 6c 6c 2d 62 75 66 66 65 72 20 62 75    66 66 65 72 29 0a 20 20 20 20 20 20 20 20 20 20  | .(kill-buffer.buffer)........... | 
| 16d00 |  20 20 20 20 20 20 20 20 20 20 20 20 28 64 69 72    65 64 2d 6a 75 6d 70 20 6e 69 6c 20 28 66 69 6c  | ............(dired-jump.nil.(fil | 
| 16d20 |  65 2d 6e 61 6d 65 2d 63 6f 6e 63 61 74 20 74 61    72 67 65 74 2d 64 69 72 20 28 66 69 6c 65 2d 6e  | e-name-concat.target-dir.(file-n | 
| 16d40 |  61 6d 65 2d 6e 6f 6e 64 69 72 65 63 74 6f 72 79    20 28 6e 74 68 20 30 20 66 69 6c 65 73 29 29 29  | ame-nondirectory.(nth.0.files))) | 
| 16d60 |  29 29 29 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74    6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 64 77 69  | )))))..;;;###autoload.(defun.dwi | 
| 16d80 |  6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 73    2d 6d 61 63 6f 73 2d 76 65 72 73 69 6f 6e 2d 61  | m-shell-commands-macos-version-a | 
| 16da0 |  6e 64 2d 68 61 72 64 77 61 72 65 2d 6f 76 65 72    76 69 65 77 2d 69 6e 66 6f 20 28 29 0a 20 20 22  | nd-hardware-overview-info.()..." | 
| 16dc0 |  56 69 65 77 20 6d 61 63 4f 53 20 76 65 72 73 69    6f 6e 20 61 6e 64 20 68 61 72 64 77 61 72 65 20  | View.macOS.version.and.hardware. | 
| 16de0 |  6f 76 65 72 76 69 65 77 20 69 6e 66 6f 2e 22 0a    20 20 28 69 6e 74 65 72 61 63 74 69 76 65 29 0a  | overview.info."...(interactive). | 
| 16e00 |  20 20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f    6d 6d 61 6e 64 2d 6f 6e 2d 6d 61 72 6b 65 64 2d  | ..(dwim-shell-command-on-marked- | 
| 16e20 |  66 69 6c 65 73 0a 20 20 20 22 6d 61 63 4f 53 20    68 61 72 64 77 61 72 65 20 6f 76 65 72 76 69 65  | files...."macOS.hardware.overvie | 
| 16e40 |  77 22 0a 20 20 20 22 73 77 5f 76 65 72 73 3b 20    73 79 73 74 65 6d 5f 70 72 6f 66 69 6c 65 72 20  | w"...."sw_vers;.system_profiler. | 
| 16e60 |  53 50 48 61 72 64 77 61 72 65 44 61 74 61 54 79    70 65 22 0a 20 20 20 3a 75 74 69 6c 73 20 27 28  | SPHardwareDataType"....:utils.'( | 
| 16e80 |  22 73 77 5f 76 65 72 73 22 20 22 73 79 73 74 65    6d 5f 70 72 6f 66 69 6c 65 72 22 29 29 29 0a 0a  | "sw_vers"."system_profiler"))).. | 
| 16ea0 |  3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28    64 65 66 75 6e 20 64 77 69 6d 2d 73 68 65 6c 6c  | ;;;###autoload.(defun.dwim-shell | 
| 16ec0 |  2d 63 6f 6d 6d 61 6e 64 73 2d 6d 61 63 6f 73 2d    72 65 76 65 61 6c 2d 69 6e 2d 66 69 6e 64 65 72  | -commands-macos-reveal-in-finder | 
| 16ee0 |  20 28 29 0a 20 20 22 52 65 76 65 61 6c 20 73 65    6c 65 63 74 65 64 20 66 69 6c 65 73 20 69 6e 20  | .()..."Reveal.selected.files.in. | 
| 16f00 |  6d 61 63 4f 53 20 46 69 6e 64 65 72 2e 22 0a 20    20 28 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20  | macOS.Finder."...(interactive).. | 
| 16f20 |  20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d    6d 61 6e 64 2d 6f 6e 2d 6d 61 72 6b 65 64 2d 66  | .(dwim-shell-command-on-marked-f | 
| 16f40 |  69 6c 65 73 0a 20 20 20 22 52 65 76 65 61 6c 20    69 6e 20 46 69 6e 64 65 72 22 0a 20 20 20 22 69  | iles...."Reveal.in.Finder"...."i | 
| 16f60 |  6d 70 6f 72 74 20 41 70 70 4b 69 74 0a 20 20 20    20 4e 53 57 6f 72 6b 73 70 61 63 65 2e 73 68 61  | mport.AppKit.....NSWorkspace.sha | 
| 16f80 |  72 65 64 2e 61 63 74 69 76 61 74 65 46 69 6c 65    56 69 65 77 65 72 53 65 6c 65 63 74 69 6e 67 28  | red.activateFileViewerSelecting( | 
| 16fa0 |  5b 5c 22 3c 3c 2a 3e 3e 5c 22 5d 2e 6d 61 70 7b    55 52 4c 28 66 69 6c 65 55 52 4c 57 69 74 68 50  | [\"<<*>>\"].map{URL(fileURLWithP | 
| 16fc0 |  61 74 68 3a 24 30 29 7d 29 22 0a 20 20 20 3a 73    69 6c 65 6e 74 2d 73 75 63 63 65 73 73 20 74 0a  | ath:$0)})"....:silent-success.t. | 
| 16fe0 |  20 20 20 3a 73 68 65 6c 6c 2d 70 69 70 65 20 22    73 77 69 66 74 20 2d 22 0a 20 20 20 3a 6a 6f 69  | ...:shell-pipe."swift.-"....:joi | 
| 17000 |  6e 2d 73 65 70 61 72 61 74 6f 72 20 22 2c 20 22    0a 20 20 20 3a 75 74 69 6c 73 20 22 73 77 69 66  | n-separator.",."....:utils."swif | 
| 17020 |  74 22 29 29 0a 0a 28 64 65 66 75 6e 20 64 77 69    6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 73  | t"))..(defun.dwim-shell-commands | 
| 17040 |  2d 2d 6d 61 63 6f 73 2d 73 68 61 72 69 6e 67 2d    73 65 72 76 69 63 65 73 20 28 29 0a 20 20 22 52  | --macos-sharing-services.()..."R | 
| 17060 |  65 74 75 72 6e 20 61 20 6c 69 73 74 20 6f 66 20    73 68 61 72 69 6e 67 20 73 65 72 76 69 63 65 73  | eturn.a.list.of.sharing.services | 
| 17080 |  2e 22 0a 20 20 28 6c 65 74 2a 20 28 28 73 6f 75    72 63 65 20 28 66 6f 72 6d 61 74 20 22 69 6d 70  | ."...(let*.((source.(format."imp | 
| 170a0 |  6f 72 74 20 41 70 70 4b 69 74 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ort.AppKit...................... | 
| 170c0 |  20 20 20 20 4e 53 53 68 61 72 69 6e 67 53 65 72    76 69 63 65 2e 73 68 61 72 69 6e 67 53 65 72 76  | ....NSSharingService.sharingServ | 
| 170e0 |  69 63 65 73 28 66 6f 72 49 74 65 6d 73 3a 20 5b    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ices(forItems:.[................ | 
| 17100 |  20 20 20 20 20 20 20 20 20 20 20 20 25 73 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ............%s.................. | 
| 17120 |  20 20 20 20 20 20 20 20 5d 29 2e 66 6f 72 45 61    63 68 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20  | ........]).forEach.{............ | 
| 17140 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    70 72 69 6e 74 28 5c 22 5c 5c 28 24 30 2e 74 69  | ................print(\"\\($0.ti | 
| 17160 |  74 6c 65 29 5c 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  | tle)\")......................... | 
| 17180 |  20 7d 22 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 74  | .}"..........................(st | 
| 171a0 |  72 69 6e 67 2d 6a 6f 69 6e 20 28 6d 61 70 63 61    72 20 28 6c 61 6d 62 64 61 20 28 66 69 6c 65 29  | ring-join.(mapcar.(lambda.(file) | 
| 171c0 |  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  | ................................ | 
| 171e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 66 6f 72 6d 61 74 20 22 55 52 4c 28 66 69  | .................(format."URL(fi | 
| 17200 |  6c 65 55 52 4c 57 69 74 68 50 61 74 68 3a 20 5c    22 25 73 5c 22 29 22 20 66 69 6c 65 29 29 0a 20  | leURLWithPath:.\"%s\")".file)).. | 
| 17220 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 17240 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 64 77    69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64  | .............(dwim-shell-command | 
| 17260 |  2d 2d 66 69 6c 65 73 29 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | --files))....................... | 
| 17280 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    22 2c 20 22 29 29 29 0a 20 20 20 20 20 20 20 20  | ................",.")))......... | 
| 172a0 |  20 28 73 65 72 76 69 63 65 73 20 28 73 70 6c 69    74 2d 73 74 72 69 6e 67 0a 20 20 20 20 20 20 20  | .(services.(split-string........ | 
| 172c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 74    72 69 6e 67 2d 74 72 69 6d 0a 20 20 20 20 20 20  | .............(string-trim....... | 
| 172e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b    3b 20 52 65 6d 6f 76 65 20 61 6e 79 74 68 69 6e  | ...............;;.Remove.anythin | 
| 17300 |  67 20 74 68 61 74 20 64 6f 65 73 6e 27 74 20 73    74 61 72 74 20 77 69 74 68 20 61 6c 70 68 61 20  | g.that.doesn't.start.with.alpha. | 
| 17320 |  63 68 61 72 61 63 74 65 72 73 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | characters...................... | 
| 17340 |  3b 3b 20 54 68 65 72 65 20 6d 61 79 20 62 65 20    63 6f 6d 70 69 6c 61 74 69 6f 6e 20 77 61 72 6e  | ;;.There.may.be.compilation.warn | 
| 17360 |  69 6e 67 73 2e 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 70 6c  | ings.......................(repl | 
| 17380 |  61 63 65 2d 72 65 67 65 78 70 2d 69 6e 2d 73 74    72 69 6e 67 20 22 5e 5b 5e 5b 3a 61 6c 70 68 61  | ace-regexp-in-string."^[^[:alpha | 
| 173a0 |  3a 5d 5d 2e 2a 5c 6e 22 20 22 22 0a 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | :]].*\n".""..................... | 
| 173c0 |  20 20 20 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 68 65 6c  | ...........................(shel | 
| 173e0 |  6c 2d 63 6f 6d 6d 61 6e 64 2d 74 6f 2d 73 74 72    69 6e 67 20 28 66 6f 72 6d 61 74 20 22 65 63 68  | l-command-to-string.(format."ech | 
| 17400 |  6f 20 27 25 73 27 20 7c 20 73 77 69 66 74 20 2d    22 20 73 6f 75 72 63 65 29 29 29 29 0a 20 20 20  | o.'%s'.|.swift.-".source)))).... | 
| 17420 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 22 5c 6e 22 29 29 29 0a 20 20 20 20 28 77 68  | ................."\n"))).....(wh | 
| 17440 |  65 6e 20 28 73 65 71 2d 65 6d 70 74 79 2d 70 20    73 65 72 76 69 63 65 73 29 0a 20 20 20 20 20 20  | en.(seq-empty-p.services)....... | 
| 17460 |  28 65 72 72 6f 72 20 22 4e 6f 20 73 68 61 72 69    6e 67 20 73 65 72 76 69 63 65 73 20 61 76 61 69  | (error."No.sharing.services.avai | 
| 17480 |  6c 61 62 6c 65 22 29 29 0a 20 20 20 20 73 65 72    76 69 63 65 73 29 29 0a 0a 3b 3b 3b 23 23 23 61  | lable")).....services))..;;;###a | 
| 174a0 |  75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 64    77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e  | utoload.(defun.dwim-shell-comman | 
| 174c0 |  64 73 2d 6d 61 63 6f 73 2d 73 68 61 72 65 20 28    29 0a 20 20 22 53 68 61 72 65 20 73 65 6c 65 63  | ds-macos-share.()..."Share.selec | 
| 174e0 |  74 65 64 20 66 69 6c 65 73 20 66 72 6f 6d 20 6d    61 63 4f 53 2e 22 0a 20 20 28 69 6e 74 65 72 61  | ted.files.from.macOS."...(intera | 
| 17500 |  63 74 69 76 65 29 0a 20 20 28 6c 65 74 2a 20 28    28 73 65 72 76 69 63 65 73 20 28 64 77 69 6d 2d  | ctive)...(let*.((services.(dwim- | 
| 17520 |  73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 73 2d 2d    6d 61 63 6f 73 2d 73 68 61 72 69 6e 67 2d 73 65  | shell-commands--macos-sharing-se | 
| 17540 |  72 76 69 63 65 73 29 29 0a 20 20 20 20 20 20 20    20 20 28 73 65 72 76 69 63 65 2d 6e 61 6d 65 20  | rvices))..........(service-name. | 
| 17560 |  28 63 6f 6d 70 6c 65 74 69 6e 67 2d 72 65 61 64    20 22 53 68 61 72 65 20 76 69 61 3a 20 22 20 73  | (completing-read."Share.via:.".s | 
| 17580 |  65 72 76 69 63 65 73 29 29 0a 20 20 20 20 20 20    20 20 20 28 73 65 6c 65 63 74 69 6f 6e 20 28 73  | ervices))..........(selection.(s | 
| 175a0 |  65 71 2d 70 6f 73 69 74 69 6f 6e 20 73 65 72 76    69 63 65 73 20 73 65 72 76 69 63 65 2d 6e 61 6d  | eq-position.services.service-nam | 
| 175c0 |  65 20 23 27 73 74 72 69 6e 67 2d 65 71 75 61 6c    29 29 29 0a 20 20 20 20 28 64 77 69 6d 2d 73 68  | e.#'string-equal))).....(dwim-sh | 
| 175e0 |  65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d    61 72 6b 65 64 2d 66 69 6c 65 73 0a 20 20 20 20  | ell-command-on-marked-files..... | 
| 17600 |  20 22 53 68 61 72 65 22 0a 20 20 20 20 20 28 66    6f 72 6d 61 74 0a 20 20 20 20 20 20 22 69 6d 70  | ."Share"......(format......."imp | 
| 17620 |  6f 72 74 20 41 70 70 4b 69 74 0a 0a 20 20 20 20    20 20 20 5f 20 3d 20 4e 53 41 70 70 6c 69 63 61  | ort.AppKit........._.=.NSApplica | 
| 17640 |  74 69 6f 6e 2e 73 68 61 72 65 64 0a 0a 20 20 20    20 20 20 20 4e 53 41 70 70 2e 73 65 74 41 63 74  | tion.shared.........NSApp.setAct | 
| 17660 |  69 76 61 74 69 6f 6e 50 6f 6c 69 63 79 28 2e 72    65 67 75 6c 61 72 29 0a 0a 20 20 20 20 20 20 20  | ivationPolicy(.regular)......... | 
| 17680 |  63 6c 61 73 73 20 4d 79 57 69 6e 64 6f 77 3a 20    4e 53 57 69 6e 64 6f 77 2c 20 4e 53 53 68 61 72  | class.MyWindow:.NSWindow,.NSShar | 
| 176a0 |  69 6e 67 53 65 72 76 69 63 65 44 65 6c 65 67 61    74 65 20 7b 0a 20 20 20 20 20 20 20 20 20 66 75  | ingServiceDelegate.{..........fu | 
| 176c0 |  6e 63 20 73 68 61 72 69 6e 67 53 65 72 76 69 63    65 28 0a 20 20 20 20 20 20 20 20 20 20 20 5f 20  | nc.sharingService(............_. | 
| 176e0 |  73 68 61 72 69 6e 67 53 65 72 76 69 63 65 3a 20    4e 53 53 68 61 72 69 6e 67 53 65 72 76 69 63 65  | sharingService:.NSSharingService | 
| 17700 |  2c 0a 20 20 20 20 20 20 20 20 20 20 20 64 69 64    53 68 61 72 65 49 74 65 6d 73 20 69 74 65 6d 73  | ,............didShareItems.items | 
| 17720 |  3a 20 5b 41 6e 79 5d 0a 20 20 20 20 20 20 20 20    20 29 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20  | :.[Any]..........).{............ | 
| 17740 |  4e 53 41 70 70 6c 69 63 61 74 69 6f 6e 2e 73 68    61 72 65 64 2e 74 65 72 6d 69 6e 61 74 65 28 6e  | NSApplication.shared.terminate(n | 
| 17760 |  69 6c 29 0a 20 20 20 20 20 20 20 20 20 7d 0a 0a    20 20 20 20 20 20 20 20 20 66 75 6e 63 20 73 68  | il)..........}...........func.sh | 
| 17780 |  61 72 69 6e 67 53 65 72 76 69 63 65 28 0a 20 20    20 20 20 20 20 20 20 20 20 5f 20 73 68 61 72 69  | aringService(............_.shari | 
| 177a0 |  6e 67 53 65 72 76 69 63 65 3a 20 4e 53 53 68 61    72 69 6e 67 53 65 72 76 69 63 65 2c 20 64 69 64  | ngService:.NSSharingService,.did | 
| 177c0 |  46 61 69 6c 54 6f 53 68 61 72 65 49 74 65 6d 73    20 69 74 65 6d 73 3a 20 5b 41 6e 79 5d 2c 20 65  | FailToShareItems.items:.[Any],.e | 
| 177e0 |  72 72 6f 72 3a 20 45 72 72 6f 72 0a 20 20 20 20    20 20 20 20 20 29 20 7b 0a 20 20 20 20 20 20 20  | rror:.Error..........).{........ | 
| 17800 |  20 20 20 20 6c 65 74 20 65 72 72 6f 72 20 3d 20    65 72 72 6f 72 20 61 73 20 4e 53 45 72 72 6f 72  | ....let.error.=.error.as.NSError | 
| 17820 |  0a 20 20 20 20 20 20 20 20 20 20 20 69 66 20 65    72 72 6f 72 2e 64 6f 6d 61 69 6e 20 3d 3d 20 4e  | ............if.error.domain.==.N | 
| 17840 |  53 43 6f 63 6f 61 45 72 72 6f 72 44 6f 6d 61 69    6e 20 26 26 20 65 72 72 6f 72 2e 63 6f 64 65 20  | SCocoaErrorDomain.&&.error.code. | 
| 17860 |  3d 3d 20 4e 53 55 73 65 72 43 61 6e 63 65 6c 6c    65 64 45 72 72 6f 72 20 7b 0a 20 20 20 20 20 20  | ==.NSUserCancelledError.{....... | 
| 17880 |  20 20 20 20 20 20 20 4e 53 41 70 70 6c 69 63 61    74 69 6f 6e 2e 73 68 61 72 65 64 2e 74 65 72 6d  | .......NSApplication.shared.term | 
| 178a0 |  69 6e 61 74 65 28 6e 69 6c 29 0a 20 20 20 20 20    20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20  | inate(nil)............}......... | 
| 178c0 |  20 20 20 65 78 69 74 28 31 29 0a 20 20 20 20 20    20 20 20 20 7d 0a 20 20 20 20 20 20 20 7d 0a 0a  | ...exit(1)..........}........}.. | 
| 178e0 |  20 20 20 20 20 20 20 6c 65 74 20 77 69 6e 64 6f    77 20 3d 20 4d 79 57 69 6e 64 6f 77 28 0a 20 20  | .......let.window.=.MyWindow(... | 
| 17900 |  20 20 20 20 20 20 20 63 6f 6e 74 65 6e 74 52 65    63 74 3a 20 4e 53 52 65 63 74 28 78 3a 20 30 2c  | .......contentRect:.NSRect(x:.0, | 
| 17920 |  20 79 3a 20 30 2c 20 77 69 64 74 68 3a 20 30 2c    20 68 65 69 67 68 74 3a 20 30 29 2c 0a 20 20 20  | .y:.0,.width:.0,.height:.0),.... | 
| 17940 |  20 20 20 20 20 20 73 74 79 6c 65 4d 61 73 6b 3a    20 5b 5d 2c 0a 20 20 20 20 20 20 20 20 20 62 61  | ......styleMask:.[],..........ba | 
| 17960 |  63 6b 69 6e 67 3a 20 2e 62 75 66 66 65 72 65 64    2c 0a 20 20 20 20 20 20 20 20 20 64 65 66 65 72  | cking:..buffered,..........defer | 
| 17980 |  3a 20 66 61 6c 73 65 29 0a 0a 20 20 20 20 20 20    20 6c 65 74 20 73 65 72 76 69 63 65 73 20 3d 20  | :.false).........let.services.=. | 
| 179a0 |  4e 53 53 68 61 72 69 6e 67 53 65 72 76 69 63 65    2e 73 68 61 72 69 6e 67 53 65 72 76 69 63 65 73  | NSSharingService.sharingServices | 
| 179c0 |  28 66 6f 72 49 74 65 6d 73 3a 20 5b 5c 22 3c 3c    2a 3e 3e 5c 22 5d 2e 6d 61 70 7b 55 52 4c 28 66  | (forItems:.[\"<<*>>\"].map{URL(f | 
| 179e0 |  69 6c 65 55 52 4c 57 69 74 68 50 61 74 68 3a 24    30 29 7d 29 0a 20 20 20 20 20 20 20 6c 65 74 20  | ileURLWithPath:$0)})........let. | 
| 17a00 |  73 65 72 76 69 63 65 20 3d 20 73 65 72 76 69 63    65 73 5b 25 73 5d 0a 20 20 20 20 20 20 20 73 65  | service.=.services[%s]........se | 
| 17a20 |  72 76 69 63 65 2e 64 65 6c 65 67 61 74 65 20 3d    20 77 69 6e 64 6f 77 0a 20 20 20 20 20 20 20 73  | rvice.delegate.=.window........s | 
| 17a40 |  65 72 76 69 63 65 2e 70 65 72 66 6f 72 6d 28 77    69 74 68 49 74 65 6d 73 3a 20 5b 5c 22 3c 3c 2a  | ervice.perform(withItems:.[\"<<* | 
| 17a60 |  3e 3e 5c 22 5d 2e 6d 61 70 7b 55 52 4c 28 66 69    6c 65 55 52 4c 57 69 74 68 50 61 74 68 3a 24 30  | >>\"].map{URL(fileURLWithPath:$0 | 
| 17a80 |  29 7d 29 0a 0a 20 20 20 20 20 20 20 4e 53 41 70    70 2e 72 75 6e 28 29 22 20 73 65 6c 65 63 74 69  | )}).........NSApp.run()".selecti | 
| 17aa0 |  6f 6e 29 0a 20 20 20 20 20 3a 73 69 6c 65 6e 74    2d 73 75 63 63 65 73 73 20 74 0a 20 20 20 20 20  | on)......:silent-success.t...... | 
| 17ac0 |  3a 73 68 65 6c 6c 2d 70 69 70 65 20 22 73 77 69    66 74 20 2d 22 0a 20 20 20 20 20 3a 6a 6f 69 6e  | :shell-pipe."swift.-"......:join | 
| 17ae0 |  2d 73 65 70 61 72 61 74 6f 72 20 22 2c 20 22 0a    20 20 20 20 20 3a 6e 6f 2d 70 72 6f 67 72 65 73  | -separator.",."......:no-progres | 
| 17b00 |  73 20 74 0a 20 20 20 20 20 3a 75 74 69 6c 73 20    22 73 77 69 66 74 22 29 29 29 0a 0a 3b 3b 3b 23  | s.t......:utils."swift")))..;;;# | 
| 17b20 |  23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75    6e 20 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d  | ##autoload.(defun.dwim-shell-com | 
| 17b40 |  6d 61 6e 64 73 2d 6d 61 63 6f 73 2d 74 6f 67 67    6c 65 2d 64 69 73 70 6c 61 79 2d 72 6f 74 61 74  | mands-macos-toggle-display-rotat | 
| 17b60 |  69 6f 6e 20 28 29 0a 20 20 22 52 6f 74 61 74 65    20 64 69 73 70 6c 61 79 2e 22 0a 20 20 28 69 6e  | ion.()..."Rotate.display."...(in | 
| 17b80 |  74 65 72 61 63 74 69 76 65 29 0a 20 20 3b 3b 20    23 20 20 44 69 73 70 6c 61 79 5f 49 44 20 20 20  | teractive)...;;.#..Display_ID... | 
| 17ba0 |  20 52 65 73 6f 6c 75 74 69 6f 6e 20 20 5f 5f 5f    5f 44 69 73 70 6c 61 79 5f 42 6f 75 6e 64 73 5f  | .Resolution..____Display_Bounds_ | 
| 17bc0 |  5f 5f 5f 20 20 52 6f 74 61 74 69 6f 6e 0a 20 20    3b 3b 20 32 20 20 30 78 32 62 33 34 37 36 39 32  | ___..Rotation...;;.2..0x2b347692 | 
| 17be0 |  20 20 20 20 31 34 34 30 78 32 35 36 30 20 20 20    20 20 20 30 20 20 20 20 20 30 20 20 31 34 34 30  | ....1440x2560......0.....0..1440 | 
| 17c00 |  20 20 32 35 36 30 20 20 20 20 32 37 30 20 20 20    20 5b 6d 61 69 6e 5d 0a 20 20 3b 3b 20 46 72 6f  | ..2560....270....[main]...;;.Fro | 
| 17c20 |  6d 20 66 62 2d 72 6f 74 61 74 65 20 6f 75 74 70    75 74 2c 20 67 65 74 20 74 68 65 20 60 63 75 72  | m.fb-rotate.output,.get.the.`cur | 
| 17c40 |  72 65 6e 74 2d 72 6f 74 61 74 69 6f 6e 27 20 66    72 6f 6d 20 43 6f 6c 75 6d 6e 20 37 2c 20 72 6f  | rent-rotation'.from.Column.7,.ro | 
| 17c60 |  77 20 31 20 7a 65 72 6f 2d 62 61 73 65 64 2e 0a    20 20 28 6c 65 74 20 28 28 63 75 72 72 65 6e 74  | w.1.zero-based....(let.((current | 
| 17c80 |  2d 72 6f 74 61 74 69 6f 6e 20 28 6e 74 68 20 37    20 28 73 70 6c 69 74 2d 73 74 72 69 6e 67 20 28  | -rotation.(nth.7.(split-string.( | 
| 17ca0 |  6e 74 68 20 31 20 28 70 72 6f 63 65 73 73 2d 6c    69 6e 65 73 20 22 66 62 2d 72 6f 74 61 74 65 22  | nth.1.(process-lines."fb-rotate" | 
| 17cc0 |  20 22 2d 69 22 29 29 29 29 29 29 0a 20 20 20 20    28 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d  | ."-i")))))).....(dwim-shell-comm | 
| 17ce0 |  61 6e 64 2d 6f 6e 2d 6d 61 72 6b 65 64 2d 66 69    6c 65 73 0a 20 20 20 20 20 22 6d 61 63 4f 53 20  | and-on-marked-files......"macOS. | 
| 17d00 |  68 61 72 64 77 61 72 65 20 6f 76 65 72 76 69 65    77 22 0a 20 20 20 20 20 28 66 6f 72 6d 61 74 20  | hardware.overview"......(format. | 
| 17d20 |  22 66 62 2d 72 6f 74 61 74 65 20 2d 64 20 31 20    2d 72 20 25 73 22 20 28 69 66 20 28 65 71 75 61  | "fb-rotate.-d.1.-r.%s".(if.(equa | 
| 17d40 |  6c 20 63 75 72 72 65 6e 74 2d 72 6f 74 61 74 69    6f 6e 20 22 32 37 30 22 29 20 22 30 22 20 22 32  | l.current-rotation."270")."0"."2 | 
| 17d60 |  37 30 22 29 29 0a 20 20 20 20 20 3a 75 74 69 6c    73 20 22 66 62 2d 72 6f 74 61 74 65 22 29 29 29  | 70"))......:utils."fb-rotate"))) | 
| 17d80 |  0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64    0a 28 64 65 66 75 6e 20 64 77 69 6d 2d 73 68 65  | ..;;;###autoload.(defun.dwim-she | 
| 17da0 |  6c 6c 2d 63 6f 6d 6d 61 6e 64 73 2d 6d 61 6b 65    2d 73 77 69 66 74 2d 70 61 63 6b 61 67 65 2d 6c  | ll-commands-make-swift-package-l | 
| 17dc0 |  69 62 72 61 72 79 20 28 29 0a 20 20 22 43 72 65    61 74 65 20 61 20 73 77 69 66 74 20 70 61 63 6b  | ibrary.()..."Create.a.swift.pack | 
| 17de0 |  61 67 65 20 6c 69 62 72 61 72 79 22 0a 20 20 28    69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20 28  | age.library"...(interactive)...( | 
| 17e00 |  64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61    6e 64 2d 6f 6e 2d 6d 61 72 6b 65 64 2d 66 69 6c  | dwim-shell-command-on-marked-fil | 
| 17e20 |  65 73 0a 20 20 20 22 43 72 65 61 74 65 20 61 20    73 77 69 66 74 20 70 61 63 6b 61 67 65 20 6c 69  | es...."Create.a.swift.package.li | 
| 17e40 |  62 72 61 72 79 22 0a 20 20 20 22 73 77 69 66 74    20 70 61 63 6b 61 67 65 20 69 6e 69 74 20 2d 2d  | brary"...."swift.package.init.-- | 
| 17e60 |  74 79 70 65 20 6c 69 62 72 61 72 79 22 0a 20 20    20 3a 75 74 69 6c 73 20 22 73 77 69 66 74 22 29  | type.library"....:utils."swift") | 
| 17e80 |  29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61    64 0a 28 64 65 66 75 6e 20 64 77 69 6d 2d 73 68  | )..;;;###autoload.(defun.dwim-sh | 
| 17ea0 |  65 6c 6c 2d 63 6f 6d 6d 61 6e 64 73 2d 6d 61 6b    65 2d 73 77 69 66 74 2d 70 61 63 6b 61 67 65 2d  | ell-commands-make-swift-package- | 
| 17ec0 |  65 78 65 63 75 74 61 62 6c 65 20 28 29 0a 20 20    22 43 72 65 61 74 65 20 61 20 73 77 69 66 74 20  | executable.()..."Create.a.swift. | 
| 17ee0 |  70 61 63 6b 61 67 65 20 65 78 65 63 75 74 61 62    6c 65 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69  | package.executable"...(interacti | 
| 17f00 |  76 65 29 0a 20 20 28 64 77 69 6d 2d 73 68 65 6c    6c 2d 63 6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d 61 72  | ve)...(dwim-shell-command-on-mar | 
| 17f20 |  6b 65 64 2d 66 69 6c 65 73 0a 20 20 20 22 43 72    65 61 74 65 20 61 20 73 77 69 66 74 20 70 61 63  | ked-files...."Create.a.swift.pac | 
| 17f40 |  6b 61 67 65 20 65 78 65 63 75 74 61 62 6c 65 22    0a 20 20 20 22 73 77 69 66 74 20 70 61 63 6b 61  | kage.executable"...."swift.packa | 
| 17f60 |  67 65 20 69 6e 69 74 20 2d 2d 74 79 70 65 20 65    78 65 63 75 74 61 62 6c 65 22 0a 20 20 20 3a 75  | ge.init.--type.executable"....:u | 
| 17f80 |  74 69 6c 73 20 22 73 77 69 66 74 22 29 29 0a 0a    28 64 65 66 75 6e 20 64 77 69 6d 2d 73 68 65 6c  | tils."swift"))..(defun.dwim-shel | 
| 17fa0 |  6c 2d 63 6f 6d 6d 61 6e 64 73 2d 2d 6d 61 63 6f    73 2d 61 70 70 73 20 28 29 0a 20 20 22 52 65 74  | l-commands--macos-apps.()..."Ret | 
| 17fc0 |  75 72 6e 20 61 6c 69 73 74 20 6f 66 20 6d 61 63    4f 53 20 61 70 70 73 20 28 5c 22 45 6d 61 63 73  | urn.alist.of.macOS.apps.(\"Emacs | 
| 17fe0 |  5c 22 20 2e 20 5c 22 2f 41 70 70 6c 69 63 61 74    69 6f 6e 73 2f 45 6d 61 63 73 2e 61 70 70 5c 22  | \"...\"/Applications/Emacs.app\" | 
| 18000 |  29 2e 22 0a 20 20 28 6d 61 70 63 61 72 20 28 6c    61 6d 62 64 61 20 28 70 61 74 68 29 0a 20 20 20  | )."...(mapcar.(lambda.(path).... | 
| 18020 |  20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 20 28    66 69 6c 65 2d 6e 61 6d 65 2d 62 61 73 65 20 70  | .........(cons.(file-name-base.p | 
| 18040 |  61 74 68 29 20 70 61 74 68 29 29 0a 20 20 20 20    20 20 20 20 20 20 28 73 65 71 2d 73 6f 72 74 0a  | ath).path))...........(seq-sort. | 
| 18060 |  20 20 20 20 20 20 20 20 20 20 20 23 27 73 74 72    69 6e 67 2d 6c 65 73 73 70 0a 20 20 20 20 20 20  | ...........#'string-lessp....... | 
| 18080 |  20 20 20 20 20 28 73 65 71 2d 6d 61 70 63 61 74    20 28 6c 61 6d 62 64 61 20 28 70 61 74 68 73 29  | .....(seq-mapcat.(lambda.(paths) | 
| 180a0 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 64 69 72 65 63  | ..........................(direc | 
| 180c0 |  74 6f 72 79 2d 66 69 6c 65 73 2d 72 65 63 75 72    73 69 76 65 6c 79 0a 20 20 20 20 20 20 20 20 20  | tory-files-recursively.......... | 
| 180e0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 70 61 74 68 73 20 22 5c 5c 2e 61 70 70 24 22  | .................paths."\\.app$" | 
| 18100 |  20 74 20 28 6c 61 6d 62 64 61 20 28 70 61 74 68    29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | .t.(lambda.(path)............... | 
| 18120 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 18140 |  28 6e 6f 74 20 28 73 74 72 69 6e 67 2d 73 75 66    66 69 78 2d 70 20 22 2e 61 70 70 22 20 70 61 74  | (not.(string-suffix-p.".app".pat | 
| 18160 |  68 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 28  | h)))))........................'( | 
| 18180 |  22 2f 41 70 70 6c 69 63 61 74 69 6f 6e 73 22 20    22 7e 2f 41 70 70 6c 69 63 61 74 69 6f 6e 73 22  | "/Applications"."~/Applications" | 
| 181a0 |  20 22 2f 53 79 73 74 65 6d 2f 41 70 70 6c 69 63    61 74 69 6f 6e 73 22 29 29 29 29 29 0a 0a 3b 3b  | ."/System/Applications")))))..;; | 
| 181c0 |  3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65    66 75 6e 20 64 77 69 6d 2d 73 68 65 6c 6c 2d 63  | ;###autoload.(defun.dwim-shell-c | 
| 181e0 |  6f 6d 6d 61 6e 64 73 2d 6d 61 63 6f 73 2d 73 65    74 2d 64 65 66 61 75 6c 74 2d 61 70 70 20 28 29  | ommands-macos-set-default-app.() | 
| 18200 |  0a 20 20 22 53 65 74 20 64 65 66 61 75 6c 74 20    61 70 70 20 66 6f 72 20 66 69 6c 65 28 73 29 2e  | ..."Set.default.app.for.file(s). | 
| 18220 |  22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65    29 0a 20 20 28 6c 65 74 2a 20 28 28 61 70 70 73  | "...(interactive)...(let*.((apps | 
| 18240 |  20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d    6d 61 6e 64 73 2d 2d 6d 61 63 6f 73 2d 61 70 70  | .(dwim-shell-commands--macos-app | 
| 18260 |  73 29 29 0a 20 20 20 20 20 20 20 20 20 28 73 65    6c 65 63 74 69 6f 6e 20 28 70 72 6f 67 6e 0a 20  | s))..........(selection.(progn.. | 
| 18280 |  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 61 73 73 65 72 74 20  | .....................(cl-assert. | 
| 182a0 |  61 70 70 73 20 6e 69 6c 20 22 4e 6f 20 61 70 70    73 20 66 6f 75 6e 64 22 29 0a 20 20 20 20 20 20  | apps.nil."No.apps.found")....... | 
| 182c0 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 63 6f 6d 70 6c 65 74 69 6e 67 2d 72 65 61 64  | ................(completing-read | 
| 182e0 |  20 22 53 65 74 20 64 65 66 61 75 6c 74 20 61 70    70 3a 20 22 20 61 70 70 73 20 6e 69 6c 20 74 29  | ."Set.default.app:.".apps.nil.t) | 
| 18300 |  29 29 29 0a 20 20 20 20 28 64 77 69 6d 2d 73 68    65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d  | ))).....(dwim-shell-command-on-m | 
| 18320 |  61 72 6b 65 64 2d 66 69 6c 65 73 0a 20 20 20 20    20 22 53 65 74 20 64 65 66 61 75 6c 74 20 61 70  | arked-files......"Set.default.ap | 
| 18340 |  70 22 0a 20 20 20 20 20 28 66 6f 72 6d 61 74 20    22 64 75 74 69 20 2d 73 20 5c 22 25 73 5c 22 20  | p"......(format."duti.-s.\"%s\". | 
| 18360 |  27 3c 3c 65 3e 3e 27 20 61 6c 6c 22 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 28 73 74 72 69 6e  | '<<e>>'.all"..............(strin | 
| 18380 |  67 2d 74 72 69 6d 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 28 73 68 65 6c 6c 2d 63 6f 6d 6d  | g-trim...............(shell-comm | 
| 183a0 |  61 6e 64 2d 74 6f 2d 73 74 72 69 6e 67 20 28 66    6f 72 6d 61 74 20 22 64 65 66 61 75 6c 74 73 20  | and-to-string.(format."defaults. | 
| 183c0 |  72 65 61 64 20 27 25 73 2f 43 6f 6e 74 65 6e 74    73 2f 49 6e 66 6f 2e 70 6c 69 73 74 27 20 43 46  | read.'%s/Contents/Info.plist'.CF | 
| 183e0 |  42 75 6e 64 6c 65 49 64 65 6e 74 69 66 69 65 72    22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | BundleIdentifier"............... | 
| 18400 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 18420 |  20 28 6d 61 70 2d 65 6c 74 20 61 70 70 73 20 73    65 6c 65 63 74 69 6f 6e 29 29 29 29 29 0a 20 20  | .(map-elt.apps.selection)))))... | 
| 18440 |  20 20 20 3a 73 69 6c 65 6e 74 2d 73 75 63 63 65    73 73 20 74 0a 20 20 20 20 20 3a 6e 6f 2d 70 72  | ...:silent-success.t......:no-pr | 
| 18460 |  6f 67 72 65 73 73 20 74 0a 20 20 20 20 20 3a 75    74 69 6c 73 20 22 64 75 74 69 22 29 29 29 0a 0a  | ogress.t......:utils."duti"))).. | 
| 18480 |  3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28    64 65 66 75 6e 20 64 77 69 6d 2d 73 68 65 6c 6c  | ;;;###autoload.(defun.dwim-shell | 
| 184a0 |  2d 63 6f 6d 6d 61 6e 64 73 2d 6d 61 63 6f 73 2d    6f 70 65 6e 2d 77 69 74 68 20 28 29 0a 20 20 22  | -commands-macos-open-with.()..." | 
| 184c0 |  4f 70 65 6e 20 66 69 6c 65 28 73 29 20 77 69 74    68 20 73 70 65 63 69 66 69 63 20 65 78 74 65 72  | Open.file(s).with.specific.exter | 
| 184e0 |  6e 61 6c 20 61 70 70 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  | nal.app."...(interactive)...(let | 
| 18500 |  2a 20 28 28 61 70 70 73 20 28 64 77 69 6d 2d 73    68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 73 2d 2d 6d  | *.((apps.(dwim-shell-commands--m | 
| 18520 |  61 63 6f 73 2d 61 70 70 73 29 29 0a 20 20 20 20    20 20 20 20 20 28 73 65 6c 65 63 74 69 6f 6e 20  | acos-apps))..........(selection. | 
| 18540 |  28 70 72 6f 67 6e 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  | (progn.......................(cl | 
| 18560 |  2d 61 73 73 65 72 74 20 61 70 70 73 20 6e 69 6c    20 22 4e 6f 20 61 70 70 73 20 66 6f 75 6e 64 22  | -assert.apps.nil."No.apps.found" | 
| 18580 |  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 63 6f 6d 70 6c 65 74  | ).......................(complet | 
| 185a0 |  69 6e 67 2d 72 65 61 64 20 22 4f 70 65 6e 20 77    69 74 68 3a 20 22 20 61 70 70 73 20 6e 69 6c 20  | ing-read."Open.with:.".apps.nil. | 
| 185c0 |  74 29 29 29 29 0a 20 20 20 20 28 64 77 69 6d 2d    73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 6f 6e  | t)))).....(dwim-shell-command-on | 
| 185e0 |  2d 6d 61 72 6b 65 64 2d 66 69 6c 65 73 0a 20 20    20 20 20 22 4f 70 65 6e 20 77 69 74 68 22 0a 20  | -marked-files......"Open.with".. | 
| 18600 |  20 20 20 20 28 66 6f 72 6d 61 74 20 22 6f 70 65    6e 20 2d 61 20 27 25 73 27 20 27 3c 3c 2a 3e 3e  | ....(format."open.-a.'%s'.'<<*>> | 
| 18620 |  27 22 20 28 6d 61 70 2d 65 6c 74 20 61 70 70 73    20 73 65 6c 65 63 74 69 6f 6e 29 29 0a 20 20 20  | '".(map-elt.apps.selection)).... | 
| 18640 |  20 20 3a 73 69 6c 65 6e 74 2d 73 75 63 63 65 73    73 20 74 0a 20 20 20 20 20 3a 6e 6f 2d 70 72 6f  | ..:silent-success.t......:no-pro | 
| 18660 |  67 72 65 73 73 20 74 0a 20 20 20 20 20 3a 75 74    69 6c 73 20 22 6f 70 65 6e 22 29 29 29 0a 0a 3b  | gress.t......:utils."open")))..; | 
| 18680 |  3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64    65 66 75 6e 20 64 77 69 6d 2d 73 68 65 6c 6c 2d  | ;;###autoload.(defun.dwim-shell- | 
| 186a0 |  63 6f 6d 6d 61 6e 64 73 2d 6d 61 63 6f 73 2d 6f    70 65 6e 2d 77 69 74 68 2d 66 69 72 65 66 6f 78  | commands-macos-open-with-firefox | 
| 186c0 |  20 28 29 0a 20 20 22 4f 70 65 6e 20 66 69 6c 65    28 73 29 20 69 6e 20 46 69 72 65 66 6f 78 2e 22  | .()..."Open.file(s).in.Firefox." | 
| 186e0 |  0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 29    0a 20 20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d 63  | ...(interactive)...(dwim-shell-c | 
| 18700 |  6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d 61 72 6b 65 64    2d 66 69 6c 65 73 0a 20 20 20 22 4f 70 65 6e 20  | ommand-on-marked-files...."Open. | 
| 18720 |  69 6e 20 46 69 72 65 66 6f 78 22 0a 20 20 20 22    6f 70 65 6e 20 2d 61 20 46 69 72 65 66 6f 78 20  | in.Firefox"...."open.-a.Firefox. | 
| 18740 |  27 3c 3c 2a 3e 3e 27 22 0a 20 20 20 3a 73 69 6c    65 6e 74 2d 73 75 63 63 65 73 73 20 74 0a 20 20  | '<<*>>'"....:silent-success.t... | 
| 18760 |  20 3a 6e 6f 2d 70 72 6f 67 72 65 73 73 20 74 0a    20 20 20 3a 75 74 69 6c 73 20 22 6f 70 65 6e 22  | .:no-progress.t....:utils."open" | 
| 18780 |  29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f    61 64 0a 28 64 65 66 75 6e 20 64 77 69 6d 2d 73  | ))..;;;###autoload.(defun.dwim-s | 
| 187a0 |  68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 73 2d 6d 61    63 6f 73 2d 6f 70 65 6e 2d 77 69 74 68 2d 73 61  | hell-commands-macos-open-with-sa | 
| 187c0 |  66 61 72 69 20 28 29 0a 20 20 22 4f 70 65 6e 20    66 69 6c 65 28 73 29 20 69 6e 20 53 61 66 61 72  | fari.()..."Open.file(s).in.Safar | 
| 187e0 |  69 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69    76 65 29 0a 20 20 28 64 77 69 6d 2d 73 68 65 6c  | i."...(interactive)...(dwim-shel | 
| 18800 |  6c 2d 63 6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d 61 72    6b 65 64 2d 66 69 6c 65 73 0a 20 20 20 22 4f 70  | l-command-on-marked-files...."Op | 
| 18820 |  65 6e 20 69 6e 20 53 61 66 61 72 69 22 0a 20 20    20 22 6f 70 65 6e 20 2d 61 20 53 61 66 61 72 69  | en.in.Safari"...."open.-a.Safari | 
| 18840 |  20 27 3c 3c 2a 3e 3e 27 22 0a 20 20 20 3a 73 69    6c 65 6e 74 2d 73 75 63 63 65 73 73 20 74 0a 20  | .'<<*>>'"....:silent-success.t.. | 
| 18860 |  20 20 3a 6e 6f 2d 70 72 6f 67 72 65 73 73 20 74    0a 20 20 20 3a 75 74 69 6c 73 20 22 6f 70 65 6e  | ..:no-progress.t....:utils."open | 
| 18880 |  22 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c    6f 61 64 0a 28 64 65 66 75 6e 20 64 77 69 6d 2d  | "))..;;;###autoload.(defun.dwim- | 
| 188a0 |  73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 73 2d 6d    61 63 6f 73 2d 73 74 61 72 74 2d 72 65 63 6f 72  | shell-commands-macos-start-recor | 
| 188c0 |  64 69 6e 67 2d 77 69 6e 64 6f 77 20 28 29 0a 20    20 22 53 65 6c 65 63 74 20 61 6e 64 20 73 74 61  | ding-window.()..."Select.and.sta | 
| 188e0 |  72 74 20 72 65 63 6f 72 64 69 6e 67 20 61 20 6d    61 63 4f 53 20 77 69 6e 64 6f 77 2e 22 0a 20 20  | rt.recording.a.macOS.window."... | 
| 18900 |  28 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20    28 6c 65 74 2a 20 28 28 77 69 6e 64 6f 77 20 28  | (interactive)...(let*.((window.( | 
| 18920 |  64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61    6e 64 73 2d 2d 6d 61 63 6f 73 2d 73 65 6c 65 63  | dwim-shell-commands--macos-selec | 
| 18940 |  74 2d 77 69 6e 64 6f 77 29 29 0a 20 20 20 20 20    20 20 20 20 28 70 61 74 68 20 28 64 77 69 6d 2d  | t-window))..........(path.(dwim- | 
| 18960 |  73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 73 2d 2d    67 65 6e 65 72 61 74 65 2d 70 61 74 68 20 22 7e  | shell-commands--generate-path."~ | 
| 18980 |  2f 53 63 72 65 65 6e 73 68 6f 74 73 22 20 28 63    61 72 20 77 69 6e 64 6f 77 29 20 22 2e 67 69 66  | /Screenshots".(car.window).".gif | 
| 189a0 |  22 29 29 0a 20 20 20 20 20 20 20 20 20 28 62 75    66 66 65 72 2d 66 69 6c 65 2d 6e 61 6d 65 20 70  | "))..........(buffer-file-name.p | 
| 189c0 |  61 74 68 29 20 3b 3b 20 6f 76 65 72 72 69 64 65    20 73 6f 20 3c 3c 66 3e 3e 20 70 69 63 6b 73 20  | ath).;;.override.so.<<f>>.picks. | 
| 189e0 |  69 74 20 75 70 0a 20 20 20 20 20 20 20 20 20 28    69 6e 68 69 62 69 74 2d 6d 65 73 73 61 67 65 20  | it.up..........(inhibit-message. | 
| 18a00 |  74 29 29 0a 20 20 20 20 3b 3b 20 53 69 6c 65 6e    63 65 20 65 63 68 6f 20 74 6f 20 61 76 6f 69 64  | t)).....;;.Silence.echo.to.avoid | 
| 18a20 |  20 75 6e 72 65 6c 61 74 65 64 20 6d 65 73 73 61    67 65 73 20 6d 61 6b 69 6e 67 20 69 6e 74 6f 20  | .unrelated.messages.making.into. | 
| 18a40 |  61 6e 69 6d 61 74 69 6f 6e 2e 0a 20 20 20 20 28    63 6c 2d 6c 65 74 66 20 28 28 28 73 79 6d 62 6f  | animation......(cl-letf.(((symbo | 
| 18a60 |  6c 2d 66 75 6e 63 74 69 6f 6e 20 27 64 77 69 6d    2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 2d  | l-function.'dwim-shell-command-- | 
| 18a80 |  6d 65 73 73 61 67 65 29 0a 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20  | message)................(lambda. | 
| 18aa0 |  28 66 6d 74 20 26 72 65 73 74 20 61 72 67 73 29    20 6e 69 6c 29 29 29 0a 20 20 20 20 20 20 28 64  | (fmt.&rest.args).nil))).......(d | 
| 18ac0 |  77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e    64 2d 6f 6e 2d 6d 61 72 6b 65 64 2d 66 69 6c 65  | wim-shell-command-on-marked-file | 
| 18ae0 |  73 0a 20 20 20 20 20 20 20 22 53 74 61 72 74 20    72 65 63 6f 72 64 69 6e 67 20 61 20 6d 61 63 4f  | s........"Start.recording.a.macO | 
| 18b00 |  53 20 77 69 6e 64 6f 77 2e 22 0a 20 20 20 20 20    20 20 28 66 6f 72 6d 61 74 0a 20 20 20 20 20 20  | S.window."........(format....... | 
| 18b20 |  20 20 22 6d 61 63 6f 73 72 65 63 20 2d 2d 72 65    63 6f 72 64 20 27 25 73 27 20 2d 2d 67 69 66 20  | .."macosrec.--record.'%s'.--gif. | 
| 18b40 |  2d 2d 6f 75 74 70 75 74 20 27 3c 3c 66 3e 3e 27    22 0a 20 20 20 20 20 20 20 20 28 63 64 72 20 77  | --output.'<<f>>'".........(cdr.w | 
| 18b60 |  69 6e 64 6f 77 29 29 0a 20 20 20 20 20 20 20 3a    73 69 6c 65 6e 74 2d 73 75 63 63 65 73 73 20 74  | indow))........:silent-success.t | 
| 18b80 |  0a 20 20 20 20 20 20 20 3a 6d 6f 6e 69 74 6f 72    2d 64 69 72 65 63 74 6f 72 79 20 22 7e 2f 53 63  | ........:monitor-directory."~/Sc | 
| 18ba0 |  72 65 65 6e 73 68 6f 74 73 22 0a 20 20 20 20 20    20 20 3a 6e 6f 2d 70 72 6f 67 72 65 73 73 20 74  | reenshots"........:no-progress.t | 
| 18bc0 |  0a 20 20 20 20 20 20 20 3a 75 74 69 6c 73 20 27    28 22 66 66 6d 70 65 67 22 20 22 6d 61 63 6f 73  | ........:utils.'("ffmpeg"."macos | 
| 18be0 |  72 65 63 22 29 0a 20 20 20 20 20 20 20 3a 6f 6e    2d 63 6f 6d 70 6c 65 74 69 6f 6e 0a 20 20 20 20  | rec")........:on-completion..... | 
| 18c00 |  20 20 20 28 6c 61 6d 62 64 61 20 28 62 75 66 66    65 72 20 70 72 6f 63 65 73 73 29 0a 20 20 20 20  | ...(lambda.(buffer.process)..... | 
| 18c20 |  20 20 20 20 20 28 69 66 20 28 3d 20 28 70 72 6f    63 65 73 73 2d 65 78 69 74 2d 73 74 61 74 75 73  | .....(if.(=.(process-exit-status | 
| 18c40 |  20 70 72 6f 63 65 73 73 29 20 30 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 28 70 72 6f 67 6e  | .process).0)..............(progn | 
| 18c60 |  0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    22 53 61 76 65 64 20 72 65 63 6f 72 64 69 6e 67  | ................"Saved.recording | 
| 18c80 |  22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 28 64 69 72 65 64 2d 6a 75 6d 70 20 6e 69 6c  | "................(dired-jump.nil | 
| 18ca0 |  20 70 61 74 68 29 0a 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 28 6b 69 6c 6c 2d 62 75 66 66  | .path)................(kill-buff | 
| 18cc0 |  65 72 20 62 75 66 66 65 72 29 29 0a 20 20 20 20    20 20 20 20 20 20 20 28 77 69 74 68 2d 63 75 72  | er.buffer))............(with-cur | 
| 18ce0 |  72 65 6e 74 2d 62 75 66 66 65 72 20 62 75 66 66    65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | rent-buffer.buffer.............. | 
| 18d00 |  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 20 20  | (goto-char.(point-min))......... | 
| 18d20 |  20 20 20 20 20 28 69 66 20 28 73 65 61 72 63 68    2d 66 6f 72 77 61 72 64 20 22 41 62 6f 72 74 65  | .....(if.(search-forward."Aborte | 
| 18d40 |  64 22 20 6e 69 6c 20 74 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 67  | d".nil.t)..................(prog | 
| 18d60 |  6e 0a 20 20 20 20 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 41  | n....................(message."A | 
| 18d80 |  62 6f 72 74 65 64 20 72 65 63 6f 72 64 69 6e 67    22 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  | borted.recording").............. | 
| 18da0 |  20 20 20 20 20 20 28 6b 69 6c 6c 2d 62 75 66 66    65 72 20 62 75 66 66 65 72 29 29 0a 20 20 20 20  | ......(kill-buffer.buffer))..... | 
| 18dc0 |  20 20 20 20 20 20 20 20 20 20 20 28 73 77 69 74    63 68 2d 74 6f 2d 62 75 66 66 65 72 20 62 75 66  | ...........(switch-to-buffer.buf | 
| 18de0 |  66 65 72 29 29 29 29 29 29 29 29 29 0a 0a 28 64    65 66 75 6e 20 64 77 69 6d 2d 73 68 65 6c 6c 2d  | fer)))))))))..(defun.dwim-shell- | 
| 18e00 |  63 6f 6d 6d 61 6e 64 73 2d 2d 67 65 6e 65 72 61    74 65 2d 70 61 74 68 20 28 64 69 72 20 6e 61 6d  | commands--generate-path.(dir.nam | 
| 18e20 |  65 20 65 78 74 29 0a 20 20 22 47 65 6e 65 72 61    74 65 20 61 20 74 69 6d 65 73 74 61 6d 70 65 64  | e.ext)..."Generate.a.timestamped | 
| 18e40 |  20 70 61 74 68 20 77 69 74 68 20 44 49 52 2c 20    4e 41 4d 45 2c 20 61 6e 64 20 45 58 54 2e 22 0a  | .path.with.DIR,.NAME,.and.EXT.". | 
| 18e60 |  20 20 28 63 6f 6e 63 61 74 20 28 66 69 6c 65 2d    6e 61 6d 65 2d 61 73 2d 64 69 72 65 63 74 6f 72  | ..(concat.(file-name-as-director | 
| 18e80 |  79 20 28 65 78 70 61 6e 64 2d 66 69 6c 65 2d 6e    61 6d 65 20 64 69 72 29 29 0a 20 20 20 20 20 20  | y.(expand-file-name.dir))....... | 
| 18ea0 |  20 20 20 20 28 66 6f 72 6d 61 74 2d 74 69 6d 65    2d 73 74 72 69 6e 67 20 22 25 59 2d 25 6d 2d 25  | ....(format-time-string."%Y-%m-% | 
| 18ec0 |  64 2d 25 48 3a 25 4d 3a 25 53 2d 22 29 0a 20 20    20 20 20 20 20 20 20 20 6e 61 6d 65 20 65 78 74  | d-%H:%M:%S-")...........name.ext | 
| 18ee0 |  29 29 0a 0a 28 64 65 66 75 6e 20 64 77 69 6d 2d    73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 73 2d 2d  | ))..(defun.dwim-shell-commands-- | 
| 18f00 |  6d 61 63 6f 73 2d 73 65 6c 65 63 74 2d 77 69 6e    64 6f 77 20 28 29 0a 20 20 22 52 65 74 75 72 6e  | macos-select-window.()..."Return | 
| 18f20 |  20 61 20 6c 69 73 74 20 6f 66 20 6d 61 63 4f 53    20 77 69 6e 64 6f 77 73 2e 22 0a 20 20 28 69 66  | .a.list.of.macOS.windows."...(if | 
| 18f40 |  2d 6c 65 74 2a 20 28 28 6c 69 6e 65 20 28 63 6f    6d 70 6c 65 74 69 6e 67 2d 72 65 61 64 0a 20 20  | -let*.((line.(completing-read... | 
| 18f60 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 22 53 65 6c 65 63 74 3a 20 22 0a 20 20 20 20  | ................."Select:."..... | 
| 18f80 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28    70 72 6f 63 65 73 73 2d 6c 69 6e 65 73 20 22 6d  | ...............(process-lines."m | 
| 18fa0 |  61 63 6f 73 72 65 63 22 20 22 2d 2d 6c 69 73 74    22 29 20 6e 69 6c 20 74 29 29 0a 20 20 20 20 20  | acosrec"."--list").nil.t))...... | 
| 18fc0 |  20 20 20 20 20 20 20 28 77 69 6e 64 6f 77 2d 69    6e 66 6f 20 28 73 70 6c 69 74 2d 73 74 72 69 6e  | .......(window-info.(split-strin | 
| 18fe0 |  67 20 6c 69 6e 65 20 22 20 22 29 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 28 77 69 6e 64 6f 77  | g.line.".")).............(window | 
| 19000 |  2d 6e 75 6d 62 65 72 20 28 73 74 72 69 6e 67 2d    74 6f 2d 6e 75 6d 62 65 72 20 28 6e 74 68 20 30  | -number.(string-to-number.(nth.0 | 
| 19020 |  20 77 69 6e 64 6f 77 2d 69 6e 66 6f 29 29 29 0a    20 20 20 20 20 20 20 20 20 20 20 20 28 77 69 6e  | .window-info))).............(win | 
| 19040 |  64 6f 77 2d 61 70 70 20 28 6e 74 68 20 31 20 77    69 6e 64 6f 77 2d 69 6e 66 6f 29 29 0a 20 20 20  | dow-app.(nth.1.window-info)).... | 
| 19060 |  20 20 20 20 20 20 20 20 20 28 76 61 6c 69 64 20    28 3e 20 77 69 6e 64 6f 77 2d 6e 75 6d 62 65 72  | .........(valid.(>.window-number | 
| 19080 |  20 30 29 29 29 0a 20 20 20 20 20 20 28 63 6f 6e    73 20 77 69 6e 64 6f 77 2d 61 70 70 20 77 69 6e  | .0))).......(cons.window-app.win | 
| 190a0 |  64 6f 77 2d 6e 75 6d 62 65 72 29 0a 20 20 20 20    28 75 73 65 72 2d 65 72 72 6f 72 20 22 4e 6f 20  | dow-number).....(user-error."No. | 
| 190c0 |  77 69 6e 64 6f 77 20 66 6f 75 6e 64 22 29 29 29    0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64  | window.found")))..;;;###autoload | 
| 190e0 |  0a 28 64 65 66 75 6e 20 64 77 69 6d 2d 73 68 65    6c 6c 2d 63 6f 6d 6d 61 6e 64 73 2d 6d 61 63 6f  | .(defun.dwim-shell-commands-maco | 
| 19100 |  73 2d 65 6e 64 2d 72 65 63 6f 72 64 69 6e 67 2d    77 69 6e 64 6f 77 20 28 29 0a 20 20 22 53 74 6f  | s-end-recording-window.()..."Sto | 
| 19120 |  70 20 72 65 63 6f 72 64 69 6e 67 20 61 20 6d 61    63 4f 53 20 77 69 6e 64 6f 77 2e 22 0a 20 20 28  | p.recording.a.macOS.window."...( | 
| 19140 |  69 6e 74 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 6d 65  | interactive)...(let.((inhibit-me | 
| 19160 |  73 73 61 67 65 20 74 29 29 0a 20 20 20 20 28 63    6c 2d 6c 65 74 66 20 28 28 28 73 79 6d 62 6f 6c  | ssage.t)).....(cl-letf.(((symbol | 
| 19180 |  2d 66 75 6e 63 74 69 6f 6e 20 27 64 77 69 6d 2d    73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 2d 6d  | -function.'dwim-shell-command--m | 
| 191a0 |  65 73 73 61 67 65 29 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  | essage)................(lambda.( | 
| 191c0 |  66 6d 74 20 26 72 65 73 74 20 61 72 67 73 29 20    6e 69 6c 29 29 29 0a 20 20 20 20 20 20 28 64 77  | fmt.&rest.args).nil))).......(dw | 
| 191e0 |  69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64    2d 6f 6e 2d 6d 61 72 6b 65 64 2d 66 69 6c 65 73  | im-shell-command-on-marked-files | 
| 19200 |  0a 20 20 20 20 20 20 20 22 45 6e 64 20 72 65 63    6f 72 64 69 6e 67 20 6d 61 63 4f 53 20 77 69 6e  | ........"End.recording.macOS.win | 
| 19220 |  64 6f 77 2e 22 0a 20 20 20 20 20 20 20 22 6d 61    63 6f 73 72 65 63 20 2d 2d 73 61 76 65 22 0a 20  | dow."........"macosrec.--save".. | 
| 19240 |  20 20 20 20 20 20 3a 73 69 6c 65 6e 74 2d 73 75    63 63 65 73 73 20 74 0a 20 20 20 20 20 20 20 3a  | ......:silent-success.t........: | 
| 19260 |  6e 6f 2d 70 72 6f 67 72 65 73 73 20 74 0a 20 20    20 20 20 20 20 3a 65 72 72 6f 72 2d 61 75 74 6f  | no-progress.t........:error-auto | 
| 19280 |  66 6f 63 75 73 20 74 0a 20 20 20 20 20 20 20 3a    75 74 69 6c 73 20 22 6d 61 63 6f 73 72 65 63 22  | focus.t........:utils."macosrec" | 
| 192a0 |  29 29 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f    6c 6f 61 64 0a 28 64 65 66 75 6e 20 64 77 69 6d  | ))))..;;;###autoload.(defun.dwim | 
| 192c0 |  2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 73 2d    6d 61 63 6f 73 2d 61 62 6f 72 74 2d 72 65 63 6f  | -shell-commands-macos-abort-reco | 
| 192e0 |  72 64 69 6e 67 2d 77 69 6e 64 6f 77 20 28 29 0a    20 20 22 53 74 6f 70 20 72 65 63 6f 72 64 69 6e  | rding-window.()..."Stop.recordin | 
| 19300 |  67 20 61 20 6d 61 63 4f 53 20 77 69 6e 64 6f 77    2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76  | g.a.macOS.window."...(interactiv | 
| 19320 |  65 29 0a 20 20 28 6c 65 74 20 28 28 69 6e 68 69    62 69 74 2d 6d 65 73 73 61 67 65 20 74 29 29 0a  | e)...(let.((inhibit-message.t)). | 
| 19340 |  20 20 20 20 28 63 6c 2d 6c 65 74 66 20 28 28 28    73 79 6d 62 6f 6c 2d 66 75 6e 63 74 69 6f 6e 20  | ....(cl-letf.(((symbol-function. | 
| 19360 |  27 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d    61 6e 64 2d 2d 6d 65 73 73 61 67 65 29 0a 20 20  | 'dwim-shell-command--message)... | 
| 19380 |  20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61    6d 62 64 61 20 28 66 6d 74 20 26 72 65 73 74 20  | .............(lambda.(fmt.&rest. | 
| 193a0 |  61 72 67 73 29 20 6e 69 6c 29 29 29 0a 20 20 20    20 20 20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d 63  | args).nil))).......(dwim-shell-c | 
| 193c0 |  6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d 61 72 6b 65 64    2d 66 69 6c 65 73 0a 20 20 20 20 20 20 20 22 41  | ommand-on-marked-files........"A | 
| 193e0 |  62 6f 72 74 20 72 65 63 6f 72 64 69 6e 67 20 6d    61 63 4f 53 20 77 69 6e 64 6f 77 2e 22 0a 20 20  | bort.recording.macOS.window."... | 
| 19400 |  20 20 20 20 20 22 6d 61 63 6f 73 72 65 63 20 2d    2d 61 62 6f 72 74 22 0a 20 20 20 20 20 20 20 3a  | ....."macosrec.--abort"........: | 
| 19420 |  73 69 6c 65 6e 74 2d 73 75 63 63 65 73 73 20 74    0a 20 20 20 20 20 20 20 3a 6e 6f 2d 70 72 6f 67  | silent-success.t........:no-prog | 
| 19440 |  72 65 73 73 20 74 0a 20 20 20 20 20 20 20 3a 75    74 69 6c 73 20 22 6d 61 63 6f 73 72 65 63 22 29  | ress.t........:utils."macosrec") | 
| 19460 |  29 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c    6f 61 64 0a 28 64 65 66 75 6e 20 64 77 69 6d 2d  | )))..;;;###autoload.(defun.dwim- | 
| 19480 |  73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 73 2d 6d    61 63 6f 73 2d 73 63 72 65 65 6e 73 68 6f 74 2d  | shell-commands-macos-screenshot- | 
| 194a0 |  77 69 6e 64 6f 77 20 28 29 0a 20 20 22 53 65 6c    65 63 74 20 61 6e 64 20 73 63 72 65 65 6e 73 68  | window.()..."Select.and.screensh | 
| 194c0 |  6f 74 20 6d 61 63 4f 53 20 77 69 6e 64 6f 77 2e    22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65  | ot.macOS.window."...(interactive | 
| 194e0 |  29 0a 20 20 3b 3b 20 53 69 6c 65 6e 63 65 20 65    63 68 6f 20 74 6f 20 61 76 6f 69 64 20 75 6e 72  | )...;;.Silence.echo.to.avoid.unr | 
| 19500 |  65 6c 61 74 65 64 20 6d 65 73 73 61 67 65 73 20    6d 61 6b 69 6e 67 20 69 6e 74 6f 20 73 63 72 65  | elated.messages.making.into.scre | 
| 19520 |  65 6e 73 68 6f 74 2e 0a 20 20 28 6c 65 74 20 28    28 77 69 6e 64 6f 77 20 28 64 77 69 6d 2d 73 68  | enshot....(let.((window.(dwim-sh | 
| 19540 |  65 6c 6c 2d 63 6f 6d 6d 61 6e 64 73 2d 2d 6d 61    63 6f 73 2d 73 65 6c 65 63 74 2d 77 69 6e 64 6f  | ell-commands--macos-select-windo | 
| 19560 |  77 29 29 0a 20 20 20 20 20 20 20 20 28 69 6e 68    69 62 69 74 2d 6d 65 73 73 61 67 65 20 74 29 29  | w)).........(inhibit-message.t)) | 
| 19580 |  0a 20 20 20 20 28 64 77 69 6d 2d 73 68 65 6c 6c    2d 63 6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d 61 72 6b  | .....(dwim-shell-command-on-mark | 
| 195a0 |  65 64 2d 66 69 6c 65 73 0a 20 20 20 20 20 22 53    74 61 72 74 20 72 65 63 6f 72 64 69 6e 67 20 61  | ed-files......"Start.recording.a | 
| 195c0 |  20 6d 61 63 4f 53 20 77 69 6e 64 6f 77 2e 22 0a    20 20 20 20 20 28 66 6f 72 6d 61 74 20 22 6d 61  | .macOS.window."......(format."ma | 
| 195e0 |  63 6f 73 72 65 63 20 2d 2d 73 63 72 65 65 6e 73    68 6f 74 20 25 73 22 20 28 63 64 72 20 77 69 6e  | cosrec.--screenshot.%s".(cdr.win | 
| 19600 |  64 6f 77 29 29 0a 20 20 20 20 20 3a 73 69 6c 65    6e 74 2d 73 75 63 63 65 73 73 20 74 0a 20 20 20  | dow))......:silent-success.t.... | 
| 19620 |  20 20 3a 6d 6f 6e 69 74 6f 72 2d 64 69 72 65 63    74 6f 72 79 20 22 7e 2f 53 63 72 65 65 6e 73 68  | ..:monitor-directory."~/Screensh | 
| 19640 |  6f 74 73 22 0a 20 20 20 20 20 3a 6e 6f 2d 70 72    6f 67 72 65 73 73 20 74 0a 20 20 20 20 20 3a 75  | ots"......:no-progress.t......:u | 
| 19660 |  74 69 6c 73 20 22 6d 61 63 6f 73 72 65 63 22 29    29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f  | tils."macosrec")))..;;;###autolo | 
| 19680 |  61 64 0a 28 64 65 66 75 6e 20 64 77 69 6d 2d 73    68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 73 2d 66 69  | ad.(defun.dwim-shell-commands-fi | 
| 196a0 |  6c 65 73 2d 63 6f 6d 62 69 6e 65 64 2d 73 69 7a    65 20 28 29 0a 20 20 22 47 65 74 20 66 69 6c 65  | les-combined-size.()..."Get.file | 
| 196c0 |  73 20 63 6f 6d 62 69 6e 65 64 20 66 69 6c 65 20    73 69 7a 65 2e 22 0a 20 20 28 69 6e 74 65 72 61  | s.combined.file.size."...(intera | 
| 196e0 |  63 74 69 76 65 29 0a 20 20 28 64 77 69 6d 2d 73    68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 6f 6e 2d  | ctive)...(dwim-shell-command-on- | 
| 19700 |  6d 61 72 6b 65 64 2d 66 69 6c 65 73 0a 20 20 20    22 47 65 74 20 66 69 6c 65 73 20 63 6f 6d 62 69  | marked-files...."Get.files.combi | 
| 19720 |  6e 65 64 20 66 69 6c 65 20 73 69 7a 65 22 0a 20    20 20 22 64 75 20 2d 63 73 68 20 27 3c 3c 2a 3e  | ned.file.size"...."du.-csh.'<<*> | 
| 19740 |  3e 27 22 0a 20 20 20 3a 75 74 69 6c 73 20 22 64    75 22 0a 20 20 20 3a 6f 6e 2d 63 6f 6d 70 6c 65  | >'"....:utils."du"....:on-comple | 
| 19760 |  74 69 6f 6e 20 28 6c 61 6d 62 64 61 20 28 62 75    66 66 65 72 20 5f 70 72 6f 63 65 73 73 29 0a 20  | tion.(lambda.(buffer._process).. | 
| 19780 |  20 20 20 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  | ...................(with-current | 
| 197a0 |  2d 62 75 66 66 65 72 20 62 75 66 66 65 72 0a 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | -buffer.buffer.................. | 
| 197c0 |  20 20 20 20 20 28 6d 65 73 73 61 67 65 20 22 54    6f 74 61 6c 20 73 69 7a 65 3a 20 25 73 22 0a 20  | .....(message."Total.size:.%s".. | 
| 197e0 |  20 20 20 20 20 20 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  | ..............................(p | 
| 19800 |  72 6f 67 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  | rogn............................ | 
| 19820 |  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 5c 5c 28 5e 5b  | ......(re-search-backward."\\(^[ | 
| 19840 |  20 30 2d 39 2e 2c 5d 2b 5b 41 2d 5a 61 2d 7a 5d    2b 5c 5c 29 2e 2a 74 6f 74 61 6c 24 22 29 0a 20  | .0-9.,]+[A-Za-z]+\\).*total$").. | 
| 19860 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ................................ | 
| 19880 |  28 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 20 20 20 20  | (match-string.1))))............. | 
| 198a0 |  20 20 20 20 20 20 20 20 28 6b 69 6c 6c 2d 62 75    66 66 65 72 20 62 75 66 66 65 72 29 29 29 29 0a  | ........(kill-buffer.buffer)))). | 
| 198c0 |  0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a    28 64 65 66 75 6e 20 64 77 69 6d 2d 73 68 65 6c  | .;;;###autoload.(defun.dwim-shel | 
| 198e0 |  6c 2d 63 6f 6d 6d 61 6e 64 73 2d 69 6d 61 67 65    2d 74 6f 2d 69 63 6e 73 20 28 29 0a 20 20 22 43  | l-commands-image-to-icns.()..."C | 
| 19900 |  6f 6e 76 65 72 74 20 70 6e 67 20 74 6f 20 69 63    6e 73 20 69 63 6f 6e 2e 22 0a 20 20 28 69 6e 74  | onvert.png.to.icns.icon."...(int | 
| 19920 |  65 72 61 63 74 69 76 65 29 0a 20 20 28 64 77 69    6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d  | eractive)...(dwim-shell-command- | 
| 19940 |  6f 6e 2d 6d 61 72 6b 65 64 2d 66 69 6c 65 73 0a    20 20 20 22 43 6f 6e 76 65 72 74 20 70 6e 67 20  | on-marked-files...."Convert.png. | 
| 19960 |  74 6f 20 69 63 6e 73 20 69 63 6f 6e 2e 22 0a 20    20 20 22 0a 20 20 20 20 23 20 42 61 73 65 64 20  | to.icns.icon."....".....#.Based. | 
| 19980 |  6f 6e 20 68 74 74 70 3a 2f 2f 73 74 61 63 6b 6f    76 65 72 66 6c 6f 77 2e 63 6f 6d 2f 71 75 65 73  | on.http://stackoverflow.com/ques | 
| 199a0 |  74 69 6f 6e 73 2f 31 32 33 30 36 32 32 33 2f 68    6f 77 2d 74 6f 2d 6d 61 6e 75 61 6c 6c 79 2d 63  | tions/12306223/how-to-manually-c | 
| 199c0 |  72 65 61 74 65 2d 69 63 6e 73 2d 66 69 6c 65 73    2d 75 73 69 6e 67 2d 69 63 6f 6e 75 74 69 6c 0a  | reate-icns-files-using-iconutil. | 
| 199e0 |  20 20 20 20 23 20 4e 6f 74 65 3a 20 70 6e 67 20    6d 75 73 74 20 62 65 20 31 30 32 34 78 31 30 32  | ....#.Note:.png.must.be.1024x102 | 
| 19a00 |  34 0a 20 20 20 20 6d 6b 64 69 72 20 27 3c 3c 66    6e 65 3e 3e 2e 69 63 6f 6e 73 65 74 27 0a 20 20  | 4.....mkdir.'<<fne>>.iconset'... | 
| 19a20 |  20 20 73 69 70 73 20 2d 7a 20 31 36 20 31 36 20    27 3c 3c 66 3e 3e 27 20 2d 2d 6f 75 74 20 27 3c  | ..sips.-z.16.16.'<<f>>'.--out.'< | 
| 19a40 |  3c 66 6e 65 3e 3e 2e 69 63 6f 6e 73 65 74 2f 69    63 6f 6e 5f 31 36 78 31 36 2e 70 6e 67 27 0a 20  | <fne>>.iconset/icon_16x16.png'.. | 
| 19a60 |  20 20 20 73 69 70 73 20 2d 7a 20 33 32 20 33 32    20 27 3c 3c 66 3e 3e 27 20 2d 2d 6f 75 74 20 27  | ...sips.-z.32.32.'<<f>>'.--out.' | 
| 19a80 |  3c 3c 66 6e 65 3e 3e 2e 69 63 6f 6e 73 65 74 2f    69 63 6f 6e 5f 31 36 78 31 36 40 32 78 2e 70 6e  | <<fne>>.iconset/icon_16x16@2x.pn | 
| 19aa0 |  67 27 0a 20 20 20 20 73 69 70 73 20 2d 7a 20 33    32 20 33 32 20 27 3c 3c 66 3e 3e 27 20 2d 2d 6f  | g'.....sips.-z.32.32.'<<f>>'.--o | 
| 19ac0 |  75 74 20 27 3c 3c 66 6e 65 3e 3e 2e 69 63 6f 6e    73 65 74 2f 69 63 6f 6e 5f 33 32 78 33 32 2e 70  | ut.'<<fne>>.iconset/icon_32x32.p | 
| 19ae0 |  6e 67 27 0a 20 20 20 20 73 69 70 73 20 2d 7a 20    36 34 20 36 34 20 27 3c 3c 66 3e 3e 27 20 2d 2d  | ng'.....sips.-z.64.64.'<<f>>'.-- | 
| 19b00 |  6f 75 74 20 27 3c 3c 66 6e 65 3e 3e 2e 69 63 6f    6e 73 65 74 2f 69 63 6f 6e 5f 33 32 78 33 32 40  | out.'<<fne>>.iconset/icon_32x32@ | 
| 19b20 |  32 78 2e 70 6e 67 27 0a 20 20 20 20 73 69 70 73    20 2d 7a 20 31 32 38 20 31 32 38 20 27 3c 3c 66  | 2x.png'.....sips.-z.128.128.'<<f | 
| 19b40 |  3e 3e 27 20 2d 2d 6f 75 74 20 27 3c 3c 66 6e 65    3e 3e 2e 69 63 6f 6e 73 65 74 2f 69 63 6f 6e 5f  | >>'.--out.'<<fne>>.iconset/icon_ | 
| 19b60 |  31 32 38 78 31 32 38 2e 70 6e 67 27 0a 20 20 20    20 73 69 70 73 20 2d 7a 20 32 35 36 20 32 35 36  | 128x128.png'.....sips.-z.256.256 | 
| 19b80 |  20 27 3c 3c 66 3e 3e 27 20 2d 2d 6f 75 74 20 27    3c 3c 66 6e 65 3e 3e 2e 69 63 6f 6e 73 65 74 2f  | .'<<f>>'.--out.'<<fne>>.iconset/ | 
| 19ba0 |  69 63 6f 6e 5f 31 32 38 78 31 32 38 40 32 78 2e    70 6e 67 27 0a 20 20 20 20 73 69 70 73 20 2d 7a  | icon_128x128@2x.png'.....sips.-z | 
| 19bc0 |  20 32 35 36 20 32 35 36 20 27 3c 3c 66 3e 3e 27    20 2d 2d 6f 75 74 20 27 3c 3c 66 6e 65 3e 3e 2e  | .256.256.'<<f>>'.--out.'<<fne>>. | 
| 19be0 |  69 63 6f 6e 73 65 74 2f 69 63 6f 6e 5f 32 35 36    78 32 35 36 40 32 78 2e 70 6e 67 27 0a 20 20 20  | iconset/icon_256x256@2x.png'.... | 
| 19c00 |  20 73 69 70 73 20 2d 7a 20 35 31 32 20 35 31 32    20 27 3c 3c 66 3e 3e 27 20 2d 2d 6f 75 74 20 27  | .sips.-z.512.512.'<<f>>'.--out.' | 
| 19c20 |  3c 3c 66 6e 65 3e 3e 2e 69 63 6f 6e 73 65 74 2f    69 63 6f 6e 5f 35 31 32 78 35 31 32 2e 70 6e 67  | <<fne>>.iconset/icon_512x512.png | 
| 19c40 |  27 0a 20 20 20 20 73 69 70 73 20 2d 7a 20 35 31    32 20 35 31 32 20 27 3c 3c 66 3e 3e 27 20 2d 2d  | '.....sips.-z.512.512.'<<f>>'.-- | 
| 19c60 |  6f 75 74 20 27 3c 3c 66 6e 65 3e 3e 2e 69 63 6f    6e 73 65 74 2f 69 63 6f 6e 5f 32 35 36 78 32 35  | out.'<<fne>>.iconset/icon_256x25 | 
| 19c80 |  36 40 32 78 2e 70 6e 67 27 0a 20 20 20 20 73 69    70 73 20 2d 7a 20 31 30 32 34 20 31 30 32 34 20  | 6@2x.png'.....sips.-z.1024.1024. | 
| 19ca0 |  27 3c 3c 66 3e 3e 27 20 2d 2d 6f 75 74 20 27 3c    3c 66 6e 65 3e 3e 2e 69 63 6f 6e 73 65 74 2f 69  | '<<f>>'.--out.'<<fne>>.iconset/i | 
| 19cc0 |  63 6f 6e 5f 35 31 32 78 35 31 32 40 32 78 2e 70    6e 67 27 0a 20 20 20 20 69 63 6f 6e 75 74 69 6c  | con_512x512@2x.png'.....iconutil | 
| 19ce0 |  20 2d 63 20 69 63 6e 73 20 27 3c 3c 66 6e 65 3e    3e 2e 69 63 6f 6e 73 65 74 27 22 0a 20 20 20 3a  | .-c.icns.'<<fne>>.iconset'"....: | 
| 19d00 |  75 74 69 6c 73 20 27 28 22 73 69 70 73 22 20 22    69 63 6f 6e 75 74 69 6c 22 29 0a 20 20 20 3a 65  | utils.'("sips"."iconutil")....:e | 
| 19d20 |  78 74 65 6e 73 69 6f 6e 73 20 22 70 6e 67 22 29    29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61  | xtensions."png"))..;;;###autoloa | 
| 19d40 |  64 0a 28 64 65 66 75 6e 20 64 77 69 6d 2d 73 68    65 6c 6c 2d 63 6f 6d 6d 61 6e 64 73 2d 69 6d 61  | d.(defun.dwim-shell-commands-ima | 
| 19d60 |  67 65 2d 61 64 64 2d 64 72 6f 70 2d 73 68 61 64    6f 77 20 28 29 0a 20 20 22 41 64 64 20 61 20 64  | ge-add-drop-shadow.()..."Add.a.d | 
| 19d80 |  72 6f 70 20 73 68 61 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  | rop.shadow."...(interactive)...( | 
| 19da0 |  64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61    6e 64 2d 6f 6e 2d 6d 61 72 6b 65 64 2d 66 69 6c  | dwim-shell-command-on-marked-fil | 
| 19dc0 |  65 73 0a 20 20 20 22 41 64 64 20 61 20 64 72 6f    70 20 73 68 61 64 6f 77 2e 22 0a 20 20 20 22 63  | es...."Add.a.drop.shadow."...."c | 
| 19de0 |  6f 6e 76 65 72 74 20 3c 3c 66 3e 3e 20 2d 62 6f    72 64 65 72 63 6f 6c 6f 72 20 77 68 69 74 65 20  | onvert.<<f>>.-bordercolor.white. | 
| 19e00 |  2d 62 6f 72 64 65 72 20 31 33 20 5c 5c 28 20 2b    63 6c 6f 6e 65 20 2d 62 61 63 6b 67 72 6f 75 6e  | -border.13.\\(.+clone.-backgroun | 
| 19e20 |  64 20 62 6c 61 63 6b 20 2d 73 68 61 64 6f 77 20    38 30 78 33 2b 32 2b 32 20 5c 5c 29 20 2b 73 77  | d.black.-shadow.80x3+2+2.\\).+sw | 
| 19e40 |  61 70 20 2d 62 61 63 6b 67 72 6f 75 6e 64 20 77    68 69 74 65 20 2d 6c 61 79 65 72 73 20 6d 65 72  | ap.-background.white.-layers.mer | 
| 19e60 |  67 65 20 2b 72 65 70 61 67 65 20 3c 3c 66 6e 65    3e 3e 2d 73 68 61 64 6f 77 2e 3c 3c 65 3e 3e 22  | ge.+repage.<<fne>>-shadow.<<e>>" | 
| 19e80 |  0a 20 20 20 3a 75 74 69 6c 73 20 22 63 6f 6e 76    65 72 74 22 29 29 0a 0a 3b 3b 3b 23 23 23 61 75  | ....:utils."convert"))..;;;###au | 
| 19ea0 |  74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 64 77    69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64  | toload.(defun.dwim-shell-command | 
| 19ec0 |  73 2d 69 6d 61 67 65 2d 74 72 69 6d 2d 62 6f 72    64 65 72 73 20 28 29 0a 20 20 22 54 72 69 6d 20  | s-image-trim-borders.()..."Trim. | 
| 19ee0 |  69 6d 61 67 65 28 73 29 20 62 6f 72 64 65 72 20    28 75 73 65 66 75 6c 20 66 6f 72 20 76 69 64 65  | image(s).border.(useful.for.vide | 
| 19f00 |  6f 20 73 63 72 65 65 6e 73 68 6f 74 73 29 2e 22    0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 29  | o.screenshots)."...(interactive) | 
| 19f20 |  0a 20 20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d 63    6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d 61 72 6b 65 64  | ...(dwim-shell-command-on-marked | 
| 19f40 |  2d 66 69 6c 65 73 0a 20 20 20 22 54 72 69 6d 20    69 6d 61 67 65 20 62 6f 72 64 65 72 22 0a 20 20  | -files...."Trim.image.border"... | 
| 19f60 |  20 22 6d 61 67 69 63 6b 20 63 6f 6e 76 65 72 74    20 2d 66 75 7a 7a 20 33 25 20 2d 64 65 66 69 6e  | ."magick.convert.-fuzz.3%.-defin | 
| 19f80 |  65 20 74 72 69 6d 3a 70 65 72 63 65 6e 74 2d 62    61 63 6b 67 72 6f 75 6e 64 3d 30 25 20 2d 74 72  | e.trim:percent-background=0%.-tr | 
| 19fa0 |  69 6d 20 2b 72 65 70 61 67 65 20 27 3c 3c 66 3e    3e 27 20 27 3c 3c 66 6e 65 3e 3e 5f 74 72 69 6d  | im.+repage.'<<f>>'.'<<fne>>_trim | 
| 19fc0 |  6d 65 64 2e 3c 3c 65 3e 3e 27 22 0a 20 20 20 3a    75 74 69 6c 73 20 22 6d 61 67 69 63 6b 22 29 29  | med.<<e>>'"....:utils."magick")) | 
| 19fe0 |  0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64    0a 28 64 65 66 75 6e 20 64 77 69 6d 2d 73 68 65  | ..;;;###autoload.(defun.dwim-she | 
| 1a000 |  6c 6c 2d 63 6f 6d 6d 61 6e 64 73 2d 67 69 74 2d    63 6c 6f 6e 65 2d 63 6c 69 70 62 6f 61 72 64 2d  | ll-commands-git-clone-clipboard- | 
| 1a020 |  75 72 6c 2d 74 6f 2d 64 6f 77 6e 6c 6f 61 64 73    20 28 29 0a 20 20 22 43 6c 6f 6e 65 20 67 69 74  | url-to-downloads.()..."Clone.git | 
| 1a040 |  20 55 52 4c 20 69 6e 20 63 6c 69 70 62 6f 61 72    64 20 74 6f 20 5c 22 7e 2f 44 6f 77 6e 6c 6f 61  | .URL.in.clipboard.to.\"~/Downloa | 
| 1a060 |  64 73 2f 5c 22 2e 22 0a 20 20 28 69 6e 74 65 72    61 63 74 69 76 65 29 0a 20 20 28 63 6c 2d 61 73  | ds/\"."...(interactive)...(cl-as | 
| 1a080 |  73 65 72 74 20 28 6f 72 20 28 73 74 72 69 6e 67    2d 6d 61 74 63 68 2d 70 20 22 5e 5c 5c 28 68 74  | sert.(or.(string-match-p."^\\(ht | 
| 1a0a0 |  74 70 5c 5c 7c 68 74 74 70 73 5c 5c 7c 73 73 68    5c 5c 29 3a 2f 2f 22 20 28 63 75 72 72 65 6e 74  | tp\\|https\\|ssh\\)://".(current | 
| 1a0c0 |  2d 6b 69 6c 6c 20 30 29 29 0a 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 73 74 72 69  | -kill.0))..................(stri | 
| 1a0e0 |  6e 67 2d 6d 61 74 63 68 2d 70 20 22 5e 67 69 74    40 22 20 28 63 75 72 72 65 6e 74 2d 6b 69 6c 6c  | ng-match-p."^git@".(current-kill | 
| 1a100 |  20 30 29 29 29 20 6e 69 6c 20 22 4e 6f 20 55 52    4c 20 69 6e 20 63 6c 69 70 62 6f 61 72 64 22 29  | .0))).nil."No.URL.in.clipboard") | 
| 1a120 |  0a 20 20 28 6c 65 74 2a 20 28 28 75 72 6c 20 28    63 75 72 72 65 6e 74 2d 6b 69 6c 6c 20 30 29 29  | ...(let*.((url.(current-kill.0)) | 
| 1a140 |  0a 20 20 20 20 20 20 20 20 20 28 64 6f 77 6e 6c    6f 61 64 2d 64 69 72 20 28 65 78 70 61 6e 64 2d  | ..........(download-dir.(expand- | 
| 1a160 |  66 69 6c 65 2d 6e 61 6d 65 20 22 7e 2f 44 6f 77    6e 6c 6f 61 64 73 2f 22 29 29 0a 20 20 20 20 20  | file-name."~/Downloads/"))...... | 
| 1a180 |  20 20 20 20 28 70 72 6f 6a 65 63 74 2d 64 69 72    20 28 63 6f 6e 63 61 74 20 64 6f 77 6e 6c 6f 61  | ....(project-dir.(concat.downloa | 
| 1a1a0 |  64 2d 64 69 72 20 28 66 69 6c 65 2d 6e 61 6d 65    2d 62 61 73 65 20 75 72 6c 29 29 29 0a 20 20 20  | d-dir.(file-name-base.url))).... | 
| 1a1c0 |  20 20 20 20 20 20 28 64 65 66 61 75 6c 74 2d 64    69 72 65 63 74 6f 72 79 20 64 6f 77 6e 6c 6f 61  | ......(default-directory.downloa | 
| 1a1e0 |  64 2d 64 69 72 29 29 0a 20 20 20 20 28 77 68 65    6e 20 28 6f 72 20 28 6e 6f 74 20 28 66 69 6c 65  | d-dir)).....(when.(or.(not.(file | 
| 1a200 |  2d 65 78 69 73 74 73 2d 70 20 70 72 6f 6a 65 63    74 2d 64 69 72 29 29 0a 20 20 20 20 20 20 20 20  | -exists-p.project-dir))......... | 
| 1a220 |  20 20 20 20 20 20 28 77 68 65 6e 20 28 79 2d 6f    72 2d 6e 2d 70 20 28 66 6f 72 6d 61 74 20 22 25  | ......(when.(y-or-n-p.(format."% | 
| 1a240 |  73 20 65 78 69 73 74 73 2e 20 20 64 65 6c 65 74    65 3f 22 20 28 66 69 6c 65 2d 6e 61 6d 65 2d 62  | s.exists...delete?".(file-name-b | 
| 1a260 |  61 73 65 20 75 72 6c 29 29 29 0a 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 20 28 64 65 6c 65  | ase.url))).................(dele | 
| 1a280 |  74 65 2d 64 69 72 65 63 74 6f 72 79 20 70 72 6f    6a 65 63 74 2d 64 69 72 20 74 29 0a 20 20 20 20  | te-directory.project-dir.t)..... | 
| 1a2a0 |  20 20 20 20 20 20 20 20 20 20 20 20 74 29 29 0a    20 20 20 20 20 20 28 64 77 69 6d 2d 73 68 65 6c  | ............t)).......(dwim-shel | 
| 1a2c0 |  6c 2d 63 6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d 61 72    6b 65 64 2d 66 69 6c 65 73 0a 20 20 20 20 20 20  | l-command-on-marked-files....... | 
| 1a2e0 |  20 28 66 6f 72 6d 61 74 20 22 43 6c 6f 6e 65 20    25 73 22 20 28 66 69 6c 65 2d 6e 61 6d 65 2d 62  | .(format."Clone.%s".(file-name-b | 
| 1a300 |  61 73 65 20 75 72 6c 29 29 0a 20 20 20 20 20 20    20 28 66 6f 72 6d 61 74 20 22 67 69 74 20 63 6c  | ase.url))........(format."git.cl | 
| 1a320 |  6f 6e 65 20 25 73 22 20 75 72 6c 29 0a 20 20 20    20 20 20 20 3a 75 74 69 6c 73 20 22 67 69 74 22  | one.%s".url)........:utils."git" | 
| 1a340 |  0a 20 20 20 20 20 20 20 3a 6f 6e 2d 63 6f 6d 70    6c 65 74 69 6f 6e 20 28 6c 61 6d 62 64 61 20 28  | ........:on-completion.(lambda.( | 
| 1a360 |  62 75 66 66 65 72 20 5f 70 72 6f 63 65 73 73 29    0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | buffer._process)................ | 
| 1a380 |  20 20 20 20 20 20 20 20 20 28 6b 69 6c 6c 2d 62    75 66 66 65 72 20 62 75 66 66 65 72 29 0a 20 20  | .........(kill-buffer.buffer)... | 
| 1a3a0 |  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 72 65 64 20 70 72 6f  | ......................(dired.pro | 
| 1a3c0 |  6a 65 63 74 2d 64 69 72 29 29 29 29 29 29 0a 0a    3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28  | ject-dir))))))..;;;###autoload.( | 
| 1a3e0 |  64 65 66 75 6e 20 64 77 69 6d 2d 73 68 65 6c 6c    2d 63 6f 6d 6d 61 6e 64 73 2d 68 74 74 70 2d 73  | defun.dwim-shell-commands-http-s | 
| 1a400 |  65 72 76 65 2d 64 69 72 20 28 29 0a 20 20 22 48    54 54 50 20 73 65 72 76 65 20 63 75 72 72 65 6e  | erve-dir.()..."HTTP.serve.curren | 
| 1a420 |  74 20 64 69 72 65 63 74 6f 72 79 2e 22 0a 20 20    28 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20  | t.directory."...(interactive)... | 
| 1a440 |  28 63 6f 6e 64 20 28 28 65 78 65 63 75 74 61 62    6c 65 2d 66 69 6e 64 20 22 70 79 74 68 6f 6e 33  | (cond.((executable-find."python3 | 
| 1a460 |  22 29 0a 20 20 20 20 20 20 20 20 20 28 64 77 69    6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d  | ")..........(dwim-shell-command- | 
| 1a480 |  6f 6e 2d 6d 61 72 6b 65 64 2d 66 69 6c 65 73 0a    20 20 20 20 20 20 20 20 20 20 22 48 54 54 50 20  | on-marked-files..........."HTTP. | 
| 1a4a0 |  73 65 72 76 65 20 63 75 72 72 65 6e 74 20 64 69    72 22 0a 20 20 20 20 20 20 20 20 20 20 22 70 79  | serve.current.dir"..........."py | 
| 1a4c0 |  74 68 6f 6e 33 20 2d 6d 20 68 74 74 70 2e 73 65    72 76 65 72 22 0a 20 20 20 20 20 20 20 20 20 20  | thon3.-m.http.server"........... | 
| 1a4e0 |  3a 75 74 69 6c 73 20 22 70 79 74 68 6f 6e 33 22    0a 20 20 20 20 20 20 20 20 20 20 3a 66 6f 63 75  | :utils."python3"...........:focu | 
| 1a500 |  73 2d 6e 6f 77 20 74 0a 20 20 20 20 20 20 20 20    20 20 3a 6e 6f 2d 70 72 6f 67 72 65 73 73 20 74  | s-now.t...........:no-progress.t | 
| 1a520 |  29 29 0a 20 20 20 20 20 20 20 20 28 28 65 78 65    63 75 74 61 62 6c 65 2d 66 69 6e 64 20 22 70 79  | )).........((executable-find."py | 
| 1a540 |  74 68 6f 6e 32 22 29 0a 20 20 20 20 20 20 20 20    20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d  | thon2")..........(dwim-shell-com | 
| 1a560 |  6d 61 6e 64 2d 6f 6e 2d 6d 61 72 6b 65 64 2d 66    69 6c 65 73 0a 20 20 20 20 20 20 20 20 20 20 22  | mand-on-marked-files..........." | 
| 1a580 |  48 54 54 50 20 73 65 72 76 65 20 63 75 72 72 65    6e 74 20 64 69 72 22 0a 20 20 20 20 20 20 20 20  | HTTP.serve.current.dir"......... | 
| 1a5a0 |  20 20 22 70 79 74 68 6f 6e 32 20 2d 6d 20 53 69    6d 70 6c 65 48 54 54 50 53 65 72 76 65 72 22 0a  | .."python2.-m.SimpleHTTPServer". | 
| 1a5c0 |  20 20 20 20 20 20 20 20 20 20 3a 75 74 69 6c 73    20 22 70 79 74 68 6f 6e 32 22 0a 20 20 20 20 20  | ..........:utils."python2"...... | 
| 1a5e0 |  20 20 20 20 20 3a 66 6f 63 75 73 2d 6e 6f 77 20    74 0a 20 20 20 20 20 20 20 20 20 20 3a 6e 6f 2d  | .....:focus-now.t...........:no- | 
| 1a600 |  70 72 6f 67 72 65 73 73 20 74 29 29 0a 20 20 20    20 20 20 20 20 28 28 65 78 65 63 75 74 61 62 6c  | progress.t)).........((executabl | 
| 1a620 |  65 2d 66 69 6e 64 20 22 70 79 74 68 6f 6e 22 29    0a 20 20 20 20 20 20 20 20 20 28 64 77 69 6d 2d  | e-find."python")..........(dwim- | 
| 1a640 |  73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 6f 6e    2d 6d 61 72 6b 65 64 2d 66 69 6c 65 73 0a 20 20  | shell-command-on-marked-files... | 
| 1a660 |  20 20 20 20 20 20 20 20 22 48 54 54 50 20 73 65    72 76 65 20 63 75 72 72 65 6e 74 20 64 69 72 22  | ........"HTTP.serve.current.dir" | 
| 1a680 |  0a 20 20 20 20 20 20 20 20 20 20 22 70 79 74 68    6f 6e 20 2d 6d 20 53 69 6d 70 6c 65 48 54 54 50  | ..........."python.-m.SimpleHTTP | 
| 1a6a0 |  53 65 72 76 65 72 22 0a 20 20 20 20 20 20 20 20    20 20 3a 75 74 69 6c 73 20 22 70 79 74 68 6f 6e  | Server"...........:utils."python | 
| 1a6c0 |  22 0a 20 20 20 20 20 20 20 20 20 20 3a 66 6f 63    75 73 2d 6e 6f 77 20 74 0a 20 20 20 20 20 20 20  | "...........:focus-now.t........ | 
| 1a6e0 |  20 20 20 3a 6e 6f 2d 70 72 6f 67 72 65 73 73 20    74 29 29 0a 20 20 20 20 20 20 20 20 28 74 0a 20  | ...:no-progress.t)).........(t.. | 
| 1a700 |  20 20 20 20 20 20 20 20 28 65 72 72 6f 72 20 22    4e 6f 20 70 79 74 68 6f 6e 20 66 6f 75 6e 64 22  | ........(error."No.python.found" | 
| 1a720 |  29 29 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f    6c 6f 61 64 0a 28 64 65 66 75 6e 20 64 77 69 6d  | ))))..;;;###autoload.(defun.dwim | 
| 1a740 |  2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 73 2d    67 69 74 2d 63 6c 6f 6e 65 2d 63 6c 69 70 62 6f  | -shell-commands-git-clone-clipbo | 
| 1a760 |  61 72 64 2d 75 72 6c 20 28 29 0a 20 20 22 43 6c    6f 6e 65 20 67 69 74 20 55 52 4c 20 69 6e 20 63  | ard-url.()..."Clone.git.URL.in.c | 
| 1a780 |  6c 69 70 62 6f 61 72 64 20 74 6f 20 60 64 65 66    61 75 6c 74 2d 64 69 72 65 63 74 6f 72 79 27 2e  | lipboard.to.`default-directory'. | 
| 1a7a0 |  22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65    29 0a 20 20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d  | "...(interactive)...(dwim-shell- | 
| 1a7c0 |  63 6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d 61 72 6b 65    64 2d 66 69 6c 65 73 0a 20 20 20 28 66 6f 72 6d  | command-on-marked-files....(form | 
| 1a7e0 |  61 74 20 22 43 6c 6f 6e 65 20 25 73 22 20 28 66    69 6c 65 2d 6e 61 6d 65 2d 62 61 73 65 20 28 63  | at."Clone.%s".(file-name-base.(c | 
| 1a800 |  75 72 72 65 6e 74 2d 6b 69 6c 6c 20 30 29 29 29    0a 20 20 20 22 67 69 74 20 63 6c 6f 6e 65 20 3c  | urrent-kill.0)))...."git.clone.< | 
| 1a820 |  3c 63 62 3e 3e 22 0a 20 20 20 3a 75 74 69 6c 73    20 22 67 69 74 22 29 29 0a 0a 3b 3b 3b 23 23 23  | <cb>>"....:utils."git"))..;;;### | 
| 1a840 |  61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20    64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61  | autoload.(defun.dwim-shell-comma | 
| 1a860 |  6e 64 73 2d 70 61 73 73 2d 67 69 74 2d 70 75 6c    6c 20 28 29 0a 20 20 22 50 61 73 73 20 67 69 74  | nds-pass-git-pull.()..."Pass.git | 
| 1a880 |  20 70 75 6c 6c 2e 22 0a 20 20 28 69 6e 74 65 72    61 63 74 69 76 65 29 0a 20 20 28 64 77 69 6d 2d  | .pull."...(interactive)...(dwim- | 
| 1a8a0 |  73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 6f 6e    2d 6d 61 72 6b 65 64 2d 66 69 6c 65 73 0a 20 20  | shell-command-on-marked-files... | 
| 1a8c0 |  20 22 70 61 73 73 20 67 69 74 20 70 75 6c 6c 22    0a 20 20 20 22 70 61 73 73 20 67 69 74 20 70 75  | ."pass.git.pull"...."pass.git.pu | 
| 1a8e0 |  6c 6c 22 0a 20 20 20 3a 75 74 69 6c 73 20 27 28    22 70 61 73 73 22 20 22 67 69 74 22 29 0a 20 20  | ll"....:utils.'("pass"."git")... | 
| 1a900 |  20 3a 73 69 6c 65 6e 74 2d 73 75 63 63 65 73 73    20 74 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f  | .:silent-success.t))..;;;###auto | 
| 1a920 |  6c 6f 61 64 0a 28 64 65 66 75 6e 20 64 77 69 6d    2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 73 2d  | load.(defun.dwim-shell-commands- | 
| 1a940 |  67 69 74 2d 6c 69 73 74 2d 75 6e 74 72 61 63 6b    65 64 2d 66 69 6c 65 73 20 28 29 0a 20 20 22 4c  | git-list-untracked-files.()..."L | 
| 1a960 |  69 73 74 20 75 6e 74 72 61 63 6b 65 64 20 67 69    74 20 66 69 6c 65 73 20 69 6e 20 60 64 65 66 61  | ist.untracked.git.files.in.`defa | 
| 1a980 |  75 6c 74 2d 64 69 72 65 63 74 6f 72 79 27 2e 22    0a 20 20 28 69 6e 74 65 72 61 63 74 69 76 65 29  | ult-directory'."...(interactive) | 
| 1a9a0 |  0a 20 20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d 63    6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d 61 72 6b 65 64  | ...(dwim-shell-command-on-marked | 
| 1a9c0 |  2d 66 69 6c 65 73 0a 20 20 20 22 4c 69 73 74 20    75 6e 74 72 61 63 6b 65 64 22 0a 20 20 20 22 67  | -files...."List.untracked"...."g | 
| 1a9e0 |  69 74 20 6c 73 2d 66 69 6c 65 73 20 2d 2d 6f 74    68 65 72 73 20 2e 22 0a 20 20 20 3a 75 74 69 6c  | it.ls-files.--others.."....:util | 
| 1aa00 |  73 20 22 67 69 74 22 0a 20 20 20 3a 66 6f 63 75    73 2d 6e 6f 77 20 74 29 29 0a 0a 3b 3b 3b 23 23  | s."git"....:focus-now.t))..;;;## | 
| 1aa20 |  23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e    20 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d  | #autoload.(defun.dwim-shell-comm | 
| 1aa40 |  61 6e 64 73 2d 67 69 74 2d 64 65 6c 65 74 65 2d    75 6e 74 72 61 63 6b 65 64 2d 66 69 6c 65 73 20  | ands-git-delete-untracked-files. | 
| 1aa60 |  28 29 0a 20 20 22 44 65 6c 65 74 65 20 75 6e 74    72 61 63 6b 65 64 20 67 69 74 20 66 69 6c 65 73  | ()..."Delete.untracked.git.files | 
| 1aa80 |  20 69 6e 20 60 64 65 66 61 75 6c 74 2d 64 69 72    65 63 74 6f 72 79 27 2e 22 0a 20 20 28 69 6e 74  | .in.`default-directory'."...(int | 
| 1aaa0 |  65 72 61 63 74 69 76 65 29 0a 20 20 28 77 68 65    6e 20 28 79 2d 6f 72 2d 6e 2d 70 20 28 66 6f 72  | eractive)...(when.(y-or-n-p.(for | 
| 1aac0 |  6d 61 74 20 22 43 6c 65 61 6e 20 27 25 73 27 3f    20 5c 6e 5c 6e 25 73 5c 6e 2e 2e 2e 5c 6e 5c 6e  | mat."Clean.'%s'?.\n\n%s\n...\n\n | 
| 1aae0 |  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 64 65 66 61  | "...........................defa | 
| 1ab00 |  75 6c 74 2d 64 69 72 65 63 74 6f 72 79 0a 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ult-directory................... | 
| 1ab20 |  20 20 20 20 20 20 20 20 28 73 74 72 69 6e 67 2d    6a 6f 69 6e 0a 20 20 20 20 20 20 20 20 20 20 20  | ........(string-join............ | 
| 1ab40 |  20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20    28 73 65 71 2d 74 61 6b 65 20 28 70 72 6f 63 65  | ................(seq-take.(proce | 
| 1ab60 |  73 73 2d 6c 69 6e 65 73 20 22 67 69 74 22 20 22    6c 73 2d 66 69 6c 65 73 22 20 22 2d 2d 6f 74 68  | ss-lines."git"."ls-files"."--oth | 
| 1ab80 |  65 72 73 22 20 22 2e 22 29 20 33 29 0a 20 20 20    20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20  | ers".".").3).................... | 
| 1aba0 |  20 20 20 20 20 20 20 20 22 5c 6e 22 29 29 29 0a    20 20 20 20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d  | ........"\n"))).....(dwim-shell- | 
| 1abc0 |  63 6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d 61 72 6b 65    64 2d 66 69 6c 65 73 0a 20 20 20 20 20 22 43 6c  | command-on-marked-files......"Cl | 
| 1abe0 |  65 61 6e 20 75 6e 74 72 61 63 6b 65 64 22 0a 20    20 20 20 20 22 67 69 74 20 63 6c 65 61 6e 20 2d  | ean.untracked"......"git.clean.- | 
| 1ac00 |  66 20 2e 22 0a 20 20 20 20 20 3a 75 74 69 6c 73    20 22 67 69 74 22 0a 20 20 20 20 20 3a 73 69 6c  | f.."......:utils."git"......:sil | 
| 1ac20 |  65 6e 74 2d 73 75 63 63 65 73 73 20 74 29 29 29    0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64  | ent-success.t)))..;;;###autoload | 
| 1ac40 |  0a 28 64 65 66 75 6e 20 64 77 69 6d 2d 73 68 65    6c 6c 2d 63 6f 6d 6d 61 6e 64 73 2d 65 78 74 65  | .(defun.dwim-shell-commands-exte | 
| 1ac60 |  72 6e 61 6c 2d 69 70 20 28 29 0a 20 20 22 43 6f    70 79 20 65 78 74 65 72 6e 61 6c 20 49 50 20 74  | rnal-ip.()..."Copy.external.IP.t | 
| 1ac80 |  6f 20 6b 69 6c 6c 20 72 69 6e 67 2e 22 0a 20 20    28 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20 20  | o.kill.ring."...(interactive)... | 
| 1aca0 |  28 6c 65 74 20 28 28 69 70 20 28 63 61 72 20 28    6c 61 73 74 20 28 70 72 6f 63 65 73 73 2d 6c 69  | (let.((ip.(car.(last.(process-li | 
| 1acc0 |  6e 65 73 20 22 63 75 72 6c 22 20 22 69 66 63 6f    6e 66 69 67 2e 6d 65 22 29 29 29 29 29 0a 20 20  | nes."curl"."ifconfig.me")))))... | 
| 1ace0 |  20 20 28 6b 69 6c 6c 2d 6e 65 77 20 69 70 29 0a    20 20 20 20 28 6d 65 73 73 61 67 65 20 22 43 6f  | ..(kill-new.ip).....(message."Co | 
| 1ad00 |  70 69 65 64 20 25 73 22 20 69 70 29 29 29 0a 0a    3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28  | pied.%s".ip)))..;;;###autoload.( | 
| 1ad20 |  64 65 66 75 6e 20 64 77 69 6d 2d 73 68 65 6c 6c    2d 63 6f 6d 6d 61 6e 64 73 2d 6d 61 63 6f 73 2d  | defun.dwim-shell-commands-macos- | 
| 1ad40 |  69 6e 73 74 61 6c 6c 2d 69 70 68 6f 6e 65 2d 64    65 76 69 63 65 2d 69 70 61 20 28 29 0a 20 20 22  | install-iphone-device-ipa.()..." | 
| 1ad60 |  49 6e 73 74 61 6c 6c 20 69 50 68 6f 6e 65 20 64    65 76 69 63 65 20 2e 69 70 61 2e 0a 4e 65 65 64  | Install.iPhone.device..ipa..Need | 
| 1ad80 |  73 20 69 64 65 76 69 63 65 69 6e 73 74 61 6c 6c    65 72 20 61 6e 64 20 6c 69 62 6d 6f 62 69 6c 65  | s.ideviceinstaller.and.libmobile | 
| 1ada0 |  64 65 76 69 63 65 20 69 6e 73 74 61 6c 6c 65 64    2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74 69 76  | device.installed."...(interactiv | 
| 1adc0 |  65 29 0a 20 20 28 64 77 69 6d 2d 73 68 65 6c 6c    2d 63 6f 6d 6d 61 6e 64 2d 6f 6e 2d 6d 61 72 6b  | e)...(dwim-shell-command-on-mark | 
| 1ade0 |  65 64 2d 66 69 6c 65 73 0a 20 20 20 22 49 6e 73    74 61 6c 6c 20 2e 69 70 61 22 0a 20 20 20 22 69  | ed-files...."Install..ipa"...."i | 
| 1ae00 |  64 65 76 69 63 65 69 6e 73 74 61 6c 6c 65 72 20    2d 69 20 27 3c 3c 66 3e 3e 27 22 0a 20 20 20 3a  | deviceinstaller.-i.'<<f>>'"....: | 
| 1ae20 |  75 74 69 6c 73 20 22 69 64 65 76 69 63 65 69 6e    73 74 61 6c 6c 65 72 22 29 29 0a 0a 3b 3b 3b 23  | utils."ideviceinstaller"))..;;;# | 
| 1ae40 |  23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75    6e 20 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d  | ##autoload.(defun.dwim-shell-com | 
| 1ae60 |  6d 61 6e 64 73 2d 63 6f 70 79 2d 74 6f 2d 64 6f    77 6e 6c 6f 61 64 73 20 28 29 0a 20 20 22 43 6f  | mands-copy-to-downloads.()..."Co | 
| 1ae80 |  70 79 20 66 69 6c 65 20 74 6f 20 7e 2f 44 6f 77    6e 6c 6f 61 64 73 2e 22 0a 20 20 28 69 6e 74 65  | py.file.to.~/Downloads."...(inte | 
| 1aea0 |  72 61 63 74 69 76 65 29 0a 20 20 28 64 77 69 6d    2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 66  | ractive)...(dwim-shell-command-f | 
| 1aec0 |  6f 72 65 61 63 68 0a 20 20 20 28 6c 61 6d 62 64    61 20 28 66 69 6c 65 29 0a 20 20 20 20 20 28 63  | oreach....(lambda.(file)......(c | 
| 1aee0 |  6f 70 79 2d 66 69 6c 65 20 66 69 6c 65 20 22 7e    2f 44 6f 77 6e 6c 6f 61 64 73 2f 22 20 31 29 0a  | opy-file.file."~/Downloads/".1). | 
| 1af00 |  20 20 20 20 20 28 66 69 6c 65 2d 6e 61 6d 65 2d    63 6f 6e 63 61 74 20 22 7e 2f 44 6f 77 6e 6c 6f  | .....(file-name-concat."~/Downlo | 
| 1af20 |  61 64 73 22 20 28 66 69 6c 65 2d 6e 61 6d 65 2d    6e 6f 6e 64 69 72 65 63 74 6f 72 79 20 66 69 6c  | ads".(file-name-nondirectory.fil | 
| 1af40 |  65 29 29 29 0a 20 20 20 3a 6d 6f 6e 69 74 6f 72    2d 64 69 72 65 63 74 6f 72 79 20 22 7e 2f 44 6f  | e)))....:monitor-directory."~/Do | 
| 1af60 |  77 6e 6c 6f 61 64 73 22 29 29 0a 0a 3b 3b 3b 23    23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75  | wnloads"))..;;;###autoload.(defu | 
| 1af80 |  6e 20 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d    6d 61 6e 64 73 2d 64 75 70 6c 69 63 61 74 65 20  | n.dwim-shell-commands-duplicate. | 
| 1afa0 |  28 29 0a 20 20 22 44 75 70 6c 69 63 61 74 65 20    66 69 6c 65 2e 22 0a 20 20 28 69 6e 74 65 72 61  | ()..."Duplicate.file."...(intera | 
| 1afc0 |  63 74 69 76 65 29 0a 20 20 28 64 77 69 6d 2d 73    68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 6f 6e 2d  | ctive)...(dwim-shell-command-on- | 
| 1afe0 |  6d 61 72 6b 65 64 2d 66 69 6c 65 73 0a 20 20 20    22 44 75 70 6c 69 63 61 74 65 20 66 69 6c 65 28  | marked-files...."Duplicate.file( | 
| 1b000 |  73 29 2e 22 0a 20 20 20 22 63 70 20 2d 52 20 27    3c 3c 66 3e 3e 27 20 27 3c 3c 66 28 75 29 3e 3e  | s)."...."cp.-R.'<<f>>'.'<<f(u)>> | 
| 1b020 |  27 22 0a 20 20 20 3a 75 74 69 6c 73 20 22 63 70    22 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c  | '"....:utils."cp"))..;;;###autol | 
| 1b040 |  6f 61 64 0a 28 64 65 66 75 6e 20 64 77 69 6d 2d    73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 73 2d 72  | oad.(defun.dwim-shell-commands-r | 
| 1b060 |  65 6e 61 6d 65 2d 61 6c 6c 20 28 29 0a 20 20 22    52 65 6e 61 6d 65 20 61 6c 6c 20 6d 61 72 6b 65  | ename-all.()..."Rename.all.marke | 
| 1b080 |  64 20 66 69 6c 65 28 73 29 2e 22 0a 20 20 28 69    6e 74 65 72 61 63 74 69 76 65 29 0a 20 20 28 64  | d.file(s)."...(interactive)...(d | 
| 1b0a0 |  77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e    64 2d 6f 6e 2d 6d 61 72 6b 65 64 2d 66 69 6c 65  | wim-shell-command-on-marked-file | 
| 1b0c0 |  73 0a 20 20 20 22 52 65 6e 61 6d 65 20 61 6c 6c    22 0a 20 20 20 22 6d 76 20 27 3c 3c 66 3e 3e 27  | s...."Rename.all"...."mv.'<<f>>' | 
| 1b0e0 |  20 27 3c 3c 4e 65 77 20 6e 61 6d 65 3a 52 65 6e    61 6d 65 64 3e 3e 28 3c 3c 6e 3e 3e 29 2e 3c 3c  | .'<<New.name:Renamed>>(<<n>>).<< | 
| 1b100 |  65 3e 3e 27 22 0a 20 20 20 3a 75 74 69 6c 73 20    22 6d 76 22 29 29 0a 0a 3b 3b 3b 23 23 23 61 75  | e>>'"....:utils."mv"))..;;;###au | 
| 1b120 |  74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 64 77    69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64  | toload.(defun.dwim-shell-command | 
| 1b140 |  73 2d 6d 6f 76 65 2d 74 6f 2d 64 6f 77 6e 6c 6f    61 64 73 20 28 29 0a 20 20 22 4d 6f 76 65 20 66  | s-move-to-downloads.()..."Move.f | 
| 1b160 |  69 6c 65 20 74 6f 20 7e 2f 44 6f 77 6e 6c 6f 61    64 73 2e 22 0a 20 20 28 69 6e 74 65 72 61 63 74  | ile.to.~/Downloads."...(interact | 
| 1b180 |  69 76 65 29 0a 20 20 28 64 77 69 6d 2d 73 68 65    6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 66 6f 72 65 61  | ive)...(dwim-shell-command-forea | 
| 1b1a0 |  63 68 0a 20 20 20 28 6c 61 6d 62 64 61 20 28 66    69 6c 65 29 0a 20 20 20 20 20 28 72 65 6e 61 6d  | ch....(lambda.(file)......(renam | 
| 1b1c0 |  65 2d 66 69 6c 65 20 66 69 6c 65 20 22 7e 2f 44    6f 77 6e 6c 6f 61 64 73 2f 22 20 31 29 0a 20 20  | e-file.file."~/Downloads/".1)... | 
| 1b1e0 |  20 20 20 28 77 68 65 6e 20 28 62 75 66 66 65 72    2d 66 69 6c 65 2d 6e 61 6d 65 29 0a 20 20 20 20  | ...(when.(buffer-file-name)..... | 
| 1b200 |  20 20 20 28 72 65 6e 61 6d 65 2d 62 75 66 66 65    72 20 28 66 69 6c 65 2d 6e 61 6d 65 2d 6e 6f 6e  | ...(rename-buffer.(file-name-non | 
| 1b220 |  64 69 72 65 63 74 6f 72 79 20 66 69 6c 65 29 29    0a 20 20 20 20 20 20 20 28 73 65 74 2d 76 69 73  | directory.file))........(set-vis | 
| 1b240 |  69 74 65 64 2d 66 69 6c 65 2d 6e 61 6d 65 0a 20    20 20 20 20 20 20 20 28 66 69 6c 65 2d 6e 61 6d  | ited-file-name.........(file-nam | 
| 1b260 |  65 2d 63 6f 6e 63 61 74 20 22 7e 2f 44 6f 77 6e    6c 6f 61 64 73 22 20 28 66 69 6c 65 2d 6e 61 6d  | e-concat."~/Downloads".(file-nam | 
| 1b280 |  65 2d 6e 6f 6e 64 69 72 65 63 74 6f 72 79 20 66    69 6c 65 29 29 29 0a 20 20 20 20 20 20 20 28 73  | e-nondirectory.file)))........(s | 
| 1b2a0 |  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 29 0a 20 20 20 20 20  | et-buffer-modified-p.nil))...... | 
| 1b2c0 |  28 66 69 6c 65 2d 6e 61 6d 65 2d 63 6f 6e 63 61    74 20 22 7e 2f 44 6f 77 6e 6c 6f 61 64 73 22 20  | (file-name-concat."~/Downloads". | 
| 1b2e0 |  28 66 69 6c 65 2d 6e 61 6d 65 2d 6e 6f 6e 64 69    72 65 63 74 6f 72 79 20 66 69 6c 65 29 29 29 0a  | (file-name-nondirectory.file))). | 
| 1b300 |  20 20 20 3a 6d 6f 6e 69 74 6f 72 2d 64 69 72 65    63 74 6f 72 79 20 22 7e 2f 44 6f 77 6e 6c 6f 61  | ...:monitor-directory."~/Downloa | 
| 1b320 |  64 73 22 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74    6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 64 77 69  | ds"))..;;;###autoload.(defun.dwi | 
| 1b340 |  6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 73    2d 63 6f 70 79 2d 74 6f 2d 64 65 73 6b 74 6f 70  | m-shell-commands-copy-to-desktop | 
| 1b360 |  20 28 29 0a 20 20 22 43 6f 70 79 20 66 69 6c 65    20 74 6f 20 7e 2f 44 65 73 6b 74 6f 70 2e 22 0a  | .()..."Copy.file.to.~/Desktop.". | 
| 1b380 |  20 20 28 69 6e 74 65 72 61 63 74 69 76 65 29 0a    20 20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f  | ..(interactive)...(dwim-shell-co | 
| 1b3a0 |  6d 6d 61 6e 64 2d 66 6f 72 65 61 63 68 0a 20 20    20 28 6c 61 6d 62 64 61 20 28 66 69 6c 65 29 0a  | mmand-foreach....(lambda.(file). | 
| 1b3c0 |  20 20 20 20 20 28 63 6f 70 79 2d 66 69 6c 65 20    66 69 6c 65 20 22 7e 2f 44 65 73 6b 74 6f 70 2f  | .....(copy-file.file."~/Desktop/ | 
| 1b3e0 |  22 20 31 29 0a 20 20 20 20 20 28 66 69 6c 65 2d    6e 61 6d 65 2d 63 6f 6e 63 61 74 20 22 7e 2f 44  | ".1)......(file-name-concat."~/D | 
| 1b400 |  65 73 6b 74 6f 70 22 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  | esktop".(file-name-nondirectory. | 
| 1b420 |  66 69 6c 65 29 29 29 0a 20 20 20 3a 6d 6f 6e 69    74 6f 72 2d 64 69 72 65 63 74 6f 72 79 20 22 7e  | file)))....:monitor-directory."~ | 
| 1b440 |  2f 44 65 73 6b 74 6f 70 22 29 29 0a 0a 3b 3b 3b    23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66  | /Desktop"))..;;;###autoload.(def | 
| 1b460 |  75 6e 20 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f    6d 6d 61 6e 64 73 2d 6d 6f 76 65 2d 74 6f 2d 64  | un.dwim-shell-commands-move-to-d | 
| 1b480 |  65 73 6b 74 6f 70 20 28 29 0a 20 20 22 4d 6f 76    65 20 66 69 6c 65 20 74 6f 20 7e 2f 44 65 73 6b  | esktop.()..."Move.file.to.~/Desk | 
| 1b4a0 |  74 6f 70 2e 22 0a 20 20 28 69 6e 74 65 72 61 63    74 69 76 65 29 0a 20 20 28 64 77 69 6d 2d 73 68  | top."...(interactive)...(dwim-sh | 
| 1b4c0 |  65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 66 6f 72 65    61 63 68 0a 20 20 20 28 6c 61 6d 62 64 61 20 28  | ell-command-foreach....(lambda.( | 
| 1b4e0 |  66 69 6c 65 29 0a 20 20 20 20 20 28 72 65 6e 61    6d 65 2d 66 69 6c 65 20 66 69 6c 65 20 22 7e 2f  | file)......(rename-file.file."~/ | 
| 1b500 |  44 65 73 6b 74 6f 70 2f 22 20 31 29 0a 20 20 20    20 20 28 77 68 65 6e 20 28 62 75 66 66 65 72 2d  | Desktop/".1)......(when.(buffer- | 
| 1b520 |  66 69 6c 65 2d 6e 61 6d 65 29 0a 20 20 20 20 20    20 20 28 72 65 6e 61 6d 65 2d 62 75 66 66 65 72  | file-name)........(rename-buffer | 
| 1b540 |  20 28 66 69 6c 65 2d 6e 61 6d 65 2d 6e 6f 6e 64    69 72 65 63 74 6f 72 79 20 66 69 6c 65 29 29 0a  | .(file-name-nondirectory.file)). | 
| 1b560 |  20 20 20 20 20 20 20 28 73 65 74 2d 76 69 73 69    74 65 64 2d 66 69 6c 65 2d 6e 61 6d 65 0a 20 20  | .......(set-visited-file-name... | 
| 1b580 |  20 20 20 20 20 20 28 66 69 6c 65 2d 6e 61 6d 65    2d 63 6f 6e 63 61 74 20 22 7e 2f 44 65 73 6b 74  | ......(file-name-concat."~/Deskt | 
| 1b5a0 |  6f 70 22 20 28 66 69 6c 65 2d 6e 61 6d 65 2d 6e    6f 6e 64 69 72 65 63 74 6f 72 79 20 66 69 6c 65  | op".(file-name-nondirectory.file | 
| 1b5c0 |  29 29 29 0a 20 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  | )))........(set-buffer-modified- | 
| 1b5e0 |  70 20 6e 69 6c 29 29 0a 20 20 20 20 20 28 66 69    6c 65 2d 6e 61 6d 65 2d 63 6f 6e 63 61 74 20 22  | p.nil))......(file-name-concat." | 
| 1b600 |  7e 2f 44 65 73 6b 74 6f 70 22 20 28 66 69 6c 65    2d 6e 61 6d 65 2d 6e 6f 6e 64 69 72 65 63 74 6f  | ~/Desktop".(file-name-nondirecto | 
| 1b620 |  72 79 20 66 69 6c 65 29 29 29 0a 20 20 20 3a 6d    6f 6e 69 74 6f 72 2d 64 69 72 65 63 74 6f 72 79  | ry.file)))....:monitor-directory | 
| 1b640 |  20 22 7e 2f 44 65 73 6b 74 6f 70 22 29 29 0a 0a    3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28  | ."~/Desktop"))..;;;###autoload.( | 
| 1b660 |  64 65 66 75 6e 20 64 77 69 6d 2d 73 68 65 6c 6c    2d 63 6f 6d 6d 61 6e 64 73 2d 6b 69 6c 6c 2d 67  | defun.dwim-shell-commands-kill-g | 
| 1b680 |  70 67 2d 61 67 65 6e 74 20 28 29 0a 20 20 22 4b    69 6c 6c 20 28 74 68 75 73 20 72 65 73 74 61 72  | pg-agent.()..."Kill.(thus.restar | 
| 1b6a0 |  74 29 20 67 70 67 20 61 67 65 6e 74 2e 0a 0a 55    73 65 66 75 6c 20 66 6f 72 20 77 68 65 6e 20 79  | t).gpg.agent...Useful.for.when.y | 
| 1b6c0 |  6f 75 20 67 65 74 20 74 68 69 73 20 65 72 72 6f    72 3a 0a 0a 67 70 67 3a 20 70 75 62 6c 69 63 20  | ou.get.this.error:..gpg:.public. | 
| 1b6e0 |  6b 65 79 20 64 65 63 72 79 70 74 69 6f 6e 20 66    61 69 6c 65 64 3a 20 4e 6f 20 70 69 6e 65 6e 74  | key.decryption.failed:.No.pinent | 
| 1b700 |  72 79 0a 67 70 67 3a 20 64 65 63 72 79 70 74 69    6f 6e 20 66 61 69 6c 65 64 3a 20 4e 6f 20 70 69  | ry.gpg:.decryption.failed:.No.pi | 
| 1b720 |  6e 65 6e 74 72 79 22 0a 20 20 28 69 6e 74 65 72    61 63 74 69 76 65 29 0a 20 20 28 64 77 69 6d 2d  | nentry"...(interactive)...(dwim- | 
| 1b740 |  73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64 2d 6f 6e    2d 6d 61 72 6b 65 64 2d 66 69 6c 65 73 0a 20 20  | shell-command-on-marked-files... | 
| 1b760 |  20 22 4b 69 6c 6c 20 67 70 67 20 61 67 65 6e 74    22 0a 20 20 20 22 67 70 67 63 6f 6e 66 20 2d 2d  | ."Kill.gpg.agent"...."gpgconf.-- | 
| 1b780 |  6b 69 6c 6c 20 67 70 67 2d 61 67 65 6e 74 22 0a    20 20 20 3a 75 74 69 6c 73 20 22 67 70 67 63 6f  | kill.gpg-agent"....:utils."gpgco | 
| 1b7a0 |  6e 66 22 0a 20 20 20 3a 73 69 6c 65 6e 74 2d 73    75 63 63 65 73 73 20 74 29 29 0a 0a 3b 3b 20 42  | nf"....:silent-success.t))..;;.B | 
| 1b7c0 |  61 73 65 64 20 6f 6e 0a 3b 3b 20 68 74 74 70 73    3a 2f 2f 61 70 70 73 2e 62 72 61 6d 38 35 2e 6e  | ased.on.;;.https://apps.bram85.n | 
| 1b7e0 |  6c 2f 67 69 74 2f 62 72 61 6d 2f 67 69 73 74 73    2f 73 72 63 2f 63 6f 6d 6d 69 74 2f 33 31 61 63  | l/git/bram/gists/src/commit/31ac | 
| 1b800 |  33 33 36 33 64 61 39 32 35 64 61 61 66 61 32 34    32 30 62 37 66 39 36 63 36 37 36 31 32 63 61 32  | 3363da925daafa2420b7f96c67612ca2 | 
| 1b820 |  38 32 34 31 2f 67 69 73 74 73 2f 64 77 69 6d 2d    30 78 30 2d 75 70 6c 6f 61 64 2e 65 6c 0a 3b 3b  | 8241/gists/dwim-0x0-upload.el.;; | 
| 1b840 |  3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65    66 75 6e 20 64 77 69 6d 2d 73 68 65 6c 6c 2d 63  | ;###autoload.(defun.dwim-shell-c | 
| 1b860 |  6f 6d 6d 61 6e 64 73 2d 75 70 6c 6f 61 64 2d 74    6f 2d 30 78 30 20 28 29 0a 20 20 22 55 70 6c 6f  | ommands-upload-to-0x0.()..."Uplo | 
| 1b880 |  61 64 20 74 68 65 20 6d 61 72 6b 65 64 20 66 69    6c 65 73 20 74 6f 20 30 78 30 2e 73 74 22 0a 20  | ad.the.marked.files.to.0x0.st".. | 
| 1b8a0 |  20 28 69 6e 74 65 72 61 63 74 69 76 65 29 0a 20    20 28 64 77 69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d  | .(interactive)...(dwim-shell-com | 
| 1b8c0 |  6d 61 6e 64 2d 6f 6e 2d 6d 61 72 6b 65 64 2d 66    69 6c 65 73 0a 20 20 20 22 30 78 30 20 75 70 6c  | mand-on-marked-files...."0x0.upl | 
| 1b8e0 |  6f 61 64 22 0a 20 20 20 22 63 75 72 6c 20 2d 46    66 69 6c 65 3d 40 3c 3c 66 3e 3e 20 2d 46 73 65  | oad"...."curl.-Ffile=@<<f>>.-Fse | 
| 1b900 |  63 72 65 74 3d 20 68 74 74 70 73 3a 2f 2f 30 78    30 2e 73 74 22 0a 20 20 20 3a 75 74 69 6c 73 20  | cret=.https://0x0.st"....:utils. | 
| 1b920 |  22 63 75 72 6c 22 0a 20 20 20 3a 70 6f 73 74 2d    70 72 6f 63 65 73 73 2d 74 65 6d 70 6c 61 74 65  | "curl"....:post-process-template | 
| 1b940 |  0a 20 20 20 3b 3b 20 49 6e 73 65 72 74 20 74 68    65 20 73 69 6e 67 6c 65 20 71 75 6f 74 65 73 20  | ....;;.Insert.the.single.quotes. | 
| 1b960 |  61 74 20 74 68 65 20 61 70 70 72 6f 70 72 69 61    74 65 20 70 6c 61 63 65 20 61 63 63 6f 72 64 69  | at.the.appropriate.place.accordi | 
| 1b980 |  6e 67 20 74 6f 0a 20 20 20 3b 3b 20 30 78 30 2e    73 74 20 65 78 61 6d 70 6c 65 20 6f 6e 6c 69 6e  | ng.to....;;.0x0.st.example.onlin | 
| 1b9a0 |  65 3a 0a 20 20 20 3b 3b 20 63 75 72 6c 20 2d 46    27 66 69 6c 65 3d 40 79 6f 75 72 66 69 6c 65 2e  | e:....;;.curl.-F'file=@yourfile. | 
| 1b9c0 |  70 6e 67 27 20 2d 46 73 65 63 72 65 74 3d 20 68    74 74 70 73 3a 2f 2f 30 78 30 2e 73 74 0a 20 20  | png'.-Fsecret=.https://0x0.st... | 
| 1b9e0 |  20 3b 3b 0a 20 20 20 3b 3b 20 54 68 65 20 70 6c    61 63 65 6d 65 6e 74 20 6f 66 20 74 68 65 73 65  | .;;....;;.The.placement.of.these | 
| 1ba00 |  20 73 69 6e 67 6c 65 20 71 75 6f 74 65 73 20 63    6f 6e 66 75 73 65 20 74 68 65 20 65 73 63 61 70  | .single.quotes.confuse.the.escap | 
| 1ba20 |  69 6e 67 0a 20 20 20 3b 3b 20 6d 65 63 68 61 6e    69 73 6d 73 20 6f 66 20 64 77 69 6d 2d 73 68 65  | ing....;;.mechanisms.of.dwim-she | 
| 1ba40 |  6c 6c 2d 63 6f 6d 6d 61 6e 64 2c 20 61 73 20 69    74 20 63 6f 6e 73 69 64 65 72 73 20 40 20 61 73  | ll-command,.as.it.considers.@.as | 
| 1ba60 |  20 74 68 65 0a 20 20 20 3b 3b 20 6f 70 65 6e 69    6e 67 20 27 71 75 6f 74 65 27 20 61 73 20 69 74  | .the....;;.opening.'quote'.as.it | 
| 1ba80 |  20 61 70 70 65 61 72 73 20 72 69 67 68 74 20 69    6e 20 66 72 6f 6e 74 20 6f 66 20 3c 3c 66 3e 3e  | .appears.right.in.front.of.<<f>> | 
| 1baa0 |  2e 0a 20 20 20 28 6c 61 6d 62 64 61 20 28 74 65    6d 70 6c 61 74 65 20 70 61 74 68 29 0a 20 20 20  | .....(lambda.(template.path).... | 
| 1bac0 |  20 20 28 73 74 72 69 6e 67 2d 72 65 70 6c 61 63    65 20 22 2d 46 66 69 6c 65 22 20 22 2d 46 27 66  | ..(string-replace."-Ffile"."-F'f | 
| 1bae0 |  69 6c 65 22 0a 20 20 20 20 20 20 20 20 20 20 20    20 20 20 20 20 20 20 20 20 20 28 73 74 72 69 6e  | ile"......................(strin | 
| 1bb00 |  67 2d 72 65 70 6c 61 63 65 20 70 61 74 68 20 28    63 6f 6e 63 61 74 20 70 61 74 68 20 22 27 22 29  | g-replace.path.(concat.path."'") | 
| 1bb20 |  20 74 65 6d 70 6c 61 74 65 29 29 29 0a 20 20 20    3a 6f 6e 2d 63 6f 6d 70 6c 65 74 69 6f 6e 0a 20  | .template)))....:on-completion.. | 
| 1bb40 |  20 20 28 6c 61 6d 62 64 61 20 28 62 75 66 66 65    72 20 70 72 6f 63 65 73 73 29 0a 20 20 20 20 20  | ..(lambda.(buffer.process)...... | 
| 1bb60 |  28 69 66 20 28 3d 20 28 70 72 6f 63 65 73 73 2d    65 78 69 74 2d 73 74 61 74 75 73 20 70 72 6f 63  | (if.(=.(process-exit-status.proc | 
| 1bb80 |  65 73 73 29 20 30 29 0a 20 20 20 20 20 20 20 20    20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62  | ess).0)..........(with-current-b | 
| 1bba0 |  75 66 66 65 72 20 62 75 66 66 65 72 0a 20 20 20    20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 75  | uffer.buffer............(let.((u | 
| 1bbc0 |  72 6c 20 28 63 61 72 20 28 6c 61 73 74 20 28 73    70 6c 69 74 2d 73 74 72 69 6e 67 20 28 73 74 72  | rl.(car.(last.(split-string.(str | 
| 1bbe0 |  69 6e 67 2d 74 72 69 6d 20 28 62 75 66 66 65 72    2d 73 74 72 69 6e 67 29 29 20 22 5c 6e 22 29 29  | ing-trim.(buffer-string))."\n")) | 
| 1bc00 |  29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20    20 28 65 77 77 20 75 72 6c 29 0a 20 20 20 20 20  | )))..............(eww.url)...... | 
| 1bc20 |  20 20 20 20 20 20 20 20 28 6b 69 6c 6c 2d 6e 65    77 20 75 72 6c 29 0a 20 20 20 20 20 20 20 20 20  | ........(kill-new.url).......... | 
| 1bc40 |  20 20 20 20 28 6d 65 73 73 61 67 65 20 22 43 6f    70 69 65 64 3a 20 25 73 22 20 28 63 75 72 72 65  | ....(message."Copied:.%s".(curre | 
| 1bc60 |  6e 74 2d 6b 69 6c 6c 20 30 29 29 29 0a 20 20 20    20 20 20 20 20 20 20 20 28 6b 69 6c 6c 2d 62 75  | nt-kill.0)))............(kill-bu | 
| 1bc80 |  66 66 65 72 20 62 75 66 66 65 72 29 29 0a 20 20    20 20 20 20 20 28 73 77 69 74 63 68 2d 74 6f 2d  | ffer.buffer))........(switch-to- | 
| 1bca0 |  62 75 66 66 65 72 20 62 75 66 66 65 72 29 29 29    29 29 0a 0a 28 70 72 6f 76 69 64 65 20 27 64 77  | buffer.buffer)))))..(provide.'dw | 
| 1bcc0 |  69 6d 2d 73 68 65 6c 6c 2d 63 6f 6d 6d 61 6e 64    73 29 0a 0a 3b 3b 3b 20 64 77 69 6d 2d 73 68 65  | im-shell-commands)..;;;.dwim-she | 
| 1bce0 |  6c 6c 2d 63 6f 6d 6d 61 6e 64 73 2e 65 6c 20 65    6e 64 73 20 68 65 72 65 0a 00 00 00 00 00 00 00  | ll-commands.el.ends.here........ | 
| 1bd00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1bd20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1bd40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1bd60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1bd80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1bda0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1bdc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1bde0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1be00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1be20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1be40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1be60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1be80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1bea0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1bec0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1bee0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1bf00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1bf20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1bf40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1bf60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1bf80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1bfa0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1bfc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1bfe0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c000 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c020 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c040 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c060 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c080 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c0a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c0c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c0e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c100 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c120 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c140 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c160 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c180 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c1a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c1c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c1e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c200 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c220 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c240 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c260 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c280 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c2a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c2c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c2e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c300 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c320 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c340 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c360 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c380 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c3a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c3c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c3e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c400 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c420 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c440 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c460 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c480 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c4a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c4c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c4e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c500 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c520 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c540 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c560 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c580 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c5a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c5c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c5e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c600 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c620 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c640 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c660 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c680 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c6a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c6c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c6e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c700 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c720 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c740 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c760 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c780 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c7a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c7c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c7e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c800 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c820 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c840 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c860 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c880 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c8a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c8c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c8e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c900 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c920 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c940 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c960 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c980 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c9a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c9c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1c9e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1ca00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1ca20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1ca40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1ca60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1ca80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1caa0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1cac0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1cae0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1cb00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1cb20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1cb40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1cb60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1cb80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1cba0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1cbc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1cbe0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1cc00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1cc20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1cc40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1cc60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1cc80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1cca0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1ccc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1cce0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1cd00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1cd20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1cd40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1cd60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1cd80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1cda0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1cdc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1cde0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1ce00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1ce20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1ce40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1ce60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1ce80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1cea0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1cec0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1cee0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1cf00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1cf20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1cf40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1cf60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1cf80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1cfa0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1cfc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1cfe0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d000 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d020 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d040 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d060 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d080 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d0a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d0c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d0e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d100 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d120 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d140 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d160 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d180 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d1a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d1c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d1e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d200 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d220 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d240 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d260 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d280 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d2a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d2c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d2e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d300 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d320 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d340 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d360 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d380 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d3a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d3c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d3e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d400 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d420 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d440 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d460 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d480 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d4a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d4c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d4e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d500 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d520 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d540 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d560 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d580 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d5a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d5c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d5e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d600 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d620 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d640 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d660 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d680 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d6a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d6c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d6e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d700 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d720 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d740 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d760 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d780 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d7a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d7c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d7e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d800 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d820 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d840 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d860 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d880 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d8a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d8c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d8e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d900 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d920 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d940 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d960 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d980 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d9a0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d9c0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1d9e0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1da00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1da20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1da40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1da60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1da80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1daa0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1dac0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1dae0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1db00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1db20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1db40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1db60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1db80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1dba0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1dbc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1dbe0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1dc00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1dc20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1dc40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1dc60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1dc80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1dca0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1dcc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1dce0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1dd00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1dd20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1dd40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1dd60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1dd80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1dda0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1ddc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1dde0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1de00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1de20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1de40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1de60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1de80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1dea0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1dec0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1dee0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1df00 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1df20 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1df40 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1df60 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1df80 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1dfa0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1dfc0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ | 
| 1dfe0 |  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  | ................................ |