| ofs | hex dump | ascii |
|---|
| 0000 | 74 72 65 65 2d 73 69 74 74 65 72 2d 32 30 32 32 30 32 31 32 2e 31 36 33 32 2f 00 00 00 00 00 00 | tree-sitter-20220212.1632/...... |
| 0020 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0040 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0060 | 00 00 00 00 30 30 30 30 37 35 35 00 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 00 30 30 30 30 | ....0000755.0000000.0000000.0000 |
| 0080 | 30 30 30 30 30 30 30 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 33 32 34 36 00 20 35 00 00 00 | 0000000.00000000000.013246..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 | 74 72 65 65 2d 73 69 74 74 65 72 2d 32 30 32 32 30 32 31 32 2e 31 36 33 32 2f 74 72 65 65 2d 73 | tree-sitter-20220212.1632/tree-s |
| 0220 | 69 74 74 65 72 2d 63 6c 69 2e 65 6c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | itter-cli.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 32 31 36 34 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 36 36 30 37 00 20 30 00 00 00 | 0002164.00000000000.016607..0... |
| 02a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 02c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 02e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0300 | 00 75 73 74 61 72 20 20 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | .ustar...root................... |
| 0320 | 00 00 00 00 00 00 00 00 00 72 6f 6f 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | .........root................... |
| 0340 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0360 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0380 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 03a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 03c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 03e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0400 | 3b 3b 3b 20 74 72 65 65 2d 73 69 74 74 65 72 2d 63 6c 69 2e 65 6c 20 2d 2d 2d 20 55 74 69 6c 69 | ;;;.tree-sitter-cli.el.---.Utili |
| 0420 | 74 69 65 73 20 66 6f 72 20 74 72 65 65 2d 73 69 74 74 65 72 20 43 4c 49 20 2d 2a 2d 20 6c 65 78 | ties.for.tree-sitter.CLI.-*-.lex |
| 0440 | 69 63 61 6c 2d 62 69 6e 64 69 6e 67 3a 20 74 3b 20 63 6f 64 69 6e 67 3a 20 75 74 66 2d 38 20 2d | ical-binding:.t;.coding:.utf-8.- |
| 0460 | 2a 2d 0a 0a 3b 3b 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 32 30 20 54 75 e1 ba a5 6e | *-..;;.Copyright.(C).2020.Tu...n |
| 0480 | 2d 41 6e 68 20 4e 67 75 79 e1 bb 85 6e 0a 3b 3b 0a 3b 3b 20 41 75 74 68 6f 72 3a 20 54 75 e1 ba | -Anh.Nguy...n.;;.;;.Author:.Tu.. |
| 04a0 | a5 6e 2d 41 6e 68 20 4e 67 75 79 e1 bb 85 6e 20 3c 75 62 6f 6c 6f 6e 74 6f 6e 40 67 6d 61 69 6c | .n-Anh.Nguy...n.<ubolonton@gmail |
| 04c0 | 2e 63 6f 6d 3e 0a 3b 3b 20 53 50 44 58 2d 4c 69 63 65 6e 73 65 2d 49 64 65 6e 74 69 66 69 65 72 | .com>.;;.SPDX-License-Identifier |
| 04e0 | 3a 20 4d 49 54 0a 0a 3b 3b 3b 20 43 6f 6d 6d 65 6e 74 61 72 79 3a 0a 0a 3b 3b 20 54 68 69 73 20 | :.MIT..;;;.Commentary:..;;.This. |
| 0500 | 66 69 6c 65 20 63 6f 6e 74 61 69 6e 73 20 66 75 6e 63 74 69 6f 6e 73 20 74 6f 20 77 6f 72 6b 20 | file.contains.functions.to.work. |
| 0520 | 77 69 74 68 20 74 68 65 20 74 72 65 65 2d 73 69 74 74 65 72 20 43 4c 49 2e 20 49 74 20 6d 75 73 | with.the.tree-sitter.CLI..It.mus |
| 0540 | 74 20 6e 6f 74 0a 3b 3b 20 64 65 70 65 6e 64 20 28 64 69 72 65 63 74 6c 79 20 6f 6e 20 69 6e 64 | t.not.;;.depend.(directly.on.ind |
| 0560 | 69 72 65 63 74 6c 79 29 20 6f 6e 20 60 74 73 63 2d 64 79 6e 27 2e 20 49 74 20 73 68 6f 75 6c 64 | irectly).on.`tsc-dyn'..It.should |
| 0580 | 6e 27 74 20 64 65 70 65 6e 64 20 6f 6e 0a 3b 3b 20 60 74 72 65 65 2d 73 69 74 74 65 72 27 2e 0a | n't.depend.on.;;.`tree-sitter'.. |
| 05a0 | 0a 3b 3b 3b 20 43 6f 64 65 3a 0a 0a 28 65 76 61 6c 2d 77 68 65 6e 2d 63 6f 6d 70 69 6c 65 0a 20 | .;;;.Code:..(eval-when-compile.. |
| 05c0 | 20 28 72 65 71 75 69 72 65 20 27 73 75 62 72 2d 78 29 29 0a 0a 28 64 65 66 75 6e 20 74 72 65 65 | .(require.'subr-x))..(defun.tree |
| 05e0 | 2d 73 69 74 74 65 72 2d 63 6c 69 2d 64 69 72 65 63 74 6f 72 79 20 28 29 0a 20 20 22 52 65 74 75 | -sitter-cli-directory.()..."Retu |
| 0600 | 72 6e 20 74 72 65 65 2d 73 69 74 74 65 72 20 43 4c 49 27 73 20 64 69 72 65 63 74 6f 72 79 2c 20 | rn.tree-sitter.CLI's.directory,. |
| 0620 | 69 6e 63 6c 75 64 69 6e 67 20 74 68 65 20 65 6e 64 69 6e 67 20 73 65 70 61 72 61 74 6f 72 2e 0a | including.the.ending.separator.. |
| 0640 | 54 68 69 73 20 69 73 20 74 68 65 20 64 69 72 65 63 74 6f 72 79 20 77 68 65 72 65 20 74 68 65 20 | This.is.the.directory.where.the. |
| 0660 | 43 4c 49 20 74 6f 6f 6c 20 6b 65 65 70 73 20 63 6f 6d 70 69 6c 65 64 20 6c 61 6e 67 20 64 65 66 | CLI.tool.keeps.compiled.lang.def |
| 0680 | 69 6e 69 74 69 6f 6e 73 2c 20 61 6d 6f 6e 67 0a 6f 74 68 65 72 20 64 61 74 61 2e 22 0a 20 20 28 | initions,.among.other.data."...( |
| 06a0 | 66 69 6c 65 2d 6e 61 6d 65 2d 61 73 2d 64 69 72 65 63 74 6f 72 79 0a 20 20 20 28 65 78 70 61 6e | file-name-as-directory....(expan |
| 06c0 | 64 2d 66 69 6c 65 2d 6e 61 6d 65 0a 20 20 20 20 3b 3b 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 | d-file-name.....;;.https://githu |
| 06e0 | 62 2e 63 6f 6d 2f 74 72 65 65 2d 73 69 74 74 65 72 2f 74 72 65 65 2d 73 69 74 74 65 72 2f 62 6c | b.com/tree-sitter/tree-sitter/bl |
| 0700 | 6f 62 2f 31 62 61 64 36 64 63 2f 63 6c 69 2f 73 72 63 2f 63 6f 6e 66 69 67 2e 72 73 23 4c 32 30 | ob/1bad6dc/cli/src/config.rs#L20 |
| 0720 | 0a 20 20 20 20 28 69 66 2d 6c 65 74 20 28 28 64 69 72 20 28 67 65 74 65 6e 76 20 22 54 52 45 45 | .....(if-let.((dir.(getenv."TREE |
| 0740 | 5f 53 49 54 54 45 52 5f 44 49 52 22 29 29 29 0a 20 20 20 20 20 20 20 20 64 69 72 0a 20 20 20 20 | _SITTER_DIR"))).........dir..... |
| 0760 | 20 20 22 7e 2f 2e 74 72 65 65 2d 73 69 74 74 65 72 22 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 74 | .."~/.tree-sitter"))))..(defun.t |
| 0780 | 72 65 65 2d 73 69 74 74 65 72 2d 63 6c 69 2d 62 69 6e 2d 64 69 72 65 63 74 6f 72 79 20 28 29 0a | ree-sitter-cli-bin-directory.(). |
| 07a0 | 20 20 22 52 65 74 75 72 6e 20 74 68 65 20 64 69 72 65 63 74 6f 72 79 20 75 73 65 64 20 62 79 20 | .."Return.the.directory.used.by. |
| 07c0 | 74 72 65 65 2d 73 69 74 74 65 72 20 43 4c 49 20 74 6f 20 73 74 6f 72 65 20 63 6f 6d 70 69 6c 65 | tree-sitter.CLI.to.store.compile |
| 07e0 | 64 20 67 72 61 6d 6d 61 72 73 2e 22 0a 20 20 28 66 69 6c 65 2d 6e 61 6d 65 2d 61 73 2d 64 69 72 | d.grammars."...(file-name-as-dir |
| 0800 | 65 63 74 6f 72 79 0a 20 20 20 28 63 6f 6e 63 61 74 20 28 74 72 65 65 2d 73 69 74 74 65 72 2d 63 | ectory....(concat.(tree-sitter-c |
| 0820 | 6c 69 2d 64 69 72 65 63 74 6f 72 79 29 20 22 62 69 6e 22 29 29 29 0a 0a 28 70 72 6f 76 69 64 65 | li-directory)."bin")))..(provide |
| 0840 | 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 63 6c 69 29 0a 3b 3b 3b 20 74 72 65 65 2d 73 69 74 74 | .'tree-sitter-cli).;;;.tree-sitt |
| 0860 | 65 72 2d 63 6c 69 2e 65 6c 20 65 6e 64 73 20 68 65 72 65 0a 00 00 00 00 00 00 00 00 00 00 00 00 | er-cli.el.ends.here............. |
| 0880 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 08a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 08c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 08e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0900 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0920 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0940 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0960 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0980 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 09a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 09c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 09e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0a00 | 74 72 65 65 2d 73 69 74 74 65 72 2d 32 30 32 32 30 32 31 32 2e 31 36 33 32 2f 74 72 65 65 2d 73 | tree-sitter-20220212.1632/tree-s |
| 0a20 | 69 74 74 65 72 2d 64 65 62 75 67 2e 65 6c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | itter-debug.el.................. |
| 0a40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0a60 | 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 |
| 0a80 | 30 30 31 34 33 34 30 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 37 31 32 35 00 20 30 00 00 00 | 0014340.00000000000.017125..0... |
| 0aa0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0ac0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0ae0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0b00 | 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................... |
| 0b20 | 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................... |
| 0b40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0b60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0b80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0ba0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0bc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0be0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0c00 | 3b 3b 3b 20 74 72 65 65 2d 73 69 74 74 65 72 2d 64 65 62 75 67 2e 65 6c 20 2d 2d 2d 20 44 65 62 | ;;;.tree-sitter-debug.el.---.Deb |
| 0c20 | 75 67 20 74 6f 6f 6c 73 20 66 6f 72 20 74 72 65 65 2d 73 69 74 74 65 72 20 2d 2a 2d 20 6c 65 78 | ug.tools.for.tree-sitter.-*-.lex |
| 0c40 | 69 63 61 6c 2d 62 69 6e 64 69 6e 67 3a 20 74 3b 20 63 6f 64 69 6e 67 3a 20 75 74 66 2d 38 20 2d | ical-binding:.t;.coding:.utf-8.- |
| 0c60 | 2a 2d 0a 0a 3b 3b 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 31 39 20 20 54 75 e1 ba a5 | *-..;;.Copyright.(C).2019..Tu... |
| 0c80 | 6e 2d 41 6e 68 20 4e 67 75 79 e1 bb 85 6e 0a 3b 3b 0a 3b 3b 20 41 75 74 68 6f 72 3a 20 54 75 e1 | n-Anh.Nguy...n.;;.;;.Author:.Tu. |
| 0ca0 | ba a5 6e 2d 41 6e 68 20 4e 67 75 79 e1 bb 85 6e 20 3c 75 62 6f 6c 6f 6e 74 6f 6e 40 67 6d 61 69 | ..n-Anh.Nguy...n.<ubolonton@gmai |
| 0cc0 | 6c 2e 63 6f 6d 3e 0a 3b 3b 20 53 50 44 58 2d 4c 69 63 65 6e 73 65 2d 49 64 65 6e 74 69 66 69 65 | l.com>.;;.SPDX-License-Identifie |
| 0ce0 | 72 3a 20 4d 49 54 0a 0a 3b 3b 3b 20 43 6f 6d 6d 65 6e 74 61 72 79 3a 0a 0a 3b 3b 20 54 68 69 73 | r:.MIT..;;;.Commentary:..;;.This |
| 0d00 | 20 66 69 6c 65 20 63 6f 6e 74 61 69 6e 73 20 64 65 62 75 67 20 75 74 69 6c 69 74 69 65 73 20 66 | .file.contains.debug.utilities.f |
| 0d20 | 6f 72 20 74 72 65 65 2d 73 69 74 74 65 72 2e 0a 3b 3b 0a 3b 3b 20 28 74 72 65 65 2d 73 69 74 74 | or.tree-sitter..;;.;;.(tree-sitt |
| 0d40 | 65 72 2d 64 65 62 75 67 2d 6d 6f 64 65 29 0a 0a 3b 3b 3b 20 43 6f 64 65 3a 0a 0a 28 72 65 71 75 | er-debug-mode)..;;;.Code:..(requ |
| 0d60 | 69 72 65 20 27 74 72 65 65 2d 73 69 74 74 65 72 29 0a 0a 28 72 65 71 75 69 72 65 20 27 67 65 6e | ire.'tree-sitter)..(require.'gen |
| 0d80 | 65 72 61 74 6f 72 29 0a 0a 28 64 65 66 76 61 72 2d 6c 6f 63 61 6c 20 74 72 65 65 2d 73 69 74 74 | erator)..(defvar-local.tree-sitt |
| 0da0 | 65 72 2d 64 65 62 75 67 2d 2d 74 72 65 65 2d 62 75 66 66 65 72 20 6e 69 6c 0a 20 20 22 42 75 66 | er-debug--tree-buffer.nil..."Buf |
| 0dc0 | 66 65 72 20 75 73 65 64 20 74 6f 20 64 69 73 70 6c 61 79 20 74 68 65 20 73 79 6e 74 61 78 20 74 | fer.used.to.display.the.syntax.t |
| 0de0 | 72 65 65 20 6f 66 20 74 68 69 73 20 62 75 66 66 65 72 2e 22 29 0a 0a 28 64 65 66 76 61 72 2d 6c | ree.of.this.buffer.")..(defvar-l |
| 0e00 | 6f 63 61 6c 20 74 72 65 65 2d 73 69 74 74 65 72 2d 64 65 62 75 67 2d 2d 73 6f 75 72 63 65 2d 63 | ocal.tree-sitter-debug--source-c |
| 0e20 | 6f 64 65 2d 62 75 66 66 65 72 20 6e 69 6c 0a 20 20 22 53 6f 75 72 63 65 20 62 75 66 66 65 72 20 | ode-buffer.nil..."Source.buffer. |
| 0e40 | 6f 66 20 74 68 65 20 73 79 6e 74 61 78 20 74 72 65 65 20 64 69 73 70 6c 61 79 65 64 20 69 6e 20 | of.the.syntax.tree.displayed.in. |
| 0e60 | 74 68 69 73 20 60 74 72 65 65 2d 73 69 74 74 65 72 2d 64 65 62 75 67 27 20 62 75 66 66 65 72 2e | this.`tree-sitter-debug'.buffer. |
| 0e80 | 22 29 0a 0a 28 64 65 66 67 72 6f 75 70 20 74 72 65 65 2d 73 69 74 74 65 72 2d 64 65 62 75 67 20 | ")..(defgroup.tree-sitter-debug. |
| 0ea0 | 6e 69 6c 0a 20 20 22 54 72 65 65 20 73 69 74 74 65 72 20 64 65 62 75 67 20 61 6e 64 20 64 69 73 | nil..."Tree.sitter.debug.and.dis |
| 0ec0 | 70 6c 61 79 20 66 65 61 74 75 72 65 73 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 74 72 65 65 2d 73 | play.features."...:group.'tree-s |
| 0ee0 | 69 74 74 65 72 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 74 72 65 65 2d 73 69 74 74 65 72 2d 64 | itter)..(defcustom.tree-sitter-d |
| 0f00 | 65 62 75 67 2d 6a 75 6d 70 2d 62 75 74 74 6f 6e 73 20 6e 69 6c 0a 20 20 22 57 68 65 74 68 65 72 | ebug-jump-buttons.nil..."Whether |
| 0f20 | 20 74 6f 20 65 6e 61 62 6c 65 20 6a 75 6d 70 2d 74 6f 2d 6e 6f 64 65 20 62 75 74 74 6f 6e 73 20 | .to.enable.jump-to-node.buttons. |
| 0f40 | 69 6e 20 60 74 72 65 65 2d 73 69 74 74 65 72 2d 64 65 62 75 67 27 20 76 69 65 77 73 2e 0a 54 68 | in.`tree-sitter-debug'.views..Th |
| 0f60 | 69 73 20 63 61 6e 20 68 61 76 65 20 61 20 70 65 72 66 6f 72 6d 61 6e 63 65 20 70 65 6e 61 6c 74 | is.can.have.a.performance.penalt |
| 0f80 | 79 20 69 6e 20 6c 61 72 67 65 20 62 75 66 66 65 72 73 2e 22 0a 20 20 3a 74 79 70 65 20 27 62 6f | y.in.large.buffers."...:type.'bo |
| 0fa0 | 6f 6c 65 61 6e 0a 20 20 3a 67 72 6f 75 70 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 64 65 62 75 | olean...:group.'tree-sitter-debu |
| 0fc0 | 67 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 74 72 65 65 2d 73 69 74 74 65 72 2d 64 65 62 75 67 | g)..(defcustom.tree-sitter-debug |
| 0fe0 | 2d 68 69 67 68 6c 69 67 68 74 2d 6a 75 6d 70 2d 72 65 67 69 6f 6e 20 6e 69 6c 0a 20 20 22 57 68 | -highlight-jump-region.nil..."Wh |
| 1000 | 65 74 68 65 72 20 74 6f 20 68 69 67 68 6c 69 67 68 74 20 74 68 65 20 6e 6f 64 65 20 6a 75 6d 70 | ether.to.highlight.the.node.jump |
| 1020 | 65 64 20 74 6f 2e 0a 54 68 69 73 20 6f 6e 6c 79 20 74 61 6b 65 73 20 65 66 66 65 63 74 20 69 66 | ed.to..This.only.takes.effect.if |
| 1040 | 20 60 74 72 65 65 2d 73 69 74 74 65 72 2d 64 65 62 75 67 2d 6a 75 6d 70 2d 62 75 74 74 6f 6e 73 | .`tree-sitter-debug-jump-buttons |
| 1060 | 27 20 69 73 20 6e 6f 6e 2d 6e 69 6c 2e 22 0a 20 20 3a 74 79 70 65 20 27 62 6f 6f 6c 65 61 6e 0a | '.is.non-nil."...:type.'boolean. |
| 1080 | 20 20 3a 67 72 6f 75 70 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 64 65 62 75 67 29 0a 0a 28 64 | ..:group.'tree-sitter-debug)..(d |
| 10a0 | 65 66 75 6e 20 74 72 65 65 2d 73 69 74 74 65 72 2d 64 65 62 75 67 2d 2d 62 75 74 74 6f 6e 2d 6e | efun.tree-sitter-debug--button-n |
| 10c0 | 6f 64 65 2d 6c 6f 6f 6b 75 70 20 28 62 75 74 74 6f 6e 29 0a 20 20 22 54 68 65 20 66 75 6e 63 74 | ode-lookup.(button)..."The.funct |
| 10e0 | 69 6f 6e 20 74 6f 20 63 61 6c 6c 20 77 68 65 6e 20 61 20 60 74 72 65 65 2d 73 69 74 74 65 72 2d | ion.to.call.when.a.`tree-sitter- |
| 1100 | 64 65 62 75 67 27 20 42 55 54 54 4f 4e 20 69 73 20 63 6c 69 63 6b 65 64 2e 22 0a 20 20 28 75 6e | debug'.BUTTON.is.clicked."...(un |
| 1120 | 6c 65 73 73 20 74 72 65 65 2d 73 69 74 74 65 72 2d 64 65 62 75 67 2d 2d 73 6f 75 72 63 65 2d 63 | less.tree-sitter-debug--source-c |
| 1140 | 6f 64 65 2d 62 75 66 66 65 72 0a 20 20 20 20 28 65 72 72 6f 72 20 22 4e 6f 20 73 6f 75 72 63 65 | ode-buffer.....(error."No.source |
| 1160 | 20 63 6f 64 65 20 62 75 66 66 65 72 20 73 65 74 22 29 29 0a 20 20 28 75 6e 6c 65 73 73 20 28 62 | .code.buffer.set"))...(unless.(b |
| 1180 | 75 66 66 65 72 2d 6c 69 76 65 2d 70 20 74 72 65 65 2d 73 69 74 74 65 72 2d 64 65 62 75 67 2d 2d | uffer-live-p.tree-sitter-debug-- |
| 11a0 | 73 6f 75 72 63 65 2d 63 6f 64 65 2d 62 75 66 66 65 72 29 0a 20 20 20 20 28 75 73 65 72 2d 65 72 | source-code-buffer).....(user-er |
| 11c0 | 72 6f 72 20 22 53 6f 75 72 63 65 20 63 6f 64 65 20 62 75 66 66 65 72 20 68 61 73 20 62 65 65 6e | ror."Source.code.buffer.has.been |
| 11e0 | 20 6b 69 6c 6c 65 64 22 29 29 0a 20 20 28 75 6e 6c 65 73 73 20 62 75 74 74 6f 6e 0a 20 20 20 20 | .killed"))...(unless.button..... |
| 1200 | 28 75 73 65 72 2d 65 72 72 6f 72 20 22 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 6d 75 73 74 20 | (user-error."This.function.must. |
| 1220 | 62 65 20 63 61 6c 6c 65 64 20 6f 6e 20 61 20 62 75 74 74 6f 6e 22 29 29 0a 20 20 28 74 72 65 65 | be.called.on.a.button"))...(tree |
| 1240 | 2d 73 69 74 74 65 72 2d 64 65 62 75 67 2d 2d 67 6f 74 6f 2d 6e 6f 64 65 20 74 72 65 65 2d 73 69 | -sitter-debug--goto-node.tree-si |
| 1260 | 74 74 65 72 2d 64 65 62 75 67 2d 2d 73 6f 75 72 63 65 2d 63 6f 64 65 2d 62 75 66 66 65 72 0a 20 | tter-debug--source-code-buffer.. |
| 1280 | 20 20 20 20 20 20 20 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 | ...............................( |
| 12a0 | 62 75 74 74 6f 6e 2d 67 65 74 20 62 75 74 74 6f 6e 20 27 70 6f 69 6e 74 73 2d 74 6f 29 29 29 0a | button-get.button.'points-to))). |
| 12c0 | 0a 28 64 65 66 75 6e 20 74 72 65 65 2d 73 69 74 74 65 72 2d 64 65 62 75 67 2d 2d 67 6f 74 6f 2d | .(defun.tree-sitter-debug--goto- |
| 12e0 | 6e 6f 64 65 20 28 62 75 66 66 65 72 20 62 79 74 65 2d 72 61 6e 67 65 29 0a 20 20 22 53 77 69 74 | node.(buffer.byte-range)..."Swit |
| 1300 | 63 68 20 74 6f 20 42 55 46 46 45 52 2c 20 63 65 6e 74 65 72 69 6e 67 20 6f 6e 20 74 68 65 20 72 | ch.to.BUFFER,.centering.on.the.r |
| 1320 | 65 67 69 6f 6e 20 64 65 66 69 6e 65 64 20 62 79 20 4e 4f 44 45 2e 22 0a 20 20 28 73 77 69 74 63 | egion.defined.by.NODE."...(switc |
| 1340 | 68 2d 74 6f 2d 62 75 66 66 65 72 2d 6f 74 68 65 72 2d 77 69 6e 64 6f 77 20 62 75 66 66 65 72 29 | h-to-buffer-other-window.buffer) |
| 1360 | 0a 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 62 79 74 65 2d 74 6f 2d 70 6f 73 69 74 69 6f 6e 20 | ...(goto-char.(byte-to-position. |
| 1380 | 28 63 61 72 20 62 79 74 65 2d 72 61 6e 67 65 29 29 29 0a 20 20 28 70 75 73 68 2d 6d 61 72 6b 20 | (car.byte-range)))...(push-mark. |
| 13a0 | 28 62 79 74 65 2d 74 6f 2d 70 6f 73 69 74 69 6f 6e 20 28 63 64 72 20 62 79 74 65 2d 72 61 6e 67 | (byte-to-position.(cdr.byte-rang |
| 13c0 | 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 74 72 65 65 2d 73 69 74 74 65 72 2d 64 65 62 | e))..............tree-sitter-deb |
| 13e0 | 75 67 2d 68 69 67 68 6c 69 67 68 74 2d 6a 75 6d 70 2d 72 65 67 69 6f 6e 29 29 0a 0a 28 64 65 66 | ug-highlight-jump-region))..(def |
| 1400 | 75 6e 20 74 72 65 65 2d 73 69 74 74 65 72 2d 64 65 62 75 67 2d 2d 64 69 73 70 6c 61 79 2d 6e 6f | un.tree-sitter-debug--display-no |
| 1420 | 64 65 20 28 6e 61 6d 65 64 2d 70 20 74 79 70 65 20 73 74 61 72 74 2d 62 79 74 65 20 65 6e 64 2d | de.(named-p.type.start-byte.end- |
| 1440 | 62 79 74 65 20 64 65 70 74 68 29 0a 20 20 22 44 69 73 70 6c 61 79 20 4e 4f 44 45 20 74 68 61 74 | byte.depth)..."Display.NODE.that |
| 1460 | 20 61 70 70 65 61 72 73 20 61 74 20 74 68 65 20 67 69 76 65 6e 20 44 45 50 54 48 20 69 6e 20 74 | .appears.at.the.given.DEPTH.in.t |
| 1480 | 68 65 20 73 79 6e 74 61 78 20 74 72 65 65 2e 22 0a 20 20 28 77 68 65 6e 20 6e 61 6d 65 64 2d 70 | he.syntax.tree."...(when.named-p |
| 14a0 | 0a 20 20 20 20 28 69 6e 73 65 72 74 20 28 6d 61 6b 65 2d 73 74 72 69 6e 67 20 28 2a 20 32 20 64 | .....(insert.(make-string.(*.2.d |
| 14c0 | 65 70 74 68 29 20 3f 5c 20 29 29 0a 20 20 20 20 28 6c 65 74 20 28 28 6e 6f 64 65 2d 74 65 78 74 | epth).?\.)).....(let.((node-text |
| 14e0 | 20 28 66 6f 72 6d 61 74 20 22 25 73 3a 5c 6e 22 20 74 79 70 65 29 29 29 0a 20 20 20 20 20 20 28 | .(format."%s:\n".type))).......( |
| 1500 | 69 66 20 74 72 65 65 2d 73 69 74 74 65 72 2d 64 65 62 75 67 2d 6a 75 6d 70 2d 62 75 74 74 6f 6e | if.tree-sitter-debug-jump-button |
| 1520 | 73 0a 20 20 20 20 20 20 20 20 20 20 28 69 6e 73 65 72 74 2d 62 75 74 74 6f 6e 20 6e 6f 64 65 2d | s...........(insert-button.node- |
| 1540 | 74 65 78 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 27 61 | text..........................'a |
| 1560 | 63 74 69 6f 6e 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 64 65 62 75 67 2d 2d 62 75 74 74 6f 6e | ction.'tree-sitter-debug--button |
| 1580 | 2d 6e 6f 64 65 2d 6c 6f 6f 6b 75 70 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | -node-lookup.................... |
| 15a0 | 20 20 20 20 20 20 27 66 6f 6c 6c 6f 77 2d 6c 69 6e 6b 20 74 0a 20 20 20 20 20 20 20 20 20 20 20 | ......'follow-link.t............ |
| 15c0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 27 70 6f 69 6e 74 73 2d 74 6f 20 60 28 2c 73 74 61 72 | ..............'points-to.`(,star |
| 15e0 | 74 2d 62 79 74 65 20 2e 20 2c 65 6e 64 2d 62 79 74 65 29 29 0a 20 20 20 20 20 20 20 20 28 69 6e | t-byte...,end-byte)).........(in |
| 1600 | 73 65 72 74 20 6e 6f 64 65 2d 74 65 78 74 29 29 29 29 29 0a 0a 28 64 65 66 76 61 72 20 74 72 65 | sert.node-text)))))..(defvar.tre |
| 1620 | 65 2d 73 69 74 74 65 72 2d 64 65 62 75 67 2d 74 72 61 76 65 72 73 61 6c 2d 6d 65 74 68 6f 64 20 | e-sitter-debug-traversal-method. |
| 1640 | 3a 6d 61 70 63 29 0a 0a 28 64 65 66 75 6e 20 74 72 65 65 2d 73 69 74 74 65 72 2d 64 65 62 75 67 | :mapc)..(defun.tree-sitter-debug |
| 1660 | 2d 2d 64 69 73 70 6c 61 79 2d 74 72 65 65 20 28 5f 6f 6c 64 2d 74 72 65 65 29 0a 20 20 22 44 69 | --display-tree.(_old-tree)..."Di |
| 1680 | 73 70 6c 61 79 20 74 68 65 20 63 75 72 72 65 6e 74 20 60 74 72 65 65 2d 73 69 74 74 65 72 2d 74 | splay.the.current.`tree-sitter-t |
| 16a0 | 72 65 65 27 2e 22 0a 20 20 3b 3b 20 54 4f 44 4f 3a 20 52 65 2d 72 65 6e 64 65 72 20 6f 6e 6c 79 | ree'."...;;.TODO:.Re-render.only |
| 16c0 | 20 61 66 66 65 63 74 65 64 20 6e 6f 64 65 73 2e 0a 20 20 28 77 68 65 6e 2d 6c 65 74 20 28 28 74 | .affected.nodes....(when-let.((t |
| 16e0 | 72 65 65 20 74 72 65 65 2d 73 69 74 74 65 72 2d 74 72 65 65 29 29 0a 20 20 20 20 28 77 69 74 68 | ree.tree-sitter-tree)).....(with |
| 1700 | 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 74 72 65 65 2d 73 69 74 74 65 72 2d 64 65 62 75 | -current-buffer.tree-sitter-debu |
| 1720 | 67 2d 2d 74 72 65 65 2d 62 75 66 66 65 72 0a 20 20 20 20 20 20 28 6c 65 74 20 28 62 75 66 66 65 | g--tree-buffer.......(let.(buffe |
| 1740 | 72 2d 72 65 61 64 2d 6f 6e 6c 79 29 0a 20 20 20 20 20 20 20 20 28 65 72 61 73 65 2d 62 75 66 66 | r-read-only).........(erase-buff |
| 1760 | 65 72 29 0a 20 20 20 20 20 20 20 20 28 70 63 61 73 65 20 74 72 65 65 2d 73 69 74 74 65 72 2d 64 | er).........(pcase.tree-sitter-d |
| 1780 | 65 62 75 67 2d 74 72 61 76 65 72 73 61 6c 2d 6d 65 74 68 6f 64 0a 20 20 20 20 20 20 20 20 20 20 | ebug-traversal-method........... |
| 17a0 | 28 3a 6d 61 70 63 20 28 74 73 63 2d 74 72 61 76 65 72 73 65 2d 6d 61 70 63 0a 20 20 20 20 20 20 | (:mapc.(tsc-traverse-mapc....... |
| 17c0 | 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 61 20 28 70 72 6f 70 73 29 0a 20 20 20 20 | ............(lambda.(props)..... |
| 17e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 63 61 73 65 2d 6c 65 74 20 28 28 60 5b 2c | ................(pcase-let.((`[, |
| 1800 | 6e 61 6d 65 64 2d 70 20 2c 74 79 70 65 20 2c 73 74 61 72 74 2d 62 79 74 65 20 2c 65 6e 64 2d 62 | named-p.,type.,start-byte.,end-b |
| 1820 | 79 74 65 20 2c 64 65 70 74 68 5d 20 70 72 6f 70 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 | yte.,depth].props))............. |
| 1840 | 20 20 20 20 20 20 20 20 20 20 28 74 72 65 65 2d 73 69 74 74 65 72 2d 64 65 62 75 67 2d 2d 64 69 | ..........(tree-sitter-debug--di |
| 1860 | 73 70 6c 61 79 2d 6e 6f 64 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | splay-node...................... |
| 1880 | 20 20 6e 61 6d 65 64 2d 70 20 74 79 70 65 20 73 74 61 72 74 2d 62 79 74 65 20 65 6e 64 2d 62 79 | ..named-p.type.start-byte.end-by |
| 18a0 | 74 65 20 64 65 70 74 68 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 72 | te.depth)))...................tr |
| 18c0 | 65 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 5b 3a 6e 61 6d 65 64 2d 70 20 3a | ee...................[:named-p.: |
| 18e0 | 74 79 70 65 20 3a 73 74 61 72 74 2d 62 79 74 65 20 3a 65 6e 64 2d 62 79 74 65 20 3a 64 65 70 74 | type.:start-byte.:end-byte.:dept |
| 1900 | 68 5d 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 3a 69 74 65 72 20 28 69 74 65 72 2d 64 6f 20 28 | h]))...........(:iter.(iter-do.( |
| 1920 | 70 72 6f 70 73 20 28 74 73 63 2d 74 72 61 76 65 72 73 65 2d 69 74 65 72 0a 20 20 20 20 20 20 20 | props.(tsc-traverse-iter........ |
| 1940 | 20 20 20 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 72 65 65 20 | ...........................tree. |
| 1960 | 5b 3a 6e 61 6d 65 64 2d 70 20 3a 74 79 70 65 20 3a 73 74 61 72 74 2d 62 79 74 65 20 3a 65 6e 64 | [:named-p.:type.:start-byte.:end |
| 1980 | 2d 62 79 74 65 20 3a 64 65 70 74 68 5d 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | -byte.:depth]))................. |
| 19a0 | 20 20 20 28 70 63 61 73 65 2d 6c 65 74 20 28 28 60 5b 2c 6e 61 6d 65 64 2d 70 20 2c 74 79 70 65 | ...(pcase-let.((`[,named-p.,type |
| 19c0 | 20 2c 73 74 61 72 74 2d 62 79 74 65 20 2c 65 6e 64 2d 62 79 74 65 20 2c 64 65 70 74 68 5d 20 70 | .,start-byte.,end-byte.,depth].p |
| 19e0 | 72 6f 70 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 28 74 72 65 | rops))......................(tre |
| 1a00 | 65 2d 73 69 74 74 65 72 2d 64 65 62 75 67 2d 2d 64 69 73 70 6c 61 79 2d 6e 6f 64 65 0a 20 20 20 | e-sitter-debug--display-node.... |
| 1a20 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 61 6d 65 64 2d 70 20 74 79 70 65 20 | ...................named-p.type. |
| 1a40 | 73 74 61 72 74 2d 62 79 74 65 20 65 6e 64 2d 62 79 74 65 20 64 65 70 74 68 29 29 29 29 0a 20 20 | start-byte.end-byte.depth))))... |
| 1a60 | 20 20 20 20 20 20 20 20 28 3a 64 6f 20 28 74 73 63 2d 74 72 61 76 65 72 73 65 2d 64 6f 20 28 5b | ........(:do.(tsc-traverse-do.([ |
| 1a80 | 6e 61 6d 65 64 2d 70 20 74 79 70 65 20 73 74 61 72 74 2d 62 79 74 65 20 65 6e 64 2d 62 79 74 65 | named-p.type.start-byte.end-byte |
| 1aa0 | 20 64 65 70 74 68 5d 20 74 72 65 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 | .depth].tree)..................( |
| 1ac0 | 74 72 65 65 2d 73 69 74 74 65 72 2d 64 65 62 75 67 2d 2d 64 69 73 70 6c 61 79 2d 6e 6f 64 65 0a | tree-sitter-debug--display-node. |
| 1ae0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 61 6d 65 64 2d 70 20 74 79 70 65 20 73 | ..................named-p.type.s |
| 1b00 | 74 61 72 74 2d 62 79 74 65 20 65 6e 64 2d 62 79 74 65 20 64 65 70 74 68 29 29 29 29 29 29 29 29 | tart-byte.end-byte.depth)))))))) |
| 1b20 | 0a 0a 28 64 65 66 75 6e 20 74 72 65 65 2d 73 69 74 74 65 72 2d 64 65 62 75 67 2d 2d 73 65 74 75 | ..(defun.tree-sitter-debug--setu |
| 1b40 | 70 20 28 29 0a 20 20 22 53 65 74 20 75 70 20 73 79 6e 74 61 78 20 74 72 65 65 20 64 65 62 75 67 | p.()..."Set.up.syntax.tree.debug |
| 1b60 | 67 69 6e 67 20 69 6e 20 74 68 65 20 63 75 72 72 65 6e 74 20 62 75 66 66 65 72 2e 22 0a 20 20 28 | ging.in.the.current.buffer."...( |
| 1b80 | 75 6e 6c 65 73 73 20 28 62 75 66 66 65 72 2d 6c 69 76 65 2d 70 20 74 72 65 65 2d 73 69 74 74 65 | unless.(buffer-live-p.tree-sitte |
| 1ba0 | 72 2d 64 65 62 75 67 2d 2d 74 72 65 65 2d 62 75 66 66 65 72 29 0a 20 20 20 20 28 73 65 74 71 20 | r-debug--tree-buffer).....(setq. |
| 1bc0 | 74 72 65 65 2d 73 69 74 74 65 72 2d 64 65 62 75 67 2d 2d 74 72 65 65 2d 62 75 66 66 65 72 0a 20 | tree-sitter-debug--tree-buffer.. |
| 1be0 | 20 20 20 20 20 20 20 20 20 28 67 65 74 2d 62 75 66 66 65 72 2d 63 72 65 61 74 65 20 28 66 6f 72 | .........(get-buffer-create.(for |
| 1c00 | 6d 61 74 20 22 2a 74 72 65 65 2d 73 69 74 74 65 72 2d 74 72 65 65 3a 20 25 73 2a 22 20 28 62 75 | mat."*tree-sitter-tree:.%s*".(bu |
| 1c20 | 66 66 65 72 2d 6e 61 6d 65 29 29 29 29 29 0a 20 20 28 6c 65 74 20 28 28 73 6f 75 72 63 65 2d 62 | ffer-name)))))...(let.((source-b |
| 1c40 | 75 66 66 65 72 20 28 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 29 29 29 0a 20 20 20 20 28 77 69 | uffer.(current-buffer))).....(wi |
| 1c60 | 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 74 72 65 65 2d 73 69 74 74 65 72 2d 64 65 | th-current-buffer.tree-sitter-de |
| 1c80 | 62 75 67 2d 2d 74 72 65 65 2d 62 75 66 66 65 72 0a 20 20 20 20 20 20 28 62 75 66 66 65 72 2d 64 | bug--tree-buffer.......(buffer-d |
| 1ca0 | 69 73 61 62 6c 65 2d 75 6e 64 6f 29 0a 20 20 20 20 20 20 28 73 65 74 71 20 74 72 65 65 2d 73 69 | isable-undo).......(setq.tree-si |
| 1cc0 | 74 74 65 72 2d 64 65 62 75 67 2d 2d 73 6f 75 72 63 65 2d 63 6f 64 65 2d 62 75 66 66 65 72 20 73 | tter-debug--source-code-buffer.s |
| 1ce0 | 6f 75 72 63 65 2d 62 75 66 66 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 62 75 66 66 65 72 2d | ource-buffer.............buffer- |
| 1d00 | 72 65 61 64 2d 6f 6e 6c 79 20 74 29 29 29 0a 20 20 28 61 64 64 2d 68 6f 6f 6b 20 27 74 72 65 65 | read-only.t)))...(add-hook.'tree |
| 1d20 | 2d 73 69 74 74 65 72 2d 61 66 74 65 72 2d 63 68 61 6e 67 65 2d 66 75 6e 63 74 69 6f 6e 73 20 23 | -sitter-after-change-functions.# |
| 1d40 | 27 74 72 65 65 2d 73 69 74 74 65 72 2d 64 65 62 75 67 2d 2d 64 69 73 70 6c 61 79 2d 74 72 65 65 | 'tree-sitter-debug--display-tree |
| 1d60 | 20 6e 69 6c 20 3a 6c 6f 63 61 6c 29 0a 20 20 28 61 64 64 2d 68 6f 6f 6b 20 27 6b 69 6c 6c 2d 62 | .nil.:local)...(add-hook.'kill-b |
| 1d80 | 75 66 66 65 72 2d 68 6f 6f 6b 20 23 27 74 72 65 65 2d 73 69 74 74 65 72 2d 64 65 62 75 67 2d 2d | uffer-hook.#'tree-sitter-debug-- |
| 1da0 | 74 65 61 72 64 6f 77 6e 20 6e 69 6c 20 3a 6c 6f 63 61 6c 29 0a 20 20 28 64 69 73 70 6c 61 79 2d | teardown.nil.:local)...(display- |
| 1dc0 | 62 75 66 66 65 72 20 74 72 65 65 2d 73 69 74 74 65 72 2d 64 65 62 75 67 2d 2d 74 72 65 65 2d 62 | buffer.tree-sitter-debug--tree-b |
| 1de0 | 75 66 66 65 72 29 0a 20 20 28 74 72 65 65 2d 73 69 74 74 65 72 2d 64 65 62 75 67 2d 2d 64 69 73 | uffer)...(tree-sitter-debug--dis |
| 1e00 | 70 6c 61 79 2d 74 72 65 65 20 6e 69 6c 29 29 0a 0a 28 64 65 66 75 6e 20 74 72 65 65 2d 73 69 74 | play-tree.nil))..(defun.tree-sit |
| 1e20 | 74 65 72 2d 64 65 62 75 67 2d 2d 74 65 61 72 64 6f 77 6e 20 28 29 0a 20 20 22 54 65 61 72 20 64 | ter-debug--teardown.()..."Tear.d |
| 1e40 | 6f 77 6e 20 73 79 6e 74 61 78 20 74 72 65 65 20 64 65 62 75 67 67 69 6e 67 20 69 6e 20 74 68 65 | own.syntax.tree.debugging.in.the |
| 1e60 | 20 63 75 72 72 65 6e 74 20 62 75 66 66 65 72 2e 22 0a 20 20 28 72 65 6d 6f 76 65 2d 68 6f 6f 6b | .current.buffer."...(remove-hook |
| 1e80 | 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 61 66 74 65 72 2d 63 68 61 6e 67 65 2d 66 75 6e 63 74 | .'tree-sitter-after-change-funct |
| 1ea0 | 69 6f 6e 73 20 23 27 74 72 65 65 2d 73 69 74 74 65 72 2d 64 65 62 75 67 2d 2d 64 69 73 70 6c 61 | ions.#'tree-sitter-debug--displa |
| 1ec0 | 79 2d 74 72 65 65 20 3a 6c 6f 63 61 6c 29 0a 20 20 28 77 68 65 6e 20 28 62 75 66 66 65 72 2d 6c | y-tree.:local)...(when.(buffer-l |
| 1ee0 | 69 76 65 2d 70 20 74 72 65 65 2d 73 69 74 74 65 72 2d 64 65 62 75 67 2d 2d 74 72 65 65 2d 62 75 | ive-p.tree-sitter-debug--tree-bu |
| 1f00 | 66 66 65 72 29 0a 20 20 20 20 28 6b 69 6c 6c 2d 62 75 66 66 65 72 20 74 72 65 65 2d 73 69 74 74 | ffer).....(kill-buffer.tree-sitt |
| 1f20 | 65 72 2d 64 65 62 75 67 2d 2d 74 72 65 65 2d 62 75 66 66 65 72 29 0a 20 20 20 20 28 73 65 74 71 | er-debug--tree-buffer).....(setq |
| 1f40 | 20 74 72 65 65 2d 73 69 74 74 65 72 2d 64 65 62 75 67 2d 2d 74 72 65 65 2d 62 75 66 66 65 72 20 | .tree-sitter-debug--tree-buffer. |
| 1f60 | 6e 69 6c 29 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 69 6e 65 2d 6d | nil)))..;;;###autoload.(define-m |
| 1f80 | 69 6e 6f 72 2d 6d 6f 64 65 20 74 72 65 65 2d 73 69 74 74 65 72 2d 64 65 62 75 67 2d 6d 6f 64 65 | inor-mode.tree-sitter-debug-mode |
| 1fa0 | 0a 20 20 22 54 6f 67 67 6c 65 20 73 79 6e 74 61 78 20 74 72 65 65 20 64 65 62 75 67 67 69 6e 67 | ..."Toggle.syntax.tree.debugging |
| 1fc0 | 20 66 6f 72 20 74 68 65 20 63 75 72 72 65 6e 74 20 62 75 66 66 65 72 2e 0a 54 68 69 73 20 6d 6f | .for.the.current.buffer..This.mo |
| 1fe0 | 64 65 20 64 69 73 70 6c 61 79 73 20 74 68 65 20 73 79 6e 74 61 78 20 74 72 65 65 20 69 6e 20 61 | de.displays.the.syntax.tree.in.a |
| 2000 | 6e 6f 74 68 65 72 20 62 75 66 66 65 72 2c 20 61 6e 64 20 6b 65 65 70 73 20 69 74 20 75 70 2d 74 | nother.buffer,.and.keeps.it.up-t |
| 2020 | 6f 2d 64 61 74 65 2e 22 0a 20 20 3a 69 6e 69 74 2d 76 61 6c 75 65 20 6e 69 6c 0a 20 20 3a 67 72 | o-date."...:init-value.nil...:gr |
| 2040 | 6f 75 70 20 27 74 72 65 65 2d 73 69 74 74 65 72 0a 20 20 28 74 72 65 65 2d 73 69 74 74 65 72 2d | oup.'tree-sitter...(tree-sitter- |
| 2060 | 2d 68 61 6e 64 6c 65 2d 64 65 70 65 6e 64 65 6e 74 20 74 72 65 65 2d 73 69 74 74 65 72 2d 64 65 | -handle-dependent.tree-sitter-de |
| 2080 | 62 75 67 2d 6d 6f 64 65 0a 20 20 20 20 23 27 74 72 65 65 2d 73 69 74 74 65 72 2d 64 65 62 75 67 | bug-mode.....#'tree-sitter-debug |
| 20a0 | 2d 2d 73 65 74 75 70 0a 20 20 20 20 23 27 74 72 65 65 2d 73 69 74 74 65 72 2d 64 65 62 75 67 2d | --setup.....#'tree-sitter-debug- |
| 20c0 | 2d 74 65 61 72 64 6f 77 6e 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 | -teardown))..;;;###autoload.(def |
| 20e0 | 75 6e 20 74 72 65 65 2d 73 69 74 74 65 72 2d 64 65 62 75 67 2d 71 75 65 72 79 20 28 70 61 74 74 | un.tree-sitter-debug-query.(patt |
| 2100 | 65 72 6e 73 20 26 6f 70 74 69 6f 6e 61 6c 20 6d 61 74 63 68 65 73 20 74 61 67 2d 61 73 73 69 67 | erns.&optional.matches.tag-assig |
| 2120 | 6e 65 72 29 0a 20 20 22 45 78 65 63 75 74 65 20 71 75 65 72 79 20 50 41 54 54 45 52 4e 53 20 61 | ner)..."Execute.query.PATTERNS.a |
| 2140 | 67 61 69 6e 73 74 20 74 68 65 20 63 75 72 72 65 6e 74 20 73 79 6e 74 61 78 20 74 72 65 65 20 61 | gainst.the.current.syntax.tree.a |
| 2160 | 6e 64 20 72 65 74 75 72 6e 20 63 61 70 74 75 72 65 73 2e 0a 0a 49 66 20 74 68 65 20 6f 70 74 69 | nd.return.captures...If.the.opti |
| 2180 | 6f 6e 61 6c 20 61 72 67 20 4d 41 54 43 48 45 53 20 69 73 20 6e 6f 6e 2d 6e 69 6c 2c 20 6d 61 74 | onal.arg.MATCHES.is.non-nil,.mat |
| 21a0 | 63 68 65 73 20 28 66 72 6f 6d 20 60 74 73 63 2d 71 75 65 72 79 2d 6d 61 74 63 68 65 73 27 29 20 | ches.(from.`tsc-query-matches'). |
| 21c0 | 61 72 65 0a 72 65 74 75 72 6e 65 64 20 69 6e 73 74 65 61 64 20 6f 66 20 63 61 70 74 75 72 65 73 | are.returned.instead.of.captures |
| 21e0 | 20 28 66 72 6f 6d 20 60 74 73 63 2d 71 75 65 72 79 2d 63 61 70 74 75 72 65 73 27 29 2e 0a 0a 49 | .(from.`tsc-query-captures')...I |
| 2200 | 66 20 74 68 65 20 6f 70 74 69 6f 6e 61 6c 20 61 72 67 20 54 41 47 2d 41 53 53 49 47 4e 45 52 20 | f.the.optional.arg.TAG-ASSIGNER. |
| 2220 | 69 73 20 6e 6f 6e 2d 6e 69 6c 2c 20 69 74 20 69 73 20 70 61 73 73 65 64 20 74 6f 20 60 74 73 63 | is.non-nil,.it.is.passed.to.`tsc |
| 2240 | 2d 6d 61 6b 65 2d 71 75 65 72 79 27 20 74 6f 0a 61 73 73 69 67 6e 20 63 75 73 74 6f 6d 20 74 61 | -make-query'.to.assign.custom.ta |
| 2260 | 67 73 20 74 6f 20 63 61 70 74 75 72 65 20 6e 61 6d 65 73 2e 0a 0a 54 68 69 73 20 66 75 6e 63 74 | gs.to.capture.names...This.funct |
| 2280 | 69 6f 6e 20 69 73 20 70 72 69 6d 61 72 69 6c 79 20 75 73 65 66 75 6c 20 66 6f 72 20 64 65 62 75 | ion.is.primarily.useful.for.debu |
| 22a0 | 67 67 69 6e 67 20 70 75 72 70 6f 73 65 2e 20 4f 74 68 65 72 20 70 61 63 6b 61 67 65 73 20 73 68 | gging.purpose..Other.packages.sh |
| 22c0 | 6f 75 6c 64 0a 62 75 69 6c 64 20 71 75 65 72 69 65 73 20 61 6e 64 20 63 75 72 73 6f 72 73 20 6f | ould.build.queries.and.cursors.o |
| 22e0 | 6e 63 65 2c 20 74 68 65 6e 20 72 65 75 73 65 20 74 68 65 6d 2e 22 0a 20 20 28 6c 65 74 2a 20 28 | nce,.then.reuse.them."...(let*.( |
| 2300 | 28 71 75 65 72 79 20 28 74 73 63 2d 6d 61 6b 65 2d 71 75 65 72 79 20 74 72 65 65 2d 73 69 74 74 | (query.(tsc-make-query.tree-sitt |
| 2320 | 65 72 2d 6c 61 6e 67 75 61 67 65 20 70 61 74 74 65 72 6e 73 20 74 61 67 2d 61 73 73 69 67 6e 65 | er-language.patterns.tag-assigne |
| 2340 | 72 29 29 0a 20 20 20 20 20 20 20 20 20 28 72 6f 6f 74 2d 6e 6f 64 65 20 28 74 73 63 2d 72 6f 6f | r))..........(root-node.(tsc-roo |
| 2360 | 74 2d 6e 6f 64 65 20 74 72 65 65 2d 73 69 74 74 65 72 2d 74 72 65 65 29 29 29 0a 20 20 20 20 28 | t-node.tree-sitter-tree))).....( |
| 2380 | 74 73 63 2d 2d 77 69 74 68 6f 75 74 2d 72 65 73 74 72 69 63 74 69 6f 6e 0a 20 20 20 20 20 20 28 | tsc--without-restriction.......( |
| 23a0 | 69 66 20 6d 61 74 63 68 65 73 0a 20 20 20 20 20 20 20 20 20 20 28 74 73 63 2d 71 75 65 72 79 2d | if.matches...........(tsc-query- |
| 23c0 | 6d 61 74 63 68 65 73 20 71 75 65 72 79 20 72 6f 6f 74 2d 6e 6f 64 65 20 23 27 74 73 63 2d 2d 62 | matches.query.root-node.#'tsc--b |
| 23e0 | 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 29 0a 20 | uffer-substring-no-properties).. |
| 2400 | 20 20 20 20 20 20 20 28 74 73 63 2d 71 75 65 72 79 2d 63 61 70 74 75 72 65 73 20 71 75 65 72 79 | .......(tsc-query-captures.query |
| 2420 | 20 72 6f 6f 74 2d 6e 6f 64 65 20 23 27 74 73 63 2d 2d 62 75 66 66 65 72 2d 73 75 62 73 74 72 69 | .root-node.#'tsc--buffer-substri |
| 2440 | 6e 67 2d 6e 6f 2d 70 72 6f 70 65 72 74 69 65 73 29 29 29 29 29 0a 0a 3b 3b 3b 20 54 4f 44 4f 3a | ng-no-properties)))))..;;;.TODO: |
| 2460 | 20 4b 69 6c 6c 20 74 72 65 65 2d 62 75 66 66 65 72 20 77 68 65 6e 20 60 74 72 65 65 2d 73 69 74 | .Kill.tree-buffer.when.`tree-sit |
| 2480 | 74 65 72 27 20 6d 69 6e 6f 72 20 6d 6f 64 65 20 69 73 20 74 75 72 6e 65 64 20 6f 66 66 2e 0a 0a | ter'.minor.mode.is.turned.off... |
| 24a0 | 28 70 72 6f 76 69 64 65 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 64 65 62 75 67 29 0a 3b 3b 3b | (provide.'tree-sitter-debug).;;; |
| 24c0 | 20 74 72 65 65 2d 73 69 74 74 65 72 2d 64 65 62 75 67 2e 65 6c 20 65 6e 64 73 20 68 65 72 65 0a | .tree-sitter-debug.el.ends.here. |
| 24e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 2500 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 2520 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 2540 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 2560 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 2580 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 25a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 25c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 25e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 2600 | 74 72 65 65 2d 73 69 74 74 65 72 2d 32 30 32 32 30 32 31 32 2e 31 36 33 32 2f 74 72 65 65 2d 73 | tree-sitter-20220212.1632/tree-s |
| 2620 | 69 74 74 65 72 2d 65 78 74 72 61 73 2e 65 6c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | itter-extras.el................. |
| 2640 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 2660 | 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 |
| 2680 | 30 30 30 36 34 31 31 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 37 33 34 35 00 20 30 00 00 00 | 0006411.00000000000.017345..0... |
| 26a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 26c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 26e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 2700 | 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................... |
| 2720 | 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................... |
| 2740 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 2760 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 2780 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 27a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 27c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 27e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 2800 | 3b 3b 3b 20 74 72 65 65 2d 73 69 74 74 65 72 2d 65 78 74 72 61 73 2e 65 6c 20 2d 2d 2d 20 45 78 | ;;;.tree-sitter-extras.el.---.Ex |
| 2820 | 74 72 61 20 66 75 6e 63 74 69 6f 6e 61 6c 69 74 69 65 73 20 6f 66 20 74 72 65 65 2d 73 69 74 74 | tra.functionalities.of.tree-sitt |
| 2840 | 65 72 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 63 6f 64 69 6e | er.-*-.lexical-binding:.t;.codin |
| 2860 | 67 3a 20 75 74 66 2d 38 20 2d 2a 2d 0a 0a 3b 3b 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 | g:.utf-8.-*-..;;.Copyright.(C).2 |
| 2880 | 30 32 30 20 20 54 75 e1 ba a5 6e 2d 41 6e 68 20 4e 67 75 79 e1 bb 85 6e 0a 3b 3b 0a 3b 3b 20 41 | 020..Tu...n-Anh.Nguy...n.;;.;;.A |
| 28a0 | 75 74 68 6f 72 3a 20 54 75 e1 ba a5 6e 2d 41 6e 68 20 4e 67 75 79 e1 bb 85 6e 20 3c 75 62 6f 6c | uthor:.Tu...n-Anh.Nguy...n.<ubol |
| 28c0 | 6f 6e 74 6f 6e 40 67 6d 61 69 6c 2e 63 6f 6d 3e 0a 3b 3b 20 53 50 44 58 2d 4c 69 63 65 6e 73 65 | onton@gmail.com>.;;.SPDX-License |
| 28e0 | 2d 49 64 65 6e 74 69 66 69 65 72 3a 20 4d 49 54 0a 0a 3b 3b 3b 20 43 6f 6d 6d 65 6e 74 61 72 79 | -Identifier:.MIT..;;;.Commentary |
| 2900 | 3a 0a 0a 3b 3b 20 54 68 69 73 20 66 69 6c 65 20 63 6f 6e 74 61 69 6e 73 20 65 78 74 72 61 20 66 | :..;;.This.file.contains.extra.f |
| 2920 | 75 6e 63 74 69 6f 6e 61 6c 69 74 69 65 73 20 62 75 69 6c 74 20 6f 6e 20 74 6f 70 20 6f 66 20 60 | unctionalities.built.on.top.of.` |
| 2940 | 74 72 65 65 2d 73 69 74 74 65 72 2d 6d 6f 64 65 27 2e 0a 3b 3b 20 54 68 65 79 20 61 72 65 20 63 | tree-sitter-mode'..;;.They.are.c |
| 2960 | 6f 6e 73 69 64 65 72 65 64 20 65 78 70 65 72 69 6d 65 6e 74 61 6c 2c 20 61 6e 64 20 73 75 62 6a | onsidered.experimental,.and.subj |
| 2980 | 65 63 74 65 64 20 74 6f 20 66 72 65 71 75 65 6e 74 20 63 68 61 6e 67 65 73 2e 0a 0a 3b 3b 3b 20 | ected.to.frequent.changes...;;;. |
| 29a0 | 43 6f 64 65 3a 0a 0a 28 72 65 71 75 69 72 65 20 27 74 72 65 65 2d 73 69 74 74 65 72 29 0a 0a 28 | Code:..(require.'tree-sitter)..( |
| 29c0 | 65 76 61 6c 2d 77 68 65 6e 2d 63 6f 6d 70 69 6c 65 0a 20 20 28 72 65 71 75 69 72 65 20 27 73 75 | eval-when-compile...(require.'su |
| 29e0 | 62 72 2d 78 29 29 0a 0a 28 64 65 63 6c 61 72 65 2d 66 75 6e 63 74 69 6f 6e 20 70 69 78 65 6c 2d | br-x))..(declare-function.pixel- |
| 2a00 | 70 6f 73 6e 2d 79 2d 61 74 2d 70 6f 69 6e 74 20 22 65 78 74 3a 70 69 78 65 6c 2d 73 63 72 6f 6c | posn-y-at-point."ext:pixel-scrol |
| 2a20 | 6c 22 29 0a 28 64 65 63 6c 61 72 65 2d 66 75 6e 63 74 69 6f 6e 20 70 69 78 65 6c 2d 73 63 72 6f | l").(declare-function.pixel-scro |
| 2a40 | 6c 6c 2d 70 69 78 65 6c 2d 75 70 20 22 65 78 74 3a 70 69 78 65 6c 2d 73 63 72 6f 6c 6c 22 29 0a | ll-pixel-up."ext:pixel-scroll"). |
| 2a60 | 28 64 65 63 6c 61 72 65 2d 66 75 6e 63 74 69 6f 6e 20 70 69 78 65 6c 2d 73 63 72 6f 6c 6c 2d 70 | (declare-function.pixel-scroll-p |
| 2a80 | 69 78 65 6c 2d 64 6f 77 6e 20 22 65 78 74 3a 70 69 78 65 6c 2d 73 63 72 6f 6c 6c 22 29 0a 0a 28 | ixel-down."ext:pixel-scroll")..( |
| 2aa0 | 64 65 66 63 75 73 74 6f 6d 20 74 72 65 65 2d 73 69 74 74 65 72 2d 73 61 76 65 2d 65 78 63 75 72 | defcustom.tree-sitter-save-excur |
| 2ac0 | 73 69 6f 6e 2d 74 72 79 2d 68 61 72 64 20 6e 69 6c 0a 20 20 22 57 68 65 74 68 65 72 20 60 74 72 | sion-try-hard.nil..."Whether.`tr |
| 2ae0 | 65 65 2d 73 69 74 74 65 72 2d 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e 27 20 73 68 6f 75 6c 64 | ee-sitter-save-excursion'.should |
| 2b00 | 20 74 72 79 20 61 73 20 68 61 72 64 20 61 73 20 70 6f 73 73 69 62 6c 65 2e 22 0a 20 20 3a 74 79 | .try.as.hard.as.possible."...:ty |
| 2b20 | 70 65 20 27 62 6f 6f 6c 65 61 6e 0a 20 20 3a 67 72 6f 75 70 20 27 74 72 65 65 2d 73 69 74 74 65 | pe.'boolean...:group.'tree-sitte |
| 2b40 | 72 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 74 72 65 65 2d 73 69 74 74 65 72 2d 73 61 76 65 2d | r)..(defcustom.tree-sitter-save- |
| 2b60 | 65 78 63 75 72 73 69 6f 6e 2d 70 69 78 65 6c 77 69 73 65 0a 20 20 28 6e 6f 74 20 28 6e 75 6c 6c | excursion-pixelwise...(not.(null |
| 2b80 | 20 28 72 65 71 75 69 72 65 20 27 70 69 78 65 6c 2d 73 63 72 6f 6c 6c 20 6e 69 6c 20 3a 6e 6f 65 | .(require.'pixel-scroll.nil.:noe |
| 2ba0 | 72 72 6f 72 29 29 29 0a 20 20 22 57 68 65 74 68 65 72 20 60 74 72 65 65 2d 73 69 74 74 65 72 2d | rror)))..."Whether.`tree-sitter- |
| 2bc0 | 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e 27 20 73 68 6f 75 6c 64 20 72 65 73 74 6f 72 65 20 74 | save-excursion'.should.restore.t |
| 2be0 | 68 65 20 6c 6f 63 61 74 69 6f 6e 20 70 69 78 65 6c 77 69 73 65 2e 22 0a 20 20 3a 74 79 70 65 20 | he.location.pixelwise."...:type. |
| 2c00 | 27 62 6f 6f 6c 65 61 6e 0a 20 20 3a 67 72 6f 75 70 20 27 74 72 65 65 2d 73 69 74 74 65 72 0a 20 | 'boolean...:group.'tree-sitter.. |
| 2c20 | 20 3a 73 65 74 20 28 6c 61 6d 62 64 61 20 28 73 79 6d 62 6f 6c 20 76 61 6c 75 65 29 0a 20 20 20 | .:set.(lambda.(symbol.value).... |
| 2c40 | 20 20 20 20 20 20 28 77 68 65 6e 20 28 61 6e 64 20 76 61 6c 75 65 20 28 6e 75 6c 6c 20 28 72 65 | ......(when.(and.value.(null.(re |
| 2c60 | 71 75 69 72 65 20 27 70 69 78 65 6c 2d 73 63 72 6f 6c 6c 20 6e 69 6c 20 3a 6e 6f 65 72 72 6f 72 | quire.'pixel-scroll.nil.:noerror |
| 2c80 | 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 75 73 65 72 2d 65 72 72 6f 72 20 22 50 69 78 65 | )))............(user-error."Pixe |
| 2ca0 | 6c 77 69 73 65 20 6c 6f 63 61 74 69 6f 6e 20 72 65 73 74 6f 72 61 74 69 6f 6e 20 72 65 71 75 69 | lwise.location.restoration.requi |
| 2cc0 | 72 65 73 20 60 70 69 78 65 6c 2d 73 63 72 6f 6c 6c 27 3b 20 79 6f 75 20 6d 61 79 20 6e 65 65 64 | res.`pixel-scroll';.you.may.need |
| 2ce0 | 20 74 6f 20 75 70 67 72 61 64 65 20 45 6d 61 63 73 22 29 29 0a 20 20 20 20 20 20 20 20 20 28 73 | .to.upgrade.Emacs"))..........(s |
| 2d00 | 65 74 2d 64 65 66 61 75 6c 74 20 73 79 6d 62 6f 6c 20 76 61 6c 75 65 29 29 29 0a 0a 28 64 65 66 | et-default.symbol.value)))..(def |
| 2d20 | 75 6e 20 74 72 65 65 2d 73 69 74 74 65 72 2d 2d 72 65 63 65 6e 74 65 72 20 28 73 63 72 65 65 6e | un.tree-sitter--recenter.(screen |
| 2d40 | 2d 6c 69 6e 65 20 26 6f 70 74 69 6f 6e 61 6c 20 70 69 78 65 6c 2d 70 6f 73 6e 2d 79 29 0a 20 20 | -line.&optional.pixel-posn-y)... |
| 2d60 | 22 43 65 6e 74 65 72 20 70 6f 69 6e 74 20 6f 6e 20 53 43 52 45 45 4e 2d 4c 49 4e 45 2c 20 74 68 | "Center.point.on.SCREEN-LINE,.th |
| 2d80 | 65 6e 20 6f 70 74 69 6f 6e 61 6c 6c 79 20 73 63 72 6f 6c 6c 20 74 6f 20 50 49 58 45 4c 2d 50 4f | en.optionally.scroll.to.PIXEL-PO |
| 2da0 | 53 4e 2d 59 2e 22 0a 20 20 28 72 65 63 65 6e 74 65 72 20 73 63 72 65 65 6e 2d 6c 69 6e 65 29 0a | SN-Y."...(recenter.screen-line). |
| 2dc0 | 20 20 28 77 68 65 6e 20 70 69 78 65 6c 2d 70 6f 73 6e 2d 79 0a 20 20 20 20 28 6c 65 74 20 28 28 | ..(when.pixel-posn-y.....(let.(( |
| 2de0 | 64 79 20 28 2d 20 28 70 69 78 65 6c 2d 70 6f 73 6e 2d 79 2d 61 74 2d 70 6f 69 6e 74 29 20 70 69 | dy.(-.(pixel-posn-y-at-point).pi |
| 2e00 | 78 65 6c 2d 70 6f 73 6e 2d 79 29 29 29 0a 20 20 20 20 20 20 28 69 66 20 28 3e 20 64 79 20 30 29 | xel-posn-y))).......(if.(>.dy.0) |
| 2e20 | 0a 20 20 20 20 20 20 20 20 20 20 28 70 69 78 65 6c 2d 73 63 72 6f 6c 6c 2d 70 69 78 65 6c 2d 64 | ...........(pixel-scroll-pixel-d |
| 2e40 | 6f 77 6e 20 64 79 29 0a 20 20 20 20 20 20 20 20 28 70 69 78 65 6c 2d 73 63 72 6f 6c 6c 2d 70 69 | own.dy).........(pixel-scroll-pi |
| 2e60 | 78 65 6c 2d 75 70 20 28 2d 20 64 79 29 29 29 29 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f | xel-up.(-.dy))))))..;;;###autolo |
| 2e80 | 61 64 0a 28 64 65 66 6d 61 63 72 6f 20 74 72 65 65 2d 73 69 74 74 65 72 2d 73 61 76 65 2d 65 78 | ad.(defmacro.tree-sitter-save-ex |
| 2ea0 | 63 75 72 73 69 6f 6e 20 28 26 72 65 73 74 20 62 6f 64 79 29 0a 20 20 22 53 61 76 65 20 74 68 65 | cursion.(&rest.body)..."Save.the |
| 2ec0 | 20 63 75 72 72 65 6e 74 20 6c 6f 63 61 74 69 6f 6e 20 77 69 74 68 69 6e 20 74 68 65 20 73 79 6e | .current.location.within.the.syn |
| 2ee0 | 74 61 78 20 74 72 65 65 3b 20 65 78 65 63 75 74 65 20 42 4f 44 59 3b 20 72 65 73 74 6f 72 65 20 | tax.tree;.execute.BODY;.restore. |
| 2f00 | 69 74 2e 0a 0a 49 66 20 74 68 65 20 6f 72 69 67 69 6e 61 6c 20 6c 6f 63 61 74 69 6f 6e 20 63 61 | it...If.the.original.location.ca |
| 2f20 | 6e 6e 6f 74 20 62 65 20 72 65 73 74 6f 72 65 64 20 64 75 65 20 74 6f 20 74 68 65 20 73 79 6e 74 | nnot.be.restored.due.to.the.synt |
| 2f40 | 61 78 20 74 72 65 65 20 63 68 61 6e 67 69 6e 67 20 74 6f 6f 0a 6d 75 63 68 2c 20 74 68 69 73 20 | ax.tree.changing.too.much,.this. |
| 2f60 | 6d 61 63 72 6f 20 62 65 68 61 76 65 73 20 6c 69 6b 65 20 60 73 61 76 65 2d 65 78 63 75 72 73 69 | macro.behaves.like.`save-excursi |
| 2f80 | 6f 6e 27 2c 20 75 6e 6c 65 73 73 0a 60 74 72 65 65 2d 73 69 74 74 65 72 2d 73 61 76 65 2d 65 78 | on',.unless.`tree-sitter-save-ex |
| 2fa0 | 63 75 72 73 69 6f 6e 2d 74 72 79 2d 68 61 72 64 27 20 69 73 20 6e 6f 6e 2d 6e 69 6c 2c 20 69 6e | cursion-try-hard'.is.non-nil,.in |
| 2fc0 | 20 77 68 69 63 68 20 63 61 73 65 20 69 74 20 74 72 69 65 73 20 74 6f 20 67 65 74 0a 61 73 20 63 | .which.case.it.tries.to.get.as.c |
| 2fe0 | 6c 6f 73 65 20 61 73 20 70 6f 73 73 69 62 6c 65 20 74 6f 20 74 68 65 20 6f 72 69 67 69 6e 61 6c | lose.as.possible.to.the.original |
| 3000 | 20 6c 6f 63 61 74 69 6f 6e 2e 0a 0a 41 66 74 65 72 20 74 68 65 20 6c 6f 63 61 74 69 6f 6e 20 69 | .location...After.the.location.i |
| 3020 | 73 20 72 65 73 74 6f 72 65 64 2c 20 74 68 65 20 62 75 66 66 65 72 20 74 65 78 74 20 69 73 20 73 | s.restored,.the.buffer.text.is.s |
| 3040 | 63 72 6f 6c 6c 65 64 20 73 6f 20 74 68 61 74 20 70 6f 69 6e 74 20 73 74 61 79 73 0a 61 74 20 72 | crolled.so.that.point.stays.at.r |
| 3060 | 6f 75 67 68 6c 79 20 74 68 65 20 73 61 6d 65 20 76 65 72 74 69 63 61 6c 20 73 63 72 65 65 6e 20 | oughly.the.same.vertical.screen. |
| 3080 | 70 6f 73 69 74 69 6f 6e 2e 20 49 66 20 60 70 69 78 65 6c 2d 73 63 72 6f 6c 6c 27 20 69 73 20 61 | position..If.`pixel-scroll'.is.a |
| 30a0 | 76 61 69 6c 61 62 6c 65 20 61 6e 64 0a 60 74 72 65 65 2d 73 69 74 74 65 72 2d 73 61 76 65 2d 65 | vailable.and.`tree-sitter-save-e |
| 30c0 | 78 63 75 72 73 69 6f 6e 2d 70 69 78 65 6c 77 69 73 65 27 20 69 73 20 6e 6f 6e 2d 6e 69 6c 2c 20 | xcursion-pixelwise'.is.non-nil,. |
| 30e0 | 70 69 78 65 6c 77 69 73 65 20 73 63 72 6f 6c 6c 69 6e 67 20 69 73 20 75 73 65 64 0a 69 6e 73 74 | pixelwise.scrolling.is.used.inst |
| 3100 | 65 61 64 2c 20 74 6f 20 6d 61 6b 65 20 74 68 69 73 20 72 65 73 74 6f 72 61 74 69 6f 6e 20 65 78 | ead,.to.make.this.restoration.ex |
| 3120 | 61 63 74 2e 22 0a 20 20 28 64 65 63 6c 61 72 65 20 28 69 6e 64 65 6e 74 20 30 29 29 0a 20 20 60 | act."...(declare.(indent.0))...` |
| 3140 | 28 6c 65 74 2a 20 28 28 70 20 28 70 6f 69 6e 74 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 6f 6c | (let*.((p.(point))...........(ol |
| 3160 | 64 2d 6e 6f 64 65 20 28 74 72 65 65 2d 73 69 74 74 65 72 2d 6e 6f 64 65 2d 61 74 2d 70 6f 73 29 | d-node.(tree-sitter-node-at-pos) |
| 3180 | 29 0a 20 20 20 20 20 20 20 20 20 20 28 73 74 65 70 73 20 28 74 73 63 2d 2d 6e 6f 64 65 2d 73 74 | )...........(steps.(tsc--node-st |
| 31a0 | 65 70 73 20 6f 6c 64 2d 6e 6f 64 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 64 65 6c 74 61 20 | eps.old-node))...........(delta. |
| 31c0 | 28 2d 20 70 20 28 74 73 63 2d 6e 6f 64 65 2d 73 74 61 72 74 2d 70 6f 73 69 74 69 6f 6e 20 6f 6c | (-.p.(tsc-node-start-position.ol |
| 31e0 | 64 2d 6e 6f 64 65 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 73 63 72 65 65 6e 2d 6c 69 6e 65 | d-node)))...........(screen-line |
| 3200 | 20 28 2d 20 28 63 6f 75 6e 74 2d 73 63 72 65 65 6e 2d 6c 69 6e 65 73 20 28 77 69 6e 64 6f 77 2d | .(-.(count-screen-lines.(window- |
| 3220 | 73 74 61 72 74 29 20 70 29 20 31 29 29 0a 20 20 20 20 20 20 20 20 20 20 28 70 69 78 65 6c 2d 70 | start).p).1))...........(pixel-p |
| 3240 | 6f 73 6e 2d 79 20 2c 28 69 66 20 74 72 65 65 2d 73 69 74 74 65 72 2d 73 61 76 65 2d 65 78 63 75 | osn-y.,(if.tree-sitter-save-excu |
| 3260 | 72 73 69 6f 6e 2d 70 69 78 65 6c 77 69 73 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | rsion-pixelwise................. |
| 3280 | 20 20 20 20 20 20 20 20 20 20 20 20 20 27 28 70 69 78 65 6c 2d 70 6f 73 6e 2d 79 2d 61 74 2d 70 | .............'(pixel-posn-y-at-p |
| 32a0 | 6f 69 6e 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | oint)........................... |
| 32c0 | 20 6e 69 6c 29 29 29 0a 20 20 20 20 20 28 75 6e 77 69 6e 64 2d 70 72 6f 74 65 63 74 0a 20 20 20 | .nil)))......(unwind-protect.... |
| 32e0 | 20 20 20 20 20 20 28 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e 20 2c 40 62 6f 64 79 29 0a 20 20 | ......(save-excursion.,@body)... |
| 3300 | 20 20 20 20 20 28 63 6f 6e 64 69 74 69 6f 6e 2d 63 61 73 65 20 65 72 72 0a 20 20 20 20 20 20 20 | .....(condition-case.err........ |
| 3320 | 20 20 20 20 28 77 68 65 6e 2d 6c 65 74 20 28 28 6e 6f 64 65 20 28 74 73 63 2d 2d 6e 6f 64 65 2d | ....(when-let.((node.(tsc--node- |
| 3340 | 66 72 6f 6d 2d 73 74 65 70 73 20 74 72 65 65 2d 73 69 74 74 65 72 2d 74 72 65 65 20 73 74 65 70 | from-steps.tree-sitter-tree.step |
| 3360 | 73 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 72 20 28 2b 20 | s)))..............(goto-char.(+. |
| 3380 | 64 65 6c 74 61 20 28 74 73 63 2d 6e 6f 64 65 2d 73 74 61 72 74 2d 70 6f 73 69 74 69 6f 6e 20 6e | delta.(tsc-node-start-position.n |
| 33a0 | 6f 64 65 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 74 72 65 65 2d 73 69 74 74 65 72 | ode)))..............(tree-sitter |
| 33c0 | 2d 2d 72 65 63 65 6e 74 65 72 20 73 63 72 65 65 6e 2d 6c 69 6e 65 20 70 69 78 65 6c 2d 70 6f 73 | --recenter.screen-line.pixel-pos |
| 33e0 | 6e 2d 79 29 29 0a 20 20 20 20 20 20 20 20 20 28 74 73 63 2d 2d 69 6e 76 61 6c 69 64 2d 6e 6f 64 | n-y))..........(tsc--invalid-nod |
| 3400 | 65 2d 73 74 65 70 0a 20 20 20 20 20 20 20 20 20 20 2c 40 28 77 68 65 6e 20 74 72 65 65 2d 73 69 | e-step...........,@(when.tree-si |
| 3420 | 74 74 65 72 2d 73 61 76 65 2d 65 78 63 75 72 73 69 6f 6e 2d 74 72 79 2d 68 61 72 64 0a 20 20 20 | tter-save-excursion-try-hard.... |
| 3440 | 20 20 20 20 20 20 20 20 20 20 20 27 28 28 67 6f 74 6f 2d 63 68 61 72 20 28 74 73 63 2d 6e 6f 64 | ...........'((goto-char.(tsc-nod |
| 3460 | 65 2d 73 74 61 72 74 2d 70 6f 73 69 74 69 6f 6e 20 28 63 61 64 72 20 65 72 72 29 29 29 0a 20 20 | e-start-position.(cadr.err)))... |
| 3480 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 74 72 65 65 2d 73 69 74 74 65 72 2d 2d 72 65 63 65 | ..............(tree-sitter--rece |
| 34a0 | 6e 74 65 72 20 73 63 72 65 65 6e 2d 6c 69 6e 65 20 70 69 78 65 6c 2d 70 6f 73 6e 2d 79 29 29 29 | nter.screen-line.pixel-posn-y))) |
| 34c0 | 29 29 29 29 29 0a 0a 28 70 72 6f 76 69 64 65 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 65 78 74 | )))))..(provide.'tree-sitter-ext |
| 34e0 | 72 61 73 29 0a 3b 3b 3b 20 74 72 65 65 2d 73 69 74 74 65 72 2d 65 78 74 72 61 73 2e 65 6c 20 65 | ras).;;;.tree-sitter-extras.el.e |
| 3500 | 6e 64 73 20 68 65 72 65 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | nds.here........................ |
| 3520 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3540 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3560 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3580 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 35a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 35c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 35e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3600 | 74 72 65 65 2d 73 69 74 74 65 72 2d 32 30 32 32 30 32 31 32 2e 31 36 33 32 2f 74 72 65 65 2d 73 | tree-sitter-20220212.1632/tree-s |
| 3620 | 69 74 74 65 72 2d 68 6c 2e 65 6c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | itter-hl.el..................... |
| 3640 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3660 | 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 |
| 3680 | 30 30 36 35 35 31 30 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 36 34 34 37 00 20 30 00 00 00 | 0065510.00000000000.016447..0... |
| 36a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 36c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 36e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3700 | 00 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................... |
| 3720 | 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................... |
| 3740 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3760 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3780 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 37a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 37c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 37e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 3800 | 3b 3b 3b 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2e 65 6c 20 2d 2d 2d 20 53 79 6e 74 61 78 | ;;;.tree-sitter-hl.el.---.Syntax |
| 3820 | 20 68 69 67 68 6c 69 67 68 74 69 6e 67 20 62 61 73 65 64 20 6f 6e 20 74 72 65 65 2d 73 69 74 74 | .highlighting.based.on.tree-sitt |
| 3840 | 65 72 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 63 6f 64 69 6e | er.-*-.lexical-binding:.t;.codin |
| 3860 | 67 3a 20 75 74 66 2d 38 20 2d 2a 2d 0a 0a 3b 3b 20 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 | g:.utf-8.-*-..;;.Copyright.(C).2 |
| 3880 | 30 32 30 20 20 54 75 e1 ba a5 6e 2d 41 6e 68 20 4e 67 75 79 e1 bb 85 6e 0a 3b 3b 0a 3b 3b 20 41 | 020..Tu...n-Anh.Nguy...n.;;.;;.A |
| 38a0 | 75 74 68 6f 72 3a 20 54 75 e1 ba a5 6e 2d 41 6e 68 20 4e 67 75 79 e1 bb 85 6e 20 3c 75 62 6f 6c | uthor:.Tu...n-Anh.Nguy...n.<ubol |
| 38c0 | 6f 6e 74 6f 6e 40 67 6d 61 69 6c 2e 63 6f 6d 3e 0a 3b 3b 20 20 20 20 20 20 20 20 20 54 69 6d 6f | onton@gmail.com>.;;.........Timo |
| 38e0 | 20 76 6f 6e 20 48 61 72 74 7a 20 3c 63 30 75 6e 74 6c 69 7a 7a 69 40 67 6d 61 69 6c 2e 63 6f 6d | .von.Hartz.<c0untlizzi@gmail.com |
| 3900 | 3e 0a 3b 3b 20 53 50 44 58 2d 4c 69 63 65 6e 73 65 2d 49 64 65 6e 74 69 66 69 65 72 3a 20 4d 49 | >.;;.SPDX-License-Identifier:.MI |
| 3920 | 54 0a 0a 3b 3b 3b 20 43 6f 6d 6d 65 6e 74 61 72 79 3a 0a 0a 3b 3b 20 54 68 69 73 20 66 69 6c 65 | T..;;;.Commentary:..;;.This.file |
| 3940 | 20 69 6d 70 6c 65 6d 65 6e 74 73 20 61 20 6e 65 77 20 73 79 6e 74 61 78 20 68 69 67 68 6c 69 67 | .implements.a.new.syntax.highlig |
| 3960 | 68 74 69 6e 67 20 62 61 73 65 64 20 6f 6e 20 60 74 72 65 65 2d 73 69 74 74 65 72 27 2e 0a 0a 3b | hting.based.on.`tree-sitter'...; |
| 3980 | 3b 3b 20 43 6f 64 65 3a 0a 0a 28 72 65 71 75 69 72 65 20 27 74 72 65 65 2d 73 69 74 74 65 72 29 | ;;.Code:..(require.'tree-sitter) |
| 39a0 | 0a 0a 28 65 76 61 6c 2d 77 68 65 6e 2d 63 6f 6d 70 69 6c 65 0a 20 20 28 72 65 71 75 69 72 65 20 | ..(eval-when-compile...(require. |
| 39c0 | 27 63 6c 2d 6c 69 62 29 29 0a 0a 3b 3b 3b 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | 'cl-lib))..;;;.----------------- |
| 39e0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
| 3a00 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 3b 3b 3b 20 | ---------------------------.;;;. |
| 3a20 | 46 61 63 65 73 20 66 6f 72 20 63 6f 6d 6d 6f 6e 6c 79 20 75 73 65 64 20 68 69 67 68 6c 69 67 68 | Faces.for.commonly.used.highligh |
| 3a40 | 74 20 6e 61 6d 65 73 3a 20 60 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 3a 43 41 | t.names:.`tree-sitter-hl-face:CA |
| 3a60 | 50 54 55 52 45 2d 4e 41 4d 45 27 2e 0a 0a 28 64 65 66 67 72 6f 75 70 20 74 72 65 65 2d 73 69 74 | PTURE-NAME'...(defgroup.tree-sit |
| 3a80 | 74 65 72 2d 68 6c 20 6e 69 6c 0a 20 20 22 53 79 6e 74 61 78 20 68 69 67 68 6c 69 67 68 74 69 6e | ter-hl.nil..."Syntax.highlightin |
| 3aa0 | 67 20 75 73 69 6e 67 20 74 72 65 65 2d 73 69 74 74 65 72 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 | g.using.tree-sitter."...:group.' |
| 3ac0 | 74 72 65 65 2d 73 69 74 74 65 72 29 0a 0a 28 64 65 66 67 72 6f 75 70 20 74 72 65 65 2d 73 69 74 | tree-sitter)..(defgroup.tree-sit |
| 3ae0 | 74 65 72 2d 68 6c 2d 66 61 63 65 73 20 6e 69 6c 0a 20 20 22 46 61 63 65 73 20 66 6f 72 20 68 69 | ter-hl-faces.nil..."Faces.for.hi |
| 3b00 | 67 68 6c 69 67 68 74 69 6e 67 20 63 6f 64 65 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 74 72 65 65 | ghlighting.code."...:group.'tree |
| 3b20 | 2d 73 69 74 74 65 72 2d 68 6c 29 0a 0a 3b 3b 3b 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -sitter-hl)..;;;.--------------- |
| 3b40 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 3b 3b 3b 20 46 75 6e 63 74 69 | ---------------------.;;;.Functi |
| 3b60 | 6f 6e 73 2e 0a 0a 28 64 65 66 66 61 63 65 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 | ons...(defface.tree-sitter-hl-fa |
| 3b80 | 63 65 3a 66 75 6e 63 74 69 6f 6e 0a 20 20 27 28 28 64 65 66 61 75 6c 74 20 3a 69 6e 68 65 72 69 | ce:function...'((default.:inheri |
| 3ba0 | 74 20 66 6f 6e 74 2d 6c 6f 63 6b 2d 66 75 6e 63 74 69 6f 6e 2d 6e 61 6d 65 2d 66 61 63 65 29 29 | t.font-lock-function-name-face)) |
| 3bc0 | 0a 20 20 22 46 61 63 65 20 66 6f 72 20 66 75 6e 63 74 69 6f 6e 20 64 65 63 6c 61 72 61 74 69 6f | ..."Face.for.function.declaratio |
| 3be0 | 6e 73 2c 20 64 65 66 69 6e 69 74 69 6f 6e 73 20 61 6e 64 20 62 69 6e 64 69 6e 67 73 2e 22 0a 20 | ns,.definitions.and.bindings.".. |
| 3c00 | 20 3a 67 72 6f 75 70 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 73 29 0a 0a | .:group.'tree-sitter-hl-faces).. |
| 3c20 | 28 64 65 66 66 61 63 65 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 3a 66 75 6e | (defface.tree-sitter-hl-face:fun |
| 3c40 | 63 74 69 6f 6e 2e 63 61 6c 6c 0a 20 20 27 28 28 64 65 66 61 75 6c 74 20 3a 69 6e 68 65 72 69 74 | ction.call...'((default.:inherit |
| 3c60 | 20 28 6c 69 6e 6b 20 66 6f 6e 74 2d 6c 6f 63 6b 2d 66 75 6e 63 74 69 6f 6e 2d 6e 61 6d 65 2d 66 | .(link.font-lock-function-name-f |
| 3c80 | 61 63 65 29 20 3a 75 6e 64 65 72 6c 69 6e 65 20 6e 69 6c 29 29 0a 20 20 22 46 61 63 65 20 66 6f | ace).:underline.nil))..."Face.fo |
| 3ca0 | 72 20 66 75 6e 63 74 69 6f 6e 20 63 61 6c 6c 73 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 74 72 65 | r.function.calls."...:group.'tre |
| 3cc0 | 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 73 29 0a 0a 28 64 65 66 66 61 63 65 20 74 72 65 | e-sitter-hl-faces)..(defface.tre |
| 3ce0 | 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 3a 66 75 6e 63 74 69 6f 6e 2e 62 75 69 6c 74 69 | e-sitter-hl-face:function.builti |
| 3d00 | 6e 0a 20 20 27 28 28 64 65 66 61 75 6c 74 20 3a 69 6e 68 65 72 69 74 20 66 6f 6e 74 2d 6c 6f 63 | n...'((default.:inherit.font-loc |
| 3d20 | 6b 2d 62 75 69 6c 74 69 6e 2d 66 61 63 65 29 29 0a 20 20 22 46 61 63 65 20 66 6f 72 20 62 75 69 | k-builtin-face))..."Face.for.bui |
| 3d40 | 6c 74 69 6e 20 66 75 6e 63 74 69 6f 6e 73 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 74 72 65 65 2d | ltin.functions."...:group.'tree- |
| 3d60 | 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 73 29 0a 0a 3b 3b 3b 20 54 4f 44 4f 3a 20 52 65 6d 6f | sitter-hl-faces)..;;;.TODO:.Remo |
| 3d80 | 76 65 20 74 68 69 73 3f 0a 28 64 65 66 66 61 63 65 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c | ve.this?.(defface.tree-sitter-hl |
| 3da0 | 2d 66 61 63 65 3a 66 75 6e 63 74 69 6f 6e 2e 73 70 65 63 69 61 6c 0a 20 20 27 28 28 64 65 66 61 | -face:function.special...'((defa |
| 3dc0 | 75 6c 74 20 3a 69 6e 68 65 72 69 74 20 66 6f 6e 74 2d 6c 6f 63 6b 2d 70 72 65 70 72 6f 63 65 73 | ult.:inherit.font-lock-preproces |
| 3de0 | 73 6f 72 2d 66 61 63 65 29 29 0a 20 20 22 46 61 63 65 20 66 6f 72 20 66 75 6e 63 74 69 6f 6e 73 | sor-face))..."Face.for.functions |
| 3e00 | 20 74 68 61 74 20 61 6c 74 65 72 20 74 68 69 6e 67 73 20 61 74 20 63 6f 6d 70 69 6c 65 2f 6c 6f | .that.alter.things.at.compile/lo |
| 3e20 | 61 64 20 74 69 6d 65 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d | ad.time."...:group.'tree-sitter- |
| 3e40 | 68 6c 2d 66 61 63 65 73 29 0a 0a 3b 3b 3b 20 54 4f 44 4f 3a 20 52 65 6e 61 6d 65 20 74 68 69 73 | hl-faces)..;;;.TODO:.Rename.this |
| 3e60 | 3f 0a 28 64 65 66 66 61 63 65 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 3a 66 | ?.(defface.tree-sitter-hl-face:f |
| 3e80 | 75 6e 63 74 69 6f 6e 2e 6d 61 63 72 6f 0a 20 20 27 28 28 64 65 66 61 75 6c 74 20 3a 69 6e 68 65 | unction.macro...'((default.:inhe |
| 3ea0 | 72 69 74 20 66 6f 6e 74 2d 6c 6f 63 6b 2d 70 72 65 70 72 6f 63 65 73 73 6f 72 2d 66 61 63 65 29 | rit.font-lock-preprocessor-face) |
| 3ec0 | 29 0a 20 20 22 46 61 63 65 20 66 6f 72 20 6d 61 63 72 6f 20 63 61 6c 6c 73 2e 22 0a 20 20 3a 67 | )..."Face.for.macro.calls."...:g |
| 3ee0 | 72 6f 75 70 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 73 29 0a 0a 28 64 65 | roup.'tree-sitter-hl-faces)..(de |
| 3f00 | 66 66 61 63 65 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 3a 6d 65 74 68 6f 64 | fface.tree-sitter-hl-face:method |
| 3f20 | 0a 20 20 27 28 28 64 65 66 61 75 6c 74 20 3a 69 6e 68 65 72 69 74 20 74 72 65 65 2d 73 69 74 74 | ...'((default.:inherit.tree-sitt |
| 3f40 | 65 72 2d 68 6c 2d 66 61 63 65 3a 66 75 6e 63 74 69 6f 6e 29 29 0a 20 20 22 46 61 63 65 20 66 6f | er-hl-face:function))..."Face.fo |
| 3f60 | 72 20 6d 65 74 68 6f 64 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 20 61 6e 64 20 64 65 66 69 6e 69 | r.method.declarations.and.defini |
| 3f80 | 74 69 6f 6e 73 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c | tions."...:group.'tree-sitter-hl |
| 3fa0 | 2d 66 61 63 65 73 29 0a 0a 28 64 65 66 66 61 63 65 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c | -faces)..(defface.tree-sitter-hl |
| 3fc0 | 2d 66 61 63 65 3a 6d 65 74 68 6f 64 2e 63 61 6c 6c 0a 20 20 27 28 28 64 65 66 61 75 6c 74 20 3a | -face:method.call...'((default.: |
| 3fe0 | 69 6e 68 65 72 69 74 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 3a 66 75 6e 63 | inherit.tree-sitter-hl-face:func |
| 4000 | 74 69 6f 6e 2e 63 61 6c 6c 29 29 0a 20 20 22 46 61 63 65 20 66 6f 72 20 6d 65 74 68 6f 64 20 69 | tion.call))..."Face.for.method.i |
| 4020 | 6e 76 6f 63 61 74 69 6f 6e 73 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 74 72 65 65 2d 73 69 74 74 | nvocations."...:group.'tree-sitt |
| 4040 | 65 72 2d 68 6c 2d 66 61 63 65 73 29 0a 0a 28 64 65 66 69 6e 65 2d 6f 62 73 6f 6c 65 74 65 2d 66 | er-hl-faces)..(define-obsolete-f |
| 4060 | 61 63 65 2d 61 6c 69 61 73 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 3a 66 | ace-alias.'tree-sitter-hl-face:f |
| 4080 | 75 6e 63 74 69 6f 6e 2e 6d 65 74 68 6f 64 0a 20 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c | unction.method...'tree-sitter-hl |
| 40a0 | 2d 66 61 63 65 3a 6d 65 74 68 6f 64 20 22 30 2e 39 2e 30 22 29 0a 0a 28 64 65 66 69 6e 65 2d 6f | -face:method."0.9.0")..(define-o |
| 40c0 | 62 73 6f 6c 65 74 65 2d 66 61 63 65 2d 61 6c 69 61 73 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d | bsolete-face-alias.'tree-sitter- |
| 40e0 | 68 6c 2d 66 61 63 65 3a 66 75 6e 63 74 69 6f 6e 2e 6d 65 74 68 6f 64 2e 63 61 6c 6c 0a 20 20 27 | hl-face:function.method.call...' |
| 4100 | 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 3a 6d 65 74 68 6f 64 2e 63 61 6c 6c 20 | tree-sitter-hl-face:method.call. |
| 4120 | 22 30 2e 39 2e 30 22 29 0a 0a 3b 3b 3b 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | "0.9.0")..;;;.------------------ |
| 4140 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 3b 3b 3b 20 54 79 70 65 73 2e 0a 0a 28 | ------------------.;;;.Types...( |
| 4160 | 64 65 66 66 61 63 65 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 3a 74 79 70 65 | defface.tree-sitter-hl-face:type |
| 4180 | 0a 20 20 27 28 28 64 65 66 61 75 6c 74 20 3a 69 6e 68 65 72 69 74 20 66 6f 6e 74 2d 6c 6f 63 6b | ...'((default.:inherit.font-lock |
| 41a0 | 2d 74 79 70 65 2d 66 61 63 65 29 29 0a 20 20 22 46 61 63 65 20 66 6f 72 20 74 79 70 65 73 2e 22 | -type-face))..."Face.for.types." |
| 41c0 | 0a 20 20 3a 67 72 6f 75 70 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 73 29 | ...:group.'tree-sitter-hl-faces) |
| 41e0 | 0a 0a 28 64 65 66 66 61 63 65 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 3a 74 | ..(defface.tree-sitter-hl-face:t |
| 4200 | 79 70 65 2e 70 61 72 61 6d 65 74 65 72 0a 20 20 27 28 28 64 65 66 61 75 6c 74 20 3a 69 6e 68 65 | ype.parameter...'((default.:inhe |
| 4220 | 72 69 74 20 66 6f 6e 74 2d 6c 6f 63 6b 2d 76 61 72 69 61 62 6c 65 2d 6e 61 6d 65 2d 66 61 63 65 | rit.font-lock-variable-name-face |
| 4240 | 29 29 0a 20 20 22 46 61 63 65 20 66 6f 72 20 74 79 70 65 20 70 61 72 61 6d 65 74 65 72 73 2e 22 | ))..."Face.for.type.parameters." |
| 4260 | 0a 20 20 3a 67 72 6f 75 70 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 73 29 | ...:group.'tree-sitter-hl-faces) |
| 4280 | 0a 0a 28 64 65 66 66 61 63 65 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 3a 74 | ..(defface.tree-sitter-hl-face:t |
| 42a0 | 79 70 65 2e 61 72 67 75 6d 65 6e 74 0a 20 20 27 28 28 64 65 66 61 75 6c 74 20 3a 69 6e 68 65 72 | ype.argument...'((default.:inher |
| 42c0 | 69 74 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 3a 74 79 70 65 29 29 0a 20 20 | it.tree-sitter-hl-face:type))... |
| 42e0 | 22 46 61 63 65 20 66 6f 72 20 74 79 70 65 20 61 72 67 75 6d 65 6e 74 73 2e 22 0a 20 20 3a 67 72 | "Face.for.type.arguments."...:gr |
| 4300 | 6f 75 70 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 73 29 0a 0a 28 64 65 66 | oup.'tree-sitter-hl-faces)..(def |
| 4320 | 66 61 63 65 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 3a 74 79 70 65 2e 62 75 | face.tree-sitter-hl-face:type.bu |
| 4340 | 69 6c 74 69 6e 0a 20 20 27 28 28 64 65 66 61 75 6c 74 20 3a 69 6e 68 65 72 69 74 20 66 6f 6e 74 | iltin...'((default.:inherit.font |
| 4360 | 2d 6c 6f 63 6b 2d 62 75 69 6c 74 69 6e 2d 66 61 63 65 29 29 0a 20 20 22 46 61 63 65 20 66 6f 72 | -lock-builtin-face))..."Face.for |
| 4380 | 20 62 75 69 6c 74 69 6e 20 74 79 70 65 73 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 74 72 65 65 2d | .builtin.types."...:group.'tree- |
| 43a0 | 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 73 29 0a 0a 28 64 65 66 66 61 63 65 20 74 72 65 65 2d | sitter-hl-faces)..(defface.tree- |
| 43c0 | 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 3a 74 79 70 65 2e 73 75 70 65 72 0a 20 20 27 28 28 64 | sitter-hl-face:type.super...'((d |
| 43e0 | 65 66 61 75 6c 74 20 3a 69 6e 68 65 72 69 74 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 | efault.:inherit.tree-sitter-hl-f |
| 4400 | 61 63 65 3a 74 79 70 65 29 29 0a 20 20 22 46 61 63 65 20 66 6f 72 20 73 75 70 65 72 20 74 79 70 | ace:type))..."Face.for.super.typ |
| 4420 | 65 73 20 69 6e 20 64 65 66 69 6e 69 74 69 6f 6e 73 20 61 6e 64 20 74 79 70 65 20 63 6f 6e 73 74 | es.in.definitions.and.type.const |
| 4440 | 72 61 69 6e 74 73 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 68 | raints."...:group.'tree-sitter-h |
| 4460 | 6c 2d 66 61 63 65 73 29 0a 0a 3b 3b 3b 20 54 4f 44 4f 3a 20 52 65 6d 6f 76 65 20 74 68 69 73 3f | l-faces)..;;;.TODO:.Remove.this? |
| 4480 | 0a 28 64 65 66 66 61 63 65 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 3a 63 6f | .(defface.tree-sitter-hl-face:co |
| 44a0 | 6e 73 74 72 75 63 74 6f 72 0a 20 20 27 28 28 64 65 66 61 75 6c 74 20 3a 69 6e 68 65 72 69 74 20 | nstructor...'((default.:inherit. |
| 44c0 | 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 3a 74 79 70 65 29 29 0a 20 20 22 46 61 | tree-sitter-hl-face:type))..."Fa |
| 44e0 | 63 65 20 66 6f 72 20 63 6f 6e 73 74 72 75 63 74 6f 72 73 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 | ce.for.constructors."...:group.' |
| 4500 | 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 73 29 0a 0a 3b 3b 3b 20 2d 2d 2d 2d 2d | tree-sitter-hl-faces)..;;;.----- |
| 4520 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a | -------------------------------. |
| 4540 | 3b 3b 3b 20 56 61 72 69 61 62 6c 65 73 2c 20 70 72 6f 70 65 72 74 69 65 73 2e 0a 0a 3b 3b 3b 20 | ;;;.Variables,.properties...;;;. |
| 4560 | 54 4f 44 4f 3a 20 41 64 64 20 76 61 72 69 61 62 6c 65 2e 75 73 65 3f 0a 28 64 65 66 66 61 63 65 | TODO:.Add.variable.use?.(defface |
| 4580 | 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 3a 76 61 72 69 61 62 6c 65 0a 20 20 | .tree-sitter-hl-face:variable... |
| 45a0 | 27 28 28 64 65 66 61 75 6c 74 20 3a 69 6e 68 65 72 69 74 20 66 6f 6e 74 2d 6c 6f 63 6b 2d 76 61 | '((default.:inherit.font-lock-va |
| 45c0 | 72 69 61 62 6c 65 2d 6e 61 6d 65 2d 66 61 63 65 29 29 0a 20 20 22 46 61 63 65 20 66 6f 72 20 76 | riable-name-face))..."Face.for.v |
| 45e0 | 61 72 69 61 62 6c 65 20 64 65 63 6c 61 72 61 74 69 6f 6e 73 2c 20 64 65 66 69 6e 69 74 69 6f 6e | ariable.declarations,.definition |
| 4600 | 73 2c 20 62 69 6e 64 69 6e 67 73 20 61 6e 64 20 6d 75 74 61 74 69 6f 6e 73 2e 22 0a 20 20 3a 67 | s,.bindings.and.mutations."...:g |
| 4620 | 72 6f 75 70 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 73 29 0a 0a 28 64 65 | roup.'tree-sitter-hl-faces)..(de |
| 4640 | 66 66 61 63 65 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 3a 76 61 72 69 61 62 | fface.tree-sitter-hl-face:variab |
| 4660 | 6c 65 2e 70 61 72 61 6d 65 74 65 72 0a 20 20 27 28 28 64 65 66 61 75 6c 74 20 3a 69 6e 68 65 72 | le.parameter...'((default.:inher |
| 4680 | 69 74 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 3a 76 61 72 69 61 62 6c 65 29 | it.tree-sitter-hl-face:variable) |
| 46a0 | 29 0a 20 20 22 46 61 63 65 20 66 6f 72 20 66 75 6e 63 74 69 6f 6e 20 70 61 72 61 6d 65 74 65 72 | )..."Face.for.function.parameter |
| 46c0 | 73 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 | s."...:group.'tree-sitter-hl-fac |
| 46e0 | 65 73 29 0a 0a 28 64 65 66 66 61 63 65 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 | es)..(defface.tree-sitter-hl-fac |
| 4700 | 65 3a 76 61 72 69 61 62 6c 65 2e 62 75 69 6c 74 69 6e 0a 20 20 27 28 28 64 65 66 61 75 6c 74 20 | e:variable.builtin...'((default. |
| 4720 | 3a 69 6e 68 65 72 69 74 20 66 6f 6e 74 2d 6c 6f 63 6b 2d 62 75 69 6c 74 69 6e 2d 66 61 63 65 29 | :inherit.font-lock-builtin-face) |
| 4740 | 29 0a 20 20 22 46 61 63 65 20 66 6f 72 20 62 75 69 6c 74 69 6e 20 76 61 72 69 61 62 6c 65 73 2e | )..."Face.for.builtin.variables. |
| 4760 | 22 0a 20 20 3a 67 72 6f 75 70 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 73 | "...:group.'tree-sitter-hl-faces |
| 4780 | 29 0a 0a 28 64 65 66 66 61 63 65 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 3a | )..(defface.tree-sitter-hl-face: |
| 47a0 | 76 61 72 69 61 62 6c 65 2e 73 70 65 63 69 61 6c 0a 20 20 27 28 28 64 65 66 61 75 6c 74 20 3a 69 | variable.special...'((default.:i |
| 47c0 | 6e 68 65 72 69 74 20 66 6f 6e 74 2d 6c 6f 63 6b 2d 77 61 72 6e 69 6e 67 2d 66 61 63 65 29 29 0a | nherit.font-lock-warning-face)). |
| 47e0 | 20 20 22 46 61 63 65 20 66 6f 72 20 5c 22 64 61 6e 67 65 72 6f 75 73 5c 22 20 76 61 72 69 61 62 | .."Face.for.\"dangerous\".variab |
| 4800 | 6c 65 73 2c 20 65 2e 67 2e 20 6d 75 74 61 62 6c 65 20 6f 72 20 64 79 6e 61 6d 69 63 61 6c 6c 79 | les,.e.g..mutable.or.dynamically |
| 4820 | 2d 62 6f 75 6e 64 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 68 | -bound."...:group.'tree-sitter-h |
| 4840 | 6c 2d 66 61 63 65 73 29 0a 0a 3b 3b 3b 20 54 4f 44 4f 3a 20 44 65 66 69 6e 65 20 61 20 6d 6f 72 | l-faces)..;;;.TODO:.Define.a.mor |
| 4860 | 65 20 73 65 6e 73 69 62 6c 65 20 64 65 66 61 75 6c 74 2e 0a 28 64 65 66 66 61 63 65 20 74 72 65 | e.sensible.default..(defface.tre |
| 4880 | 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 3a 70 72 6f 70 65 72 74 79 0a 20 20 27 28 28 64 | e-sitter-hl-face:property...'((d |
| 48a0 | 65 66 61 75 6c 74 20 3a 69 6e 68 65 72 69 74 20 66 6f 6e 74 2d 6c 6f 63 6b 2d 63 6f 6e 73 74 61 | efault.:inherit.font-lock-consta |
| 48c0 | 6e 74 2d 66 61 63 65 20 3a 73 6c 61 6e 74 20 69 74 61 6c 69 63 29 29 0a 20 20 22 46 61 63 65 20 | nt-face.:slant.italic))..."Face. |
| 48e0 | 66 6f 72 20 70 72 6f 70 65 72 74 69 65 73 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 74 72 65 65 2d | for.properties."...:group.'tree- |
| 4900 | 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 73 29 0a 0a 28 64 65 66 66 61 63 65 20 74 72 65 65 2d | sitter-hl-faces)..(defface.tree- |
| 4920 | 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 3a 70 72 6f 70 65 72 74 79 2e 64 65 66 69 6e 69 74 69 | sitter-hl-face:property.definiti |
| 4940 | 6f 6e 0a 20 20 27 28 28 64 65 66 61 75 6c 74 20 3a 69 6e 68 65 72 69 74 20 74 72 65 65 2d 73 69 | on...'((default.:inherit.tree-si |
| 4960 | 74 74 65 72 2d 68 6c 2d 66 61 63 65 3a 76 61 72 69 61 62 6c 65 2e 70 61 72 61 6d 65 74 65 72 29 | tter-hl-face:variable.parameter) |
| 4980 | 29 0a 20 20 22 46 61 63 65 20 66 6f 72 20 70 72 6f 70 65 72 74 79 20 64 65 63 6c 61 72 61 74 69 | )..."Face.for.property.declarati |
| 49a0 | 6f 6e 73 20 61 6e 64 20 64 65 66 69 6e 69 74 69 6f 6e 73 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 | ons.and.definitions."...:group.' |
| 49c0 | 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 73 29 0a 0a 3b 3b 3b 20 2d 2d 2d 2d 2d | tree-sitter-hl-faces)..;;;.----- |
| 49e0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a | -------------------------------. |
| 4a00 | 3b 3b 3b 20 53 74 72 69 6e 67 73 2c 20 63 6f 6d 6d 65 6e 74 73 2c 20 74 65 78 74 20 70 72 6f 73 | ;;;.Strings,.comments,.text.pros |
| 4a20 | 65 73 2e 0a 0a 28 64 65 66 66 61 63 65 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 | es...(defface.tree-sitter-hl-fac |
| 4a40 | 65 3a 63 6f 6d 6d 65 6e 74 0a 20 20 27 28 28 64 65 66 61 75 6c 74 20 3a 69 6e 68 65 72 69 74 20 | e:comment...'((default.:inherit. |
| 4a60 | 66 6f 6e 74 2d 6c 6f 63 6b 2d 63 6f 6d 6d 65 6e 74 2d 66 61 63 65 29 29 0a 20 20 22 46 61 63 65 | font-lock-comment-face))..."Face |
| 4a80 | 20 66 6f 72 20 63 6f 6d 6d 65 6e 74 73 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 74 72 65 65 2d 73 | .for.comments."...:group.'tree-s |
| 4aa0 | 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 73 29 0a 0a 28 64 65 66 66 61 63 65 20 74 72 65 65 2d 73 | itter-hl-faces)..(defface.tree-s |
| 4ac0 | 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 3a 64 6f 63 0a 20 20 27 28 28 64 65 66 61 75 6c 74 20 3a | itter-hl-face:doc...'((default.: |
| 4ae0 | 69 6e 68 65 72 69 74 20 66 6f 6e 74 2d 6c 6f 63 6b 2d 64 6f 63 2d 66 61 63 65 29 29 0a 20 20 22 | inherit.font-lock-doc-face))..." |
| 4b00 | 46 61 63 65 20 66 6f 72 20 64 6f 63 73 74 72 69 6e 67 73 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 | Face.for.docstrings."...:group.' |
| 4b20 | 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 73 29 0a 0a 28 64 65 66 66 61 63 65 20 | tree-sitter-hl-faces)..(defface. |
| 4b40 | 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 3a 73 74 72 69 6e 67 0a 20 20 27 28 28 | tree-sitter-hl-face:string...'(( |
| 4b60 | 64 65 66 61 75 6c 74 20 3a 69 6e 68 65 72 69 74 20 66 6f 6e 74 2d 6c 6f 63 6b 2d 73 74 72 69 6e | default.:inherit.font-lock-strin |
| 4b80 | 67 2d 66 61 63 65 29 29 0a 20 20 22 46 61 63 65 20 66 6f 72 20 73 74 72 69 6e 67 73 2e 22 0a 20 | g-face))..."Face.for.strings.".. |
| 4ba0 | 20 3a 67 72 6f 75 70 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 73 29 0a 0a | .:group.'tree-sitter-hl-faces).. |
| 4bc0 | 28 64 65 66 66 61 63 65 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 3a 73 74 72 | (defface.tree-sitter-hl-face:str |
| 4be0 | 69 6e 67 2e 73 70 65 63 69 61 6c 0a 20 20 27 28 28 64 65 66 61 75 6c 74 20 3a 69 6e 68 65 72 69 | ing.special...'((default.:inheri |
| 4c00 | 74 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 3a 73 74 72 69 6e 67 20 3a 77 65 | t.tree-sitter-hl-face:string.:we |
| 4c20 | 69 67 68 74 20 62 6f 6c 64 29 29 0a 20 20 22 46 61 63 65 20 66 6f 72 20 73 70 65 63 69 61 6c 20 | ight.bold))..."Face.for.special. |
| 4c40 | 73 74 72 69 6e 67 73 2c 20 65 2e 67 2e 20 72 65 67 75 6c 61 72 20 65 78 70 72 65 73 73 69 6f 6e | strings,.e.g..regular.expression |
| 4c60 | 73 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 | s."...:group.'tree-sitter-hl-fac |
| 4c80 | 65 73 29 0a 0a 28 64 65 66 66 61 63 65 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 | es)..(defface.tree-sitter-hl-fac |
| 4ca0 | 65 3a 65 73 63 61 70 65 0a 20 20 27 28 28 64 65 66 61 75 6c 74 20 3a 69 6e 68 65 72 69 74 20 66 | e:escape...'((default.:inherit.f |
| 4cc0 | 6f 6e 74 2d 6c 6f 63 6b 2d 6b 65 79 77 6f 72 64 2d 66 61 63 65 29 29 0a 20 20 22 46 61 63 65 20 | ont-lock-keyword-face))..."Face. |
| 4ce0 | 66 6f 72 20 65 73 63 61 70 65 20 63 68 61 72 61 63 74 65 72 73 20 69 6e 20 73 74 72 69 6e 67 73 | for.escape.characters.in.strings |
| 4d00 | 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 | ."...:group.'tree-sitter-hl-face |
| 4d20 | 73 29 0a 0a 3b 3b 3b 20 54 4f 44 4f 3a 20 52 65 6e 61 6d 65 20 74 68 69 73 3f 0a 28 64 65 66 66 | s)..;;;.TODO:.Rename.this?.(deff |
| 4d40 | 61 63 65 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 3a 65 6d 62 65 64 64 65 64 | ace.tree-sitter-hl-face:embedded |
| 4d60 | 0a 20 20 27 28 28 64 65 66 61 75 6c 74 20 3a 69 6e 68 65 72 69 74 20 64 65 66 61 75 6c 74 29 29 | ...'((default.:inherit.default)) |
| 4d80 | 0a 20 20 22 46 61 63 65 20 66 6f 72 20 65 6d 62 65 64 64 65 64 20 65 78 70 72 65 73 73 69 6f 6e | ..."Face.for.embedded.expression |
| 4da0 | 73 20 61 6e 64 20 63 6f 64 65 20 66 72 61 67 6d 65 6e 74 73 2e 22 0a 20 20 3a 67 72 6f 75 70 20 | s.and.code.fragments."...:group. |
| 4dc0 | 27 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 73 29 0a 0a 3b 3b 3b 20 2d 2d 2d 2d | 'tree-sitter-hl-faces)..;;;.---- |
| 4de0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
| 4e00 | 0a 3b 3b 3b 20 41 74 6f 6d 69 63 73 2c 20 63 6f 6e 73 74 61 6e 74 73 2e 0a 0a 28 64 65 66 66 61 | .;;;.Atomics,.constants...(deffa |
| 4e20 | 63 65 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 3a 6b 65 79 77 6f 72 64 0a 20 | ce.tree-sitter-hl-face:keyword.. |
| 4e40 | 20 27 28 28 64 65 66 61 75 6c 74 20 3a 69 6e 68 65 72 69 74 20 66 6f 6e 74 2d 6c 6f 63 6b 2d 6b | .'((default.:inherit.font-lock-k |
| 4e60 | 65 79 77 6f 72 64 2d 66 61 63 65 29 29 0a 20 20 22 46 61 63 65 20 66 6f 72 20 6b 65 79 77 6f 72 | eyword-face))..."Face.for.keywor |
| 4e80 | 64 73 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 | ds."...:group.'tree-sitter-hl-fa |
| 4ea0 | 63 65 73 29 0a 0a 28 64 65 66 66 61 63 65 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 | ces)..(defface.tree-sitter-hl-fa |
| 4ec0 | 63 65 3a 6f 70 65 72 61 74 6f 72 0a 20 20 27 28 28 64 65 66 61 75 6c 74 20 3a 69 6e 68 65 72 69 | ce:operator...'((default.:inheri |
| 4ee0 | 74 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 3a 6b 65 79 77 6f 72 64 29 29 0a | t.tree-sitter-hl-face:keyword)). |
| 4f00 | 20 20 22 46 61 63 65 20 66 6f 72 20 6f 70 65 72 61 74 6f 72 73 2e 22 0a 20 20 3a 67 72 6f 75 70 | .."Face.for.operators."...:group |
| 4f20 | 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 73 29 0a 0a 28 64 65 66 66 61 63 | .'tree-sitter-hl-faces)..(deffac |
| 4f40 | 65 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 3a 6c 61 62 65 6c 0a 20 20 27 28 | e.tree-sitter-hl-face:label...'( |
| 4f60 | 28 64 65 66 61 75 6c 74 20 3a 69 6e 68 65 72 69 74 20 66 6f 6e 74 2d 6c 6f 63 6b 2d 70 72 65 70 | (default.:inherit.font-lock-prep |
| 4f80 | 72 6f 63 65 73 73 6f 72 2d 66 61 63 65 29 29 0a 20 20 22 46 61 63 65 20 66 6f 72 20 6c 61 62 65 | rocessor-face))..."Face.for.labe |
| 4fa0 | 6c 73 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 | ls."...:group.'tree-sitter-hl-fa |
| 4fc0 | 63 65 73 29 0a 0a 28 64 65 66 66 61 63 65 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 | ces)..(defface.tree-sitter-hl-fa |
| 4fe0 | 63 65 3a 63 6f 6e 73 74 61 6e 74 0a 20 20 27 28 28 64 65 66 61 75 6c 74 20 3a 69 6e 68 65 72 69 | ce:constant...'((default.:inheri |
| 5000 | 74 20 66 6f 6e 74 2d 6c 6f 63 6b 2d 63 6f 6e 73 74 61 6e 74 2d 66 61 63 65 29 29 0a 20 20 22 46 | t.font-lock-constant-face))..."F |
| 5020 | 61 63 65 20 66 6f 72 20 63 6f 6e 73 74 61 6e 74 73 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 74 72 | ace.for.constants."...:group.'tr |
| 5040 | 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 73 29 0a 0a 28 64 65 66 66 61 63 65 20 74 72 | ee-sitter-hl-faces)..(defface.tr |
| 5060 | 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 3a 63 6f 6e 73 74 61 6e 74 2e 62 75 69 6c 74 | ee-sitter-hl-face:constant.built |
| 5080 | 69 6e 0a 20 20 27 28 28 64 65 66 61 75 6c 74 20 3a 69 6e 68 65 72 69 74 20 66 6f 6e 74 2d 6c 6f | in...'((default.:inherit.font-lo |
| 50a0 | 63 6b 2d 62 75 69 6c 74 69 6e 2d 66 61 63 65 29 29 0a 20 20 22 46 61 63 65 20 66 6f 72 20 62 75 | ck-builtin-face))..."Face.for.bu |
| 50c0 | 69 6c 74 69 6e 20 63 6f 6e 73 74 61 6e 74 73 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 74 72 65 65 | iltin.constants."...:group.'tree |
| 50e0 | 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 73 29 0a 0a 28 64 65 66 66 61 63 65 20 74 72 65 65 | -sitter-hl-faces)..(defface.tree |
| 5100 | 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 3a 6e 75 6d 62 65 72 0a 20 20 27 28 28 64 65 66 61 | -sitter-hl-face:number...'((defa |
| 5120 | 75 6c 74 20 3a 69 6e 68 65 72 69 74 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 | ult.:inherit.tree-sitter-hl-face |
| 5140 | 3a 63 6f 6e 73 74 61 6e 74 29 29 0a 20 20 22 46 61 63 65 20 66 6f 72 20 6e 75 6d 62 65 72 73 2e | :constant))..."Face.for.numbers. |
| 5160 | 22 0a 20 20 3a 67 72 6f 75 70 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 73 | "...:group.'tree-sitter-hl-faces |
| 5180 | 29 0a 0a 3b 3b 3b 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | )..;;;.------------------------- |
| 51a0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 3b 3b 3b 20 50 75 6e 63 74 75 61 74 69 6f 6e 73 20 28 61 6b | -----------.;;;.Punctuations.(ak |
| 51c0 | 61 2e 20 73 68 6f 75 6c 64 2d 62 65 2d 64 69 6d 6d 65 64 29 2e 0a 0a 28 64 65 66 66 61 63 65 20 | a..should-be-dimmed)...(defface. |
| 51e0 | 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 3a 70 75 6e 63 74 75 61 74 69 6f 6e 0a | tree-sitter-hl-face:punctuation. |
| 5200 | 20 20 27 28 28 64 65 66 61 75 6c 74 20 3a 69 6e 68 65 72 69 74 20 64 65 66 61 75 6c 74 29 29 0a | ..'((default.:inherit.default)). |
| 5220 | 20 20 22 46 61 63 65 20 66 6f 72 20 70 75 6e 63 74 75 61 74 69 6f 6e 73 2e 22 0a 20 20 3a 67 72 | .."Face.for.punctuations."...:gr |
| 5240 | 6f 75 70 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 73 29 0a 0a 28 64 65 66 | oup.'tree-sitter-hl-faces)..(def |
| 5260 | 66 61 63 65 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 3a 70 75 6e 63 74 75 61 | face.tree-sitter-hl-face:punctua |
| 5280 | 74 69 6f 6e 2e 62 72 61 63 6b 65 74 0a 20 20 27 28 28 64 65 66 61 75 6c 74 20 3a 69 6e 68 65 72 | tion.bracket...'((default.:inher |
| 52a0 | 69 74 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 3a 70 75 6e 63 74 75 61 74 69 | it.tree-sitter-hl-face:punctuati |
| 52c0 | 6f 6e 29 29 0a 20 20 22 46 61 63 65 20 66 6f 72 20 62 72 61 63 6b 65 74 73 2e 22 0a 20 20 3a 67 | on))..."Face.for.brackets."...:g |
| 52e0 | 72 6f 75 70 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 73 29 0a 0a 28 64 65 | roup.'tree-sitter-hl-faces)..(de |
| 5300 | 66 66 61 63 65 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 3a 70 75 6e 63 74 75 | fface.tree-sitter-hl-face:punctu |
| 5320 | 61 74 69 6f 6e 2e 64 65 6c 69 6d 69 74 65 72 0a 20 20 27 28 28 64 65 66 61 75 6c 74 20 3a 69 6e | ation.delimiter...'((default.:in |
| 5340 | 68 65 72 69 74 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 3a 70 75 6e 63 74 75 | herit.tree-sitter-hl-face:punctu |
| 5360 | 61 74 69 6f 6e 29 29 0a 20 20 22 46 61 63 65 20 66 6f 72 20 64 65 6c 69 6d 69 74 65 72 73 2e 22 | ation))..."Face.for.delimiters." |
| 5380 | 0a 20 20 3a 67 72 6f 75 70 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 73 29 | ...:group.'tree-sitter-hl-faces) |
| 53a0 | 0a 0a 28 64 65 66 66 61 63 65 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 3a 70 | ..(defface.tree-sitter-hl-face:p |
| 53c0 | 75 6e 63 74 75 61 74 69 6f 6e 2e 73 70 65 63 69 61 6c 0a 20 20 27 28 28 64 65 66 61 75 6c 74 20 | unctuation.special...'((default. |
| 53e0 | 3a 69 6e 68 65 72 69 74 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 3a 6b 65 79 | :inherit.tree-sitter-hl-face:key |
| 5400 | 77 6f 72 64 29 29 0a 20 20 22 46 61 63 65 20 66 6f 72 20 73 70 65 63 69 61 6c 20 70 75 6e 63 74 | word))..."Face.for.special.punct |
| 5420 | 75 61 74 69 6f 6e 73 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d | uations."...:group.'tree-sitter- |
| 5440 | 68 6c 2d 66 61 63 65 73 29 0a 0a 3b 3b 3b 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | hl-faces)..;;;.----------------- |
| 5460 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 3b 3b 3b 20 4d 61 72 6b 75 70 73 2e | -------------------.;;;.Markups. |
| 5480 | 0a 0a 28 64 65 66 66 61 63 65 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 3a 74 | ..(defface.tree-sitter-hl-face:t |
| 54a0 | 61 67 0a 20 20 27 28 28 64 65 66 61 75 6c 74 20 3a 69 6e 68 65 72 69 74 20 66 6f 6e 74 2d 6c 6f | ag...'((default.:inherit.font-lo |
| 54c0 | 63 6b 2d 62 75 69 6c 74 69 6e 2d 66 61 63 65 29 29 0a 20 20 22 46 61 63 65 20 66 6f 72 20 74 61 | ck-builtin-face))..."Face.for.ta |
| 54e0 | 67 73 20 69 6e 20 6d 61 72 6b 75 70 20 6c 61 6e 67 75 61 67 65 73 2e 22 0a 20 20 3a 67 72 6f 75 | gs.in.markup.languages."...:grou |
| 5500 | 70 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 73 29 0a 0a 28 64 65 66 66 61 | p.'tree-sitter-hl-faces)..(deffa |
| 5520 | 63 65 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 3a 61 74 74 72 69 62 75 74 65 | ce.tree-sitter-hl-face:attribute |
| 5540 | 0a 20 20 27 28 28 64 65 66 61 75 6c 74 20 3a 69 6e 68 65 72 69 74 20 66 6f 6e 74 2d 6c 6f 63 6b | ...'((default.:inherit.font-lock |
| 5560 | 2d 70 72 65 70 72 6f 63 65 73 73 6f 72 2d 66 61 63 65 29 29 0a 20 20 22 46 61 63 65 20 66 6f 72 | -preprocessor-face))..."Face.for |
| 5580 | 20 61 74 74 72 69 62 75 74 65 73 20 6d 61 72 6b 75 70 20 6c 61 6e 67 75 61 67 65 73 2e 22 0a 20 | .attributes.markup.languages.".. |
| 55a0 | 20 3a 67 72 6f 75 70 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 73 29 0a 0a | .:group.'tree-sitter-hl-faces).. |
| 55c0 | 3b 3b 3b 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | ;;;.---------------------------- |
| 55e0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
| 5600 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 3b 3b 3b 20 49 6e 74 65 72 66 61 63 65 73 20 | ----------------.;;;.Interfaces. |
| 5620 | 66 6f 72 20 6d 6f 64 65 73 20 61 6e 64 20 65 6e 64 20 75 73 65 72 73 2e 0a 0a 28 64 65 66 63 75 | for.modes.and.end.users...(defcu |
| 5640 | 73 74 6f 6d 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 75 73 65 2d 66 6f 6e 74 2d 6c 6f 63 | stom.tree-sitter-hl-use-font-loc |
| 5660 | 6b 2d 6b 65 79 77 6f 72 64 73 20 3a 65 78 63 65 70 74 2d 66 6f 6e 74 2d 6c 6f 63 6b 2d 64 65 66 | k-keywords.:except-font-lock-def |
| 5680 | 61 75 6c 74 73 0a 20 20 22 57 68 65 74 68 65 72 20 74 6f 20 6b 65 65 70 20 75 73 69 6e 67 20 74 | aults..."Whether.to.keep.using.t |
| 56a0 | 68 65 20 68 69 67 68 6c 69 67 68 74 69 6e 67 20 70 72 6f 76 69 64 65 64 20 62 79 20 60 66 6f 6e | he.highlighting.provided.by.`fon |
| 56c0 | 74 2d 6c 6f 63 6b 2d 6b 65 79 77 6f 72 64 73 27 2e 0a 49 66 20 60 3a 65 78 63 65 70 74 2d 66 6f | t-lock-keywords'..If.`:except-fo |
| 56e0 | 6e 74 2d 6c 6f 63 6b 2d 64 65 66 61 75 6c 74 73 27 2c 20 74 68 65 6e 20 6b 65 79 77 6f 72 64 73 | nt-lock-defaults',.then.keywords |
| 5700 | 20 73 70 65 63 69 66 69 65 64 20 62 79 20 60 66 6f 6e 74 2d 6c 6f 63 6b 2d 64 65 66 61 75 6c 74 | .specified.by.`font-lock-default |
| 5720 | 73 27 0a 61 72 65 20 69 67 6e 6f 72 65 64 2c 20 77 68 69 6c 65 20 6b 65 79 77 6f 72 64 73 20 61 | s'.are.ignored,.while.keywords.a |
| 5740 | 64 64 65 64 20 74 68 72 6f 75 67 68 20 60 66 6f 6e 74 2d 6c 6f 63 6b 2d 61 64 64 2d 6b 65 79 77 | dded.through.`font-lock-add-keyw |
| 5760 | 6f 72 64 73 27 20 61 72 65 20 75 73 65 64 2e 20 54 68 65 0a 66 6f 72 6d 65 72 20 69 73 20 74 79 | ords'.are.used..The.former.is.ty |
| 5780 | 70 69 63 61 6c 6c 79 20 73 65 74 20 62 79 20 6d 61 6a 6f 72 20 6d 6f 64 65 73 2c 20 77 68 69 6c | pically.set.by.major.modes,.whil |
| 57a0 | 65 20 74 68 65 20 6c 61 74 74 65 72 20 69 73 20 75 73 75 61 6c 6c 79 20 73 65 74 20 62 79 20 6d | e.the.latter.is.usually.set.by.m |
| 57c0 | 69 6e 6f 72 0a 6d 6f 64 65 73 20 61 6e 64 20 65 6e 64 20 75 73 65 72 73 2e 22 0a 20 20 3a 67 72 | inor.modes.and.end.users."...:gr |
| 57e0 | 6f 75 70 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 0a 20 20 3a 74 79 70 65 20 27 28 63 68 | oup.'tree-sitter-hl...:type.'(ch |
| 5800 | 6f 69 63 65 20 28 63 6f 6e 73 74 20 3a 74 61 67 20 22 59 65 73 22 20 74 29 0a 20 20 20 20 20 20 | oice.(const.:tag."Yes".t)....... |
| 5820 | 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 74 20 3a 74 61 67 20 22 4e 6f 22 20 6e 69 6c 29 | ...........(const.:tag."No".nil) |
| 5840 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 74 20 3a 74 61 67 20 22 45 | ..................(const.:tag."E |
| 5860 | 78 63 65 70 74 20 60 66 6f 6e 74 2d 6c 6f 63 6b 2d 64 65 66 61 75 6c 74 73 27 22 20 3a 65 78 63 | xcept.`font-lock-defaults'".:exc |
| 5880 | 65 70 74 2d 66 6f 6e 74 2d 6c 6f 63 6b 2d 64 65 66 61 75 6c 74 73 29 29 29 0a 0a 28 64 65 66 63 | ept-font-lock-defaults)))..(defc |
| 58a0 | 75 73 74 6f 6d 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 2d 6d 61 70 70 69 6e | ustom.tree-sitter-hl-face-mappin |
| 58c0 | 67 2d 66 75 6e 63 74 69 6f 6e 0a 20 20 23 27 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 | g-function...#'tree-sitter-hl-fa |
| 58e0 | 63 65 2d 66 72 6f 6d 2d 63 6f 6d 6d 6f 6e 2d 73 63 6f 70 65 0a 20 20 22 46 75 6e 63 74 69 6f 6e | ce-from-common-scope..."Function |
| 5900 | 20 75 73 65 64 20 74 6f 20 6d 61 70 20 63 61 70 74 75 72 65 20 6e 61 6d 65 73 20 69 6e 20 71 75 | .used.to.map.capture.names.in.qu |
| 5920 | 65 72 79 20 70 61 74 74 65 72 6e 73 20 74 6f 20 68 69 67 68 6c 69 67 68 74 69 6e 67 20 66 61 63 | ery.patterns.to.highlighting.fac |
| 5940 | 65 73 2e 0a 54 68 69 73 20 63 61 6e 20 61 6c 73 6f 20 62 65 20 75 73 65 64 20 74 6f 20 73 65 6c | es..This.can.also.be.used.to.sel |
| 5960 | 65 63 74 69 76 65 6c 79 20 64 69 73 61 62 6c 65 20 63 65 72 74 61 69 6e 20 63 61 70 74 75 72 65 | ectively.disable.certain.capture |
| 5980 | 20 6e 61 6d 65 73 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 0a 74 68 65 20 66 6f 6c 6c 6f 77 69 | .names..For.example,.the.followi |
| 59a0 | 6e 67 20 63 6f 64 65 20 64 69 73 61 62 6c 65 73 20 6b 65 79 77 6f 72 64 20 68 69 67 68 6c 69 67 | ng.code.disables.keyword.highlig |
| 59c0 | 68 74 69 6e 67 3a 0a 0a 20 28 61 64 64 2d 66 75 6e 63 74 69 6f 6e 20 3a 62 65 66 6f 72 65 2d 77 | hting:...(add-function.:before-w |
| 59e0 | 68 69 6c 65 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 2d 6d 61 70 70 69 6e | hile.'tree-sitter-hl-face-mappin |
| 5a00 | 67 2d 66 75 6e 63 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 61 6d 62 64 | g-function................(lambd |
| 5a20 | 61 20 28 63 61 70 74 75 72 65 2d 6e 61 6d 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | a.(capture-name)................ |
| 5a40 | 20 20 28 6e 6f 74 20 28 73 74 72 69 6e 67 3d 20 63 61 70 74 75 72 65 2d 6e 61 6d 65 20 5c 22 6b | ..(not.(string=.capture-name.\"k |
| 5a60 | 65 79 77 6f 72 64 5c 22 29 29 29 29 22 0a 20 20 3a 67 72 6f 75 70 20 27 74 72 65 65 2d 73 69 74 | eyword\"))))"...:group.'tree-sit |
| 5a80 | 74 65 72 2d 68 6c 0a 20 20 3a 74 79 70 65 20 27 66 75 6e 63 74 69 6f 6e 29 0a 0a 28 64 65 66 76 | ter-hl...:type.'function)..(defv |
| 5aa0 | 61 72 2d 6c 6f 63 61 6c 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 64 65 66 61 75 6c 74 2d | ar-local.tree-sitter-hl-default- |
| 5ac0 | 70 61 74 74 65 72 6e 73 20 6e 69 6c 0a 20 20 22 44 65 66 61 75 6c 74 20 73 79 6e 74 61 78 20 68 | patterns.nil..."Default.syntax.h |
| 5ae0 | 69 67 68 6c 69 67 68 74 69 6e 67 20 70 61 74 74 65 72 6e 73 2e 0a 54 68 69 73 20 73 68 6f 75 6c | ighlighting.patterns..This.shoul |
| 5b00 | 64 20 62 65 20 73 65 74 20 62 79 20 6d 61 6a 6f 72 20 6d 6f 64 65 73 20 74 68 61 74 20 77 61 6e | d.be.set.by.major.modes.that.wan |
| 5b20 | 74 20 74 6f 20 69 6e 74 65 67 72 61 74 65 20 77 69 74 68 20 60 74 72 65 65 2d 73 69 74 74 65 72 | t.to.integrate.with.`tree-sitter |
| 5b40 | 2d 68 6c 27 2e 0a 49 74 20 70 6c 61 79 73 20 61 20 73 69 6d 69 6c 61 72 20 72 6f 6c 65 20 74 6f | -hl'..It.plays.a.similar.role.to |
| 5b60 | 20 60 66 6f 6e 74 2d 6c 6f 63 6b 2d 64 65 66 61 75 6c 74 73 27 2e 0a 0a 49 74 20 69 73 20 65 69 | .`font-lock-defaults'...It.is.ei |
| 5b80 | 74 68 65 72 20 61 20 73 74 72 69 6e 67 2c 20 6f 72 20 61 20 76 65 63 74 6f 72 20 6f 66 20 53 2d | ther.a.string,.or.a.vector.of.S- |
| 5ba0 | 65 78 70 72 65 73 73 69 6f 6e 73 2e 20 46 6f 72 20 6d 6f 72 65 20 64 65 74 61 69 6c 73 20 6f 6e | expressions..For.more.details.on |
| 5bc0 | 20 74 68 65 0a 73 79 6e 74 61 78 2c 20 73 65 65 20 68 74 74 70 73 3a 2f 2f 65 6d 61 63 73 2d 74 | .the.syntax,.see.https://emacs-t |
| 5be0 | 72 65 65 2d 73 69 74 74 65 72 2e 67 69 74 68 75 62 2e 69 6f 2f 73 79 6e 74 61 78 2d 68 69 67 68 | ree-sitter.github.io/syntax-high |
| 5c00 | 6c 69 67 68 74 69 6e 67 2f 71 75 65 72 69 65 73 2f 2e 22 29 0a 0a 28 64 65 66 76 61 72 20 74 72 | lighting/queries/.")..(defvar.tr |
| 5c20 | 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 2d 70 61 74 74 65 72 6e 73 2d 61 6c 69 73 74 20 6e 69 6c | ee-sitter-hl--patterns-alist.nil |
| 5c40 | 0a 20 20 22 41 64 64 69 74 69 6f 6e 61 6c 20 6c 61 6e 67 75 61 67 65 2d 73 70 65 63 69 66 69 63 | ..."Additional.language-specific |
| 5c60 | 20 73 79 6e 74 61 78 20 68 69 67 68 6c 69 67 68 74 69 6e 67 20 70 61 74 74 65 72 6e 73 2e 0a 49 | .syntax.highlighting.patterns..I |
| 5c80 | 74 20 70 6c 61 79 73 20 61 20 73 69 6d 69 6c 61 72 20 72 6f 6c 65 20 74 6f 20 60 66 6f 6e 74 2d | t.plays.a.similar.role.to.`font- |
| 5ca0 | 6c 6f 63 6b 2d 6b 65 79 77 6f 72 64 73 2d 61 6c 69 73 74 27 2c 20 65 78 63 65 70 74 20 74 68 61 | lock-keywords-alist',.except.tha |
| 5cc0 | 74 20 69 74 73 20 6b 65 79 73 20 61 72 65 0a 6c 61 6e 67 75 61 67 65 20 73 79 6d 62 6f 6c 73 2c | t.its.keys.are.language.symbols, |
| 5ce0 | 20 6e 6f 74 20 6d 61 6a 6f 72 20 6d 6f 64 65 20 73 79 6d 62 6f 6c 73 2e 22 29 0a 28 70 75 74 20 | .not.major.mode.symbols.").(put. |
| 5d00 | 27 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 2d 70 61 74 74 65 72 6e 73 2d 61 6c 69 73 74 20 | 'tree-sitter-hl--patterns-alist. |
| 5d20 | 27 72 69 73 6b 79 2d 6c 6f 63 61 6c 2d 76 61 72 69 61 62 6c 65 20 74 29 0a 0a 28 64 65 66 76 61 | 'risky-local-variable.t)..(defva |
| 5d40 | 72 2d 6c 6f 63 61 6c 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 2d 65 78 74 72 61 2d 70 61 | r-local.tree-sitter-hl--extra-pa |
| 5d60 | 74 74 65 72 6e 73 2d 6c 69 73 74 20 6e 69 6c 0a 20 20 22 41 64 64 69 74 69 6f 6e 61 6c 20 62 75 | tterns-list.nil..."Additional.bu |
| 5d80 | 66 66 65 72 2d 6c 6f 63 61 6c 20 73 79 6e 74 61 78 20 68 69 67 68 6c 69 67 68 74 69 6e 67 20 70 | ffer-local.syntax.highlighting.p |
| 5da0 | 61 74 74 65 72 6e 73 2e 22 29 0a 0a 28 64 65 66 76 61 72 2d 6c 6f 63 61 6c 20 74 72 65 65 2d 73 | atterns.")..(defvar-local.tree-s |
| 5dc0 | 69 74 74 65 72 2d 68 6c 2d 2d 71 75 65 72 79 20 6e 69 6c 0a 20 20 22 54 72 65 65 20 71 75 65 72 | itter-hl--query.nil..."Tree.quer |
| 5de0 | 79 20 75 73 65 64 20 66 6f 72 20 73 79 6e 74 61 78 20 68 69 67 68 6c 69 67 68 74 69 6e 67 2c 20 | y.used.for.syntax.highlighting,. |
| 5e00 | 63 6f 6d 70 69 6c 65 64 20 66 72 6f 6d 20 70 61 74 74 65 72 6e 73 2e 22 29 0a 0a 28 64 65 66 75 | compiled.from.patterns.")..(defu |
| 5e20 | 6e 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 2d 65 6e 73 75 72 65 2d 71 75 65 72 79 20 28 | n.tree-sitter-hl--ensure-query.( |
| 5e40 | 29 0a 20 20 22 52 65 74 75 72 6e 20 74 68 65 20 74 72 65 65 20 71 75 65 72 79 20 74 6f 20 62 65 | )..."Return.the.tree.query.to.be |
| 5e60 | 20 75 73 65 64 20 66 6f 72 20 73 79 6e 74 61 78 20 68 69 67 68 6c 69 67 68 74 69 6e 67 20 69 6e | .used.for.syntax.highlighting.in |
| 5e80 | 20 74 68 69 73 20 62 75 66 66 65 72 2e 22 0a 20 20 28 75 6e 6c 65 73 73 20 74 72 65 65 2d 73 69 | .this.buffer."...(unless.tree-si |
| 5ea0 | 74 74 65 72 2d 68 6c 2d 2d 71 75 65 72 79 0a 20 20 20 20 28 73 65 74 71 20 74 72 65 65 2d 73 69 | tter-hl--query.....(setq.tree-si |
| 5ec0 | 74 74 65 72 2d 68 6c 2d 2d 71 75 65 72 79 0a 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 74 | tter-hl--query...........(when.t |
| 5ee0 | 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 64 65 66 61 75 6c 74 2d 70 61 74 74 65 72 6e 73 0a 20 | ree-sitter-hl-default-patterns.. |
| 5f00 | 20 20 20 20 20 20 20 20 20 20 20 28 74 73 63 2d 6d 61 6b 65 2d 71 75 65 72 79 0a 20 20 20 20 20 | ...........(tsc-make-query...... |
| 5f20 | 20 20 20 20 20 20 20 20 74 72 65 65 2d 73 69 74 74 65 72 2d 6c 61 6e 67 75 61 67 65 0a 20 20 20 | ........tree-sitter-language.... |
| 5f40 | 20 20 20 20 20 20 20 20 20 20 28 6d 61 70 63 6f 6e 63 61 74 20 23 27 74 73 63 2d 2d 73 74 72 69 | ..........(mapconcat.#'tsc--stri |
| 5f60 | 6e 67 69 66 79 2d 70 61 74 74 65 72 6e 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ngify-patterns.................. |
| 5f80 | 20 20 20 20 20 20 20 28 61 70 70 65 6e 64 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 2d 65 | .......(append.tree-sitter-hl--e |
| 5fa0 | 78 74 72 61 2d 70 61 74 74 65 72 6e 73 2d 6c 69 73 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | xtra-patterns-list.............. |
| 5fc0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 6c 69 73 74 2d 67 65 74 20 28 74 | ...................(alist-get.(t |
| 5fe0 | 73 63 2d 2d 6c 61 6e 67 2d 73 79 6d 62 6f 6c 20 74 72 65 65 2d 73 69 74 74 65 72 2d 6c 61 6e 67 | sc--lang-symbol.tree-sitter-lang |
| 6000 | 75 61 67 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | uage)........................... |
| 6020 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d | .................tree-sitter-hl- |
| 6040 | 2d 70 61 74 74 65 72 6e 73 2d 61 6c 69 73 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | -patterns-alist)................ |
| 6060 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 73 74 20 74 72 65 65 2d 73 69 74 74 | .................(list.tree-sitt |
| 6080 | 65 72 2d 68 6c 2d 64 65 66 61 75 6c 74 2d 70 61 74 74 65 72 6e 73 29 29 0a 20 20 20 20 20 20 20 | er-hl-default-patterns))........ |
| 60a0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 22 5c 6e 22 29 0a 20 20 20 20 20 20 20 20 20 | ................."\n").......... |
| 60c0 | 20 20 20 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 2d 6d 61 70 70 69 6e 67 2d | ....tree-sitter-hl-face-mapping- |
| 60e0 | 66 75 6e 63 74 69 6f 6e 29 29 29 29 0a 20 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 2d 71 | function))))...tree-sitter-hl--q |
| 6100 | 75 65 72 79 29 0a 0a 28 64 65 66 75 6e 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 | uery)..(defun.tree-sitter-hl-fac |
| 6120 | 65 2d 66 72 6f 6d 2d 63 6f 6d 6d 6f 6e 2d 73 63 6f 70 65 20 28 63 61 70 74 75 72 65 2d 6e 61 6d | e-from-common-scope.(capture-nam |
| 6140 | 65 29 0a 20 20 22 52 65 74 75 72 6e 20 74 68 65 20 64 65 66 61 75 6c 74 20 66 61 63 65 20 75 73 | e)..."Return.the.default.face.us |
| 6160 | 65 64 20 74 6f 20 68 69 67 68 6c 69 67 68 74 20 43 41 50 54 55 52 45 2d 4e 41 4d 45 2e 22 0a 20 | ed.to.highlight.CAPTURE-NAME.".. |
| 6180 | 20 3b 3b 20 54 4f 44 4f 3a 20 49 66 20 61 20 73 63 6f 70 65 20 64 6f 65 73 20 6e 6f 74 20 68 61 | .;;.TODO:.If.a.scope.does.not.ha |
| 61a0 | 76 65 20 61 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 66 61 63 65 2c 20 63 68 65 63 6b 20 69 | ve.a.corresponding.face,.check.i |
| 61c0 | 74 73 20 61 6e 63 65 73 74 6f 72 73 2e 0a 20 20 28 69 6e 74 65 72 6e 20 28 66 6f 72 6d 61 74 20 | ts.ancestors....(intern.(format. |
| 61e0 | 22 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 66 61 63 65 3a 25 73 22 20 63 61 70 74 75 72 65 | "tree-sitter-hl-face:%s".capture |
| 6200 | 2d 6e 61 6d 65 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 | -name)))..;;;###autoload.(defun. |
| 6220 | 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 61 64 64 2d 70 61 74 74 65 72 6e 73 20 28 6c 61 6e | tree-sitter-hl-add-patterns.(lan |
| 6240 | 67 2d 73 79 6d 62 6f 6c 20 70 61 74 74 65 72 6e 73 29 0a 20 20 22 41 64 64 20 63 75 73 74 6f 6d | g-symbol.patterns)..."Add.custom |
| 6260 | 20 73 79 6e 74 61 78 20 68 69 67 68 6c 69 67 68 74 69 6e 67 20 50 41 54 54 45 52 4e 53 2e 0a 49 | .syntax.highlighting.PATTERNS..I |
| 6280 | 66 20 4c 41 4e 47 2d 53 59 4d 42 4f 4c 20 69 73 20 6e 6f 6e 2d 6e 69 6c 2c 20 69 74 20 69 64 65 | f.LANG-SYMBOL.is.non-nil,.it.ide |
| 62a0 | 6e 74 69 66 69 65 73 20 74 68 65 20 6c 61 6e 67 75 61 67 65 20 74 68 61 74 20 50 41 54 54 45 52 | ntifies.the.language.that.PATTER |
| 62c0 | 4e 53 20 73 68 6f 75 6c 64 20 62 65 0a 61 70 70 6c 69 65 64 20 74 6f 2e 20 49 66 20 4c 41 4e 47 | NS.should.be.applied.to..If.LANG |
| 62e0 | 2d 53 59 4d 42 4f 4c 20 69 73 20 6e 69 6c 2c 20 50 41 54 54 45 52 4e 53 20 61 72 65 20 61 70 70 | -SYMBOL.is.nil,.PATTERNS.are.app |
| 6300 | 6c 69 65 64 20 74 6f 20 74 68 65 20 63 75 72 72 65 6e 74 20 62 75 66 66 65 72 2c 0a 61 6e 64 20 | lied.to.the.current.buffer,.and. |
| 6320 | 61 72 65 20 70 72 69 6f 72 69 74 69 7a 65 64 20 6f 76 65 72 20 6c 61 6e 67 75 61 67 65 2d 73 70 | are.prioritized.over.language-sp |
| 6340 | 65 63 69 66 69 63 20 70 61 74 74 65 72 6e 73 2e 20 45 69 74 68 65 72 20 77 61 79 2c 20 50 41 54 | ecific.patterns..Either.way,.PAT |
| 6360 | 54 45 52 4e 53 20 61 72 65 0a 70 72 69 6f 72 69 74 69 7a 65 64 20 6f 76 65 72 20 60 74 72 65 65 | TERNS.are.prioritized.over.`tree |
| 6380 | 2d 73 69 74 74 65 72 2d 68 6c 2d 64 65 66 61 75 6c 74 2d 70 61 74 74 65 72 6e 73 27 2e 0a 0a 54 | -sitter-hl-default-patterns'...T |
| 63a0 | 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 73 68 6f 75 6c 64 20 62 65 20 75 73 65 64 20 62 79 20 6d | his.function.should.be.used.by.m |
| 63c0 | 69 6e 6f 72 20 6d 6f 64 65 73 20 61 6e 64 20 63 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20 63 6f 64 | inor.modes.and.configuration.cod |
| 63e0 | 65 2e 20 4d 61 6a 6f 72 20 6d 6f 64 65 73 0a 73 68 6f 75 6c 64 20 73 65 74 20 60 74 72 65 65 2d | e..Major.modes.should.set.`tree- |
| 6400 | 73 69 74 74 65 72 2d 68 6c 2d 64 65 66 61 75 6c 74 2d 70 61 74 74 65 72 6e 73 27 20 69 6e 73 74 | sitter-hl-default-patterns'.inst |
| 6420 | 65 61 64 2e 22 0a 20 20 28 64 65 63 6c 61 72 65 20 28 69 6e 64 65 6e 74 20 31 29 29 0a 20 20 28 | ead."...(declare.(indent.1))...( |
| 6440 | 69 66 20 6c 61 6e 67 2d 73 79 6d 62 6f 6c 0a 20 20 20 20 20 20 28 74 72 65 65 2d 73 69 74 74 65 | if.lang-symbol.......(tree-sitte |
| 6460 | 72 2d 68 6c 2d 2d 61 64 64 2d 70 61 74 74 65 72 6e 73 2d 66 6f 72 2d 6c 61 6e 67 75 61 67 65 20 | r-hl--add-patterns-for-language. |
| 6480 | 6c 61 6e 67 2d 73 79 6d 62 6f 6c 20 70 61 74 74 65 72 6e 73 29 0a 20 20 20 20 28 74 72 65 65 2d | lang-symbol.patterns).....(tree- |
| 64a0 | 73 69 74 74 65 72 2d 68 6c 2d 2d 61 64 64 2d 70 61 74 74 65 72 6e 73 2d 6c 6f 63 61 6c 6c 79 20 | sitter-hl--add-patterns-locally. |
| 64c0 | 70 61 74 74 65 72 6e 73 29 29 29 0a 0a 28 64 65 66 75 6e 20 74 72 65 65 2d 73 69 74 74 65 72 2d | patterns)))..(defun.tree-sitter- |
| 64e0 | 68 6c 2d 2d 61 64 64 2d 70 61 74 74 65 72 6e 73 2d 6c 6f 63 61 6c 6c 79 20 28 70 61 74 74 65 72 | hl--add-patterns-locally.(patter |
| 6500 | 6e 73 29 0a 20 20 22 41 64 64 20 62 75 66 66 65 72 2d 6c 6f 63 61 6c 20 73 79 6e 74 61 78 20 68 | ns)..."Add.buffer-local.syntax.h |
| 6520 | 69 67 68 6c 69 67 68 74 69 6e 67 20 50 41 54 54 45 52 4e 53 2e 0a 54 68 65 73 65 20 77 69 6c 6c | ighlighting.PATTERNS..These.will |
| 6540 | 20 74 61 6b 65 20 70 72 65 63 65 64 65 6e 63 65 20 6f 76 65 72 20 60 74 72 65 65 2d 73 69 74 74 | .take.precedence.over.`tree-sitt |
| 6560 | 65 72 2d 68 6c 2d 64 65 66 61 75 6c 74 2d 70 61 74 74 65 72 6e 73 27 2c 20 61 73 20 77 65 6c 6c | er-hl-default-patterns',.as.well |
| 6580 | 20 61 73 0a 70 72 65 76 69 6f 75 73 6c 79 20 61 64 64 65 64 20 70 61 74 74 65 72 6e 73 2e 22 0a | .as.previously.added.patterns.". |
| 65a0 | 20 20 3b 3b 20 44 6f 20 6e 6f 74 68 69 6e 67 20 69 66 20 74 68 65 20 70 61 74 74 65 72 6e 73 20 | ..;;.Do.nothing.if.the.patterns. |
| 65c0 | 61 72 65 20 61 6c 72 65 61 64 79 20 6f 6e 20 74 6f 70 2e 0a 20 20 28 75 6e 6c 65 73 73 20 28 65 | are.already.on.top....(unless.(e |
| 65e0 | 71 75 61 6c 20 70 61 74 74 65 72 6e 73 20 28 63 6c 2d 66 69 72 73 74 20 74 72 65 65 2d 73 69 74 | qual.patterns.(cl-first.tree-sit |
| 6600 | 74 65 72 2d 68 6c 2d 2d 65 78 74 72 61 2d 70 61 74 74 65 72 6e 73 2d 6c 69 73 74 29 29 0a 20 20 | ter-hl--extra-patterns-list))... |
| 6620 | 20 20 28 6c 65 74 20 28 28 6f 6c 64 2d 6c 69 73 74 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c | ..(let.((old-list.tree-sitter-hl |
| 6640 | 2d 2d 65 78 74 72 61 2d 70 61 74 74 65 72 6e 73 2d 6c 69 73 74 29 0a 20 20 20 20 20 20 20 20 20 | --extra-patterns-list).......... |
| 6660 | 20 28 6f 6c 64 2d 71 75 65 72 79 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 2d 71 75 65 72 | .(old-query.tree-sitter-hl--quer |
| 6680 | 79 29 29 0a 20 20 20 20 20 20 3b 3b 20 55 70 64 61 74 65 20 74 68 65 20 70 61 74 74 65 72 6e 73 | y)).......;;.Update.the.patterns |
| 66a0 | 20 6c 69 73 74 20 61 6e 64 20 72 65 71 75 65 73 74 20 74 68 65 20 71 75 65 72 79 20 74 6f 20 62 | .list.and.request.the.query.to.b |
| 66c0 | 65 20 72 65 62 75 69 6c 74 2e 2e 2e 0a 20 20 20 20 20 20 28 73 65 74 71 20 74 72 65 65 2d 73 69 | e.rebuilt..........(setq.tree-si |
| 66e0 | 74 74 65 72 2d 68 6c 2d 2d 65 78 74 72 61 2d 70 61 74 74 65 72 6e 73 2d 6c 69 73 74 0a 20 20 20 | tter-hl--extra-patterns-list.... |
| 6700 | 20 20 20 20 20 20 20 20 20 28 61 70 70 65 6e 64 20 28 6c 69 73 74 20 70 61 74 74 65 72 6e 73 29 | .........(append.(list.patterns) |
| 6720 | 20 28 72 65 6d 6f 76 65 20 70 61 74 74 65 72 6e 73 20 6f 6c 64 2d 6c 69 73 74 29 29 29 0a 20 20 | .(remove.patterns.old-list)))... |
| 6740 | 20 20 20 20 28 73 65 74 71 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 2d 71 75 65 72 79 20 | ....(setq.tree-sitter-hl--query. |
| 6760 | 6e 69 6c 29 0a 20 20 20 20 20 20 3b 3b 20 2e 2e 2e 20 61 6e 64 20 62 75 69 6c 64 20 69 74 20 69 | nil).......;;.....and.build.it.i |
| 6780 | 66 20 70 6f 73 73 69 62 6c 65 2e 20 44 75 72 69 6e 67 20 61 20 6d 61 6a 6f 72 20 6d 6f 64 65 27 | f.possible..During.a.major.mode' |
| 67a0 | 73 20 68 6f 6f 6b 2c 20 77 65 20 6d 61 79 20 6e 6f 74 0a 20 20 20 20 20 20 3b 3b 20 65 76 65 6e | s.hook,.we.may.not.......;;.even |
| 67c0 | 20 6b 6e 6f 77 20 74 68 65 20 6c 61 6e 67 75 61 67 65 2c 20 69 6e 20 77 68 69 63 68 20 63 61 73 | .know.the.language,.in.which.cas |
| 67e0 | 65 20 77 65 20 6c 65 74 20 60 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 2d 73 65 74 75 70 27 | e.we.let.`tree-sitter-hl--setup' |
| 6800 | 0a 20 20 20 20 20 20 3b 3b 20 62 75 69 6c 64 20 74 68 65 20 71 75 65 72 79 20 6c 61 74 65 72 20 | .......;;.build.the.query.later. |
| 6820 | 6f 6e 2e 0a 20 20 20 20 20 20 28 77 68 65 6e 20 74 72 65 65 2d 73 69 74 74 65 72 2d 6c 61 6e 67 | on........(when.tree-sitter-lang |
| 6840 | 75 61 67 65 0a 20 20 20 20 20 20 20 20 28 74 72 65 65 2d 73 69 74 74 65 72 2d 2d 65 72 72 6f 72 | uage.........(tree-sitter--error |
| 6860 | 2d 70 72 6f 74 65 63 74 20 28 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 2d 65 6e 73 75 72 65 | -protect.(tree-sitter-hl--ensure |
| 6880 | 2d 71 75 65 72 79 29 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 57 68 65 6e 20 74 68 65 20 6e 65 | -query)...........;;.When.the.ne |
| 68a0 | 77 6c 79 20 61 64 64 65 64 20 70 61 74 74 65 72 6e 73 20 61 72 65 20 69 6e 76 61 6c 69 64 2c 20 | wly.added.patterns.are.invalid,. |
| 68c0 | 72 65 73 74 6f 72 65 20 74 68 65 20 6f 6c 64 20 73 74 61 74 65 2e 0a 20 20 20 20 20 20 20 20 20 | restore.the.old.state........... |
| 68e0 | 20 28 73 65 74 71 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 2d 71 75 65 72 79 20 6f 6c 64 | .(setq.tree-sitter-hl--query.old |
| 6900 | 2d 71 75 65 72 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 72 65 65 2d 73 69 74 74 | -query.................tree-sitt |
| 6920 | 65 72 2d 68 6c 2d 2d 65 78 74 72 61 2d 70 61 74 74 65 72 6e 73 2d 6c 69 73 74 20 6f 6c 64 2d 6c | er-hl--extra-patterns-list.old-l |
| 6940 | 69 73 74 29 29 0a 20 20 20 20 20 20 20 20 3b 3b 20 45 76 65 72 79 74 68 69 6e 67 20 69 73 20 69 | ist)).........;;.Everything.is.i |
| 6960 | 6e 20 70 6c 61 63 65 2e 20 52 65 71 75 65 73 74 20 61 20 72 65 2d 72 65 6e 64 65 72 2e 0a 20 20 | n.place..Request.a.re-render.... |
| 6980 | 20 20 20 20 20 20 28 77 68 65 6e 20 28 62 6f 75 6e 64 2d 61 6e 64 2d 74 72 75 65 2d 70 20 74 72 | ......(when.(bound-and-true-p.tr |
| 69a0 | 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 6d 6f 64 65 29 0a 20 20 20 20 20 20 20 20 20 20 28 74 72 | ee-sitter-hl-mode)...........(tr |
| 69c0 | 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 2d 69 6e 76 61 6c 69 64 61 74 65 29 29 29 29 29 29 0a 0a | ee-sitter-hl--invalidate)))))).. |
| 69e0 | 28 64 65 66 75 6e 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 2d 61 64 64 2d 70 61 74 74 65 | (defun.tree-sitter-hl--add-patte |
| 6a00 | 72 6e 73 2d 66 6f 72 2d 6c 61 6e 67 75 61 67 65 20 28 6c 61 6e 67 2d 73 79 6d 62 6f 6c 20 70 61 | rns-for-language.(lang-symbol.pa |
| 6a20 | 74 74 65 72 6e 73 29 0a 20 20 22 41 64 64 20 73 79 6e 74 61 78 20 68 69 67 68 6c 69 67 68 74 69 | tterns)..."Add.syntax.highlighti |
| 6a40 | 6e 67 20 50 41 54 54 45 52 4e 53 20 66 6f 72 20 74 68 65 20 6c 61 6e 67 75 61 67 65 20 69 64 65 | ng.PATTERNS.for.the.language.ide |
| 6a60 | 6e 74 69 66 69 65 64 20 62 79 20 4c 41 4e 47 2d 53 59 4d 42 4f 4c 2e 0a 53 65 65 20 60 74 72 65 | ntified.by.LANG-SYMBOL..See.`tre |
| 6a80 | 65 2d 73 69 74 74 65 72 2d 68 6c 2d 61 64 64 2d 70 61 74 74 65 72 6e 73 27 2e 22 0a 20 20 28 6c | e-sitter-hl-add-patterns'."...(l |
| 6aa0 | 65 74 20 28 28 6f 6c 64 2d 6c 69 73 74 20 28 61 6c 69 73 74 2d 67 65 74 20 6c 61 6e 67 2d 73 79 | et.((old-list.(alist-get.lang-sy |
| 6ac0 | 6d 62 6f 6c 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 2d 70 61 74 74 65 72 6e 73 2d 61 6c | mbol.tree-sitter-hl--patterns-al |
| 6ae0 | 69 73 74 29 29 29 0a 20 20 20 20 3b 3b 20 44 6f 20 6e 6f 74 68 69 6e 67 20 69 66 20 74 68 65 20 | ist))).....;;.Do.nothing.if.the. |
| 6b00 | 70 61 74 74 65 72 6e 73 20 61 72 65 20 61 6c 72 65 61 64 79 20 6f 6e 20 74 6f 70 2e 0a 20 20 20 | patterns.are.already.on.top..... |
| 6b20 | 20 28 75 6e 6c 65 73 73 20 28 65 71 75 61 6c 20 70 61 74 74 65 72 6e 73 20 28 63 6c 2d 66 69 72 | .(unless.(equal.patterns.(cl-fir |
| 6b40 | 73 74 20 6f 6c 64 2d 6c 69 73 74 29 29 0a 20 20 20 20 20 20 3b 3b 20 43 68 65 63 6b 20 77 68 65 | st.old-list)).......;;.Check.whe |
| 6b60 | 74 68 65 72 20 74 68 65 20 70 61 74 74 65 72 6e 73 20 61 72 65 20 76 61 6c 69 64 2e 20 54 4f 44 | ther.the.patterns.are.valid..TOD |
| 6b80 | 4f 3a 20 53 68 6f 75 6c 64 20 77 65 20 64 65 6c 61 79 20 74 68 65 20 63 68 65 63 6b 0a 20 20 20 | O:.Should.we.delay.the.check.... |
| 6ba0 | 20 20 20 3b 3b 20 69 66 20 6c 61 6e 67 75 61 67 65 20 69 73 20 6e 6f 74 20 79 65 74 20 6c 6f 61 | ...;;.if.language.is.not.yet.loa |
| 6bc0 | 64 65 64 2c 20 69 6e 73 74 65 61 64 20 6f 66 20 74 72 79 69 6e 67 20 74 6f 20 6c 6f 61 64 20 69 | ded,.instead.of.trying.to.load.i |
| 6be0 | 74 3f 0a 20 20 20 20 20 20 28 74 73 63 2d 6d 61 6b 65 2d 71 75 65 72 79 20 28 74 72 65 65 2d 73 | t?.......(tsc-make-query.(tree-s |
| 6c00 | 69 74 74 65 72 2d 72 65 71 75 69 72 65 20 6c 61 6e 67 2d 73 79 6d 62 6f 6c 29 20 70 61 74 74 65 | itter-require.lang-symbol).patte |
| 6c20 | 72 6e 73 29 0a 20 20 20 20 20 20 28 73 65 74 66 20 28 6d 61 70 2d 65 6c 74 20 74 72 65 65 2d 73 | rns).......(setf.(map-elt.tree-s |
| 6c40 | 69 74 74 65 72 2d 68 6c 2d 2d 70 61 74 74 65 72 6e 73 2d 61 6c 69 73 74 20 6c 61 6e 67 2d 73 79 | itter-hl--patterns-alist.lang-sy |
| 6c60 | 6d 62 6f 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 61 70 70 65 6e 64 20 28 6c 69 73 74 20 | mbol).............(append.(list. |
| 6c80 | 70 61 74 74 65 72 6e 73 29 20 28 72 65 6d 6f 76 65 20 70 61 74 74 65 72 6e 73 20 6f 6c 64 2d 6c | patterns).(remove.patterns.old-l |
| 6ca0 | 69 73 74 29 29 29 29 29 29 0a 0a 3b 3b 3b 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | ist))))))..;;;.----------------- |
| 6cc0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
| 6ce0 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 3b 3b 3b 20 | ---------------------------.;;;. |
| 6d00 | 49 6e 74 65 72 6e 61 6c 20 77 6f 72 6b 69 6e 67 73 2e 0a 0a 28 64 65 66 76 61 72 2d 6c 6f 63 61 | Internal.workings...(defvar-loca |
| 6d20 | 6c 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 2d 71 75 65 72 79 2d 63 75 72 73 6f 72 20 6e | l.tree-sitter-hl--query-cursor.n |
| 6d40 | 69 6c 29 0a 0a 28 64 65 66 63 6f 6e 73 74 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 2d 65 | il)..(defconst.tree-sitter-hl--e |
| 6d60 | 78 74 65 6e 64 2d 72 65 67 69 6f 6e 2d 6c 69 6d 69 74 20 32 30 34 38 0a 20 20 22 54 68 65 20 6d | xtend-region-limit.2048..."The.m |
| 6d80 | 61 78 20 73 69 7a 65 20 64 65 6c 74 61 20 6f 66 20 74 68 65 20 28 73 74 72 75 63 74 75 72 61 6c | ax.size.delta.of.the.(structural |
| 6da0 | 6c 79 29 20 65 78 74 65 6e 64 65 64 20 72 65 67 69 6f 6e 73 2e 22 29 0a 0a 28 64 65 66 63 6f 6e | ly).extended.regions.")..(defcon |
| 6dc0 | 73 74 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 2d 65 78 74 65 6e 64 2d 72 65 67 69 6f 6e | st.tree-sitter-hl--extend-region |
| 6de0 | 2d 6c 65 76 65 6c 73 20 34 0a 20 20 22 54 68 65 20 6d 61 78 20 6e 75 6d 62 65 72 20 6f 66 20 6c | -levels.4..."The.max.number.of.l |
| 6e00 | 65 76 65 6c 73 20 74 6f 20 77 61 6c 6b 20 75 70 20 74 68 65 20 73 79 6e 74 61 78 20 74 72 65 65 | evels.to.walk.up.the.syntax.tree |
| 6e20 | 20 74 6f 20 65 78 74 65 6e 64 20 74 68 65 20 72 65 67 69 6f 6e 73 2e 0a 54 68 65 20 61 73 73 75 | .to.extend.the.regions..The.assu |
| 6e40 | 6d 70 74 69 6f 6e 20 69 73 20 74 68 61 74 3a 20 69 6e 20 61 6e 79 20 73 79 6e 74 61 78 20 68 69 | mption.is.that:.in.any.syntax.hi |
| 6e60 | 67 68 6c 69 67 68 74 69 6e 67 20 70 61 74 74 65 72 6e 2c 20 74 68 65 20 63 61 70 74 75 72 65 73 | ghlighting.pattern,.the.captures |
| 6e80 | 20 64 6f 20 6e 6f 74 0a 6c 69 65 20 64 65 65 70 65 72 20 74 68 61 6e 20 74 68 69 73 2e 22 29 0a | .do.not.lie.deeper.than.this."). |
| 6ea0 | 0a 3b 3b 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 74 72 65 65 2d 73 69 74 74 | .;;.https://github.com/tree-sitt |
| 6ec0 | 65 72 2f 74 72 65 65 2d 73 69 74 74 65 72 2f 70 75 6c 6c 2f 31 31 33 30 2e 0a 28 64 65 66 76 61 | er/tree-sitter/pull/1130..(defva |
| 6ee0 | 72 2d 6c 6f 63 61 6c 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 65 6e 61 62 6c 65 2d 71 75 | r-local.tree-sitter-hl-enable-qu |
| 6f00 | 65 72 79 2d 72 65 67 69 6f 6e 2d 65 78 74 65 6e 73 69 6f 6e 20 6e 69 6c 0a 20 20 22 57 68 65 74 | ery-region-extension.nil..."Whet |
| 6f20 | 68 65 72 20 74 6f 20 65 78 74 65 6e 64 20 71 75 65 72 79 20 72 65 67 69 6f 6e 20 75 73 65 64 20 | her.to.extend.query.region.used. |
| 6f40 | 66 6f 72 20 68 69 67 68 6c 69 67 68 74 69 6e 67 2e 0a 49 66 20 79 6f 75 20 67 65 74 20 69 6e 63 | for.highlighting..If.you.get.inc |
| 6f60 | 6f 72 72 65 63 74 20 68 69 67 68 6c 69 67 68 74 69 6e 67 2c 20 74 72 79 20 73 65 74 74 69 6e 67 | orrect.highlighting,.try.setting |
| 6f80 | 20 74 68 69 73 20 74 6f 20 74 2e 0a 0a 53 65 65 20 60 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c | .this.to.t...See.`tree-sitter-hl |
| 6fa0 | 2d 2d 65 78 74 65 6e 64 2d 72 65 67 69 6f 6e 73 27 20 66 6f 72 20 6d 6f 72 65 20 64 65 74 61 69 | --extend-regions'.for.more.detai |
| 6fc0 | 6c 73 2e 22 29 0a 0a 3b 3b 3b 20 54 4f 44 4f 3a 20 49 6d 70 72 6f 76 65 20 74 68 69 73 20 66 75 | ls.")..;;;.TODO:.Improve.this.fu |
| 6fe0 | 6e 63 74 69 6f 6e 27 73 20 64 6f 63 73 74 72 69 6e 67 2e 20 49 74 27 73 20 6e 6f 20 6c 6f 6e 67 | nction's.docstring..It's.no.long |
| 7000 | 65 72 20 61 63 63 75 72 61 74 65 2e 0a 28 64 65 66 75 6e 20 74 72 65 65 2d 73 69 74 74 65 72 2d | er.accurate..(defun.tree-sitter- |
| 7020 | 68 6c 2d 2d 65 78 74 65 6e 64 2d 72 65 67 69 6f 6e 73 20 28 68 6c 2d 72 65 67 69 6f 6e 20 71 75 | hl--extend-regions.(hl-region.qu |
| 7040 | 65 72 79 2d 72 65 67 69 6f 6e 29 0a 20 20 22 45 78 74 65 6e 64 20 48 4c 2d 52 45 47 49 4f 4e 20 | ery-region)..."Extend.HL-REGION. |
| 7060 | 61 6e 64 20 51 55 45 52 59 2d 52 45 47 49 4f 4e 20 62 65 66 6f 72 65 20 68 69 67 68 6c 69 67 68 | and.QUERY-REGION.before.highligh |
| 7080 | 74 69 6e 67 2c 20 6d 75 74 61 62 6c 79 2e 0a 46 6f 72 20 70 65 72 66 6f 72 6d 61 6e 63 65 20 72 | ting,.mutably..For.performance.r |
| 70a0 | 65 61 73 6f 6e 2c 20 77 65 20 65 78 65 63 75 74 65 20 74 68 65 20 68 69 67 68 6c 69 67 68 74 69 | eason,.we.execute.the.highlighti |
| 70c0 | 6e 67 20 71 75 65 72 79 20 6f 6e 20 61 20 72 65 67 69 6f 6e 2c 20 69 6e 73 74 65 61 64 0a 6f 66 | ng.query.on.a.region,.instead.of |
| 70e0 | 20 6f 6e 20 74 68 65 20 77 68 6f 6c 65 20 62 75 66 66 65 72 2e 20 57 68 65 6e 20 72 61 6e 67 65 | .on.the.whole.buffer..When.range |
| 7100 | 20 72 65 73 74 72 69 63 74 69 6f 6e 20 69 73 20 75 73 65 64 2c 20 61 20 6d 61 74 63 68 20 69 73 | .restriction.is.used,.a.match.is |
| 7120 | 20 72 65 74 75 72 6e 65 64 20 6f 6e 6c 79 0a 77 68 65 6e 20 61 6c 6c 20 6e 6f 64 65 73 20 69 6e | .returned.only.when.all.nodes.in |
| 7140 | 20 61 20 70 61 74 74 65 72 6e 20 69 6e 74 65 72 73 65 63 74 20 74 68 65 20 71 75 65 72 79 20 63 | .a.pattern.intersect.the.query.c |
| 7160 | 75 72 73 6f 72 27 73 20 72 61 6e 67 65 2e 20 54 68 65 72 65 66 6f 72 65 2c 0a 51 55 45 52 59 2d | ursor's.range..Therefore,.QUERY- |
| 7180 | 52 45 47 49 4f 4e 20 73 68 6f 75 6c 64 20 69 6e 74 65 72 73 65 63 74 20 61 6c 6c 20 72 65 6c 65 | REGION.should.intersect.all.rele |
| 71a0 | 76 61 6e 74 20 6e 6f 64 65 73 2c 20 6e 6f 74 20 6a 75 73 74 20 6e 6f 64 65 73 20 74 6f 20 62 65 | vant.nodes,.not.just.nodes.to.be |
| 71c0 | 0a 68 69 67 68 6c 69 67 68 74 65 64 2e 0a 0a 4f 6e 65 20 63 61 73 65 20 74 68 61 74 20 69 6c 6c | .highlighted...One.case.that.ill |
| 71e0 | 75 73 74 72 61 74 65 73 20 74 68 65 20 6e 65 65 64 20 66 6f 72 20 51 55 45 52 59 2d 52 45 47 49 | ustrates.the.need.for.QUERY-REGI |
| 7200 | 4f 4e 20 74 6f 20 62 65 20 6c 61 72 67 65 72 20 74 68 61 6e 20 48 4c 2d 52 45 47 49 4f 4e 0a 69 | ON.to.be.larger.than.HL-REGION.i |
| 7220 | 73 20 77 68 65 6e 20 60 65 76 69 6c 2d 61 64 6a 75 73 74 2d 63 75 72 73 6f 72 27 20 74 72 69 67 | s.when.`evil-adjust-cursor'.trig |
| 7240 | 67 65 72 73 20 61 20 60 76 65 72 74 69 63 61 6c 2d 6d 6f 74 69 6f 6e 27 20 28 6f 75 74 73 69 64 | gers.a.`vertical-motion'.(outsid |
| 7260 | 65 20 6f 66 20 61 0a 72 65 64 69 73 70 6c 61 79 29 2c 20 72 65 73 75 6c 74 69 6e 67 20 69 6e 20 | e.of.a.redisplay),.resulting.in. |
| 7280 | 60 6a 69 74 2d 6c 6f 63 6b 2d 2d 72 75 6e 2d 66 75 6e 74 69 6f 6e 73 27 20 62 65 69 6e 67 20 63 | `jit-lock--run-funtions'.being.c |
| 72a0 | 61 6c 6c 65 64 20 6f 6e 20 61 20 76 65 72 79 20 73 6d 61 6c 6c 0a 72 65 67 69 6f 6e 2e 20 41 6e | alled.on.a.very.small.region..An |
| 72c0 | 6f 74 68 65 72 20 63 61 73 65 20 69 73 20 73 69 62 6c 69 6e 67 20 73 75 62 2d 70 61 74 74 65 72 | other.case.is.sibling.sub-patter |
| 72e0 | 6e 73 20 62 65 69 6e 67 20 63 75 74 20 69 6e 20 68 61 6c 76 65 73 20 62 79 20 48 4c 2d 52 45 47 | ns.being.cut.in.halves.by.HL-REG |
| 7300 | 49 4f 4e 27 73 0a 62 6f 75 6e 64 61 72 69 65 73 2e 0a 0a 4e 6f 74 65 20 74 68 61 74 20 74 68 65 | ION's.boundaries...Note.that.the |
| 7320 | 20 6d 61 69 6e 20 70 65 72 66 6f 72 6d 61 6e 63 65 20 62 6f 74 74 6c 65 6e 65 63 6b 20 77 69 74 | .main.performance.bottleneck.wit |
| 7340 | 68 20 71 75 65 72 79 69 6e 67 20 74 68 65 20 77 68 6f 6c 65 20 62 75 66 66 65 72 20 69 73 20 69 | h.querying.the.whole.buffer.is.i |
| 7360 | 6e 0a 61 63 63 65 73 73 69 6e 67 20 6e 6f 64 65 73 27 20 74 65 78 74 73 2c 20 77 68 69 63 68 20 | n.accessing.nodes'.texts,.which. |
| 7380 | 69 6e 76 6f 6c 76 65 73 20 61 6c 6c 6f 63 61 74 69 6e 67 20 74 65 6d 70 6f 72 61 72 79 20 73 74 | involves.allocating.temporary.st |
| 73a0 | 72 69 6e 67 73 2c 20 63 6f 70 79 69 6e 67 0a 74 68 65 6d 20 74 6f 20 74 68 65 20 64 79 6e 61 6d | rings,.copying.them.to.the.dynam |
| 73c0 | 69 63 20 6d 6f 64 75 6c 65 73 2c 20 74 68 65 6e 20 67 61 72 62 61 67 65 2d 63 6f 6c 6c 65 63 74 | ic.modules,.then.garbage-collect |
| 73e0 | 69 6e 67 20 74 68 65 6d 2e 20 57 68 65 6e 20 64 79 6e 61 6d 69 63 20 6d 6f 64 75 6c 65 73 0a 68 | ing.them..When.dynamic.modules.h |
| 7400 | 61 76 65 20 64 69 72 65 63 74 20 61 63 63 65 73 73 20 74 6f 20 62 75 66 66 65 72 20 74 65 78 74 | ave.direct.access.to.buffer.text |
| 7420 | 2c 20 74 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 6d 61 79 20 62 65 63 6f 6d 65 20 6f 62 73 6f 6c | ,.this.function.may.become.obsol |
| 7440 | 65 74 65 2e 0a 0a 53 65 65 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 74 72 65 | ete...See.https://github.com/tre |
| 7460 | 65 2d 73 69 74 74 65 72 2f 74 72 65 65 2d 73 69 74 74 65 72 2f 69 73 73 75 65 73 2f 35 39 38 2e | e-sitter/tree-sitter/issues/598. |
| 7480 | 22 0a 20 20 28 70 63 61 73 65 2d 6c 65 74 2a 20 28 28 72 6f 6f 74 2d 6e 6f 64 65 20 28 74 73 63 | "...(pcase-let*.((root-node.(tsc |
| 74a0 | 2d 72 6f 6f 74 2d 6e 6f 64 65 20 74 72 65 65 2d 73 69 74 74 65 72 2d 74 72 65 65 29 29 0a 20 20 | -root-node.tree-sitter-tree))... |
| 74c0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 28 60 28 2c 62 65 67 20 2e 20 2c 65 6e 64 29 20 68 6c 2d | .............(`(,beg...,end).hl- |
| 74e0 | 72 65 67 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 72 69 67 2d 73 69 7a | region)................(orig-siz |
| 7500 | 65 20 28 2d 20 65 6e 64 20 62 65 67 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e | e.(-.end.beg))................(n |
| 7520 | 6f 64 65 20 28 74 73 63 2d 67 65 74 2d 64 65 73 63 65 6e 64 61 6e 74 2d 66 6f 72 2d 70 6f 73 69 | ode.(tsc-get-descendant-for-posi |
| 7540 | 74 69 6f 6e 2d 72 61 6e 67 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | tion-range...................... |
| 7560 | 20 72 6f 6f 74 2d 6e 6f 64 65 20 62 65 67 20 65 6e 64 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 | .root-node.beg.end))............ |
| 7580 | 20 20 20 20 28 60 28 2c 62 65 67 20 2e 20 2c 65 6e 64 29 20 28 74 73 63 2d 6e 6f 64 65 2d 70 6f | ....(`(,beg...,end).(tsc-node-po |
| 75a0 | 73 69 74 69 6f 6e 2d 72 61 6e 67 65 20 6e 6f 64 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 | sition-range.node))............. |
| 75c0 | 20 20 20 28 73 69 7a 65 20 28 2d 20 65 6e 64 20 62 65 67 29 29 0a 20 20 20 20 20 20 20 20 20 20 | ...(size.(-.end.beg))........... |
| 75e0 | 20 20 20 20 20 28 64 65 6c 74 61 20 28 2d 20 73 69 7a 65 20 6f 72 69 67 2d 73 69 7a 65 29 29 0a | .....(delta.(-.size.orig-size)). |
| 7600 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 65 76 65 6c 20 30 29 29 0a 20 20 20 20 28 77 | ...............(level.0)).....(w |
| 7620 | 68 65 6e 20 28 3c 20 64 65 6c 74 61 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 2d 65 78 74 | hen.(<.delta.tree-sitter-hl--ext |
| 7640 | 65 6e 64 2d 72 65 67 69 6f 6e 2d 6c 69 6d 69 74 29 0a 20 20 20 20 20 20 28 73 65 74 63 61 72 20 | end-region-limit).......(setcar. |
| 7660 | 68 6c 2d 72 65 67 69 6f 6e 20 62 65 67 29 0a 20 20 20 20 20 20 28 73 65 74 63 64 72 20 68 6c 2d | hl-region.beg).......(setcdr.hl- |
| 7680 | 72 65 67 69 6f 6e 20 65 6e 64 29 0a 20 20 20 20 20 20 28 73 65 74 63 61 72 20 71 75 65 72 79 2d | region.end).......(setcar.query- |
| 76a0 | 72 65 67 69 6f 6e 20 62 65 67 29 0a 20 20 20 20 20 20 28 73 65 74 63 64 72 20 71 75 65 72 79 2d | region.beg).......(setcdr.query- |
| 76c0 | 72 65 67 69 6f 6e 20 65 6e 64 29 29 0a 20 20 20 20 3b 3b 20 52 65 70 65 61 74 65 64 6c 79 20 65 | region.end)).....;;.Repeatedly.e |
| 76e0 | 78 74 65 6e 64 20 74 68 65 20 72 65 67 69 6f 6e 2c 20 77 69 74 68 69 6e 20 74 68 65 20 6c 69 6d | xtend.the.region,.within.the.lim |
| 7700 | 69 74 2e 20 54 4f 44 4f 3a 20 57 68 61 74 20 69 66 20 74 68 65 20 72 65 67 69 6f 6e 0a 20 20 20 | it..TODO:.What.if.the.region.... |
| 7720 | 20 3b 3b 20 6f 66 20 74 68 65 20 6d 69 6e 69 6d 61 6c 20 65 6e 63 6c 6f 73 69 6e 67 20 6e 6f 64 | .;;.of.the.minimal.enclosing.nod |
| 7740 | 65 20 69 73 20 61 6c 72 65 61 64 79 20 74 6f 6f 20 6c 61 72 67 65 3f 0a 20 20 20 20 28 77 68 65 | e.is.already.too.large?.....(whe |
| 7760 | 6e 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 65 6e 61 62 6c 65 2d 71 75 65 72 79 2d 72 65 | n.tree-sitter-hl-enable-query-re |
| 7780 | 67 69 6f 6e 2d 65 78 74 65 6e 73 69 6f 6e 0a 20 20 20 20 20 20 28 77 68 69 6c 65 20 28 61 6e 64 | gion-extension.......(while.(and |
| 77a0 | 20 6e 6f 64 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 3c 20 64 65 6c 74 61 | .node...................(<.delta |
| 77c0 | 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 2d 65 78 74 65 6e 64 2d 72 65 67 69 6f 6e 2d 6c | .tree-sitter-hl--extend-region-l |
| 77e0 | 69 6d 69 74 29 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 63 61 72 20 71 75 65 72 79 2d 72 65 67 | imit)).........(setcar.query-reg |
| 7800 | 69 6f 6e 20 62 65 67 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 63 64 72 20 71 75 65 72 79 2d 72 | ion.beg).........(setcdr.query-r |
| 7820 | 65 67 69 6f 6e 20 65 6e 64 29 0a 20 20 20 20 20 20 20 20 3b 3b 20 57 61 6c 6b 20 75 70 20 74 6f | egion.end).........;;.Walk.up.to |
| 7840 | 20 74 68 65 20 70 61 72 65 6e 74 20 6e 6f 64 65 2e 0a 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 | .the.parent.node..........(when. |
| 7860 | 28 73 65 74 71 20 6e 6f 64 65 20 28 77 68 65 6e 20 28 3c 3d 20 28 63 6c 2d 69 6e 63 66 20 6c 65 | (setq.node.(when.(<=.(cl-incf.le |
| 7880 | 76 65 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | vel)............................ |
| 78a0 | 20 20 20 20 20 20 20 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 2d 65 78 74 65 6e 64 2d 72 | ........tree-sitter-hl--extend-r |
| 78c0 | 65 67 69 6f 6e 2d 6c 65 76 65 6c 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | egion-levels)................... |
| 78e0 | 20 20 20 20 20 20 20 20 20 28 74 73 63 2d 67 65 74 2d 70 61 72 65 6e 74 20 6e 6f 64 65 29 29 29 | .........(tsc-get-parent.node))) |
| 7900 | 0a 20 20 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 72 61 6e 67 65 20 28 74 73 63 2d 6e 6f 64 | ...........(let.((range.(tsc-nod |
| 7920 | 65 2d 70 6f 73 69 74 69 6f 6e 2d 72 61 6e 67 65 20 6e 6f 64 65 29 29 29 0a 20 20 20 20 20 20 20 | e-position-range.node)))........ |
| 7940 | 20 20 20 20 20 28 73 65 74 66 20 60 28 2c 62 65 67 20 2e 20 2c 65 6e 64 29 20 72 61 6e 67 65 29 | .....(setf.`(,beg...,end).range) |
| 7960 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 73 69 7a 65 20 28 2d 20 65 6e 64 20 62 | .............(setq.size.(-.end.b |
| 7980 | 65 67 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 64 65 6c 74 61 20 28 2d 20 | eg)).............(setq.delta.(-. |
| 79a0 | 73 69 7a 65 20 6f 72 69 67 2d 73 69 7a 65 29 29 29 29 29 0a 20 20 20 20 20 20 3b 3b 20 45 78 74 | size.orig-size))))).......;;.Ext |
| 79c0 | 65 6e 64 20 74 6f 20 77 68 6f 6c 65 20 6c 69 6e 65 73 2e 0a 20 20 20 20 20 20 28 67 6f 74 6f 2d | end.to.whole.lines........(goto- |
| 79e0 | 63 68 61 72 20 28 63 61 72 20 71 75 65 72 79 2d 72 65 67 69 6f 6e 29 29 0a 20 20 20 20 20 20 28 | char.(car.query-region)).......( |
| 7a00 | 73 65 74 63 61 72 20 71 75 65 72 79 2d 72 65 67 69 6f 6e 20 28 6c 69 6e 65 2d 62 65 67 69 6e 6e | setcar.query-region.(line-beginn |
| 7a20 | 69 6e 67 2d 70 6f 73 69 74 69 6f 6e 20 30 29 29 0a 20 20 20 20 20 20 28 67 6f 74 6f 2d 63 68 61 | ing-position.0)).......(goto-cha |
| 7a40 | 72 20 28 63 64 72 20 71 75 65 72 79 2d 72 65 67 69 6f 6e 29 29 0a 20 20 20 20 20 20 28 73 65 74 | r.(cdr.query-region)).......(set |
| 7a60 | 63 64 72 20 71 75 65 72 79 2d 72 65 67 69 6f 6e 20 28 6c 69 6e 65 2d 62 65 67 69 6e 6e 69 6e 67 | cdr.query-region.(line-beginning |
| 7a80 | 2d 70 6f 73 69 74 69 6f 6e 20 32 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 74 72 65 65 2d 73 69 | -position.2)))))..(defun.tree-si |
| 7aa0 | 74 74 65 72 2d 68 6c 2d 2d 61 70 70 65 6e 64 2d 74 65 78 74 2d 70 72 6f 70 65 72 74 79 20 28 73 | tter-hl--append-text-property.(s |
| 7ac0 | 74 61 72 74 20 65 6e 64 20 70 72 6f 70 20 76 61 6c 75 65 20 26 6f 70 74 69 6f 6e 61 6c 20 6f 62 | tart.end.prop.value.&optional.ob |
| 7ae0 | 6a 65 63 74 29 0a 20 20 22 41 70 70 65 6e 64 20 56 41 4c 55 45 20 74 6f 20 50 52 4f 50 20 6f 66 | ject)..."Append.VALUE.to.PROP.of |
| 7b00 | 20 74 68 65 20 74 65 78 74 20 66 72 6f 6d 20 53 54 41 52 54 20 74 6f 20 45 4e 44 2e 0a 54 68 69 | .the.text.from.START.to.END..Thi |
| 7b20 | 73 20 69 73 20 73 69 6d 69 6c 61 72 20 74 6f 20 60 66 6f 6e 74 2d 6c 6f 63 6b 2d 61 70 70 65 6e | s.is.similar.to.`font-lock-appen |
| 7b40 | 64 2d 74 65 78 74 2d 70 72 6f 70 65 72 74 79 27 2c 20 62 75 74 20 64 65 64 75 70 6c 69 63 61 74 | d-text-property',.but.deduplicat |
| 7b60 | 65 73 20 76 61 6c 75 65 73 2e 20 49 74 0a 61 6c 73 6f 20 65 78 70 65 63 74 73 20 56 41 4c 55 45 | es.values..It.also.expects.VALUE |
| 7b80 | 20 74 6f 20 62 65 20 61 20 73 69 6e 67 6c 65 20 76 61 6c 75 65 2c 20 6e 6f 74 20 61 20 6c 69 73 | .to.be.a.single.value,.not.a.lis |
| 7ba0 | 74 2e 20 41 64 64 69 74 69 6f 6e 61 6c 6c 79 2c 20 69 66 20 50 52 4f 50 20 77 61 73 0a 70 72 65 | t..Additionally,.if.PROP.was.pre |
| 7bc0 | 76 69 6f 75 73 6c 79 20 6e 69 6c 2c 20 69 74 20 77 69 6c 6c 20 62 65 20 73 65 74 20 74 6f 20 56 | viously.nil,.it.will.be.set.to.V |
| 7be0 | 41 4c 55 45 2c 20 6e 6f 74 20 28 6c 69 73 74 20 56 41 4c 55 45 29 2e 22 0a 20 20 28 6c 65 74 20 | ALUE,.not.(list.VALUE)."...(let. |
| 7c00 | 28 6e 65 78 74 20 70 72 65 76 29 0a 20 20 20 20 28 77 68 69 6c 65 20 28 2f 3d 20 73 74 61 72 74 | (next.prev).....(while.(/=.start |
| 7c20 | 20 65 6e 64 29 0a 20 20 20 20 20 20 28 73 65 74 71 20 6e 65 78 74 20 28 6e 65 78 74 2d 73 69 6e | .end).......(setq.next.(next-sin |
| 7c40 | 67 6c 65 2d 70 72 6f 70 65 72 74 79 2d 63 68 61 6e 67 65 20 73 74 61 72 74 20 70 72 6f 70 20 6f | gle-property-change.start.prop.o |
| 7c60 | 62 6a 65 63 74 20 65 6e 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 70 72 65 76 20 28 67 65 74 | bject.end).............prev.(get |
| 7c80 | 2d 74 65 78 74 2d 70 72 6f 70 65 72 74 79 20 73 74 61 72 74 20 70 72 6f 70 20 6f 62 6a 65 63 74 | -text-property.start.prop.object |
| 7ca0 | 29 29 0a 20 20 20 20 20 20 3b 3b 20 43 61 6e 6f 6e 69 63 61 6c 69 7a 65 20 6f 6c 64 20 66 6f 72 | )).......;;.Canonicalize.old.for |
| 7cc0 | 6d 73 20 6f 66 20 66 61 63 65 20 70 72 6f 70 65 72 74 79 2e 0a 20 20 20 20 20 20 28 61 6e 64 20 | ms.of.face.property........(and. |
| 7ce0 | 28 6d 65 6d 71 20 70 72 6f 70 20 27 28 66 61 63 65 20 66 6f 6e 74 2d 6c 6f 63 6b 2d 66 61 63 65 | (memq.prop.'(face.font-lock-face |
| 7d00 | 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 73 74 70 20 70 72 65 76 29 0a 20 20 20 20 20 | ))............(listp.prev)...... |
| 7d20 | 20 20 20 20 20 20 28 6f 72 20 28 6b 65 79 77 6f 72 64 70 20 28 63 61 72 20 70 72 65 76 29 29 0a | ......(or.(keywordp.(car.prev)). |
| 7d40 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6d 65 6d 71 20 28 63 61 72 20 70 72 65 76 29 20 | ...............(memq.(car.prev). |
| 7d60 | 27 28 66 6f 72 65 67 72 6f 75 6e 64 2d 63 6f 6c 6f 72 20 62 61 63 6b 67 72 6f 75 6e 64 2d 63 6f | '(foreground-color.background-co |
| 7d80 | 6c 6f 72 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 70 72 65 76 20 28 6c 69 | lor)))............(setq.prev.(li |
| 7da0 | 73 74 20 70 72 65 76 29 29 29 0a 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 28 6c 69 73 74 70 20 | st.prev))).......(unless.(listp. |
| 7dc0 | 70 72 65 76 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 71 20 70 72 65 76 20 28 6c 69 73 74 20 70 | prev).........(setq.prev.(list.p |
| 7de0 | 72 65 76 29 29 29 0a 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 28 6d 65 6d 71 20 76 61 6c 75 65 | rev))).......(unless.(memq.value |
| 7e00 | 20 70 72 65 76 29 0a 20 20 20 20 20 20 20 20 28 70 75 74 2d 74 65 78 74 2d 70 72 6f 70 65 72 74 | .prev).........(put-text-propert |
| 7e20 | 79 20 73 74 61 72 74 20 6e 65 78 74 20 70 72 6f 70 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | y.start.next.prop............... |
| 7e40 | 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 52 65 64 75 63 65 20 47 43 20 70 72 65 73 73 75 | .............;;.Reduce.GC.pressu |
| 7e60 | 72 65 20 62 79 20 6e 6f 74 20 6d 61 6b 69 6e 67 20 61 20 6c 69 73 74 20 69 66 20 69 74 27 73 0a | re.by.not.making.a.list.if.it's. |
| 7e80 | 20 20 20 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 6a 75 | ...........................;;.ju |
| 7ea0 | 73 74 20 61 20 73 69 6e 67 6c 65 20 66 61 63 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | st.a.single.face................ |
| 7ec0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 70 72 65 76 0a 20 20 20 20 20 20 20 20 20 20 | .............(if.prev........... |
| 7ee0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 61 70 70 65 6e 64 20 70 72 65 | .....................(append.pre |
| 7f00 | 76 20 28 6c 69 73 74 20 76 61 6c 75 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | v.(list.value))................. |
| 7f20 | 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 6c 75 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 | .............value)............. |
| 7f40 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f 62 6a 65 63 74 29 29 0a 20 20 20 20 20 20 28 73 | ...............object)).......(s |
| 7f60 | 65 74 71 20 73 74 61 72 74 20 6e 65 78 74 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 74 72 65 65 2d | etq.start.next))))..(defun.tree- |
| 7f80 | 73 69 74 74 65 72 2d 68 6c 2d 2d 68 69 67 68 6c 69 67 68 74 2d 63 61 70 74 75 72 65 20 28 63 61 | sitter-hl--highlight-capture.(ca |
| 7fa0 | 70 74 75 72 65 29 0a 20 20 22 48 69 67 68 6c 69 67 68 74 20 74 68 65 20 67 69 76 65 6e 20 43 41 | pture)..."Highlight.the.given.CA |
| 7fc0 | 50 54 55 52 45 2e 22 0a 20 20 28 70 63 61 73 65 2d 6c 65 74 20 28 28 60 28 2c 66 61 63 65 20 2e | PTURE."...(pcase-let.((`(,face.. |
| 7fe0 | 20 28 2c 62 65 67 2d 62 79 74 65 20 2e 20 2c 65 6e 64 2d 62 79 74 65 29 29 20 63 61 70 74 75 72 | .(,beg-byte...,end-byte)).captur |
| 8000 | 65 29 29 0a 20 20 20 20 3b 3b 20 54 4f 44 4f 3a 20 49 66 20 69 74 27 73 20 61 20 66 75 6e 63 74 | e)).....;;.TODO:.If.it's.a.funct |
| 8020 | 69 6f 6e 2c 20 63 61 6c 6c 20 69 74 20 77 69 74 68 20 28 42 45 47 20 45 4e 44 29 2e 0a 20 20 20 | ion,.call.it.with.(BEG.END)..... |
| 8040 | 20 28 77 68 65 6e 20 28 66 61 63 65 70 20 66 61 63 65 29 0a 20 20 20 20 20 20 28 74 72 65 65 2d | .(when.(facep.face).......(tree- |
| 8060 | 73 69 74 74 65 72 2d 68 6c 2d 2d 61 70 70 65 6e 64 2d 74 65 78 74 2d 70 72 6f 70 65 72 74 79 0a | sitter-hl--append-text-property. |
| 8080 | 20 20 20 20 20 20 20 28 62 79 74 65 2d 74 6f 2d 70 6f 73 69 74 69 6f 6e 20 62 65 67 2d 62 79 74 | .......(byte-to-position.beg-byt |
| 80a0 | 65 29 0a 20 20 20 20 20 20 20 28 62 79 74 65 2d 74 6f 2d 70 6f 73 69 74 69 6f 6e 20 65 6e 64 2d | e)........(byte-to-position.end- |
| 80c0 | 62 79 74 65 29 20 27 66 61 63 65 20 66 61 63 65 29 29 29 29 0a 0a 3b 3b 3b 20 54 4f 44 4f 3a 20 | byte).'face.face))))..;;;.TODO:. |
| 80e0 | 48 61 6e 64 6c 65 20 65 6d 62 65 64 64 65 64 20 44 53 4c 73 20 28 69 6e 6a 65 63 74 69 6f 6e 73 | Handle.embedded.DSLs.(injections |
| 8100 | 29 2e 0a 28 64 65 66 75 6e 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 2d 68 69 67 68 6c 69 | )..(defun.tree-sitter-hl--highli |
| 8120 | 67 68 74 2d 72 65 67 69 6f 6e 20 28 62 65 67 20 65 6e 64 20 26 6f 70 74 69 6f 6e 61 6c 20 6c 6f | ght-region.(beg.end.&optional.lo |
| 8140 | 75 64 6c 79 29 0a 20 20 22 48 69 67 68 6c 69 67 68 74 20 74 68 65 20 72 65 67 69 6f 6e 20 28 42 | udly)..."Highlight.the.region.(B |
| 8160 | 45 47 20 2e 20 45 4e 44 29 2e 0a 54 68 69 73 20 69 73 20 69 6e 74 65 6e 64 65 64 20 74 6f 20 62 | EG...END)..This.is.intended.to.b |
| 8180 | 65 20 75 73 65 64 20 61 73 20 61 20 62 75 66 66 65 72 2d 6c 6f 63 61 6c 20 6f 76 65 72 72 69 64 | e.used.as.a.buffer-local.overrid |
| 81a0 | 65 20 6f 66 0a 60 66 6f 6e 74 2d 6c 6f 63 6b 2d 66 6f 6e 74 69 66 79 2d 72 65 67 69 6f 6e 2d 66 | e.of.`font-lock-fontify-region-f |
| 81c0 | 75 6e 63 74 69 6f 6e 27 2e 0a 0a 49 66 20 4c 4f 55 44 4c 59 20 69 73 20 6e 6f 6e 2d 6e 69 6c 2c | unction'...If.LOUDLY.is.non-nil, |
| 81e0 | 20 70 72 69 6e 74 20 64 65 62 75 67 20 6d 65 73 73 61 67 65 73 2e 22 0a 20 20 28 74 73 63 2d 2d | .print.debug.messages."...(tsc-- |
| 8200 | 73 61 76 65 2d 63 6f 6e 74 65 78 74 0a 20 20 20 20 28 6c 65 74 20 28 28 69 6e 68 69 62 69 74 2d | save-context.....(let.((inhibit- |
| 8220 | 70 6f 69 6e 74 2d 6d 6f 74 69 6f 6e 2d 68 6f 6f 6b 73 20 74 29 29 0a 20 20 20 20 20 20 3b 3b 20 | point-motion-hooks.t)).......;;. |
| 8240 | 45 78 74 65 6e 64 20 74 68 65 20 72 65 67 69 6f 6e 20 74 6f 20 62 65 20 68 69 67 68 6c 69 67 68 | Extend.the.region.to.be.highligh |
| 8260 | 74 65 64 2c 20 73 6f 20 74 68 61 74 20 69 74 20 69 73 20 6e 6f 74 20 74 6f 6f 20 77 61 73 74 65 | ted,.so.that.it.is.not.too.waste |
| 8280 | 66 75 6c 6c 79 0a 20 20 20 20 20 20 3b 3b 20 73 6d 61 6c 6c 2e 20 54 68 65 6e 20 65 78 74 65 6e | fully.......;;.small..Then.exten |
| 82a0 | 64 20 69 74 20 61 67 61 69 6e 2c 20 62 61 73 65 64 20 6f 6e 20 73 6f 6d 65 20 68 65 75 72 69 73 | d.it.again,.based.on.some.heuris |
| 82c0 | 74 69 63 2c 20 66 6f 72 20 71 75 65 72 79 69 6e 67 2c 20 74 6f 0a 20 20 20 20 20 20 3b 3b 20 61 | tic,.for.querying,.to.......;;.a |
| 82e0 | 76 6f 69 64 20 63 65 72 74 61 69 6e 20 70 61 74 68 6f 6c 6f 67 69 63 61 6c 20 63 61 73 65 73 2e | void.certain.pathological.cases. |
| 8300 | 20 54 68 69 73 20 69 73 20 70 61 72 74 69 61 6c 6c 79 20 61 6e 61 6c 6f 67 6f 75 73 20 74 6f 20 | .This.is.partially.analogous.to. |
| 8320 | 74 68 65 0a 20 20 20 20 20 20 3b 3b 20 65 78 74 65 6e 73 69 6f 6e 20 64 6f 6e 65 20 62 79 20 60 | the.......;;.extension.done.by.` |
| 8340 | 66 6f 6e 74 2d 6c 6f 63 6b 2d 64 65 66 61 75 6c 74 2d 66 6f 6e 74 69 66 79 2d 72 65 67 69 6f 6e | font-lock-default-fontify-region |
| 8360 | 27 2e 0a 20 20 20 20 20 20 28 6c 65 74 20 28 28 68 6c 2d 72 65 67 69 6f 6e 20 60 28 2c 62 65 67 | '........(let.((hl-region.`(,beg |
| 8380 | 20 2e 20 2c 65 6e 64 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 71 75 65 72 79 2d 72 65 67 | ...,end)).............(query-reg |
| 83a0 | 69 6f 6e 20 60 28 2c 62 65 67 20 2e 20 2c 65 6e 64 29 29 29 0a 20 20 20 20 20 20 20 20 28 74 72 | ion.`(,beg...,end))).........(tr |
| 83c0 | 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 2d 65 78 74 65 6e 64 2d 72 65 67 69 6f 6e 73 20 68 6c 2d | ee-sitter-hl--extend-regions.hl- |
| 83e0 | 72 65 67 69 6f 6e 20 71 75 65 72 79 2d 72 65 67 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 28 73 65 | region.query-region).........(se |
| 8400 | 74 66 20 60 28 2c 62 65 67 20 2e 20 2c 65 6e 64 29 20 68 6c 2d 72 65 67 69 6f 6e 29 0a 20 20 20 | tf.`(,beg...,end).hl-region).... |
| 8420 | 20 20 20 20 20 28 74 73 63 2d 2d 71 75 65 72 79 2d 63 75 72 73 6f 72 2d 73 65 74 2d 62 79 74 65 | .....(tsc--query-cursor-set-byte |
| 8440 | 2d 72 61 6e 67 65 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 2d 71 75 65 72 79 2d 63 75 72 | -range.tree-sitter-hl--query-cur |
| 8460 | 73 6f 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | sor............................. |
| 8480 | 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 6f 73 69 74 69 6f 6e 2d 62 79 74 65 73 20 28 63 61 | .............(position-bytes.(ca |
| 84a0 | 72 20 71 75 65 72 79 2d 72 65 67 69 6f 6e 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | r.query-region))................ |
| 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 28 70 6f 73 69 74 | ..........................(posit |
| 84e0 | 69 6f 6e 2d 62 79 74 65 73 20 28 63 64 72 20 71 75 65 72 79 2d 72 65 67 69 6f 6e 29 29 29 29 0a | ion-bytes.(cdr.query-region)))). |
| 8500 | 20 20 20 20 20 20 28 6c 65 74 2a 20 28 28 72 6f 6f 74 2d 6e 6f 64 65 20 28 74 73 63 2d 72 6f 6f | ......(let*.((root-node.(tsc-roo |
| 8520 | 74 2d 6e 6f 64 65 20 74 72 65 65 2d 73 69 74 74 65 72 2d 74 72 65 65 29 29 0a 20 20 20 20 20 20 | t-node.tree-sitter-tree))....... |
| 8540 | 20 20 20 20 20 20 20 28 63 61 70 74 75 72 65 73 20 20 28 74 73 63 2d 2d 71 75 65 72 79 2d 63 75 | .......(captures..(tsc--query-cu |
| 8560 | 72 73 6f 72 2d 63 61 70 74 75 72 65 73 2d 31 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | rsor-captures-1................. |
| 8580 | 20 20 20 20 20 20 20 20 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 2d 71 75 65 72 79 2d 63 | .........tree-sitter-hl--query-c |
| 85a0 | 75 72 73 6f 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 | ursor..........................t |
| 85c0 | 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 2d 71 75 65 72 79 0a 20 20 20 20 20 20 20 20 20 20 20 | ree-sitter-hl--query............ |
| 85e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 6f 6f 74 2d 6e 6f 64 65 0a 20 20 20 20 20 20 20 20 | ..............root-node......... |
| 8600 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 27 74 73 63 2d 2d 62 75 66 66 65 72 2d 73 | .................#'tsc--buffer-s |
| 8620 | 75 62 73 74 72 69 6e 67 2d 6e 6f 2d 70 72 6f 70 65 72 74 69 65 73 29 29 29 0a 20 20 20 20 20 20 | ubstring-no-properties)))....... |
| 8640 | 20 20 3b 3b 20 54 4f 44 4f 3a 20 48 61 6e 64 6c 65 20 71 75 69 74 74 69 6e 67 2e 0a 20 20 20 20 | ..;;.TODO:.Handle.quitting...... |
| 8660 | 20 20 20 20 28 77 69 74 68 2d 73 69 6c 65 6e 74 2d 6d 6f 64 69 66 69 63 61 74 69 6f 6e 73 0a 20 | ....(with-silent-modifications.. |
| 8680 | 20 20 20 20 20 20 20 20 20 28 66 6f 6e 74 2d 6c 6f 63 6b 2d 75 6e 66 6f 6e 74 69 66 79 2d 72 65 | .........(font-lock-unfontify-re |
| 86a0 | 67 69 6f 6e 20 62 65 67 20 65 6e 64 29 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 54 4f 44 4f 3a | gion.beg.end)...........;;.TODO: |
| 86c0 | 20 43 6f 6e 73 69 64 65 72 20 67 69 76 69 6e 67 20 63 65 72 74 61 69 6e 20 63 6f 6d 62 69 6e 61 | .Consider.giving.certain.combina |
| 86e0 | 74 69 6f 6e 73 20 6f 66 20 68 69 67 68 6c 69 67 68 74 20 6e 61 6d 65 73 20 74 68 65 69 72 0a 20 | tions.of.highlight.names.their.. |
| 8700 | 20 20 20 20 20 20 20 20 20 3b 3b 20 6f 77 6e 20 66 61 63 65 73 2e 20 46 6f 72 20 65 78 61 6d 70 | .........;;.own.faces..For.examp |
| 8720 | 6c 65 2c 20 69 74 20 6d 69 67 68 74 20 62 65 20 64 65 73 69 72 61 62 6c 65 20 66 6f 72 20 66 6f | le,.it.might.be.desirable.for.fo |
| 8740 | 6e 74 69 66 69 63 61 74 69 6f 6e 20 6f 66 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 61 20 6e 6f | ntification.of...........;;.a.no |
| 8760 | 64 65 20 74 68 61 74 20 6d 61 74 63 68 65 73 20 62 6f 74 68 20 22 63 6f 6e 73 74 72 75 63 74 6f | de.that.matches.both."constructo |
| 8780 | 72 22 20 61 6e 64 20 22 76 61 72 69 61 62 6c 65 22 20 74 6f 20 62 65 0a 20 20 20 20 20 20 20 20 | r".and."variable".to.be......... |
| 87a0 | 20 20 3b 3b 20 64 69 66 66 65 72 65 6e 74 20 66 72 6f 6d 20 74 68 65 20 75 6e 69 6f 6e 20 6f 66 | ..;;.different.from.the.union.of |
| 87c0 | 20 22 63 6f 6e 73 74 72 75 63 74 6f 72 20 66 6f 6e 74 69 66 69 63 61 74 69 6f 6e 22 20 61 6e 64 | ."constructor.fontification".and |
| 87e0 | 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 22 76 61 72 69 61 62 6c 65 20 66 6f 6e 74 69 66 69 63 | ...........;;."variable.fontific |
| 8800 | 61 74 69 6f 6e 22 2e 0a 20 20 20 20 20 20 20 20 20 20 28 6d 61 70 63 20 23 27 74 72 65 65 2d 73 | ation"............(mapc.#'tree-s |
| 8820 | 69 74 74 65 72 2d 68 6c 2d 2d 68 69 67 68 6c 69 67 68 74 2d 63 61 70 74 75 72 65 20 63 61 70 74 | itter-hl--highlight-capture.capt |
| 8840 | 75 72 65 73 29 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 54 68 69 73 20 73 68 6f 75 6c 64 20 70 | ures)...........;;.This.should.p |
| 8860 | 72 69 6d 61 72 69 6c 79 20 62 65 20 66 6f 72 20 6b 65 79 77 6f 72 64 73 20 61 64 64 65 64 20 74 | rimarily.be.for.keywords.added.t |
| 8880 | 68 72 6f 75 67 68 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 60 66 6f 6e 74 2d 6c 6f 63 6b 2d 61 | hrough...........;;.`font-lock-a |
| 88a0 | 64 64 2d 6b 65 79 77 6f 72 64 73 27 20 28 6d 69 6e 6f 72 20 6d 6f 64 65 73 20 61 6e 64 20 65 6e | dd-keywords'.(minor.modes.and.en |
| 88c0 | 64 20 75 73 65 72 73 29 2e 0a 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 61 6e 64 20 74 | d.users)............(when.(and.t |
| 88e0 | 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 75 73 65 2d 66 6f 6e 74 2d 6c 6f 63 6b 2d 6b 65 79 77 | ree-sitter-hl-use-font-lock-keyw |
| 8900 | 6f 72 64 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 6e 74 2d 6c | ords......................font-l |
| 8920 | 6f 63 6b 2d 73 65 74 2d 64 65 66 61 75 6c 74 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 66 | ock-set-defaults).............(f |
| 8940 | 6f 6e 74 2d 6c 6f 63 6b 2d 66 6f 6e 74 69 66 79 2d 6b 65 79 77 6f 72 64 73 2d 72 65 67 69 6f 6e | ont-lock-fontify-keywords-region |
| 8960 | 20 62 65 67 20 65 6e 64 20 6c 6f 75 64 6c 79 29 29 29 0a 20 20 20 20 20 20 20 20 3b 3b 20 57 65 | .beg.end.loudly))).........;;.We |
| 8980 | 20 6d 61 79 20 68 61 76 65 20 68 69 67 68 6c 69 67 68 74 65 64 20 6d 6f 72 65 2c 20 62 75 74 20 | .may.have.highlighted.more,.but. |
| 89a0 | 61 72 65 20 6f 6e 6c 79 20 72 65 61 73 6f 6e 61 62 6c 79 20 73 75 72 65 20 61 62 6f 75 74 0a 20 | are.only.reasonably.sure.about.. |
| 89c0 | 20 20 20 20 20 20 20 3b 3b 20 48 4c 2d 52 45 47 49 4f 4e 2e 0a 20 20 20 20 20 20 20 20 60 28 6a | .......;;.HL-REGION..........`(j |
| 89e0 | 69 74 2d 6c 6f 63 6b 2d 62 6f 75 6e 64 73 20 2c 62 65 67 20 2e 20 2c 65 6e 64 29 29 29 29 29 0a | it-lock-bounds.,beg...,end))))). |
| 8a00 | 0a 28 64 65 66 75 6e 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 2d 68 69 67 68 6c 69 67 68 | .(defun.tree-sitter-hl--highligh |
| 8a20 | 74 2d 72 65 67 69 6f 6e 2d 77 69 74 68 2d 66 61 6c 6c 62 61 63 6b 20 28 6f 6c 64 2d 66 6f 6e 74 | t-region-with-fallback.(old-font |
| 8a40 | 69 66 79 2d 66 6e 20 62 65 67 20 65 6e 64 20 26 6f 70 74 69 6f 6e 61 6c 20 6c 6f 75 64 6c 79 29 | ify-fn.beg.end.&optional.loudly) |
| 8a60 | 0a 20 20 22 48 69 67 68 6c 69 67 68 74 20 74 68 65 20 72 65 67 69 6f 6e 20 28 42 45 47 20 2e 20 | ..."Highlight.the.region.(BEG... |
| 8a80 | 45 4e 44 29 2e 0a 0a 54 68 69 73 20 69 73 20 61 20 77 72 61 70 70 65 72 20 61 72 6f 75 6e 64 20 | END)...This.is.a.wrapper.around. |
| 8aa0 | 60 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 2d 68 69 67 68 6c 69 67 68 74 2d 72 65 67 69 6f | `tree-sitter-hl--highlight-regio |
| 8ac0 | 6e 27 20 74 68 61 74 20 66 61 6c 6c 73 20 62 61 63 6b 20 74 6f 0a 4f 4c 44 2d 46 4f 4e 54 49 46 | n'.that.falls.back.to.OLD-FONTIF |
| 8ae0 | 59 2d 46 4e 20 77 68 65 6e 20 74 68 65 20 63 75 72 72 65 6e 74 20 62 75 66 66 65 72 20 64 6f 65 | Y-FN.when.the.current.buffer.doe |
| 8b00 | 73 6e 27 74 20 68 61 76 65 20 60 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 6d 6f 64 65 27 0a | sn't.have.`tree-sitter-hl-mode'. |
| 8b20 | 65 6e 61 62 6c 65 64 2e 20 41 6e 20 65 78 61 6d 70 6c 65 20 69 73 20 60 6a 75 70 79 74 65 72 2d | enabled..An.example.is.`jupyter- |
| 8b40 | 72 65 70 6c 2d 6d 6f 64 65 27 2c 20 77 68 69 63 68 20 63 6f 70 69 65 73 20 61 6e 64 20 75 73 65 | repl-mode',.which.copies.and.use |
| 8b60 | 73 20 6f 74 68 65 72 20 6d 61 6a 6f 72 0a 6d 6f 64 65 73 27 20 66 6f 6e 74 69 66 69 63 61 74 69 | s.other.major.modes'.fontificati |
| 8b80 | 6f 6e 20 66 75 6e 63 74 69 6f 6e 73 20 74 6f 20 68 69 67 68 6c 69 67 68 74 20 69 74 73 20 69 6e | on.functions.to.highlight.its.in |
| 8ba0 | 70 75 74 20 63 65 6c 6c 73 2e 20 53 65 65 0a 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f | put.cells..See.https://github.co |
| 8bc0 | 6d 2f 65 6d 61 63 73 2d 74 72 65 65 2d 73 69 74 74 65 72 2f 65 6c 69 73 70 2d 74 72 65 65 2d 73 | m/emacs-tree-sitter/elisp-tree-s |
| 8be0 | 69 74 74 65 72 2f 69 73 73 75 65 73 2f 37 38 23 69 73 73 75 65 63 6f 6d 6d 65 6e 74 2d 31 30 30 | itter/issues/78#issuecomment-100 |
| 8c00 | 35 39 38 37 38 31 37 2e 22 0a 20 20 28 69 66 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 2d | 5987817."...(if.tree-sitter-hl-- |
| 8c20 | 71 75 65 72 79 0a 20 20 20 20 20 20 28 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 2d 68 69 67 | query.......(tree-sitter-hl--hig |
| 8c40 | 68 6c 69 67 68 74 2d 72 65 67 69 6f 6e 20 62 65 67 20 65 6e 64 20 6c 6f 75 64 6c 79 29 0a 20 20 | hlight-region.beg.end.loudly)... |
| 8c60 | 20 20 28 66 75 6e 63 61 6c 6c 20 6f 6c 64 2d 66 6f 6e 74 69 66 79 2d 66 6e 20 62 65 67 20 65 6e | ..(funcall.old-fontify-fn.beg.en |
| 8c80 | 64 20 6c 6f 75 64 6c 79 29 29 29 0a 0a 28 64 65 66 75 6e 20 74 72 65 65 2d 73 69 74 74 65 72 2d | d.loudly)))..(defun.tree-sitter- |
| 8ca0 | 68 6c 2d 2d 69 6e 76 61 6c 69 64 61 74 65 20 28 26 6f 70 74 69 6f 6e 61 6c 20 6f 6c 64 2d 74 72 | hl--invalidate.(&optional.old-tr |
| 8cc0 | 65 65 29 0a 20 20 22 4d 61 72 6b 20 72 65 67 69 6f 6e 73 20 6f 66 20 74 65 78 74 20 74 6f 20 62 | ee)..."Mark.regions.of.text.to.b |
| 8ce0 | 65 20 72 65 68 69 67 68 6c 69 67 68 74 65 64 20 61 66 74 65 72 20 61 20 74 65 78 74 20 63 68 61 | e.rehighlighted.after.a.text.cha |
| 8d00 | 6e 67 65 2e 0a 49 6e 73 74 61 6c 6c 65 64 20 6f 6e 20 60 74 72 65 65 2d 73 69 74 74 65 72 2d 61 | nge..Installed.on.`tree-sitter-a |
| 8d20 | 66 74 65 72 2d 63 68 61 6e 67 65 2d 66 75 6e 63 74 69 6f 6e 73 27 2e 0a 0a 4f 4c 44 2d 54 52 45 | fter-change-functions'...OLD-TRE |
| 8d40 | 45 20 69 73 20 74 68 65 20 74 72 65 65 20 62 65 66 6f 72 65 20 74 68 65 20 65 64 69 74 2e 22 0a | E.is.the.tree.before.the.edit.". |
| 8d60 | 20 20 28 69 66 20 6f 6c 64 2d 74 72 65 65 0a 20 20 20 20 20 20 3b 3b 20 49 6e 63 72 65 6d 65 6e | ..(if.old-tree.......;;.Incremen |
| 8d80 | 74 61 6c 20 70 61 72 73 65 2e 0a 20 20 20 20 20 20 28 73 65 71 2d 64 6f 73 65 71 20 28 72 61 6e | tal.parse........(seq-doseq.(ran |
| 8da0 | 67 65 20 28 74 73 63 2d 63 68 61 6e 67 65 64 2d 72 61 6e 67 65 73 20 6f 6c 64 2d 74 72 65 65 20 | ge.(tsc-changed-ranges.old-tree. |
| 8dc0 | 74 72 65 65 2d 73 69 74 74 65 72 2d 74 72 65 65 29 29 0a 20 20 20 20 20 20 20 20 3b 3b 20 54 4f | tree-sitter-tree)).........;;.TO |
| 8de0 | 44 4f 3a 20 48 6f 77 20 61 62 6f 75 74 20 69 6e 76 61 6c 69 64 61 74 69 6e 67 20 61 20 73 69 6e | DO:.How.about.invalidating.a.sin |
| 8e00 | 67 6c 65 20 6c 61 72 67 65 20 72 61 6e 67 65 3f 0a 20 20 20 20 20 20 20 20 28 70 63 61 73 65 2d | gle.large.range?.........(pcase- |
| 8e20 | 6c 65 74 2a 20 28 28 60 5b 2c 62 65 67 2d 62 79 74 65 20 2c 65 6e 64 2d 62 79 74 65 5d 20 72 61 | let*.((`[,beg-byte.,end-byte].ra |
| 8e40 | 6e 67 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 62 65 67 20 28 | nge)......................(beg.( |
| 8e60 | 62 79 74 65 2d 74 6f 2d 70 6f 73 69 74 69 6f 6e 20 62 65 67 2d 62 79 74 65 29 29 0a 20 20 20 20 | byte-to-position.beg-byte))..... |
| 8e80 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 65 6e 64 20 28 62 79 74 65 2d 74 6f 2d 70 | .................(end.(byte-to-p |
| 8ea0 | 6f 73 69 74 69 6f 6e 20 65 6e 64 2d 62 79 74 65 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 3b 3b | osition.end-byte)))...........;; |
| 8ec0 | 20 54 4f 44 4f 3a 20 48 6f 77 20 61 62 6f 75 74 20 63 61 6c 6c 69 6e 67 20 60 6a 69 74 2d 6c 6f | .TODO:.How.about.calling.`jit-lo |
| 8ee0 | 63 6b 2d 72 65 66 6f 6e 74 69 66 79 27 20 64 69 72 65 63 74 6c 79 3f 0a 20 20 20 20 20 20 20 20 | ck-refontify'.directly?......... |
| 8f00 | 20 20 28 66 6f 6e 74 2d 6c 6f 63 6b 2d 66 6c 75 73 68 20 62 65 67 20 65 6e 64 29 29 29 0a 20 20 | ..(font-lock-flush.beg.end)))... |
| 8f20 | 20 20 3b 3b 20 46 69 72 73 74 20 70 61 72 73 65 2e 0a 20 20 20 20 28 66 6f 6e 74 2d 6c 6f 63 6b | ..;;.First.parse......(font-lock |
| 8f40 | 2d 66 6c 75 73 68 29 29 29 0a 0a 3b 3b 3b 20 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -flush)))..;;;.----------------- |
| 8f60 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d | -------------------------------- |
| 8f80 | 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 0a 3b 3b 3b 20 | ---------------------------.;;;. |
| 8fa0 | 53 65 74 75 70 20 61 6e 64 20 74 65 61 72 64 6f 77 6e 2e 0a 0a 28 64 65 66 76 61 72 2d 6c 6f 63 | Setup.and.teardown...(defvar-loc |
| 8fc0 | 61 6c 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 2d 66 6f 6e 74 2d 6c 6f 63 6b 2d 6b 65 79 | al.tree-sitter-hl--font-lock-key |
| 8fe0 | 77 6f 72 64 73 20 6e 69 6c 29 0a 0a 28 64 65 66 75 6e 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 | words.nil)..(defun.tree-sitter-h |
| 9000 | 6c 2d 2d 6d 69 6e 69 6d 69 7a 65 2d 66 6f 6e 74 2d 6c 6f 63 6b 2d 6b 65 79 77 6f 72 64 73 20 28 | l--minimize-font-lock-keywords.( |
| 9020 | 29 0a 20 20 22 52 65 6d 6f 76 65 20 6b 65 79 77 6f 72 64 73 20 73 65 74 20 62 79 20 60 66 6f 6e | )..."Remove.keywords.set.by.`fon |
| 9040 | 74 2d 6c 6f 63 6b 2d 64 65 66 61 75 6c 74 73 27 20 66 72 6f 6d 20 60 66 6f 6e 74 2d 6c 6f 63 6b | t-lock-defaults'.from.`font-lock |
| 9060 | 2d 6b 65 79 77 6f 72 64 73 27 2e 22 0a 20 20 28 77 68 65 6e 20 66 6f 6e 74 2d 6c 6f 63 6b 2d 73 | -keywords'."...(when.font-lock-s |
| 9080 | 65 74 2d 64 65 66 61 75 6c 74 73 0a 20 20 20 20 28 75 6e 6c 65 73 73 20 74 72 65 65 2d 73 69 74 | et-defaults.....(unless.tree-sit |
| 90a0 | 74 65 72 2d 68 6c 2d 2d 66 6f 6e 74 2d 6c 6f 63 6b 2d 6b 65 79 77 6f 72 64 73 0a 20 20 20 20 20 | ter-hl--font-lock-keywords...... |
| 90c0 | 20 28 73 65 74 71 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 2d 66 6f 6e 74 2d 6c 6f 63 6b | .(setq.tree-sitter-hl--font-lock |
| 90e0 | 2d 6b 65 79 77 6f 72 64 73 20 66 6f 6e 74 2d 6c 6f 63 6b 2d 6b 65 79 77 6f 72 64 73 29 0a 20 20 | -keywords.font-lock-keywords)... |
| 9100 | 20 20 20 20 28 77 68 65 6e 20 28 65 71 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 75 73 65 | ....(when.(eq.tree-sitter-hl-use |
| 9120 | 2d 66 6f 6e 74 2d 6c 6f 63 6b 2d 6b 65 79 77 6f 72 64 73 20 3a 65 78 63 65 70 74 2d 66 6f 6e 74 | -font-lock-keywords.:except-font |
| 9140 | 2d 6c 6f 63 6b 2d 64 65 66 61 75 6c 74 73 29 0a 20 20 20 20 20 20 20 20 3b 3b 20 58 58 58 3a 20 | -lock-defaults).........;;.XXX:. |
| 9160 | 43 68 65 63 6b 20 77 68 65 74 68 65 72 20 74 68 69 73 20 63 6f 76 65 72 73 20 61 6c 6c 20 74 68 | Check.whether.this.covers.all.th |
| 9180 | 65 20 65 64 67 65 20 63 61 73 65 73 20 6f 66 20 74 68 65 20 69 6e 74 65 72 61 63 74 69 6f 6e 0a | e.edge.cases.of.the.interaction. |
| 91a0 | 20 20 20 20 20 20 20 20 3b 3b 20 62 65 74 77 65 65 6e 20 60 66 6f 6e 74 2d 6c 6f 63 6b 2d 65 76 | ........;;.between.`font-lock-ev |
| 91c0 | 61 6c 2d 6b 65 79 77 6f 72 64 73 27 20 61 6e 64 20 60 66 6f 6e 74 2d 6c 6f 63 6b 2d 72 65 6d 6f | al-keywords'.and.`font-lock-remo |
| 91e0 | 76 65 2d 6b 65 79 77 6f 72 64 73 27 2e 0a 20 20 20 20 20 20 20 20 28 6c 65 74 2a 20 28 28 6b 65 | ve-keywords'..........(let*.((ke |
| 9200 | 79 77 6f 72 64 73 2d 73 70 65 63 20 28 63 61 72 20 66 6f 6e 74 2d 6c 6f 63 6b 2d 64 65 66 61 75 | ywords-spec.(car.font-lock-defau |
| 9220 | 6c 74 73 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 54 68 65 20 73 70 65 63 | lts))................;;.The.spec |
| 9240 | 20 63 61 6e 20 62 65 20 61 20 6c 69 73 74 2c 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 74 6f | .can.be.a.list,.corresponding.to |
| 9260 | 20 6d 75 6c 74 69 70 6c 65 20 6c 65 76 65 6c 73 20 6f 66 0a 20 20 20 20 20 20 20 20 20 20 20 20 | .multiple.levels.of............. |
| 9280 | 20 20 20 3b 3b 20 66 6f 6e 74 69 66 69 63 61 74 69 6f 6e 2e 20 57 65 20 77 61 6e 74 20 74 6f 20 | ...;;.fontification..We.want.to. |
| 92a0 | 64 69 73 61 62 6c 65 20 61 6c 6c 20 6f 66 20 74 68 65 6d 2e 0a 20 20 20 20 20 20 20 20 20 20 20 | disable.all.of.them............. |
| 92c0 | 20 20 20 20 28 6b 65 79 77 6f 72 64 73 2d 6c 69 73 74 20 28 69 66 20 28 61 6e 64 20 28 6c 69 73 | ....(keywords-list.(if.(and.(lis |
| 92e0 | 74 70 20 6b 65 79 77 6f 72 64 73 2d 73 70 65 63 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | tp.keywords-spec)............... |
| 9300 | 20 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 6d 62 6f 6c | .........................(symbol |
| 9320 | 70 20 28 63 61 72 20 6b 65 79 77 6f 72 64 73 2d 73 70 65 63 29 29 29 0a 20 20 20 20 20 20 20 20 | p.(car.keywords-spec)))......... |
| 9340 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6b 65 79 77 6f 72 | ..........................keywor |
| 9360 | 64 73 2d 73 70 65 63 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ds-spec......................... |
| 9380 | 20 20 20 20 20 20 20 20 28 6c 69 73 74 20 6b 65 79 77 6f 72 64 73 2d 73 70 65 63 29 29 29 29 0a | ........(list.keywords-spec)))). |
| 93a0 | 20 20 20 20 20 20 20 20 20 20 28 64 6f 6c 69 73 74 20 28 6b 65 79 77 6f 72 64 73 20 6b 65 79 77 | ..........(dolist.(keywords.keyw |
| 93c0 | 6f 72 64 73 2d 6c 69 73 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 66 6f 6e 74 2d 6c 6f 63 | ords-list).............(font-loc |
| 93e0 | 6b 2d 72 65 6d 6f 76 65 2d 6b 65 79 77 6f 72 64 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 6e | k-remove-keywords..............n |
| 9400 | 69 6c 20 28 66 6f 6e 74 2d 6c 6f 63 6b 2d 65 76 61 6c 2d 6b 65 79 77 6f 72 64 73 20 6b 65 79 77 | il.(font-lock-eval-keywords.keyw |
| 9420 | 6f 72 64 73 29 29 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 74 72 65 65 2d 73 69 74 74 65 72 | ords))))))))..(defun.tree-sitter |
| 9440 | 2d 68 6c 2d 2d 72 65 73 74 6f 72 65 2d 66 6f 6e 74 2d 6c 6f 63 6b 2d 6b 65 79 77 6f 72 64 73 20 | -hl--restore-font-lock-keywords. |
| 9460 | 28 29 0a 20 20 22 55 6e 64 6f 20 74 68 65 20 68 61 63 6b 20 64 6f 6e 65 20 62 79 20 60 74 72 65 | ()..."Undo.the.hack.done.by.`tre |
| 9480 | 65 2d 73 69 74 74 65 72 2d 68 6c 2d 2d 6d 69 6e 69 6d 69 7a 65 2d 66 6f 6e 74 2d 6c 6f 63 6b 2d | e-sitter-hl--minimize-font-lock- |
| 94a0 | 6b 65 79 77 6f 72 64 73 27 2e 22 0a 20 20 28 77 68 65 6e 20 66 6f 6e 74 2d 6c 6f 63 6b 2d 73 65 | keywords'."...(when.font-lock-se |
| 94c0 | 74 2d 64 65 66 61 75 6c 74 73 0a 20 20 20 20 28 77 68 65 6e 20 74 72 65 65 2d 73 69 74 74 65 72 | t-defaults.....(when.tree-sitter |
| 94e0 | 2d 68 6c 2d 2d 66 6f 6e 74 2d 6c 6f 63 6b 2d 6b 65 79 77 6f 72 64 73 0a 20 20 20 20 20 20 28 73 | -hl--font-lock-keywords.......(s |
| 9500 | 65 74 71 20 66 6f 6e 74 2d 6c 6f 63 6b 2d 6b 65 79 77 6f 72 64 73 20 74 72 65 65 2d 73 69 74 74 | etq.font-lock-keywords.tree-sitt |
| 9520 | 65 72 2d 68 6c 2d 2d 66 6f 6e 74 2d 6c 6f 63 6b 2d 6b 65 79 77 6f 72 64 73 0a 20 20 20 20 20 20 | er-hl--font-lock-keywords....... |
| 9540 | 20 20 20 20 20 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 2d 66 6f 6e 74 2d 6c 6f 63 6b 2d | ......tree-sitter-hl--font-lock- |
| 9560 | 6b 65 79 77 6f 72 64 73 20 6e 69 6c 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 74 72 65 65 2d 73 69 | keywords.nil))))..(defun.tree-si |
| 9580 | 74 74 65 72 2d 68 6c 2d 2d 73 65 74 75 70 20 28 29 0a 20 20 22 53 65 74 20 75 70 20 60 74 72 65 | tter-hl--setup.()..."Set.up.`tre |
| 95a0 | 65 2d 73 69 74 74 65 72 2d 68 6c 27 20 69 6e 20 74 68 65 20 63 75 72 72 65 6e 74 20 62 75 66 66 | e-sitter-hl'.in.the.current.buff |
| 95c0 | 65 72 2e 0a 54 68 69 73 20 61 73 73 75 6d 65 73 20 62 6f 74 68 20 60 74 72 65 65 2d 73 69 74 74 | er..This.assumes.both.`tree-sitt |
| 95e0 | 65 72 2d 6d 6f 64 65 27 20 61 6e 64 20 60 66 6f 6e 74 2d 6c 6f 63 6b 2d 6d 6f 64 65 27 20 77 65 | er-mode'.and.`font-lock-mode'.we |
| 9600 | 72 65 20 61 6c 72 65 61 64 79 20 65 6e 61 62 6c 65 64 2e 22 0a 20 20 3b 3b 20 54 4f 44 4f 3a 20 | re.already.enabled."...;;.TODO:. |
| 9620 | 49 66 20 74 68 65 72 65 27 73 20 61 6e 20 65 72 72 6f 72 2c 20 64 69 73 61 62 6c 65 20 60 74 72 | If.there's.an.error,.disable.`tr |
| 9640 | 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 2d 65 78 74 72 61 2d 70 61 74 74 65 72 6e 73 2d 6c 69 73 | ee-sitter-hl--extra-patterns-lis |
| 9660 | 74 27 0a 20 20 3b 3b 20 61 6e 64 20 72 65 74 72 79 2e 0a 20 20 28 77 68 65 6e 20 28 74 72 65 65 | t'...;;.and.retry....(when.(tree |
| 9680 | 2d 73 69 74 74 65 72 2d 68 6c 2d 2d 65 6e 73 75 72 65 2d 71 75 65 72 79 29 0a 20 20 20 20 28 75 | -sitter-hl--ensure-query).....(u |
| 96a0 | 6e 6c 65 73 73 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 2d 71 75 65 72 79 2d 63 75 72 73 | nless.tree-sitter-hl--query-curs |
| 96c0 | 6f 72 0a 20 20 20 20 20 20 28 73 65 74 71 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 2d 71 | or.......(setq.tree-sitter-hl--q |
| 96e0 | 75 65 72 79 2d 63 75 72 73 6f 72 20 28 74 73 63 2d 6d 61 6b 65 2d 71 75 65 72 79 2d 63 75 72 73 | uery-cursor.(tsc-make-query-curs |
| 9700 | 6f 72 29 29 0a 20 20 20 20 20 20 3b 3b 20 49 6e 76 61 6c 69 64 61 74 65 20 74 68 65 20 62 75 66 | or)).......;;.Invalidate.the.buf |
| 9720 | 66 65 72 2c 20 6f 6e 6c 79 20 69 66 20 77 65 20 77 65 72 65 20 61 63 74 75 61 6c 6c 79 20 64 69 | fer,.only.if.we.were.actually.di |
| 9740 | 73 61 62 6c 65 64 20 70 72 65 76 69 6f 75 73 6c 79 2e 0a 20 20 20 20 20 20 28 74 72 65 65 2d 73 | sabled.previously........(tree-s |
| 9760 | 69 74 74 65 72 2d 68 6c 2d 2d 69 6e 76 61 6c 69 64 61 74 65 29 29 0a 20 20 20 20 3b 3b 20 54 4f | itter-hl--invalidate)).....;;.TO |
| 9780 | 44 4f 3a 20 4f 76 65 72 72 69 64 65 20 60 66 6f 6e 74 2d 6c 6f 63 6b 2d 65 78 74 65 6e 64 2d 61 | DO:.Override.`font-lock-extend-a |
| 97a0 | 66 74 65 72 2d 63 68 61 6e 67 65 2d 72 65 67 69 6f 6e 2d 66 75 6e 63 74 69 6f 6e 27 2c 20 6f 72 | fter-change-region-function',.or |
| 97c0 | 20 68 6f 6f 6b 0a 20 20 20 20 3b 3b 20 69 6e 74 6f 20 60 6a 69 74 2d 6c 6f 63 6b 2d 61 66 74 65 | .hook.....;;.into.`jit-lock-afte |
| 97e0 | 72 2d 63 68 61 6e 67 65 2d 65 78 74 65 6e 64 2d 72 65 67 69 6f 6e 2d 66 75 6e 63 74 69 6f 6e 73 | r-change-extend-region-functions |
| 9800 | 27 20 64 69 72 65 63 74 6c 79 2e 20 46 6f 72 20 74 68 61 74 20 74 6f 0a 20 20 20 20 3b 3b 20 77 | '.directly..For.that.to.....;;.w |
| 9820 | 6f 72 6b 2c 20 77 65 20 6e 65 65 64 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 20 60 74 72 65 65 2d | ork,.we.need.to.make.sure.`tree- |
| 9840 | 73 69 74 74 65 72 2d 2d 61 66 74 65 72 2d 63 68 61 6e 67 65 27 20 72 75 6e 73 20 62 65 66 6f 72 | sitter--after-change'.runs.befor |
| 9860 | 65 0a 20 20 20 20 3b 3b 20 60 6a 69 74 2d 6c 6f 63 6b 2d 61 66 74 65 72 2d 63 68 61 6e 67 65 27 | e.....;;.`jit-lock-after-change' |
| 9880 | 2e 0a 20 20 20 20 28 61 64 64 2d 68 6f 6f 6b 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 61 66 74 | ......(add-hook.'tree-sitter-aft |
| 98a0 | 65 72 2d 63 68 61 6e 67 65 2d 66 75 6e 63 74 69 6f 6e 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 | er-change-functions............. |
| 98c0 | 20 20 23 27 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 2d 69 6e 76 61 6c 69 64 61 74 65 0a 20 | ..#'tree-sitter-hl--invalidate.. |
| 98e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 69 6c 20 3a 6c 6f 63 61 6c 29 0a 20 20 20 20 3b 3b 20 | .............nil.:local).....;;. |
| 9900 | 54 4f 44 4f 3a 20 46 69 67 75 72 65 20 6f 75 74 20 68 6f 77 20 74 6f 20 70 72 6f 70 65 72 6c 79 | TODO:.Figure.out.how.to.properly |
| 9920 | 20 69 6e 74 65 67 72 61 74 65 20 77 69 74 68 20 60 6a 69 74 2d 6c 6f 63 6b 2d 6d 6f 64 65 27 20 | .integrate.with.`jit-lock-mode'. |
| 9940 | 64 69 72 65 63 74 6c 79 2c 0a 20 20 20 20 3b 3b 20 77 69 74 68 6f 75 74 20 72 65 6c 79 69 6e 67 | directly,.....;;.without.relying |
| 9960 | 20 6f 6e 20 60 66 6f 6e 74 2d 6c 6f 63 6b 2d 6d 6f 64 65 27 2e 20 41 6d 6f 6e 67 20 6f 74 68 65 | .on.`font-lock-mode'..Among.othe |
| 9980 | 72 20 74 68 69 6e 67 73 2c 20 69 74 20 77 6f 75 6c 64 20 65 6e 61 62 6c 65 0a 20 20 20 20 3b 3b | r.things,.it.would.enable.....;; |
| 99a0 | 20 68 69 67 68 6c 69 67 68 74 69 6e 67 20 77 69 74 68 6f 75 74 20 73 65 74 74 69 6e 67 20 60 66 | .highlighting.without.setting.`f |
| 99c0 | 6f 6e 74 2d 6c 6f 63 6b 2d 64 65 66 61 75 6c 74 73 27 2e 20 41 74 20 74 68 65 20 6d 6f 6d 65 6e | ont-lock-defaults'..At.the.momen |
| 99e0 | 74 2c 0a 20 20 20 20 3b 3b 20 60 66 6f 6e 74 2d 6c 6f 63 6b 2d 6d 6f 64 65 27 20 73 6f 6d 65 68 | t,.....;;.`font-lock-mode'.someh |
| 9a00 | 6f 77 20 68 65 6c 70 73 20 77 69 74 68 20 6d 61 6b 69 6e 67 20 73 75 72 65 20 74 68 61 74 20 66 | ow.helps.with.making.sure.that.f |
| 9a20 | 6f 6e 74 69 66 69 63 61 74 69 6f 6e 20 69 73 0a 20 20 20 20 3b 3b 20 75 70 64 61 74 65 64 20 69 | ontification.is.....;;.updated.i |
| 9a40 | 6e 2d 74 69 6d 65 2c 20 69 6e 73 74 65 61 64 20 6f 66 20 65 76 65 6e 74 75 61 6c 6c 79 2e 0a 20 | n-time,.instead.of.eventually... |
| 9a60 | 20 20 20 28 61 64 64 2d 66 75 6e 63 74 69 6f 6e 20 3a 61 72 6f 75 6e 64 20 28 6c 6f 63 61 6c 20 | ...(add-function.:around.(local. |
| 9a80 | 27 66 6f 6e 74 2d 6c 6f 63 6b 2d 66 6f 6e 74 69 66 79 2d 72 65 67 69 6f 6e 2d 66 75 6e 63 74 69 | 'font-lock-fontify-region-functi |
| 9aa0 | 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 27 74 72 65 65 2d 73 69 74 | on)...................#'tree-sit |
| 9ac0 | 74 65 72 2d 68 6c 2d 2d 68 69 67 68 6c 69 67 68 74 2d 72 65 67 69 6f 6e 2d 77 69 74 68 2d 66 61 | ter-hl--highlight-region-with-fa |
| 9ae0 | 6c 6c 62 61 63 6b 29 0a 20 20 20 20 28 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 2d 6d 69 6e | llback).....(tree-sitter-hl--min |
| 9b00 | 69 6d 69 7a 65 2d 66 6f 6e 74 2d 6c 6f 63 6b 2d 6b 65 79 77 6f 72 64 73 29 0a 20 20 20 20 3b 3b | imize-font-lock-keywords).....;; |
| 9b20 | 20 58 58 58 3a 20 57 65 20 75 73 65 64 20 74 6f 20 68 61 76 65 20 61 20 68 61 63 6b 20 74 68 61 | .XXX:.We.used.to.have.a.hack.tha |
| 9b40 | 74 20 63 61 6c 6c 73 60 66 6f 6e 74 2d 6c 6f 63 6b 2d 74 75 72 6e 2d 6f 6e 2d 74 68 69 6e 67 2d | t.calls`font-lock-turn-on-thing- |
| 9b60 | 6c 6f 63 6b 27 2c 0a 20 20 20 20 3b 3b 20 77 68 69 63 68 20 61 6c 6c 6f 77 73 20 74 75 72 6e 69 | lock',.....;;.which.allows.turni |
| 9b80 | 6e 67 20 6f 6e 20 74 72 65 65 2d 62 61 73 65 64 20 73 79 6e 74 61 78 20 68 69 67 68 6c 69 67 68 | ng.on.tree-based.syntax.highligh |
| 9ba0 | 74 69 6e 67 20 62 79 20 74 65 6d 70 6f 72 61 72 69 6c 79 0a 20 20 20 20 3b 3b 20 62 69 6e 64 69 | ting.by.temporarily.....;;.bindi |
| 9bc0 | 6e 67 20 60 6d 61 6a 6f 72 2d 6d 6f 64 65 27 2c 20 65 76 65 6e 20 74 68 6f 75 67 68 20 73 75 63 | ng.`major-mode',.even.though.suc |
| 9be0 | 68 20 61 20 6d 61 6a 6f 72 20 6d 6f 64 65 20 6d 61 79 20 6e 6f 74 20 62 65 20 69 6e 73 74 61 6c | h.a.major.mode.may.not.be.instal |
| 9c00 | 6c 65 64 2c 0a 20 20 20 20 3b 3b 20 6f 72 20 64 6f 65 73 20 6e 6f 74 20 65 78 69 73 74 2e 20 46 | led,.....;;.or.does.not.exist..F |
| 9c20 | 6f 72 20 65 78 61 6d 70 6c 65 3a 0a 20 20 20 20 3b 3b 0a 20 20 20 20 3b 3b 20 20 20 20 20 28 6c | or.example:.....;;.....;;.....(l |
| 9c40 | 65 74 20 28 28 6d 61 6a 6f 72 2d 6d 6f 64 65 20 27 67 6f 2d 6d 6f 64 65 29 29 20 28 74 72 65 65 | et.((major-mode.'go-mode)).(tree |
| 9c60 | 2d 73 69 74 74 65 72 2d 68 6c 2d 6d 6f 64 65 29 29 0a 20 20 20 20 3b 3b 0a 20 20 20 20 3b 3b 20 | -sitter-hl-mode)).....;;.....;;. |
| 9c80 | 48 6f 77 65 76 65 72 2c 20 69 66 20 60 66 6f 6e 74 2d 6c 6f 63 6b 2d 6d 6f 64 65 27 20 69 73 20 | However,.if.`font-lock-mode'.is. |
| 9ca0 | 73 75 62 73 65 71 75 65 6e 74 6c 79 20 64 69 73 61 62 6c 65 64 2c 20 62 65 63 61 75 73 65 0a 20 | subsequently.disabled,.because.. |
| 9cc0 | 20 20 20 3b 3b 20 60 66 6f 6e 74 2d 6c 6f 63 6b 2d 74 75 72 6e 2d 6f 66 66 2d 74 68 69 6e 67 2d | ...;;.`font-lock-turn-off-thing- |
| 9ce0 | 6c 6f 63 6b 27 20 64 6f 65 73 20 6e 6f 74 20 70 72 6f 70 65 72 6c 79 20 63 6c 65 61 6e 20 75 70 | lock'.does.not.properly.clean.up |
| 9d00 | 20 74 68 65 20 6c 6f 63 61 6c 0a 20 20 20 20 3b 3b 20 76 61 6c 75 65 20 6f 66 20 60 66 6f 6e 74 | .the.local.....;;.value.of.`font |
| 9d20 | 2d 6c 6f 63 6b 2d 65 6e 73 75 72 65 2d 66 75 6e 63 74 69 6f 6e 27 2c 20 63 61 6c 6c 69 6e 67 20 | -lock-ensure-function',.calling. |
| 9d40 | 60 66 6f 6e 74 2d 6c 6f 63 6b 2d 65 6e 73 75 72 65 27 20 77 69 6c 6c 0a 20 20 20 20 3b 3b 20 73 | `font-lock-ensure'.will.....;;.s |
| 9d60 | 69 67 6e 61 6c 20 61 6e 20 65 72 72 6f 72 2e 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20 74 68 69 | ignal.an.error..For.example,.thi |
| 9d80 | 73 20 68 61 70 70 65 6e 73 20 77 68 65 6e 20 6f 72 67 2d 6d 6f 64 65 27 73 20 63 6f 64 65 20 62 | s.happens.when.org-mode's.code.b |
| 9da0 | 6c 6f 63 6b 73 0a 20 20 20 20 3b 3b 20 61 72 65 20 68 69 67 68 6c 69 67 68 74 65 64 29 2e 20 54 | locks.....;;.are.highlighted)..T |
| 9dc0 | 68 65 72 65 66 6f 72 65 2c 20 77 65 20 64 69 73 61 62 6c 65 64 20 74 68 61 74 20 68 61 63 6b 2e | herefore,.we.disabled.that.hack. |
| 9de0 | 20 53 65 65 0a 20 20 20 20 3b 3b 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 65 | .See.....;;.https://github.com/e |
| 9e00 | 6d 61 63 73 2d 74 72 65 65 2d 73 69 74 74 65 72 2f 65 6c 69 73 70 2d 74 72 65 65 2d 73 69 74 74 | macs-tree-sitter/elisp-tree-sitt |
| 9e20 | 65 72 2f 69 73 73 75 65 73 2f 37 34 0a 20 20 20 20 29 29 0a 0a 28 64 65 66 75 6e 20 74 72 65 65 | er/issues/74.....))..(defun.tree |
| 9e40 | 2d 73 69 74 74 65 72 2d 68 6c 2d 2d 74 65 61 72 64 6f 77 6e 20 28 29 0a 20 20 22 54 65 61 72 20 | -sitter-hl--teardown.()..."Tear. |
| 9e60 | 64 6f 77 6e 20 60 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 27 20 69 6e 20 74 68 65 20 63 75 72 | down.`tree-sitter-hl'.in.the.cur |
| 9e80 | 72 65 6e 74 20 62 75 66 66 65 72 2e 22 0a 20 20 28 72 65 6d 6f 76 65 2d 66 75 6e 63 74 69 6f 6e | rent.buffer."...(remove-function |
| 9ea0 | 20 28 6c 6f 63 61 6c 20 27 66 6f 6e 74 2d 6c 6f 63 6b 2d 66 6f 6e 74 69 66 79 2d 72 65 67 69 6f | .(local.'font-lock-fontify-regio |
| 9ec0 | 6e 2d 66 75 6e 63 74 69 6f 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 | n-function)....................# |
| 9ee0 | 27 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 2d 68 69 67 68 6c 69 67 68 74 2d 72 65 67 69 6f | 'tree-sitter-hl--highlight-regio |
| 9f00 | 6e 2d 77 69 74 68 2d 66 61 6c 6c 62 61 63 6b 29 0a 20 20 28 72 65 6d 6f 76 65 2d 68 6f 6f 6b 20 | n-with-fallback)...(remove-hook. |
| 9f20 | 27 74 72 65 65 2d 73 69 74 74 65 72 2d 61 66 74 65 72 2d 63 68 61 6e 67 65 2d 66 75 6e 63 74 69 | 'tree-sitter-after-change-functi |
| 9f40 | 6f 6e 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 27 74 72 65 65 2d 73 69 74 74 65 72 | ons................#'tree-sitter |
| 9f60 | 2d 68 6c 2d 2d 69 6e 76 61 6c 69 64 61 74 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3a | -hl--invalidate................: |
| 9f80 | 6c 6f 63 61 6c 29 0a 20 20 28 77 68 65 6e 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 2d 71 | local)...(when.tree-sitter-hl--q |
| 9fa0 | 75 65 72 79 2d 63 75 72 73 6f 72 0a 20 20 20 20 28 73 65 74 71 20 74 72 65 65 2d 73 69 74 74 65 | uery-cursor.....(setq.tree-sitte |
| 9fc0 | 72 2d 68 6c 2d 2d 71 75 65 72 79 2d 63 75 72 73 6f 72 20 6e 69 6c 29 0a 20 20 20 20 3b 3b 20 49 | r-hl--query-cursor.nil).....;;.I |
| 9fe0 | 6e 76 61 6c 69 64 61 74 65 20 74 68 65 20 62 75 66 66 65 72 2c 20 6f 6e 6c 79 20 69 66 20 77 65 | nvalidate.the.buffer,.only.if.we |
| a000 | 20 77 65 72 65 20 61 63 74 75 61 6c 6c 79 20 65 6e 61 62 6c 65 64 20 70 72 65 76 69 6f 75 73 6c | .were.actually.enabled.previousl |
| a020 | 79 2e 0a 20 20 20 20 28 66 6f 6e 74 2d 6c 6f 63 6b 2d 66 6c 75 73 68 29 29 0a 20 20 28 77 68 65 | y......(font-lock-flush))...(whe |
| a040 | 6e 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 2d 71 75 65 72 79 0a 20 20 20 20 28 73 65 74 | n.tree-sitter-hl--query.....(set |
| a060 | 71 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 2d 71 75 65 72 79 20 6e 69 6c 29 0a 20 20 20 | q.tree-sitter-hl--query.nil).... |
| a080 | 20 28 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 2d 72 65 73 74 6f 72 65 2d 66 6f 6e 74 2d 6c | .(tree-sitter-hl--restore-font-l |
| a0a0 | 6f 63 6b 2d 6b 65 79 77 6f 72 64 73 29 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a | ock-keywords)))..;;;###autoload. |
| a0c0 | 28 64 65 66 69 6e 65 2d 6d 69 6e 6f 72 2d 6d 6f 64 65 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 | (define-minor-mode.tree-sitter-h |
| a0e0 | 6c 2d 6d 6f 64 65 0a 20 20 22 54 6f 67 67 6c 65 20 73 79 6e 74 61 78 20 68 69 67 68 6c 69 67 68 | l-mode..."Toggle.syntax.highligh |
| a100 | 74 69 6e 67 20 62 61 73 65 64 20 6f 6e 20 54 72 65 65 2d 73 69 74 74 65 72 27 73 20 73 79 6e 74 | ting.based.on.Tree-sitter's.synt |
| a120 | 61 78 20 74 72 65 65 2e 0a 49 66 20 60 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2d 64 65 66 61 | ax.tree..If.`tree-sitter-hl-defa |
| a140 | 75 6c 74 2d 70 61 74 74 65 72 6e 73 27 20 69 73 20 6e 69 6c 2c 20 74 75 72 6e 69 6e 67 20 6f 6e | ult-patterns'.is.nil,.turning.on |
| a160 | 20 74 68 69 73 20 6d 6f 64 65 20 64 6f 65 73 20 6e 6f 74 68 69 6e 67 2c 0a 61 6e 64 20 64 6f 65 | .this.mode.does.nothing,.and.doe |
| a180 | 73 20 6e 6f 74 20 69 6e 74 65 72 66 65 72 65 20 77 69 74 68 20 60 66 6f 6e 74 2d 6c 6f 63 6b 2d | s.not.interfere.with.`font-lock- |
| a1a0 | 6d 6f 64 65 27 2e 0a 0a 45 6e 61 62 6c 69 6e 67 20 74 68 69 73 20 61 75 74 6f 6d 61 74 69 63 61 | mode'...Enabling.this.automatica |
| a1c0 | 6c 6c 79 20 65 6e 61 62 6c 65 73 20 60 74 72 65 65 2d 73 69 74 74 65 72 2d 6d 6f 64 65 27 20 69 | lly.enables.`tree-sitter-mode'.i |
| a1e0 | 6e 20 74 68 65 20 62 75 66 66 65 72 2e 0a 0a 54 6f 20 65 6e 61 62 6c 65 20 74 68 69 73 20 61 75 | n.the.buffer...To.enable.this.au |
| a200 | 74 6f 6d 61 74 69 63 61 6c 6c 79 20 77 68 65 6e 65 76 65 72 20 60 74 72 65 65 2d 73 69 74 74 65 | tomatically.whenever.`tree-sitte |
| a220 | 72 2d 6d 6f 64 65 27 20 69 73 20 65 6e 61 62 6c 65 64 3a 0a 0a 20 28 61 64 64 2d 68 6f 6f 6b 20 | r-mode'.is.enabled:...(add-hook. |
| a240 | 27 74 72 65 65 2d 73 69 74 74 65 72 2d 61 66 74 65 72 2d 6f 6e 2d 68 6f 6f 6b 20 23 27 74 72 65 | 'tree-sitter-after-on-hook.#'tre |
| a260 | 65 2d 73 69 74 74 65 72 2d 68 6c 2d 6d 6f 64 65 29 22 0a 20 20 3a 69 6e 69 74 2d 76 61 6c 75 65 | e-sitter-hl-mode)"...:init-value |
| a280 | 20 6e 69 6c 0a 20 20 3a 67 72 6f 75 70 20 27 74 72 65 65 2d 73 69 74 74 65 72 0a 20 20 28 74 72 | .nil...:group.'tree-sitter...(tr |
| a2a0 | 65 65 2d 73 69 74 74 65 72 2d 2d 68 61 6e 64 6c 65 2d 64 65 70 65 6e 64 65 6e 74 20 74 72 65 65 | ee-sitter--handle-dependent.tree |
| a2c0 | 2d 73 69 74 74 65 72 2d 68 6c 2d 6d 6f 64 65 0a 20 20 20 20 23 27 74 72 65 65 2d 73 69 74 74 65 | -sitter-hl-mode.....#'tree-sitte |
| a2e0 | 72 2d 68 6c 2d 2d 73 65 74 75 70 0a 20 20 20 20 23 27 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c | r-hl--setup.....#'tree-sitter-hl |
| a300 | 2d 2d 74 65 61 72 64 6f 77 6e 29 29 0a 0a 28 70 72 6f 76 69 64 65 20 27 74 72 65 65 2d 73 69 74 | --teardown))..(provide.'tree-sit |
| a320 | 74 65 72 2d 68 6c 29 0a 3b 3b 3b 20 74 72 65 65 2d 73 69 74 74 65 72 2d 68 6c 2e 65 6c 20 65 6e | ter-hl).;;;.tree-sitter-hl.el.en |
| a340 | 64 73 20 68 65 72 65 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ds.here......................... |
| a360 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| a380 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| a3a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| a3c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| a3e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| a400 | 74 72 65 65 2d 73 69 74 74 65 72 2d 32 30 32 32 30 32 31 32 2e 31 36 33 32 2f 74 72 65 65 2d 73 | tree-sitter-20220212.1632/tree-s |
| a420 | 69 74 74 65 72 2d 6c 6f 61 64 2e 65 6c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | itter-load.el................... |
| a440 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| a460 | 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 |
| a480 | 30 30 30 37 35 34 36 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 36 37 37 30 00 20 30 00 00 00 | 0007546.00000000000.016770..0... |
| a4a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| a4c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| a4e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| a500 | 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................... |
| a520 | 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................... |
| a540 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| a560 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| a580 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| a5a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| a5c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| a5e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| a600 | 3b 3b 3b 20 74 72 65 65 2d 73 69 74 74 65 72 2d 6c 6f 61 64 2e 65 6c 20 2d 2d 2d 20 4c 61 6e 67 | ;;;.tree-sitter-load.el.---.Lang |
| a620 | 75 61 67 65 20 6c 6f 61 64 69 6e 67 20 66 6f 72 20 74 72 65 65 2d 73 69 74 74 65 72 20 2d 2a 2d | uage.loading.for.tree-sitter.-*- |
| a640 | 20 6c 65 78 69 63 61 6c 2d 62 69 6e 64 69 6e 67 3a 20 74 3b 20 63 6f 64 69 6e 67 3a 20 75 74 66 | .lexical-binding:.t;.coding:.utf |
| a660 | 2d 38 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 30 20 20 54 | -8.-*-..;;.Copyright.(C).2020..T |
| a680 | 75 e1 ba a5 6e 2d 41 6e 68 20 4e 67 75 79 e1 bb 85 6e 0a 3b 3b 0a 3b 3b 20 41 75 74 68 6f 72 3a | u...n-Anh.Nguy...n.;;.;;.Author: |
| a6a0 | 20 54 75 e1 ba a5 6e 2d 41 6e 68 20 4e 67 75 79 e1 bb 85 6e 20 3c 75 62 6f 6c 6f 6e 74 6f 6e 40 | .Tu...n-Anh.Nguy...n.<ubolonton@ |
| a6c0 | 67 6d 61 69 6c 2e 63 6f 6d 3e 0a 3b 3b 20 53 50 44 58 2d 4c 69 63 65 6e 73 65 2d 49 64 65 6e 74 | gmail.com>.;;.SPDX-License-Ident |
| a6e0 | 69 66 69 65 72 3a 20 4d 49 54 0a 0a 3b 3b 3b 20 43 6f 6d 6d 65 6e 74 61 72 79 3a 0a 0a 3b 3b 20 | ifier:.MIT..;;;.Commentary:..;;. |
| a700 | 54 68 69 73 20 66 69 6c 65 20 69 6d 70 6c 65 6d 65 6e 74 73 20 66 75 6e 63 74 69 6f 6e 73 20 74 | This.file.implements.functions.t |
| a720 | 6f 20 73 65 61 72 63 68 2c 20 6c 6f 61 64 20 61 6e 64 20 72 65 67 69 73 74 65 72 20 60 74 72 65 | o.search,.load.and.register.`tre |
| a740 | 65 2d 73 69 74 74 65 72 27 0a 3b 3b 20 6c 61 6e 67 75 61 67 65 20 6f 62 6a 65 63 74 73 20 28 67 | e-sitter'.;;.language.objects.(g |
| a760 | 72 61 6d 6d 61 72 73 29 2e 0a 0a 3b 3b 3b 20 43 6f 64 65 3a 0a 0a 28 72 65 71 75 69 72 65 20 27 | rammars)...;;;.Code:..(require.' |
| a780 | 6d 61 70 29 0a 28 72 65 71 75 69 72 65 20 27 73 65 71 29 0a 0a 28 72 65 71 75 69 72 65 20 27 74 | map).(require.'seq)..(require.'t |
| a7a0 | 73 63 29 0a 28 72 65 71 75 69 72 65 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 63 6c 69 29 0a 0a | sc).(require.'tree-sitter-cli).. |
| a7c0 | 28 65 76 61 6c 2d 77 68 65 6e 2d 63 6f 6d 70 69 6c 65 0a 20 20 28 72 65 71 75 69 72 65 20 27 70 | (eval-when-compile...(require.'p |
| a7e0 | 63 61 73 65 29 29 0a 0a 28 64 65 66 76 61 72 20 74 72 65 65 2d 73 69 74 74 65 72 2d 6c 61 6e 67 | case))..(defvar.tree-sitter-lang |
| a800 | 75 61 67 65 73 20 6e 69 6c 0a 20 20 22 41 6e 20 61 6c 69 73 74 20 6f 66 20 6d 61 70 70 69 6e 67 | uages.nil..."An.alist.of.mapping |
| a820 | 73 20 66 72 6f 6d 20 6c 61 6e 67 75 61 67 65 20 6e 61 6d 65 20 73 79 6d 62 6f 6c 73 20 74 6f 20 | s.from.language.name.symbols.to. |
| a840 | 6c 61 6e 67 75 61 67 65 20 6f 62 6a 65 63 74 73 2e 0a 53 65 65 20 60 74 72 65 65 2d 73 69 74 74 | language.objects..See.`tree-sitt |
| a860 | 65 72 2d 72 65 71 75 69 72 65 27 2e 22 29 0a 0a 28 64 65 66 76 61 72 20 74 72 65 65 2d 73 69 74 | er-require'.")..(defvar.tree-sit |
| a880 | 74 65 72 2d 6c 6f 61 64 2d 70 61 74 68 20 28 6c 69 73 74 20 28 74 72 65 65 2d 73 69 74 74 65 72 | ter-load-path.(list.(tree-sitter |
| a8a0 | 2d 63 6c 69 2d 62 69 6e 2d 64 69 72 65 63 74 6f 72 79 29 29 0a 20 20 22 4c 69 73 74 20 6f 66 20 | -cli-bin-directory))..."List.of. |
| a8c0 | 64 69 72 65 63 74 6f 72 69 65 73 20 74 6f 20 73 65 61 72 63 68 20 66 6f 72 20 73 68 61 72 65 64 | directories.to.search.for.shared |
| a8e0 | 20 6c 69 62 72 61 72 69 65 73 20 74 68 61 74 20 64 65 66 69 6e 65 20 6c 61 6e 67 75 61 67 65 73 | .libraries.that.define.languages |
| a900 | 2e 22 29 0a 0a 28 64 65 66 76 61 72 20 74 72 65 65 2d 73 69 74 74 65 72 2d 6c 6f 61 64 2d 73 75 | .")..(defvar.tree-sitter-load-su |
| a920 | 66 66 69 78 65 73 0a 20 20 28 70 63 61 73 65 20 73 79 73 74 65 6d 2d 74 79 70 65 0a 20 20 20 20 | ffixes...(pcase.system-type..... |
| a940 | 3b 3b 20 54 68 65 20 43 4c 49 20 74 6f 6f 6c 20 6f 75 74 70 75 74 73 20 60 2e 73 6f 27 2c 20 62 | ;;.The.CLI.tool.outputs.`.so',.b |
| a960 | 75 74 20 60 2e 64 79 6c 69 62 27 20 69 73 20 6d 6f 72 65 20 73 65 6e 73 69 62 6c 65 20 6f 6e 20 | ut.`.dylib'.is.more.sensible.on. |
| a980 | 6d 61 63 4f 53 2e 0a 20 20 20 20 28 27 64 61 72 77 69 6e 20 28 6c 69 73 74 20 22 2e 64 79 6c 69 | macOS......('darwin.(list.".dyli |
| a9a0 | 62 22 20 22 2e 73 6f 22 29 29 0a 20 20 20 20 28 27 67 6e 75 2f 6c 69 6e 75 78 20 28 6c 69 73 74 | b".".so")).....('gnu/linux.(list |
| a9c0 | 20 22 2e 73 6f 22 29 29 0a 20 20 20 20 28 27 77 69 6e 64 6f 77 73 2d 6e 74 20 28 6c 69 73 74 20 | .".so")).....('windows-nt.(list. |
| a9e0 | 22 2e 64 6c 6c 22 29 29 0a 20 20 20 20 28 5f 20 28 65 72 72 6f 72 20 22 55 6e 73 75 70 70 6f 72 | ".dll")).....(_.(error."Unsuppor |
| aa00 | 74 65 64 20 73 79 73 74 65 6d 2d 74 79 70 65 20 25 73 22 20 73 79 73 74 65 6d 2d 74 79 70 65 29 | ted.system-type.%s".system-type) |
| aa20 | 29 29 0a 20 20 22 4c 69 73 74 20 6f 66 20 73 75 66 66 69 78 65 73 20 66 6f 72 20 73 68 61 72 65 | ))..."List.of.suffixes.for.share |
| aa40 | 64 20 6c 69 62 72 61 72 69 65 73 20 74 68 61 74 20 64 65 66 69 6e 65 20 74 72 65 65 2d 73 69 74 | d.libraries.that.define.tree-sit |
| aa60 | 74 65 72 20 6c 61 6e 67 75 61 67 65 73 2e 22 29 0a 0a 3b 3b 3b 20 54 4f 44 4f 3a 20 41 6c 6c 6f | ter.languages.")..;;;.TODO:.Allo |
| aa80 | 77 20 73 70 65 63 69 66 79 69 6e 67 20 61 62 73 6f 6c 75 74 65 20 70 61 74 68 2e 0a 28 64 65 66 | w.specifying.absolute.path..(def |
| aaa0 | 75 6e 20 74 72 65 65 2d 73 69 74 74 65 72 2d 6c 6f 61 64 20 28 6c 61 6e 67 2d 73 79 6d 62 6f 6c | un.tree-sitter-load.(lang-symbol |
| aac0 | 20 26 6f 70 74 69 6f 6e 61 6c 20 66 69 6c 65 20 6e 61 74 69 76 65 2d 73 79 6d 62 6f 6c 2d 6e 61 | .&optional.file.native-symbol-na |
| aae0 | 6d 65 29 0a 20 20 22 4c 6f 61 64 20 61 20 6c 61 6e 67 75 61 67 65 20 67 72 61 6d 6d 61 72 20 66 | me)..."Load.a.language.grammar.f |
| ab00 | 72 6f 6d 20 46 49 4c 45 20 61 6e 64 20 72 65 67 69 73 74 65 72 20 69 74 20 75 6e 64 65 72 20 74 | rom.FILE.and.register.it.under.t |
| ab20 | 68 65 20 6e 61 6d 65 20 4c 41 4e 47 2d 53 59 4d 42 4f 4c 2e 0a 49 66 20 61 6e 6f 74 68 65 72 20 | he.name.LANG-SYMBOL..If.another. |
| ab40 | 6c 61 6e 67 75 61 67 65 20 77 61 73 20 61 6c 72 65 61 64 79 20 72 65 67 69 73 74 65 72 65 64 20 | language.was.already.registered. |
| ab60 | 75 6e 64 65 72 20 74 68 65 20 73 61 6d 65 20 6e 61 6d 65 2c 20 6f 76 65 72 72 69 64 65 20 69 74 | under.the.same.name,.override.it |
| ab80 | 2e 0a 0a 54 68 69 73 20 66 75 6e 63 74 69 6f 6e 20 72 65 74 75 72 6e 73 20 74 68 65 20 6c 6f 61 | ...This.function.returns.the.loa |
| aba0 | 64 65 64 20 6c 61 6e 67 75 61 67 65 20 6f 62 6a 65 63 74 2e 0a 0a 46 49 4c 45 20 73 68 6f 75 6c | ded.language.object...FILE.shoul |
| abc0 | 64 20 62 65 20 74 68 65 20 62 61 73 65 20 6e 61 6d 65 20 28 77 69 74 68 6f 75 74 20 65 78 74 65 | d.be.the.base.name.(without.exte |
| abe0 | 6e 73 69 6f 6e 29 20 6f 66 20 74 68 65 20 6e 61 74 69 76 65 20 73 68 61 72 65 64 20 6c 69 62 72 | nsion).of.the.native.shared.libr |
| ac00 | 61 72 79 0a 74 68 61 74 20 65 78 70 6f 72 74 73 20 74 68 65 20 6c 61 6e 67 75 61 67 65 20 61 73 | ary.that.exports.the.language.as |
| ac20 | 20 74 68 65 20 6e 61 74 69 76 65 20 73 79 6d 62 6f 6c 20 4e 41 54 49 56 45 2d 53 59 4d 42 4f 4c | .the.native.symbol.NATIVE-SYMBOL |
| ac40 | 2d 4e 41 4d 45 2e 0a 0a 49 66 20 46 49 4c 45 20 69 73 20 6e 69 6c 2c 20 74 68 65 20 62 61 73 65 | -NAME...If.FILE.is.nil,.the.base |
| ac60 | 20 6e 61 6d 65 20 69 73 20 61 73 73 75 6d 65 64 20 74 6f 20 62 65 20 4c 41 4e 47 2d 53 59 4d 42 | .name.is.assumed.to.be.LANG-SYMB |
| ac80 | 4f 4c 27 73 20 6e 61 6d 65 2e 0a 0a 49 66 20 4e 41 54 49 56 45 2d 53 59 4d 42 4f 4c 2d 4e 41 4d | OL's.name...If.NATIVE-SYMBOL-NAM |
| aca0 | 45 20 69 73 20 6e 69 6c 2c 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 65 78 70 6f 72 74 | E.is.nil,.the.name.of.the.export |
| acc0 | 65 64 20 6e 61 74 69 76 65 20 73 79 6d 62 6f 6c 20 69 73 20 61 73 73 75 6d 65 64 0a 74 6f 20 62 | ed.native.symbol.is.assumed.to.b |
| ace0 | 65 20 4c 41 4e 47 2d 53 59 4d 42 4f 4c 27 73 20 6e 61 6d 65 2c 20 70 72 65 66 69 78 65 64 20 77 | e.LANG-SYMBOL's.name,.prefixed.w |
| ad00 | 69 74 68 20 5c 22 74 72 65 65 5f 73 69 74 74 65 72 5f 5c 22 2e 22 0a 20 20 28 6c 65 74 2a 20 28 | ith.\"tree_sitter_\"."...(let*.( |
| ad20 | 28 6c 61 6e 67 2d 6e 61 6d 65 20 28 73 79 6d 62 6f 6c 2d 6e 61 6d 65 20 6c 61 6e 67 2d 73 79 6d | (lang-name.(symbol-name.lang-sym |
| ad40 | 62 6f 6c 29 29 0a 20 20 20 20 20 20 20 20 20 3b 3b 20 45 78 61 6d 70 6c 65 3a 20 63 2d 73 68 61 | bol))..........;;.Example:.c-sha |
| ad60 | 72 70 20 2d 3e 20 63 5f 73 68 61 72 70 2e 0a 20 20 20 20 20 20 20 20 20 28 66 61 6c 6c 62 61 63 | rp.->.c_sharp...........(fallbac |
| ad80 | 6b 2d 6e 61 6d 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 | k-name.(replace-regexp-in-string |
| ada0 | 20 22 2d 22 20 22 5f 22 20 6c 61 6e 67 2d 6e 61 6d 65 29 29 0a 20 20 20 20 20 20 20 20 20 28 6e | ."-"."_".lang-name))..........(n |
| adc0 | 61 74 69 76 65 2d 73 79 6d 62 6f 6c 2d 6e 61 6d 65 20 28 6f 72 20 6e 61 74 69 76 65 2d 73 79 6d | ative-symbol-name.(or.native-sym |
| ade0 | 62 6f 6c 2d 6e 61 6d 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | bol-name........................ |
| ae00 | 20 20 20 20 20 20 20 20 20 20 28 66 6f 72 6d 61 74 20 22 74 72 65 65 5f 73 69 74 74 65 72 5f 25 | ..........(format."tree_sitter_% |
| ae20 | 73 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | s".............................. |
| ae40 | 20 20 20 20 20 20 20 20 20 20 20 20 66 61 6c 6c 62 61 63 6b 2d 6e 61 6d 65 29 29 29 0a 20 20 20 | ............fallback-name))).... |
| ae60 | 20 20 20 20 20 20 3b 3b 20 4c 69 73 74 20 6f 66 20 62 61 73 65 20 66 69 6c 65 20 6e 61 6d 65 73 | ......;;.List.of.base.file.names |
| ae80 | 20 74 6f 20 73 65 61 72 63 68 20 66 6f 72 2e 0a 20 20 20 20 20 20 20 20 20 28 66 69 6c 65 73 20 | .to.search.for...........(files. |
| aea0 | 28 69 66 20 66 69 6c 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 | (if.file.....................;;. |
| aec0 | 55 73 65 20 6f 6e 6c 79 20 46 49 4c 45 2c 20 69 66 20 69 74 27 73 20 67 69 76 65 6e 2e 0a 20 20 | Use.only.FILE,.if.it's.given.... |
| aee0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 73 74 20 66 69 6c 65 29 0a 20 20 | ..................(list.file)... |
| af00 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 4f 74 68 65 72 77 69 73 65 20 75 73 65 | ................;;.Otherwise.use |
| af20 | 20 4c 41 4e 47 2d 53 59 4d 42 4f 4c 2e 20 46 69 72 73 74 2c 20 61 73 2d 69 73 2e 20 54 68 65 6e | .LANG-SYMBOL..First,.as-is..Then |
| af40 | 2c 20 77 69 74 68 20 68 79 70 68 65 6e 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ,.with.hyphens.................. |
| af60 | 20 3b 3b 20 72 65 70 6c 61 63 65 64 20 62 79 20 75 6e 64 65 72 73 63 6f 72 65 73 2e 0a 20 20 20 | .;;.replaced.by.underscores..... |
| af80 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 73 20 6c 61 6e 67 2d 6e 61 6d 65 0a 20 | ...............(cons.lang-name.. |
| afa0 | 20 20 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 28 | .......................(unless.( |
| afc0 | 73 74 72 69 6e 67 3d 20 6c 61 6e 67 2d 6e 61 6d 65 20 66 61 6c 6c 62 61 63 6b 2d 6e 61 6d 65 29 | string=.lang-name.fallback-name) |
| afe0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6c 69 73 74 | ...........................(list |
| b000 | 20 66 61 6c 6c 62 61 63 6b 2d 6e 61 6d 65 29 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 66 75 | .fallback-name)))))..........(fu |
| b020 | 6c 6c 2d 70 61 74 68 20 28 73 65 71 2d 73 6f 6d 65 20 28 6c 61 6d 62 64 61 20 28 62 61 73 65 2d | ll-path.(seq-some.(lambda.(base- |
| b040 | 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 20 20 20 20 | name)........................... |
| b060 | 20 20 20 20 20 28 6c 6f 63 61 74 65 2d 66 69 6c 65 20 62 61 73 65 2d 6e 61 6d 65 0a 20 20 20 20 | .....(locate-file.base-name..... |
| b080 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| b0a0 | 20 20 20 20 20 20 20 20 74 72 65 65 2d 73 69 74 74 65 72 2d 6c 6f 61 64 2d 70 61 74 68 0a 20 20 | ........tree-sitter-load-path... |
| b0c0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| b0e0 | 20 20 20 20 20 20 20 20 20 20 74 72 65 65 2d 73 69 74 74 65 72 2d 6c 6f 61 64 2d 73 75 66 66 69 | ..........tree-sitter-load-suffi |
| b100 | 78 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 20 20 20 20 | xes))........................... |
| b120 | 20 20 20 66 69 6c 65 73 29 29 29 0a 20 20 20 20 28 75 6e 6c 65 73 73 20 66 75 6c 6c 2d 70 61 74 | ...files))).....(unless.full-pat |
| b140 | 68 0a 20 20 20 20 20 20 3b 3b 20 54 4f 44 4f 3a 20 44 65 66 69 6e 65 20 63 75 73 74 6f 6d 20 65 | h.......;;.TODO:.Define.custom.e |
| b160 | 72 72 6f 72 20 63 6c 61 73 73 2e 0a 20 20 20 20 20 20 28 65 72 72 6f 72 20 22 43 61 6e 6e 6f 74 | rror.class........(error."Cannot |
| b180 | 20 66 69 6e 64 20 73 68 61 72 65 64 20 6c 69 62 72 61 72 79 20 66 6f 72 20 6c 61 6e 67 75 61 67 | .find.shared.library.for.languag |
| b1a0 | 65 3a 20 25 53 22 20 6c 61 6e 67 2d 73 79 6d 62 6f 6c 29 29 0a 20 20 20 20 28 6c 65 74 20 28 28 | e:.%S".lang-symbol)).....(let.(( |
| b1c0 | 6c 61 6e 67 75 61 67 65 20 28 74 73 63 2d 2d 6c 6f 61 64 2d 6c 61 6e 67 75 61 67 65 20 66 75 6c | language.(tsc--load-language.ful |
| b1e0 | 6c 2d 70 61 74 68 20 6e 61 74 69 76 65 2d 73 79 6d 62 6f 6c 2d 6e 61 6d 65 20 6c 61 6e 67 2d 73 | l-path.native-symbol-name.lang-s |
| b200 | 79 6d 62 6f 6c 29 29 29 0a 20 20 20 20 20 20 28 73 65 74 66 20 28 6d 61 70 2d 65 6c 74 20 74 72 | ymbol))).......(setf.(map-elt.tr |
| b220 | 65 65 2d 73 69 74 74 65 72 2d 6c 61 6e 67 75 61 67 65 73 20 6c 61 6e 67 2d 73 79 6d 62 6f 6c 29 | ee-sitter-languages.lang-symbol) |
| b240 | 20 6c 61 6e 67 75 61 67 65 29 0a 20 20 20 20 20 20 6c 61 6e 67 75 61 67 65 29 29 29 0a 0a 3b 3b | .language).......language)))..;; |
| b260 | 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 74 72 65 65 2d 73 69 74 74 65 72 2d | ;###autoload.(defun.tree-sitter- |
| b280 | 72 65 71 75 69 72 65 20 28 6c 61 6e 67 2d 73 79 6d 62 6f 6c 20 26 6f 70 74 69 6f 6e 61 6c 20 66 | require.(lang-symbol.&optional.f |
| b2a0 | 69 6c 65 20 6e 61 74 69 76 65 2d 73 79 6d 62 6f 6c 2d 6e 61 6d 65 29 0a 20 20 22 52 65 74 75 72 | ile.native-symbol-name)..."Retur |
| b2c0 | 6e 20 74 68 65 20 6c 61 6e 67 75 61 67 65 20 6f 62 6a 65 63 74 20 6c 6f 61 64 65 64 20 61 6e 64 | n.the.language.object.loaded.and |
| b2e0 | 20 72 65 67 69 73 74 65 72 65 64 20 75 6e 64 65 72 20 74 68 65 20 6e 61 6d 65 20 4c 41 4e 47 2d | .registered.under.the.name.LANG- |
| b300 | 53 59 4d 42 4f 4c 2e 0a 49 66 20 74 68 65 20 6c 61 6e 67 75 61 67 65 20 68 61 73 20 6e 6f 74 20 | SYMBOL..If.the.language.has.not. |
| b320 | 62 65 65 6e 20 6c 6f 61 64 65 64 20 79 65 74 2c 20 6c 6f 61 64 20 69 74 20 77 69 74 68 20 60 74 | been.loaded.yet,.load.it.with.`t |
| b340 | 72 65 65 2d 73 69 74 74 65 72 2d 6c 6f 61 64 27 2e 0a 0a 46 49 4c 45 20 73 68 6f 75 6c 64 20 62 | ree-sitter-load'...FILE.should.b |
| b360 | 65 20 74 68 65 20 62 61 73 65 20 6e 61 6d 65 20 28 77 69 74 68 6f 75 74 20 65 78 74 65 6e 73 69 | e.the.base.name.(without.extensi |
| b380 | 6f 6e 29 20 6f 66 20 74 68 65 20 6e 61 74 69 76 65 20 73 68 61 72 65 64 20 6c 69 62 72 61 72 79 | on).of.the.native.shared.library |
| b3a0 | 0a 74 68 61 74 20 65 78 70 6f 72 74 73 20 74 68 65 20 6c 61 6e 67 75 61 67 65 20 61 73 20 74 68 | .that.exports.the.language.as.th |
| b3c0 | 65 20 6e 61 74 69 76 65 20 73 79 6d 62 6f 6c 20 4e 41 54 49 56 45 2d 53 59 4d 42 4f 4c 2d 4e 41 | e.native.symbol.NATIVE-SYMBOL-NA |
| b3e0 | 4d 45 2e 0a 0a 49 66 20 46 49 4c 45 20 69 73 20 6e 69 6c 2c 20 74 68 65 20 62 61 73 65 20 6e 61 | ME...If.FILE.is.nil,.the.base.na |
| b400 | 6d 65 20 69 73 20 61 73 73 75 6d 65 64 20 74 6f 20 62 65 20 4c 41 4e 47 2d 53 59 4d 42 4f 4c 27 | me.is.assumed.to.be.LANG-SYMBOL' |
| b420 | 73 20 6e 61 6d 65 2e 0a 0a 49 66 20 4e 41 54 49 56 45 2d 53 59 4d 42 4f 4c 2d 4e 41 4d 45 20 69 | s.name...If.NATIVE-SYMBOL-NAME.i |
| b440 | 73 20 6e 69 6c 2c 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 74 68 65 20 65 78 70 6f 72 74 65 64 20 | s.nil,.the.name.of.the.exported. |
| b460 | 6e 61 74 69 76 65 20 73 79 6d 62 6f 6c 20 69 73 20 61 73 73 75 6d 65 64 0a 74 6f 20 62 65 20 4c | native.symbol.is.assumed.to.be.L |
| b480 | 41 4e 47 2d 53 59 4d 42 4f 4c 27 73 20 6e 61 6d 65 2c 20 70 72 65 66 69 78 65 64 20 77 69 74 68 | ANG-SYMBOL's.name,.prefixed.with |
| b4a0 | 20 5c 22 74 72 65 65 5f 73 69 74 74 65 72 5f 5c 22 2e 22 0a 20 20 28 6f 72 20 28 61 6c 69 73 74 | .\"tree_sitter_\"."...(or.(alist |
| b4c0 | 2d 67 65 74 20 6c 61 6e 67 2d 73 79 6d 62 6f 6c 20 74 72 65 65 2d 73 69 74 74 65 72 2d 6c 61 6e | -get.lang-symbol.tree-sitter-lan |
| b4e0 | 67 75 61 67 65 73 29 0a 20 20 20 20 20 20 28 74 72 65 65 2d 73 69 74 74 65 72 2d 6c 6f 61 64 20 | guages).......(tree-sitter-load. |
| b500 | 6c 61 6e 67 2d 73 79 6d 62 6f 6c 20 66 69 6c 65 20 6e 61 74 69 76 65 2d 73 79 6d 62 6f 6c 2d 6e | lang-symbol.file.native-symbol-n |
| b520 | 61 6d 65 29 29 29 0a 0a 28 70 72 6f 76 69 64 65 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 6c 6f | ame)))..(provide.'tree-sitter-lo |
| b540 | 61 64 29 0a 3b 3b 3b 20 74 72 65 65 2d 73 69 74 74 65 72 2d 6c 6f 61 64 2e 65 6c 20 65 6e 64 73 | ad).;;;.tree-sitter-load.el.ends |
| b560 | 20 68 65 72 65 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | .here........................... |
| b580 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| b5a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| b5c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| b5e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| b600 | 74 72 65 65 2d 73 69 74 74 65 72 2d 32 30 32 32 30 32 31 32 2e 31 36 33 32 2f 74 72 65 65 2d 73 | tree-sitter-20220212.1632/tree-s |
| b620 | 69 74 74 65 72 2d 70 6b 67 2e 65 6c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | itter-pkg.el.................... |
| b640 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| b660 | 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 |
| b680 | 30 30 30 30 37 36 36 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 36 36 32 37 00 20 30 00 00 00 | 0000766.00000000000.016627..0... |
| b6a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| b6c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| b6e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| b700 | 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................... |
| b720 | 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................... |
| b740 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| b760 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| b780 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| b7a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| b7c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| b7e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| b800 | 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 |
| b820 | 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 |
| b840 | 61 67 65 20 22 74 72 65 65 2d 73 69 74 74 65 72 22 20 22 32 30 32 32 30 32 31 32 2e 31 36 33 32 | age."tree-sitter"."20220212.1632 |
| b860 | 22 0a 20 20 22 49 6e 63 72 65 6d 65 6e 74 61 6c 20 70 61 72 73 69 6e 67 20 73 79 73 74 65 6d 2e | "..."Incremental.parsing.system. |
| b880 | 22 0a 20 20 27 28 28 65 6d 61 63 73 20 22 32 35 2e 31 22 29 0a 20 20 20 20 28 74 73 63 20 20 20 | "...'((emacs."25.1").....(tsc... |
| b8a0 | 22 30 2e 31 38 2e 30 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 | "0.18.0"))...:url."https://githu |
| b8c0 | 62 2e 63 6f 6d 2f 65 6d 61 63 73 2d 74 72 65 65 2d 73 69 74 74 65 72 2f 65 6c 69 73 70 2d 74 72 | b.com/emacs-tree-sitter/elisp-tr |
| b8e0 | 65 65 2d 73 69 74 74 65 72 22 0a 20 20 3a 63 6f 6d 6d 69 74 20 22 39 30 39 37 31 37 63 36 38 35 | ee-sitter"...:commit."909717c685 |
| b900 | 66 66 35 61 32 33 32 37 66 61 32 63 61 38 66 62 38 61 32 35 32 31 36 31 32 39 33 36 31 63 22 0a | ff5a2327fa2ca8fb8a25216129361c". |
| b920 | 20 20 3a 72 65 76 64 65 73 63 20 22 39 30 39 37 31 37 63 36 38 35 66 66 22 0a 20 20 3a 6b 65 79 | ..:revdesc."909717c685ff"...:key |
| b940 | 77 6f 72 64 73 20 27 28 22 6c 61 6e 67 75 61 67 65 73 22 20 22 74 6f 6f 6c 73 22 20 22 70 61 72 | words.'("languages"."tools"."par |
| b960 | 73 65 72 73 22 20 22 74 72 65 65 2d 73 69 74 74 65 72 22 29 0a 20 20 3a 61 75 74 68 6f 72 73 20 | sers"."tree-sitter")...:authors. |
| b980 | 27 28 28 22 54 75 e1 ba a5 6e 2d 41 6e 68 20 4e 67 75 79 e1 bb 85 6e 22 20 2e 20 22 75 62 6f 6c | '(("Tu...n-Anh.Nguy...n"..."ubol |
| b9a0 | 6f 6e 74 6f 6e 40 67 6d 61 69 6c 2e 63 6f 6d 22 29 29 0a 20 20 3a 6d 61 69 6e 74 61 69 6e 65 72 | onton@gmail.com"))...:maintainer |
| b9c0 | 73 20 27 28 28 22 54 75 e1 ba a5 6e 2d 41 6e 68 20 4e 67 75 79 e1 bb 85 6e 22 20 2e 20 22 75 62 | s.'(("Tu...n-Anh.Nguy...n"..."ub |
| b9e0 | 6f 6c 6f 6e 74 6f 6e 40 67 6d 61 69 6c 2e 63 6f 6d 22 29 29 29 0a 00 00 00 00 00 00 00 00 00 00 | olonton@gmail.com")))........... |
| ba00 | 74 72 65 65 2d 73 69 74 74 65 72 2d 32 30 32 32 30 32 31 32 2e 31 36 33 32 2f 74 72 65 65 2d 73 | tree-sitter-20220212.1632/tree-s |
| ba20 | 69 74 74 65 72 2d 71 75 65 72 79 2e 65 6c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | itter-query.el.................. |
| ba40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| ba60 | 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 |
| ba80 | 30 30 31 32 30 34 33 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 37 32 30 32 00 20 30 00 00 00 | 0012043.00000000000.017202..0... |
| baa0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| bac0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| bae0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| bb00 | 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................... |
| bb20 | 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................... |
| bb40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| bb60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| bb80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| bba0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| bbc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| bbe0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| bc00 | 3b 3b 3b 20 74 72 65 65 2d 73 69 74 74 65 72 2d 71 75 65 72 79 2e 65 6c 20 2d 2d 2d 20 54 6f 6f | ;;;.tree-sitter-query.el.---.Too |
| bc20 | 6c 73 20 66 6f 72 20 72 75 6e 6e 69 6e 67 20 71 75 65 72 69 65 73 20 6c 69 76 65 20 2d 2a 2d 20 | ls.for.running.queries.live.-*-. |
| bc40 | 6c 65 78 69 63 61 6c 2d 62 69 6e 64 69 6e 67 3a 20 74 3b 20 63 6f 64 69 6e 67 3a 20 75 74 66 2d | lexical-binding:.t;.coding:.utf- |
| bc60 | 38 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 30 20 20 54 75 | 8.-*-..;;.Copyright.(C).2020..Tu |
| bc80 | e1 ba a5 6e 2d 41 6e 68 20 4e 67 75 79 e1 bb 85 6e 0a 3b 3b 0a 3b 3b 20 41 75 74 68 6f 72 3a 20 | ...n-Anh.Nguy...n.;;.;;.Author:. |
| bca0 | 4a 6f 72 67 65 20 4a 61 76 69 65 72 20 41 72 61 79 61 20 4e 61 76 61 72 72 6f 20 3c 6a 6f 72 67 | Jorge.Javier.Araya.Navarro.<jorg |
| bcc0 | 65 6a 61 76 69 65 72 61 6e 40 79 61 68 6f 6f 2e 63 6f 6d 2e 6d 78 3e 0a 3b 3b 20 53 50 44 58 2d | ejavieran@yahoo.com.mx>.;;.SPDX- |
| bce0 | 4c 69 63 65 6e 73 65 2d 49 64 65 6e 74 69 66 69 65 72 3a 20 4d 49 54 0a 0a 3b 3b 3b 20 43 6f 6d | License-Identifier:.MIT..;;;.Com |
| bd00 | 6d 65 6e 74 61 72 79 3a 0a 0a 3b 3b 20 54 68 69 73 20 66 69 6c 65 20 63 6f 6e 74 61 69 6e 73 20 | mentary:..;;.This.file.contains. |
| bd20 | 6f 74 68 65 72 20 64 65 62 75 67 20 75 74 69 6c 69 74 69 65 73 20 66 6f 72 20 62 75 69 6c 64 69 | other.debug.utilities.for.buildi |
| bd40 | 6e 67 20 71 75 65 72 69 65 73 20 61 6e 64 20 73 65 65 20 72 65 73 75 6c 74 73 0a 3b 3b 20 69 6e | ng.queries.and.see.results.;;.in |
| bd60 | 20 61 20 74 61 72 67 65 74 20 62 75 66 66 65 72 2e 0a 0a 3b 3b 3b 20 43 6f 64 65 3a 0a 0a 28 72 | .a.target.buffer...;;;.Code:..(r |
| bd80 | 65 71 75 69 72 65 20 27 73 63 68 65 6d 65 29 0a 28 72 65 71 75 69 72 65 20 27 74 72 65 65 2d 73 | equire.'scheme).(require.'tree-s |
| bda0 | 69 74 74 65 72 29 0a 0a 28 64 65 66 67 72 6f 75 70 20 74 72 65 65 2d 73 69 74 74 65 72 2d 71 75 | itter)..(defgroup.tree-sitter-qu |
| bdc0 | 65 72 79 20 6e 69 6c 0a 20 20 22 54 72 65 65 2d 73 69 74 74 65 72 20 70 6c 61 79 67 72 6f 75 6e | ery.nil..."Tree-sitter.playgroun |
| bde0 | 64 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 74 72 65 65 2d 73 69 74 74 65 72 29 0a 0a 28 64 65 66 | d."...:group.'tree-sitter)..(def |
| be00 | 69 6e 65 2d 64 65 72 69 76 65 64 2d 6d 6f 64 65 20 74 72 65 65 2d 73 69 74 74 65 72 2d 71 75 65 | ine-derived-mode.tree-sitter-que |
| be20 | 72 79 2d 6d 6f 64 65 20 70 72 6f 67 2d 6d 6f 64 65 20 22 74 73 63 2d 71 75 65 72 79 2d 62 75 69 | ry-mode.prog-mode."tsc-query-bui |
| be40 | 6c 64 65 72 22 0a 20 20 22 4d 61 6a 6f 72 20 6d 6f 64 65 20 66 6f 72 20 62 75 69 6c 64 69 6e 67 | lder"..."Major.mode.for.building |
| be60 | 20 74 72 65 65 2d 73 69 74 74 65 72 20 71 75 65 72 69 65 73 20 61 6e 64 20 74 65 73 74 69 6e 67 | .tree-sitter.queries.and.testing |
| be80 | 20 74 68 65 6d 20 6c 69 76 65 2e 22 0a 20 20 3a 73 79 6e 74 61 78 2d 74 61 62 6c 65 20 73 63 68 | .them.live."...:syntax-table.sch |
| bea0 | 65 6d 65 2d 6d 6f 64 65 2d 73 79 6e 74 61 78 2d 74 61 62 6c 65 0a 20 20 3a 61 62 62 72 65 76 2d | eme-mode-syntax-table...:abbrev- |
| bec0 | 74 61 62 6c 65 20 73 63 68 65 6d 65 2d 6d 6f 64 65 2d 61 62 62 72 65 76 2d 74 61 62 6c 65 29 0a | table.scheme-mode-abbrev-table). |
| bee0 | 0a 28 64 65 66 63 6f 6e 73 74 20 74 72 65 65 2d 73 69 74 74 65 72 2d 71 75 65 72 79 2d 62 75 69 | .(defconst.tree-sitter-query-bui |
| bf00 | 6c 64 65 72 2d 62 75 66 66 65 72 2d 6e 61 6d 65 20 22 2a 74 72 65 65 2d 73 69 74 74 65 72 2d 71 | lder-buffer-name."*tree-sitter-q |
| bf20 | 75 65 72 79 2d 62 75 69 6c 64 65 72 2a 22 0a 20 20 22 4e 61 6d 65 20 6f 66 20 74 68 65 20 62 75 | uery-builder*"..."Name.of.the.bu |
| bf40 | 69 6c 64 65 72 20 62 75 66 66 65 72 2e 22 29 0a 0a 28 64 65 66 76 61 72 20 74 72 65 65 2d 73 69 | ilder.buffer.")..(defvar.tree-si |
| bf60 | 74 74 65 72 2d 71 75 65 72 79 2d 2d 74 61 72 67 65 74 2d 62 75 66 66 65 72 20 6e 69 6c 0a 20 20 | tter-query--target-buffer.nil... |
| bf80 | 22 54 61 72 67 65 74 20 62 75 66 66 65 72 20 74 6f 20 72 75 6e 20 74 68 65 20 71 75 65 72 69 65 | "Target.buffer.to.run.the.querie |
| bfa0 | 73 20 61 67 61 69 6e 73 74 2e 22 29 0a 0a 28 64 65 66 66 61 63 65 20 74 72 65 65 2d 73 69 74 74 | s.against.")..(defface.tree-sitt |
| bfc0 | 65 72 2d 71 75 65 72 79 2d 6d 61 74 63 68 0a 20 20 27 28 28 74 20 3a 66 6f 72 65 67 72 6f 75 6e | er-query-match...'((t.:foregroun |
| bfe0 | 64 20 22 23 30 30 30 22 0a 20 20 20 20 20 20 20 3a 62 61 63 6b 67 72 6f 75 6e 64 20 22 23 30 30 | d."#000"........:background."#00 |
| c000 | 62 66 66 66 22 0a 20 20 20 20 20 20 20 3a 77 65 69 67 68 74 20 62 6f 6c 64 29 29 0a 20 20 22 46 | bfff"........:weight.bold))..."F |
| c020 | 61 63 65 20 66 6f 72 20 68 69 67 68 6c 69 67 68 74 20 63 61 70 74 75 72 65 73 20 69 6e 20 6d 61 | ace.for.highlight.captures.in.ma |
| c040 | 74 63 68 65 73 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 71 75 | tches."...:group.'tree-sitter-qu |
| c060 | 65 72 79 29 0a 0a 28 64 65 66 75 6e 20 74 72 65 65 2d 73 69 74 74 65 72 2d 2d 65 63 68 6f 20 28 | ery)..(defun.tree-sitter--echo.( |
| c080 | 26 72 65 73 74 20 61 72 67 73 29 0a 20 20 22 44 69 73 70 6c 61 79 20 61 20 74 72 61 6e 73 69 65 | &rest.args)..."Display.a.transie |
| c0a0 | 6e 74 20 6d 65 73 73 61 67 65 2c 20 77 69 74 68 6f 75 74 20 6c 6f 67 67 69 6e 67 20 69 74 20 69 | nt.message,.without.logging.it.i |
| c0c0 | 6e 20 74 68 65 20 60 2a 4d 65 73 73 61 67 65 73 2a 27 20 62 75 66 66 65 72 2e 22 0a 20 20 28 6c | n.the.`*Messages*'.buffer."...(l |
| c0e0 | 65 74 20 28 6d 65 73 73 61 67 65 2d 6c 6f 67 2d 6d 61 78 29 0a 20 20 20 20 28 61 70 70 6c 79 20 | et.(message-log-max).....(apply. |
| c100 | 23 27 6d 65 73 73 61 67 65 20 61 72 67 73 29 29 29 0a 0a 28 64 65 66 75 6e 20 74 72 65 65 2d 73 | #'message.args)))..(defun.tree-s |
| c120 | 69 74 74 65 72 2d 71 75 65 72 79 2d 2d 68 69 67 68 6c 69 67 68 74 2d 63 61 70 74 75 72 65 20 28 | itter-query--highlight-capture.( |
| c140 | 63 61 70 74 75 72 65 29 0a 20 20 22 48 69 67 68 6c 69 67 68 74 20 43 41 50 54 55 52 45 20 69 6e | capture)..."Highlight.CAPTURE.in |
| c160 | 20 74 68 65 20 63 75 72 72 65 6e 74 20 62 75 66 66 65 72 2e 22 0a 20 20 28 70 63 61 73 65 2d 6c | .the.current.buffer."...(pcase-l |
| c180 | 65 74 2a 20 28 28 60 28 2c 63 61 70 74 75 72 65 2d 73 79 6d 62 6f 6c 20 2e 20 2c 63 61 70 74 75 | et*.((`(,capture-symbol...,captu |
| c1a0 | 72 65 64 2d 6e 6f 64 65 29 20 63 61 70 74 75 72 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | red-node).capture).............. |
| c1c0 | 20 20 28 60 28 2c 6e 6f 64 65 2d 73 74 61 72 74 20 2e 20 2c 6e 6f 64 65 2d 65 6e 64 29 20 28 74 | ..(`(,node-start...,node-end).(t |
| c1e0 | 73 63 2d 6e 6f 64 65 2d 70 6f 73 69 74 69 6f 6e 2d 72 61 6e 67 65 20 63 61 70 74 75 72 65 64 2d | sc-node-position-range.captured- |
| c200 | 6e 6f 64 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 76 65 72 6c 61 79 20 28 | node))................(overlay.( |
| c220 | 6d 61 6b 65 2d 6f 76 65 72 6c 61 79 20 6e 6f 64 65 2d 73 74 61 72 74 20 6e 6f 64 65 2d 65 6e 64 | make-overlay.node-start.node-end |
| c240 | 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 63 61 70 74 75 72 65 2d 6e 61 6d 65 20 | ))................(capture-name. |
| c260 | 28 73 79 6d 62 6f 6c 2d 6e 61 6d 65 20 63 61 70 74 75 72 65 2d 73 79 6d 62 6f 6c 29 29 29 0a 20 | (symbol-name.capture-symbol))).. |
| c280 | 20 20 20 3b 3b 20 45 6e 73 75 72 65 20 74 68 65 20 6f 76 65 72 6c 61 79 20 69 73 20 64 65 6c 65 | ...;;.Ensure.the.overlay.is.dele |
| c2a0 | 74 65 64 20 77 68 65 6e 20 69 74 20 62 65 63 6f 6d 65 73 20 65 6d 70 74 79 2e 0a 20 20 20 20 28 | ted.when.it.becomes.empty......( |
| c2c0 | 6f 76 65 72 6c 61 79 2d 70 75 74 20 6f 76 65 72 6c 61 79 20 27 65 76 61 70 6f 72 61 74 65 20 74 | overlay-put.overlay.'evaporate.t |
| c2e0 | 29 0a 20 20 20 20 28 6f 76 65 72 6c 61 79 2d 70 75 74 20 6f 76 65 72 6c 61 79 20 27 66 61 63 65 | ).....(overlay-put.overlay.'face |
| c300 | 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 71 75 65 72 79 2d 6d 61 74 63 68 29 0a 20 20 20 20 3b | .'tree-sitter-query-match).....; |
| c320 | 3b 20 55 73 65 20 74 68 65 20 63 61 70 74 75 72 65 27 73 20 6e 61 6d 65 20 61 73 20 74 68 65 20 | ;.Use.the.capture's.name.as.the. |
| c340 | 6d 6f 75 73 65 6f 76 65 72 20 74 6f 6f 6c 74 69 70 2e 0a 20 20 20 20 28 75 6e 6c 65 73 73 20 28 | mouseover.tooltip......(unless.( |
| c360 | 73 74 72 69 6e 67 3d 20 63 61 70 74 75 72 65 2d 6e 61 6d 65 20 22 22 29 0a 20 20 20 20 20 20 28 | string=.capture-name."").......( |
| c380 | 6f 76 65 72 6c 61 79 2d 70 75 74 20 6f 76 65 72 6c 61 79 20 27 68 65 6c 70 2d 65 63 68 6f 20 63 | overlay-put.overlay.'help-echo.c |
| c3a0 | 61 70 74 75 72 65 2d 6e 61 6d 65 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 74 72 65 65 2d 73 69 74 | apture-name))))..(defun.tree-sit |
| c3c0 | 74 65 72 2d 71 75 65 72 79 2d 2d 65 76 61 6c 2d 71 75 65 72 79 20 28 70 61 74 74 65 72 6e 73 29 | ter-query--eval-query.(patterns) |
| c3e0 | 0a 20 20 22 45 76 61 6c 75 61 74 65 20 71 75 65 72 79 20 50 41 54 54 45 52 4e 53 20 61 67 61 69 | ..."Evaluate.query.PATTERNS.agai |
| c400 | 6e 73 74 20 74 68 65 20 74 61 72 67 65 74 20 62 75 66 66 65 72 2e 22 0a 20 20 28 77 69 74 68 2d | nst.the.target.buffer."...(with- |
| c420 | 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 74 72 65 65 2d 73 69 74 74 65 72 2d 71 75 65 72 79 | current-buffer.tree-sitter-query |
| c440 | 2d 2d 74 61 72 67 65 74 2d 62 75 66 66 65 72 0a 20 20 20 20 28 74 73 63 2d 2d 77 69 74 68 6f 75 | --target-buffer.....(tsc--withou |
| c460 | 74 2d 72 65 73 74 72 69 63 74 69 6f 6e 0a 20 20 20 20 20 20 28 72 65 6d 6f 76 65 2d 6f 76 65 72 | t-restriction.......(remove-over |
| c480 | 6c 61 79 73 29 0a 20 20 20 20 20 20 28 77 68 65 6e 2d 6c 65 74 2a 0a 20 20 20 20 20 20 20 20 20 | lays).......(when-let*.......... |
| c4a0 | 20 28 28 71 75 65 72 79 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 63 6f 6e 64 69 74 69 6f 6e 2d | .((query.............(condition- |
| c4c0 | 63 61 73 65 20 65 72 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 74 73 63 2d 6d 61 | case.err.................(tsc-ma |
| c4e0 | 6b 65 2d 71 75 65 72 79 20 74 72 65 65 2d 73 69 74 74 65 72 2d 6c 61 6e 67 75 61 67 65 20 70 61 | ke-query.tree-sitter-language.pa |
| c500 | 74 74 65 72 6e 73 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 74 73 63 2d 71 75 65 72 | tterns)...............((tsc-quer |
| c520 | 79 2d 69 6e 76 61 6c 69 64 2d 6e 6f 64 65 2d 74 79 70 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 | y-invalid-node-type............. |
| c540 | 20 20 20 20 74 73 63 2d 71 75 65 72 79 2d 69 6e 76 61 6c 69 64 2d 66 69 65 6c 64 0a 20 20 20 20 | ....tsc-query-invalid-field..... |
| c560 | 20 20 20 20 20 20 20 20 20 20 20 20 74 73 63 2d 71 75 65 72 79 2d 69 6e 76 61 6c 69 64 2d 63 61 | ............tsc-query-invalid-ca |
| c580 | 70 74 75 72 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 74 72 65 65 2d 73 69 74 74 | pture)................(tree-sitt |
| c5a0 | 65 72 2d 2d 65 63 68 6f 20 22 25 73 3a 20 25 73 22 20 28 67 65 74 20 28 63 61 72 20 65 72 72 29 | er--echo."%s:.%s".(get.(car.err) |
| c5c0 | 20 27 65 72 72 6f 72 2d 6d 65 73 73 61 67 65 29 20 28 63 61 64 72 20 65 72 72 29 29 0a 20 20 20 | .'error-message).(cadr.err)).... |
| c5e0 | 20 20 20 20 20 20 20 20 20 20 20 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 | ............nil)...............( |
| c600 | 74 73 63 2d 71 75 65 72 79 2d 69 6e 76 61 6c 69 64 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | tsc-query-invalid............... |
| c620 | 20 28 74 72 65 65 2d 73 69 74 74 65 72 2d 2d 65 63 68 6f 20 22 25 73 22 20 28 67 65 74 20 28 63 | .(tree-sitter--echo."%s".(get.(c |
| c640 | 61 72 20 65 72 72 29 20 27 65 72 72 6f 72 2d 6d 65 73 73 61 67 65 29 29 0a 20 20 20 20 20 20 20 | ar.err).'error-message))........ |
| c660 | 20 20 20 20 20 20 20 20 6e 69 6c 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 72 6f 6f 74 2d | ........nil)))............(root- |
| c680 | 6e 6f 64 65 20 28 74 73 63 2d 72 6f 6f 74 2d 6e 6f 64 65 20 74 72 65 65 2d 73 69 74 74 65 72 2d | node.(tsc-root-node.tree-sitter- |
| c6a0 | 74 72 65 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 63 61 70 74 75 72 65 73 20 28 74 73 63 | tree))............(captures.(tsc |
| c6c0 | 2d 71 75 65 72 79 2d 63 61 70 74 75 72 65 73 20 71 75 65 72 79 20 72 6f 6f 74 2d 6e 6f 64 65 20 | -query-captures.query.root-node. |
| c6e0 | 23 27 74 73 63 2d 2d 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 | #'tsc--buffer-substring-no-prope |
| c700 | 72 74 69 65 73 29 29 29 0a 20 20 20 20 20 20 20 20 28 69 66 20 28 3d 20 28 6c 65 6e 67 74 68 20 | rties))).........(if.(=.(length. |
| c720 | 63 61 70 74 75 72 65 73 29 20 30 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 74 72 65 65 2d 73 | captures).0).............(tree-s |
| c740 | 69 74 74 65 72 2d 2d 65 63 68 6f 20 22 4e 6f 20 63 61 70 74 75 72 65 73 20 66 6f 75 6e 64 22 29 | itter--echo."No.captures.found") |
| c760 | 0a 20 20 20 20 20 20 20 20 20 20 28 6d 61 70 63 20 23 27 74 72 65 65 2d 73 69 74 74 65 72 2d 71 | ...........(mapc.#'tree-sitter-q |
| c780 | 75 65 72 79 2d 2d 68 69 67 68 6c 69 67 68 74 2d 63 61 70 74 75 72 65 20 63 61 70 74 75 72 65 73 | uery--highlight-capture.captures |
| c7a0 | 29 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 74 72 65 65 2d 73 69 74 74 65 72 2d 71 75 65 72 79 | ))))))..(defun.tree-sitter-query |
| c7c0 | 2d 2d 61 66 74 65 72 2d 63 68 61 6e 67 65 20 28 26 72 65 73 74 20 5f 61 72 67 73 29 0a 20 20 22 | --after-change.(&rest._args)..." |
| c7e0 | 52 75 6e 20 71 75 65 72 79 20 70 61 74 74 65 72 6e 73 20 61 67 61 69 6e 73 74 20 74 68 65 20 74 | Run.query.patterns.against.the.t |
| c800 | 61 72 67 65 74 20 62 75 66 66 65 72 20 61 6e 64 20 75 70 64 61 74 65 20 68 69 67 68 6c 69 67 68 | arget.buffer.and.update.highligh |
| c820 | 74 65 64 20 74 65 78 74 73 2e 22 0a 20 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 | ted.texts."...(with-current-buff |
| c840 | 65 72 20 28 67 65 74 2d 62 75 66 66 65 72 20 74 72 65 65 2d 73 69 74 74 65 72 2d 71 75 65 72 79 | er.(get-buffer.tree-sitter-query |
| c860 | 2d 62 75 69 6c 64 65 72 2d 62 75 66 66 65 72 2d 6e 61 6d 65 29 0a 20 20 20 20 28 6c 65 74 20 28 | -builder-buffer-name).....(let.( |
| c880 | 28 70 61 74 74 65 72 6e 73 20 28 62 75 66 66 65 72 2d 73 74 72 69 6e 67 29 29 29 0a 20 20 20 20 | (patterns.(buffer-string)))..... |
| c8a0 | 20 20 28 77 69 74 68 2d 64 65 6d 6f 74 65 64 2d 65 72 72 6f 72 73 20 22 45 72 72 6f 72 3a 20 25 | ..(with-demoted-errors."Error:.% |
| c8c0 | 53 22 0a 20 20 20 20 20 20 20 20 28 74 72 65 65 2d 73 69 74 74 65 72 2d 71 75 65 72 79 2d 2d 65 | S".........(tree-sitter-query--e |
| c8e0 | 76 61 6c 2d 71 75 65 72 79 20 70 61 74 74 65 72 6e 73 29 29 29 29 29 0a 0a 28 64 65 66 75 6e 20 | val-query.patterns)))))..(defun. |
| c900 | 74 72 65 65 2d 73 69 74 74 65 72 2d 71 75 65 72 79 2d 2d 63 6c 65 61 6e 2d 74 61 72 67 65 74 2d | tree-sitter-query--clean-target- |
| c920 | 62 75 66 66 65 72 20 28 29 0a 20 20 22 52 65 6d 6f 76 65 20 61 6c 6c 20 6f 76 65 72 6c 61 79 73 | buffer.()..."Remove.all.overlays |
| c940 | 20 66 72 6f 6d 20 74 68 65 20 74 61 72 67 65 74 20 62 75 66 66 65 72 2e 22 0a 20 20 28 77 69 74 | .from.the.target.buffer."...(wit |
| c960 | 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 74 72 65 65 2d 73 69 74 74 65 72 2d 71 75 65 | h-current-buffer.tree-sitter-que |
| c980 | 72 79 2d 2d 74 61 72 67 65 74 2d 62 75 66 66 65 72 0a 20 20 20 20 28 72 65 6d 6f 76 65 2d 6f 76 | ry--target-buffer.....(remove-ov |
| c9a0 | 65 72 6c 61 79 73 29 29 0a 20 20 28 73 65 74 71 20 74 72 65 65 2d 73 69 74 74 65 72 2d 71 75 65 | erlays))...(setq.tree-sitter-que |
| c9c0 | 72 79 2d 2d 74 61 72 67 65 74 2d 62 75 66 66 65 72 20 6e 69 6c 29 29 0a 0a 3b 3b 3b 23 23 23 61 | ry--target-buffer.nil))..;;;###a |
| c9e0 | 75 74 6f 6c 6f 61 64 0a 28 64 65 66 75 6e 20 74 72 65 65 2d 73 69 74 74 65 72 2d 71 75 65 72 79 | utoload.(defun.tree-sitter-query |
| ca00 | 2d 62 75 69 6c 64 65 72 20 28 29 0a 20 20 22 50 72 6f 76 69 64 65 20 6d 65 61 6e 73 20 66 6f 72 | -builder.()..."Provide.means.for |
| ca20 | 20 64 65 76 65 6c 6f 70 65 72 73 20 74 6f 20 77 72 69 74 65 20 61 6e 64 20 74 65 73 74 20 74 72 | .developers.to.write.and.test.tr |
| ca40 | 65 65 2d 73 69 74 74 65 72 20 71 75 65 72 69 65 73 2e 0a 0a 54 68 65 20 62 75 66 66 65 72 20 6f | ee-sitter.queries...The.buffer.o |
| ca60 | 6e 20 66 6f 63 75 73 20 77 68 65 6e 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 69 73 20 63 61 6c 6c | n.focus.when.the.command.is.call |
| ca80 | 65 64 20 69 73 20 73 65 74 20 61 73 20 74 68 65 20 74 61 72 67 65 74 20 62 75 66 66 65 72 2e 22 | ed.is.set.as.the.target.buffer." |
| caa0 | 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 74 61 72 67 65 | ...(interactive)...(let*.((targe |
| cac0 | 74 2d 62 75 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 | t-buffer.(current-buffer))...... |
| cae0 | 20 20 20 20 28 62 75 69 6c 64 65 72 2d 62 75 66 66 65 72 20 28 67 65 74 2d 62 75 66 66 65 72 2d | ....(builder-buffer.(get-buffer- |
| cb00 | 63 72 65 61 74 65 20 74 72 65 65 2d 73 69 74 74 65 72 2d 71 75 65 72 79 2d 62 75 69 6c 64 65 72 | create.tree-sitter-query-builder |
| cb20 | 2d 62 75 66 66 65 72 2d 6e 61 6d 65 29 29 0a 20 20 20 20 20 20 20 20 20 28 62 75 69 6c 64 65 72 | -buffer-name))..........(builder |
| cb40 | 2d 77 69 6e 64 6f 77 2d 69 73 2d 76 69 73 69 62 6c 65 20 28 67 65 74 2d 62 75 66 66 65 72 2d 77 | -window-is-visible.(get-buffer-w |
| cb60 | 69 6e 64 6f 77 20 62 75 69 6c 64 65 72 2d 62 75 66 66 65 72 29 29 29 0a 20 20 20 20 28 77 68 65 | indow.builder-buffer))).....(whe |
| cb80 | 6e 20 28 65 71 20 74 61 72 67 65 74 2d 62 75 66 66 65 72 20 62 75 69 6c 64 65 72 2d 62 75 66 66 | n.(eq.target-buffer.builder-buff |
| cba0 | 65 72 29 0a 20 20 20 20 20 20 28 75 73 65 72 2d 65 72 72 6f 72 20 22 54 68 69 73 20 62 75 66 66 | er).......(user-error."This.buff |
| cbc0 | 65 72 20 63 61 6e 6e 6f 74 20 62 65 20 75 73 65 20 61 73 20 74 61 72 67 65 74 20 62 75 66 66 65 | er.cannot.be.use.as.target.buffe |
| cbe0 | 72 22 29 29 0a 20 20 20 20 28 77 69 74 68 2d 63 75 72 72 65 6e 74 2d 62 75 66 66 65 72 20 74 61 | r")).....(with-current-buffer.ta |
| cc00 | 72 67 65 74 2d 62 75 66 66 65 72 0a 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 74 72 65 65 2d 73 | rget-buffer.......(unless.tree-s |
| cc20 | 69 74 74 65 72 2d 6d 6f 64 65 0a 20 20 20 20 20 20 20 20 28 74 72 65 65 2d 73 69 74 74 65 72 2d | itter-mode.........(tree-sitter- |
| cc40 | 6d 6f 64 65 29 29 0a 20 20 20 20 20 20 3b 3b 20 54 4f 44 4f 3a 20 54 68 65 20 71 75 65 72 79 20 | mode)).......;;.TODO:.The.query. |
| cc60 | 73 68 6f 75 6c 64 20 62 65 20 72 75 6e 20 61 67 61 69 6e 73 74 20 74 68 65 20 63 68 61 6e 67 65 | should.be.run.against.the.change |
| cc80 | 64 20 72 61 6e 67 65 20 6f 6e 6c 79 2e 0a 20 20 20 20 20 20 28 61 64 64 2d 68 6f 6f 6b 20 27 74 | d.range.only........(add-hook.'t |
| cca0 | 72 65 65 2d 73 69 74 74 65 72 2d 61 66 74 65 72 2d 63 68 61 6e 67 65 2d 66 75 6e 63 74 69 6f 6e | ree-sitter-after-change-function |
| ccc0 | 73 20 23 27 74 72 65 65 2d 73 69 74 74 65 72 2d 71 75 65 72 79 2d 2d 61 66 74 65 72 2d 63 68 61 | s.#'tree-sitter-query--after-cha |
| cce0 | 6e 67 65 20 6e 69 6c 20 3a 6c 6f 63 61 6c 29 0a 20 20 20 20 20 20 28 73 65 74 71 20 74 72 65 65 | nge.nil.:local).......(setq.tree |
| cd00 | 2d 73 69 74 74 65 72 2d 71 75 65 72 79 2d 2d 74 61 72 67 65 74 2d 62 75 66 66 65 72 20 74 61 72 | -sitter-query--target-buffer.tar |
| cd20 | 67 65 74 2d 62 75 66 66 65 72 29 29 0a 20 20 20 20 28 75 6e 6c 65 73 73 20 62 75 69 6c 64 65 72 | get-buffer)).....(unless.builder |
| cd40 | 2d 77 69 6e 64 6f 77 2d 69 73 2d 76 69 73 69 62 6c 65 0a 20 20 20 20 20 20 28 75 6e 6c 65 73 73 | -window-is-visible.......(unless |
| cd60 | 20 28 64 69 73 70 6c 61 79 2d 62 75 66 66 65 72 2d 69 6e 2d 73 69 64 65 2d 77 69 6e 64 6f 77 0a | .(display-buffer-in-side-window. |
| cd80 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 75 69 6c 64 65 72 2d 62 75 66 66 65 72 0a 20 20 | ...............builder-buffer... |
| cda0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 27 28 28 73 69 64 65 20 2e 20 62 6f 74 74 6f 6d 29 0a 20 | .............'((side...bottom).. |
| cdc0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 69 6e 64 6f 77 2d 68 65 69 67 68 74 20 2e | ................(window-height.. |
| cde0 | 20 31 30 29 29 29 0a 20 20 20 20 20 20 20 20 28 75 73 65 72 2d 65 72 72 6f 72 20 22 4e 6f 74 20 | .10))).........(user-error."Not. |
| ce00 | 65 6e 6f 75 67 68 20 73 70 61 63 65 20 61 76 61 69 6c 61 62 6c 65 20 66 6f 72 20 71 75 65 72 79 | enough.space.available.for.query |
| ce20 | 20 62 75 69 6c 64 65 72 20 77 69 6e 64 6f 77 22 29 29 29 0a 20 20 20 20 28 77 69 74 68 2d 63 75 | .builder.window"))).....(with-cu |
| ce40 | 72 72 65 6e 74 2d 62 75 66 66 65 72 20 62 75 69 6c 64 65 72 2d 62 75 66 66 65 72 0a 20 20 20 20 | rrent-buffer.builder-buffer..... |
| ce60 | 20 20 28 65 72 61 73 65 2d 62 75 66 66 65 72 29 0a 20 20 20 20 20 20 28 74 72 65 65 2d 73 69 74 | ..(erase-buffer).......(tree-sit |
| ce80 | 74 65 72 2d 71 75 65 72 79 2d 6d 6f 64 65 29 0a 20 20 20 20 20 20 28 61 64 64 2d 68 6f 6f 6b 20 | ter-query-mode).......(add-hook. |
| cea0 | 27 61 66 74 65 72 2d 63 68 61 6e 67 65 2d 66 75 6e 63 74 69 6f 6e 73 20 23 27 74 72 65 65 2d 73 | 'after-change-functions.#'tree-s |
| cec0 | 69 74 74 65 72 2d 71 75 65 72 79 2d 2d 61 66 74 65 72 2d 63 68 61 6e 67 65 20 6e 69 6c 20 3a 6c | itter-query--after-change.nil.:l |
| cee0 | 6f 63 61 6c 29 0a 20 20 20 20 20 20 28 61 64 64 2d 68 6f 6f 6b 20 27 6b 69 6c 6c 2d 62 75 66 66 | ocal).......(add-hook.'kill-buff |
| cf00 | 65 72 2d 68 6f 6f 6b 20 23 27 74 72 65 65 2d 73 69 74 74 65 72 2d 71 75 65 72 79 2d 2d 63 6c 65 | er-hook.#'tree-sitter-query--cle |
| cf20 | 61 6e 2d 74 61 72 67 65 74 2d 62 75 66 66 65 72 20 6e 69 6c 20 3a 6c 6f 63 61 6c 29 29 0a 20 20 | an-target-buffer.nil.:local))... |
| cf40 | 20 20 28 73 65 74 66 20 74 72 65 65 2d 73 69 74 74 65 72 2d 71 75 65 72 79 2d 2d 74 61 72 67 65 | ..(setf.tree-sitter-query--targe |
| cf60 | 74 2d 62 75 66 66 65 72 20 74 61 72 67 65 74 2d 62 75 66 66 65 72 29 0a 20 20 20 20 3b 3b 20 53 | t-buffer.target-buffer).....;;.S |
| cf80 | 77 69 74 63 68 20 66 6f 63 75 73 20 74 6f 20 74 68 65 20 71 75 65 72 79 20 62 75 69 6c 64 65 72 | witch.focus.to.the.query.builder |
| cfa0 | 20 77 69 6e 64 6f 77 2e 0a 20 20 20 20 28 73 65 6c 65 63 74 2d 77 69 6e 64 6f 77 20 28 67 65 74 | .window......(select-window.(get |
| cfc0 | 2d 62 75 66 66 65 72 2d 77 69 6e 64 6f 77 20 62 75 69 6c 64 65 72 2d 62 75 66 66 65 72 29 29 29 | -buffer-window.builder-buffer))) |
| cfe0 | 29 0a 0a 28 70 72 6f 76 69 64 65 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 71 75 65 72 79 29 0a | )..(provide.'tree-sitter-query). |
| d000 | 3b 3b 3b 20 74 72 65 65 2d 73 69 74 74 65 72 2d 71 75 65 72 79 2e 65 6c 20 65 6e 64 73 20 68 65 | ;;;.tree-sitter-query.el.ends.he |
| d020 | 72 65 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | re.............................. |
| d040 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| d060 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| d080 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| d0a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| d0c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| d0e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| d100 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| d120 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| d140 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| d160 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| d180 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| d1a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| d1c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| d1e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| d200 | 74 72 65 65 2d 73 69 74 74 65 72 2d 32 30 32 32 30 32 31 32 2e 31 36 33 32 2f 74 72 65 65 2d 73 | tree-sitter-20220212.1632/tree-s |
| d220 | 69 74 74 65 72 2e 65 6c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | itter.el........................ |
| d240 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| d260 | 00 00 00 00 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 |
| d280 | 30 30 33 31 37 34 35 00 30 30 30 30 30 30 30 30 30 30 30 00 30 31 36 30 35 31 00 20 30 00 00 00 | 0031745.00000000000.016051..0... |
| d2a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| d2c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| d2e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| d300 | 00 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................... |
| d320 | 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................... |
| d340 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| d360 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| d380 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| d3a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| d3c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| d3e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| d400 | 3b 3b 3b 20 74 72 65 65 2d 73 69 74 74 65 72 2e 65 6c 20 2d 2d 2d 20 49 6e 63 72 65 6d 65 6e 74 | ;;;.tree-sitter.el.---.Increment |
| d420 | 61 6c 20 70 61 72 73 69 6e 67 20 73 79 73 74 65 6d 20 2d 2a 2d 20 6c 65 78 69 63 61 6c 2d 62 69 | al.parsing.system.-*-.lexical-bi |
| d440 | 6e 64 69 6e 67 3a 20 74 3b 20 63 6f 64 69 6e 67 3a 20 75 74 66 2d 38 20 2d 2a 2d 0a 0a 3b 3b 20 | nding:.t;.coding:.utf-8.-*-..;;. |
| d460 | 43 6f 70 79 72 69 67 68 74 20 28 43 29 20 32 30 32 31 20 20 54 75 e1 ba a5 6e 2d 41 6e 68 20 4e | Copyright.(C).2021..Tu...n-Anh.N |
| d480 | 67 75 79 e1 bb 85 6e 0a 3b 3b 0a 3b 3b 20 41 75 74 68 6f 72 3a 20 54 75 e1 ba a5 6e 2d 41 6e 68 | guy...n.;;.;;.Author:.Tu...n-Anh |
| d4a0 | 20 4e 67 75 79 e1 bb 85 6e 20 3c 75 62 6f 6c 6f 6e 74 6f 6e 40 67 6d 61 69 6c 2e 63 6f 6d 3e 0a | .Nguy...n.<ubolonton@gmail.com>. |
| d4c0 | 3b 3b 20 4b 65 79 77 6f 72 64 73 3a 20 6c 61 6e 67 75 61 67 65 73 20 74 6f 6f 6c 73 20 70 61 72 | ;;.Keywords:.languages.tools.par |
| d4e0 | 73 65 72 73 20 74 72 65 65 2d 73 69 74 74 65 72 0a 3b 3b 20 48 6f 6d 65 70 61 67 65 3a 20 68 74 | sers.tree-sitter.;;.Homepage:.ht |
| d500 | 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 65 6d 61 63 73 2d 74 72 65 65 2d 73 69 74 74 | tps://github.com/emacs-tree-sitt |
| d520 | 65 72 2f 65 6c 69 73 70 2d 74 72 65 65 2d 73 69 74 74 65 72 0a 3b 3b 20 50 61 63 6b 61 67 65 2d | er/elisp-tree-sitter.;;.Package- |
| d540 | 56 65 72 73 69 6f 6e 3a 20 32 30 32 32 30 32 31 32 2e 31 36 33 32 0a 3b 3b 20 50 61 63 6b 61 67 | Version:.20220212.1632.;;.Packag |
| d560 | 65 2d 52 65 76 69 73 69 6f 6e 3a 20 39 30 39 37 31 37 63 36 38 35 66 66 0a 3b 3b 20 50 61 63 6b | e-Revision:.909717c685ff.;;.Pack |
| d580 | 61 67 65 2d 52 65 71 75 69 72 65 73 3a 20 28 28 65 6d 61 63 73 20 22 32 35 2e 31 22 29 20 28 74 | age-Requires:.((emacs."25.1").(t |
| d5a0 | 73 63 20 22 30 2e 31 38 2e 30 22 29 29 0a 3b 3b 20 53 50 44 58 2d 4c 69 63 65 6e 73 65 2d 49 64 | sc."0.18.0")).;;.SPDX-License-Id |
| d5c0 | 65 6e 74 69 66 69 65 72 3a 20 4d 49 54 0a 0a 3b 3b 3b 20 43 6f 6d 6d 65 6e 74 61 72 79 3a 0a 0a | entifier:.MIT..;;;.Commentary:.. |
| d5e0 | 3b 3b 20 54 68 69 73 20 69 73 20 74 68 65 20 62 61 73 65 20 66 72 61 6d 65 77 6f 72 6b 20 6f 66 | ;;.This.is.the.base.framework.of |
| d600 | 20 74 68 65 20 45 6d 61 63 73 20 62 69 6e 64 69 6e 67 20 66 6f 72 20 54 72 65 65 2d 73 69 74 74 | .the.Emacs.binding.for.Tree-sitt |
| d620 | 65 72 2c 20 61 6e 0a 3b 3b 20 69 6e 63 72 65 6d 65 6e 74 61 6c 20 70 61 72 73 69 6e 67 20 73 79 | er,.an.;;.incremental.parsing.sy |
| d640 | 73 74 65 6d 2e 20 49 74 20 69 6e 63 6c 75 64 65 73 20 61 20 6d 69 6e 6f 72 20 6d 6f 64 65 20 74 | stem..It.includes.a.minor.mode.t |
| d660 | 68 61 74 20 70 72 6f 76 69 64 65 73 20 61 0a 3b 3b 20 62 75 66 66 65 72 2d 6c 6f 63 61 6c 20 73 | hat.provides.a.;;.buffer-local.s |
| d680 | 79 6e 74 61 78 20 74 72 65 65 20 74 68 61 74 20 69 73 20 75 70 64 61 74 65 64 20 6f 6e 20 65 76 | yntax.tree.that.is.updated.on.ev |
| d6a0 | 65 72 79 20 74 65 78 74 20 63 68 61 6e 67 65 2e 20 54 68 69 73 20 6d 69 6e 6f 72 0a 3b 3b 20 6d | ery.text.change..This.minor.;;.m |
| d6c0 | 6f 64 65 20 69 73 20 74 68 65 20 62 61 73 65 20 66 6f 72 20 6f 74 68 65 72 20 6c 69 62 72 61 72 | ode.is.the.base.for.other.librar |
| d6e0 | 69 65 73 20 74 6f 20 62 75 69 6c 64 20 6f 6e 2e 20 41 6e 20 65 78 61 6d 70 6c 65 20 69 73 20 74 | ies.to.build.on..An.example.is.t |
| d700 | 68 65 20 69 6e 63 6c 75 64 65 64 0a 3b 3b 20 63 6f 64 65 2d 68 69 67 68 6c 69 67 68 74 69 6e 67 | he.included.;;.code-highlighting |
| d720 | 20 6d 69 6e 6f 72 20 6d 6f 64 65 2e 0a 0a 3b 3b 3b 20 43 6f 64 65 3a 0a 0a 28 72 65 71 75 69 72 | .minor.mode...;;;.Code:..(requir |
| d740 | 65 20 27 74 73 63 29 0a 28 72 65 71 75 69 72 65 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 6c 6f | e.'tsc).(require.'tree-sitter-lo |
| d760 | 61 64 29 0a 0a 28 64 65 66 67 72 6f 75 70 20 74 72 65 65 2d 73 69 74 74 65 72 20 6e 69 6c 0a 20 | ad)..(defgroup.tree-sitter.nil.. |
| d780 | 20 22 49 6e 63 72 65 6d 65 6e 74 61 6c 20 70 61 72 73 69 6e 67 20 73 79 73 74 65 6d 2e 22 0a 20 | ."Incremental.parsing.system.".. |
| d7a0 | 20 3a 67 72 6f 75 70 20 27 6c 61 6e 67 75 61 67 65 73 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 | .:group.'languages)..(defcustom. |
| d7c0 | 74 72 65 65 2d 73 69 74 74 65 72 2d 61 66 74 65 72 2d 63 68 61 6e 67 65 2d 66 75 6e 63 74 69 6f | tree-sitter-after-change-functio |
| d7e0 | 6e 73 20 6e 69 6c 0a 20 20 22 46 75 6e 63 74 69 6f 6e 73 20 74 6f 20 63 61 6c 6c 20 65 61 63 68 | ns.nil..."Functions.to.call.each |
| d800 | 20 74 69 6d 65 20 60 74 72 65 65 2d 73 69 74 74 65 72 2d 74 72 65 65 27 20 69 73 20 75 70 64 61 | .time.`tree-sitter-tree'.is.upda |
| d820 | 74 65 64 2e 0a 45 61 63 68 20 66 75 6e 63 74 69 6f 6e 20 77 69 6c 6c 20 62 65 20 63 61 6c 6c 65 | ted..Each.function.will.be.calle |
| d840 | 64 20 77 69 74 68 20 61 20 73 69 6e 67 6c 65 20 61 72 67 75 6d 65 6e 74 3a 20 74 68 65 20 4f 4c | d.with.a.single.argument:.the.OL |
| d860 | 44 2d 54 52 45 45 2e 20 54 68 69 73 20 61 72 67 75 6d 65 6e 74 0a 77 69 6c 6c 20 62 65 20 6e 69 | D-TREE..This.argument.will.be.ni |
| d880 | 6c 20 77 68 65 6e 20 74 68 65 20 62 75 66 66 65 72 20 69 73 20 70 61 72 73 65 64 20 66 6f 72 20 | l.when.the.buffer.is.parsed.for. |
| d8a0 | 74 68 65 20 66 69 72 73 74 20 74 69 6d 65 2e 0a 0a 46 6f 72 20 69 6e 69 74 69 61 6c 69 7a 61 74 | the.first.time...For.initializat |
| d8c0 | 69 6f 6e 20 6c 6f 67 69 63 20 74 68 61 74 20 73 68 6f 75 6c 64 20 62 65 20 72 75 6e 20 6f 6e 6c | ion.logic.that.should.be.run.onl |
| d8e0 | 79 20 6f 6e 63 65 2c 20 75 73 65 0a 60 74 72 65 65 2d 73 69 74 74 65 72 2d 61 66 74 65 72 2d 66 | y.once,.use.`tree-sitter-after-f |
| d900 | 69 72 73 74 2d 70 61 72 73 65 2d 68 6f 6f 6b 27 20 69 6e 73 74 65 61 64 2e 22 0a 20 20 3a 74 79 | irst-parse-hook'.instead."...:ty |
| d920 | 70 65 20 27 68 6f 6f 6b 0a 20 20 3a 67 72 6f 75 70 20 27 74 72 65 65 2d 73 69 74 74 65 72 29 0a | pe.'hook...:group.'tree-sitter). |
| d940 | 0a 28 64 65 66 63 75 73 74 6f 6d 20 74 72 65 65 2d 73 69 74 74 65 72 2d 61 66 74 65 72 2d 66 69 | .(defcustom.tree-sitter-after-fi |
| d960 | 72 73 74 2d 70 61 72 73 65 2d 68 6f 6f 6b 20 6e 69 6c 0a 20 20 22 46 75 6e 63 74 69 6f 6e 73 20 | rst-parse-hook.nil..."Functions. |
| d980 | 74 6f 20 63 61 6c 6c 20 61 66 74 65 72 20 74 68 65 20 62 75 66 66 65 72 20 69 73 20 70 61 72 73 | to.call.after.the.buffer.is.pars |
| d9a0 | 65 64 20 66 6f 72 20 74 68 65 20 66 69 72 73 74 20 74 69 6d 65 2e 0a 54 68 69 73 20 68 6f 6f 6b | ed.for.the.first.time..This.hook |
| d9c0 | 20 73 68 6f 75 6c 64 20 62 65 20 75 73 65 64 20 66 6f 72 20 69 6e 69 74 69 61 6c 69 7a 61 74 69 | .should.be.used.for.initializati |
| d9e0 | 6f 6e 20 6c 6f 67 69 63 20 74 68 61 74 20 72 65 71 75 69 72 65 73 20 69 6e 73 70 65 63 74 69 6e | on.logic.that.requires.inspectin |
| da00 | 67 20 74 68 65 0a 73 79 6e 74 61 78 20 74 72 65 65 2e 20 49 74 20 69 73 20 72 75 6e 20 61 66 74 | g.the.syntax.tree..It.is.run.aft |
| da20 | 65 72 20 60 74 72 65 65 2d 73 69 74 74 65 72 2d 6d 6f 64 65 2d 68 6f 6f 6b 27 2e 22 0a 20 20 3a | er.`tree-sitter-mode-hook'."...: |
| da40 | 74 79 70 65 20 27 68 6f 6f 6b 0a 20 20 3a 67 72 6f 75 70 20 27 74 72 65 65 2d 73 69 74 74 65 72 | type.'hook...:group.'tree-sitter |
| da60 | 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 74 72 65 65 2d 73 69 74 74 65 72 2d 61 66 74 65 72 2d | )..(defcustom.tree-sitter-after- |
| da80 | 6f 6e 2d 68 6f 6f 6b 20 6e 69 6c 0a 20 20 22 46 75 6e 63 74 69 6f 6e 73 20 74 6f 20 63 61 6c 6c | on-hook.nil..."Functions.to.call |
| daa0 | 20 61 66 74 65 72 20 65 6e 61 62 6c 69 6e 67 20 60 74 72 65 65 2d 73 69 74 74 65 72 2d 6d 6f 64 | .after.enabling.`tree-sitter-mod |
| dac0 | 65 27 2e 0a 55 73 65 20 74 68 69 73 20 74 6f 20 65 6e 61 62 6c 65 20 6f 74 68 65 72 20 6d 69 6e | e'..Use.this.to.enable.other.min |
| dae0 | 6f 72 20 6d 6f 64 65 73 20 74 68 61 74 20 64 65 70 65 6e 64 73 20 6f 6e 20 74 68 65 20 73 79 6e | or.modes.that.depends.on.the.syn |
| db00 | 74 61 78 20 74 72 65 65 2e 22 0a 20 20 3a 74 79 70 65 20 27 68 6f 6f 6b 0a 20 20 3a 67 72 6f 75 | tax.tree."...:type.'hook...:grou |
| db20 | 70 20 27 74 72 65 65 2d 73 69 74 74 65 72 29 0a 0a 28 64 65 66 63 75 73 74 6f 6d 20 74 72 65 65 | p.'tree-sitter)..(defcustom.tree |
| db40 | 2d 73 69 74 74 65 72 2d 6d 61 6a 6f 72 2d 6d 6f 64 65 2d 6c 61 6e 67 75 61 67 65 2d 61 6c 69 73 | -sitter-major-mode-language-alis |
| db60 | 74 20 6e 69 6c 0a 20 20 22 41 6c 69 73 74 20 74 68 61 74 20 6d 61 70 73 20 6d 61 6a 6f 72 20 6d | t.nil..."Alist.that.maps.major.m |
| db80 | 6f 64 65 73 20 74 6f 20 74 72 65 65 2d 73 69 74 74 65 72 20 6c 61 6e 67 75 61 67 65 20 6e 61 6d | odes.to.tree-sitter.language.nam |
| dba0 | 65 73 2e 22 0a 20 20 3a 67 72 6f 75 70 20 27 74 72 65 65 2d 73 69 74 74 65 72 0a 20 20 3a 74 79 | es."...:group.'tree-sitter...:ty |
| dbc0 | 70 65 20 27 28 61 6c 69 73 74 20 3a 6b 65 79 2d 74 79 70 65 20 73 79 6d 62 6f 6c 0a 20 20 20 20 | pe.'(alist.:key-type.symbol..... |
| dbe0 | 20 20 20 20 20 20 20 20 20 20 20 20 3a 76 61 6c 75 65 2d 74 79 70 65 20 73 79 6d 62 6f 6c 29 29 | ............:value-type.symbol)) |
| dc00 | 0a 0a 28 64 65 66 76 61 72 2d 6c 6f 63 61 6c 20 74 72 65 65 2d 73 69 74 74 65 72 2d 74 72 65 65 | ..(defvar-local.tree-sitter-tree |
| dc20 | 20 6e 69 6c 0a 20 20 22 54 72 65 65 2d 73 69 74 74 65 72 20 73 79 6e 74 61 78 20 74 72 65 65 2e | .nil..."Tree-sitter.syntax.tree. |
| dc40 | 22 29 0a 0a 28 64 65 66 76 61 72 2d 6c 6f 63 61 6c 20 74 72 65 65 2d 73 69 74 74 65 72 2d 70 61 | ")..(defvar-local.tree-sitter-pa |
| dc60 | 72 73 65 72 20 6e 69 6c 0a 20 20 22 54 72 65 65 2d 73 69 74 74 65 72 20 70 61 72 73 65 72 2e 22 | rser.nil..."Tree-sitter.parser." |
| dc80 | 29 0a 0a 28 64 65 66 76 61 72 2d 6c 6f 63 61 6c 20 74 72 65 65 2d 73 69 74 74 65 72 2d 6c 61 6e | )..(defvar-local.tree-sitter-lan |
| dca0 | 67 75 61 67 65 20 6e 69 6c 0a 20 20 22 54 72 65 65 2d 73 69 74 74 65 72 20 6c 61 6e 67 75 61 67 | guage.nil..."Tree-sitter.languag |
| dcc0 | 65 2e 22 29 0a 0a 28 64 65 66 76 61 72 2d 6c 6f 63 61 6c 20 74 72 65 65 2d 73 69 74 74 65 72 2d | e.")..(defvar-local.tree-sitter- |
| dce0 | 2d 74 65 78 74 2d 62 65 66 6f 72 65 2d 63 68 61 6e 67 65 20 6e 69 6c 29 0a 0a 28 64 65 66 76 61 | -text-before-change.nil)..(defva |
| dd00 | 72 2d 6c 6f 63 61 6c 20 74 72 65 65 2d 73 69 74 74 65 72 2d 2d 62 65 67 2d 62 65 66 6f 72 65 2d | r-local.tree-sitter--beg-before- |
| dd20 | 63 68 61 6e 67 65 20 6e 69 6c 29 0a 0a 28 64 65 66 75 6e 20 74 72 65 65 2d 73 69 74 74 65 72 2d | change.nil)..(defun.tree-sitter- |
| dd40 | 2d 62 65 66 6f 72 65 2d 63 68 61 6e 67 65 20 28 62 65 67 20 6f 6c 64 2d 65 6e 64 29 0a 20 20 22 | -before-change.(beg.old-end)..." |
| dd60 | 55 70 64 61 74 65 20 72 65 6c 65 76 61 6e 74 20 65 64 69 74 69 6e 67 20 73 74 61 74 65 73 2e 20 | Update.relevant.editing.states.. |
| dd80 | 49 6e 73 74 61 6c 6c 65 64 20 6f 6e 20 60 62 65 66 6f 72 65 2d 63 68 61 6e 67 65 2d 66 75 6e 63 | Installed.on.`before-change-func |
| dda0 | 74 69 6f 6e 73 27 2e 0a 42 45 47 20 61 6e 64 20 4f 4c 44 2d 45 4e 44 20 61 72 65 20 74 68 65 20 | tions'..BEG.and.OLD-END.are.the. |
| ddc0 | 62 65 67 69 6e 20 61 6e 64 20 65 6e 64 20 70 6f 73 69 74 69 6f 6e 73 20 6f 66 20 74 68 65 20 74 | begin.and.end.positions.of.the.t |
| dde0 | 65 78 74 20 74 6f 20 62 65 20 63 68 61 6e 67 65 64 2e 22 0a 20 20 28 73 65 74 71 20 74 72 65 65 | ext.to.be.changed."...(setq.tree |
| de00 | 2d 73 69 74 74 65 72 2d 2d 62 65 67 2d 62 65 66 6f 72 65 2d 63 68 61 6e 67 65 20 62 65 67 29 0a | -sitter--beg-before-change.beg). |
| de20 | 20 20 28 74 73 63 2d 2d 77 69 74 68 6f 75 74 2d 72 65 73 74 72 69 63 74 69 6f 6e 0a 20 20 20 20 | ..(tsc--without-restriction..... |
| de40 | 3b 3b 20 54 4f 44 4f 3a 20 46 61 6c 6c 62 61 63 6b 20 74 6f 20 61 20 66 75 6c 6c 20 70 61 72 73 | ;;.TODO:.Fallback.to.a.full.pars |
| de60 | 65 20 69 66 20 74 68 69 73 20 72 65 67 69 6f 6e 20 69 73 20 74 6f 6f 20 62 69 67 2e 0a 20 20 20 | e.if.this.region.is.too.big..... |
| de80 | 20 28 73 65 74 71 20 74 72 65 65 2d 73 69 74 74 65 72 2d 2d 74 65 78 74 2d 62 65 66 6f 72 65 2d | .(setq.tree-sitter--text-before- |
| dea0 | 63 68 61 6e 67 65 0a 20 20 20 20 20 20 20 20 20 20 28 77 68 65 6e 20 28 3e 20 6f 6c 64 2d 65 6e | change...........(when.(>.old-en |
| dec0 | 64 20 62 65 67 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 62 75 66 66 65 72 2d 73 75 62 73 74 | d.beg).............(buffer-subst |
| dee0 | 72 69 6e 67 2d 6e 6f 2d 70 72 6f 70 65 72 74 69 65 73 20 62 65 67 20 6f 6c 64 2d 65 6e 64 29 29 | ring-no-properties.beg.old-end)) |
| df00 | 29 29 29 0a 0a 3b 3b 3b 20 54 4f 44 4f 3a 20 48 6f 77 20 64 6f 20 77 65 20 62 61 74 63 68 20 2a | )))..;;;.TODO:.How.do.we.batch.* |
| df20 | 61 66 74 65 72 2a 20 68 6f 6f 6b 73 20 74 6f 20 72 65 2d 70 61 72 73 65 20 6f 6e 6c 79 20 6f 6e | after*.hooks.to.re-parse.only.on |
| df40 | 63 65 3f 20 4d 61 79 62 65 20 75 73 69 6e 67 0a 3b 3b 3b 20 60 72 75 6e 2d 77 69 74 68 2d 69 64 | ce?.Maybe.using.;;;.`run-with-id |
| df60 | 6c 65 2d 74 69 6d 65 72 27 20 77 69 74 68 20 30 2d 73 65 63 6f 6e 64 20 74 69 6d 65 6f 75 74 3f | le-timer'.with.0-second.timeout? |
| df80 | 0a 3b 3b 3b 0a 3b 3b 3b 20 58 58 58 3a 20 46 69 67 75 72 65 20 6f 75 74 20 68 6f 77 20 74 6f 20 | .;;;.;;;.XXX:.Figure.out.how.to. |
| dfa0 | 64 65 74 65 63 74 20 77 68 65 74 68 65 72 20 69 74 20 77 61 73 20 61 20 74 65 78 74 2d 70 72 6f | detect.whether.it.was.a.text-pro |
| dfc0 | 70 65 72 74 79 2d 6f 6e 6c 79 20 63 68 61 6e 67 65 2e 0a 3b 3b 3b 20 54 68 65 72 65 27 73 20 6e | perty-only.change..;;;.There's.n |
| dfe0 | 6f 20 70 6f 69 6e 74 20 69 6e 20 72 65 70 61 72 73 69 6e 67 20 69 6e 20 74 68 65 73 65 20 73 69 | o.point.in.reparsing.in.these.si |
| e000 | 74 75 61 74 69 6f 6e 73 2e 0a 28 64 65 66 75 6e 20 74 72 65 65 2d 73 69 74 74 65 72 2d 2d 61 66 | tuations..(defun.tree-sitter--af |
| e020 | 74 65 72 2d 63 68 61 6e 67 65 20 28 62 65 67 20 6e 65 77 2d 65 6e 64 20 6f 6c 64 2d 6c 65 6e 29 | ter-change.(beg.new-end.old-len) |
| e040 | 0a 20 20 22 55 70 64 61 74 65 20 72 65 6c 65 76 61 6e 74 20 65 64 69 74 69 6e 67 20 73 74 61 74 | ..."Update.relevant.editing.stat |
| e060 | 65 73 20 61 6e 64 20 72 65 70 61 72 73 65 20 74 68 65 20 62 75 66 66 65 72 20 28 69 6e 63 72 65 | es.and.reparse.the.buffer.(incre |
| e080 | 6d 65 6e 74 61 6c 6c 79 29 2e 0a 49 6e 73 74 61 6c 6c 65 64 20 6f 6e 20 60 61 66 74 65 72 2d 63 | mentally)..Installed.on.`after-c |
| e0a0 | 68 61 6e 67 65 2d 66 75 6e 63 74 69 6f 6e 73 27 2e 0a 0a 42 45 47 20 69 73 20 74 68 65 20 62 65 | hange-functions'...BEG.is.the.be |
| e0c0 | 67 69 6e 20 70 6f 73 69 74 69 6f 6e 20 6f 66 20 74 68 65 20 63 68 61 6e 67 65 2e 0a 4e 45 57 2d | gin.position.of.the.change..NEW- |
| e0e0 | 45 4e 44 20 69 73 20 74 68 65 20 65 6e 64 20 70 6f 73 69 74 69 6f 6e 20 6f 66 20 74 68 65 20 63 | END.is.the.end.position.of.the.c |
| e100 | 68 61 6e 67 65 64 20 74 65 78 74 2e 0a 4f 4c 44 2d 4c 45 4e 20 69 73 20 74 68 65 20 63 68 61 72 | hanged.text..OLD-LEN.is.the.char |
| e120 | 20 6c 65 6e 67 74 68 20 6f 66 20 74 68 65 20 6f 6c 64 20 74 65 78 74 2e 22 0a 20 20 28 77 68 65 | .length.of.the.old.text."...(whe |
| e140 | 6e 20 74 72 65 65 2d 73 69 74 74 65 72 2d 74 72 65 65 0a 20 20 20 20 28 6c 65 74 20 28 28 62 65 | n.tree-sitter-tree.....(let.((be |
| e160 | 67 3a 62 79 74 65 20 28 70 6f 73 69 74 69 6f 6e 2d 62 79 74 65 73 20 62 65 67 29 29 0a 20 20 20 | g:byte.(position-bytes.beg)).... |
| e180 | 20 20 20 20 20 20 20 28 6e 65 77 2d 65 6e 64 3a 62 79 74 65 20 28 70 6f 73 69 74 69 6f 6e 2d 62 | .......(new-end:byte.(position-b |
| e1a0 | 79 74 65 73 20 6e 65 77 2d 65 6e 64 29 29 0a 20 20 20 20 20 20 20 20 20 20 6f 6c 64 2d 65 6e 64 | ytes.new-end))...........old-end |
| e1c0 | 3a 62 79 74 65 0a 20 20 20 20 20 20 20 20 20 20 62 65 67 3a 70 6f 69 6e 74 20 6f 6c 64 2d 65 6e | :byte...........beg:point.old-en |
| e1e0 | 64 3a 70 6f 69 6e 74 20 6e 65 77 2d 65 6e 64 3a 70 6f 69 6e 74 29 0a 20 20 20 20 20 20 28 74 73 | d:point.new-end:point).......(ts |
| e200 | 63 2d 2d 73 61 76 65 2d 63 6f 6e 74 65 78 74 0a 20 20 20 20 20 20 20 20 28 73 65 74 71 20 62 65 | c--save-context.........(setq.be |
| e220 | 67 3a 70 6f 69 6e 74 20 28 74 73 63 2d 2d 70 6f 69 6e 74 2d 66 72 6f 6d 2d 70 6f 73 69 74 69 6f | g:point.(tsc--point-from-positio |
| e240 | 6e 20 62 65 67 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 65 77 2d 65 6e 64 3a 70 6f 69 | n.beg)...............new-end:poi |
| e260 | 6e 74 20 28 74 73 63 2d 2d 70 6f 69 6e 74 2d 66 72 6f 6d 2d 70 6f 73 69 74 69 6f 6e 20 6e 65 77 | nt.(tsc--point-from-position.new |
| e280 | 2d 65 6e 64 29 29 29 0a 20 20 20 20 20 20 3b 3b 20 43 6f 6d 70 75 74 65 20 74 68 65 20 6f 6c 64 | -end))).......;;.Compute.the.old |
| e2a0 | 20 74 65 78 74 27 73 20 65 6e 64 20 62 79 74 65 20 70 6f 73 69 74 69 6f 6e 2c 20 6c 69 6e 65 20 | .text's.end.byte.position,.line. |
| e2c0 | 6e 75 6d 62 65 72 2c 20 62 79 74 65 20 63 6f 6c 75 6d 6e 2e 0a 20 20 20 20 20 20 3b 3b 0a 20 20 | number,.byte.column........;;... |
| e2e0 | 20 20 20 20 3b 3b 20 54 72 65 65 2d 73 69 74 74 65 72 20 77 6f 72 6b 73 20 77 69 74 68 20 62 79 | ....;;.Tree-sitter.works.with.by |
| e300 | 74 65 20 70 6f 73 69 74 69 6f 6e 73 2c 20 6c 69 6e 65 20 6e 75 6d 62 65 72 73 2c 20 62 79 74 65 | te.positions,.line.numbers,.byte |
| e320 | 20 63 6f 6c 75 6d 6e 73 2e 0a 20 20 20 20 20 20 3b 3b 20 45 6d 61 63 73 20 70 72 69 6d 61 72 69 | .columns........;;.Emacs.primari |
| e340 | 6c 79 20 77 6f 72 6b 73 20 77 69 74 68 20 63 68 61 72 61 63 74 65 72 20 70 6f 73 69 74 69 6f 6e | ly.works.with.character.position |
| e360 | 73 2e 20 43 6f 6e 76 65 72 74 69 6e 67 20 74 68 65 20 6c 61 74 74 65 72 0a 20 20 20 20 20 20 3b | s..Converting.the.latter.......; |
| e380 | 3b 20 74 6f 20 74 68 65 20 66 6f 72 6d 65 72 2c 20 66 6f 72 20 74 68 65 20 65 6e 64 20 6f 66 20 | ;.to.the.former,.for.the.end.of. |
| e3a0 | 74 68 65 20 6f 6c 64 20 74 65 78 74 2c 20 72 65 71 75 69 72 65 73 20 6c 6f 6f 6b 69 6e 67 20 61 | the.old.text,.requires.looking.a |
| e3c0 | 74 20 74 68 65 0a 20 20 20 20 20 20 3b 3b 20 61 63 74 75 61 6c 20 6f 6c 64 20 74 65 78 74 27 73 | t.the.......;;.actual.old.text's |
| e3e0 | 20 63 6f 6e 74 65 6e 74 2e 20 54 72 65 65 2d 73 69 74 74 65 72 20 69 74 73 65 6c 66 20 63 61 6e | .content..Tree-sitter.itself.can |
| e400 | 6e 6f 74 20 64 6f 20 74 68 61 74 2c 20 62 65 63 61 75 73 65 0a 20 20 20 20 20 20 3b 3b 20 69 74 | not.do.that,.because.......;;.it |
| e420 | 20 69 73 20 64 65 73 69 67 6e 65 64 20 74 6f 20 6b 65 65 70 20 74 72 61 63 6b 20 6f 66 20 6f 6e | .is.designed.to.keep.track.of.on |
| e440 | 6c 79 20 74 68 65 20 6e 75 6d 62 65 72 73 2c 20 6e 6f 74 20 61 20 6d 69 72 72 6f 72 20 6f 66 20 | ly.the.numbers,.not.a.mirror.of. |
| e460 | 74 68 65 0a 20 20 20 20 20 20 3b 3b 20 62 75 66 66 65 72 27 73 20 74 65 78 74 2e 20 57 69 74 68 | the.......;;.buffer's.text..With |
| e480 | 6f 75 74 20 72 65 2d 64 65 73 69 67 6e 69 6e 67 20 45 6d 61 63 73 27 73 20 63 68 61 6e 67 65 20 | out.re-designing.Emacs's.change. |
| e4a0 | 74 72 61 63 6b 69 6e 67 20 6d 65 63 68 61 6e 69 73 6d 2c 0a 20 20 20 20 20 20 3b 3b 20 77 65 20 | tracking.mechanism,.......;;.we. |
| e4c0 | 73 74 6f 72 65 20 74 68 65 20 6f 6c 64 20 74 65 78 74 20 74 68 72 6f 75 67 68 20 60 74 72 65 65 | store.the.old.text.through.`tree |
| e4e0 | 2d 73 69 74 74 65 72 2d 2d 62 65 66 6f 72 65 2d 63 68 61 6e 67 65 27 2c 20 61 6e 64 20 69 6e 73 | -sitter--before-change',.and.ins |
| e500 | 70 65 63 74 0a 20 20 20 20 20 20 3b 3b 20 69 74 20 68 65 72 65 2e 20 54 4f 44 4f 20 58 58 58 20 | pect.......;;.it.here..TODO.XXX. |
| e520 | 46 49 58 3a 20 49 6d 70 72 6f 76 65 20 63 68 61 6e 67 65 20 74 72 61 63 6b 69 6e 67 20 69 6e 20 | FIX:.Improve.change.tracking.in. |
| e540 | 45 6d 61 63 73 2e 0a 20 20 20 20 20 20 28 69 66 20 28 3d 20 6f 6c 64 2d 6c 65 6e 20 30 29 0a 20 | Emacs........(if.(=.old-len.0).. |
| e560 | 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 6f 6c 64 2d 65 6e 64 3a 62 79 74 65 20 62 65 67 3a | .........(setq.old-end:byte.beg: |
| e580 | 62 79 74 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f 6c 64 2d 65 6e 64 3a 70 6f 69 | byte.................old-end:poi |
| e5a0 | 6e 74 20 62 65 67 3a 70 6f 69 6e 74 29 0a 20 20 20 20 20 20 20 20 28 6c 65 74 20 28 28 6f 6c 64 | nt.beg:point).........(let.((old |
| e5c0 | 2d 74 65 78 74 20 74 72 65 65 2d 73 69 74 74 65 72 2d 2d 74 65 78 74 2d 62 65 66 6f 72 65 2d 63 | -text.tree-sitter--text-before-c |
| e5e0 | 68 61 6e 67 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 72 65 6c 2d 62 65 67 20 28 31 | hange)...............(rel-beg.(1 |
| e600 | 2b 20 28 2d 20 62 65 67 20 74 72 65 65 2d 73 69 74 74 65 72 2d 2d 62 65 67 2d 62 65 66 6f 72 65 | +.(-.beg.tree-sitter--beg-before |
| e620 | 2d 63 68 61 6e 67 65 29 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 3b 3b 20 46 49 58 3a 20 44 6f | -change))))...........;;.FIX:.Do |
| e640 | 6e 27 74 20 61 73 73 75 6d 65 20 62 65 66 6f 72 65 2d 63 68 61 6e 67 65 27 73 20 62 65 67 20 61 | n't.assume.before-change's.beg.a |
| e660 | 6e 64 20 61 66 74 65 72 2d 63 68 61 6e 67 65 27 73 20 62 65 67 20 61 72 65 0a 20 20 20 20 20 20 | nd.after-change's.beg.are....... |
| e680 | 20 20 20 20 3b 3b 20 74 68 65 20 73 61 6d 65 2e 0a 20 20 20 20 20 20 20 20 20 20 28 77 69 74 68 | ....;;.the.same............(with |
| e6a0 | 2d 74 65 6d 70 2d 62 75 66 66 65 72 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 69 6e 73 65 72 74 | -temp-buffer.............(insert |
| e6c0 | 20 6f 6c 64 2d 74 65 78 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 70 63 61 73 65 2d 6c 65 | .old-text).............(pcase-le |
| e6e0 | 74 2a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 28 72 65 6c 2d 6f 6c 64 2d 65 6e 64 | t*.................((rel-old-end |
| e700 | 20 28 2b 20 72 65 6c 2d 62 65 67 20 6f 6c 64 2d 6c 65 6e 29 29 0a 20 20 20 20 20 20 20 20 20 20 | .(+.rel-beg.old-len))........... |
| e720 | 20 20 20 20 20 20 20 28 6f 6c 64 2d 6c 65 6e 3a 62 79 74 65 20 28 2d 20 28 70 6f 73 69 74 69 6f | .......(old-len:byte.(-.(positio |
| e740 | 6e 2d 62 79 74 65 73 20 72 65 6c 2d 6f 6c 64 2d 65 6e 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 | n-bytes.rel-old-end)............ |
| e760 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 6f 73 69 74 69 6f 6e | .......................(position |
| e780 | 2d 62 79 74 65 73 20 72 65 6c 2d 62 65 67 29 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | -bytes.rel-beg)))............... |
| e7a0 | 20 20 20 28 60 28 2c 62 65 67 3a 6c 69 6e 75 6d 20 2e 20 2c 62 65 67 3a 62 79 74 65 63 6f 6c 29 | ...(`(,beg:linum...,beg:bytecol) |
| e7c0 | 20 62 65 67 3a 70 6f 69 6e 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 72 65 | .beg:point)..................(re |
| e7e0 | 6c 2d 62 65 67 3a 6c 69 6e 75 6d 20 28 6c 69 6e 65 2d 6e 75 6d 62 65 72 2d 61 74 2d 70 6f 73 20 | l-beg:linum.(line-number-at-pos. |
| e800 | 72 65 6c 2d 62 65 67 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 60 28 2c 72 | rel-beg))..................(`(,r |
| e820 | 65 6c 2d 6f 6c 64 2d 65 6e 64 3a 6c 69 6e 75 6d 20 2e 20 2c 72 65 6c 2d 6f 6c 64 2d 65 6e 64 3a | el-old-end:linum...,rel-old-end: |
| e840 | 62 79 74 65 63 6f 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 74 73 63 2d | bytecol)...................(tsc- |
| e860 | 2d 70 6f 69 6e 74 2d 66 72 6f 6d 2d 70 6f 73 69 74 69 6f 6e 20 72 65 6c 2d 6f 6c 64 2d 65 6e 64 | -point-from-position.rel-old-end |
| e880 | 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 6c 64 2d 64 69 66 66 3a 6c 69 | ))..................(old-diff:li |
| e8a0 | 6e 75 6d 20 28 2d 20 72 65 6c 2d 6f 6c 64 2d 65 6e 64 3a 6c 69 6e 75 6d 20 72 65 6c 2d 62 65 67 | num.(-.rel-old-end:linum.rel-beg |
| e8c0 | 3a 6c 69 6e 75 6d 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 6c 64 2d 65 | :linum))..................(old-e |
| e8e0 | 6e 64 3a 6c 69 6e 75 6d 20 28 2b 20 62 65 67 3a 6c 69 6e 75 6d 20 6f 6c 64 2d 64 69 66 66 3a 6c | nd:linum.(+.beg:linum.old-diff:l |
| e900 | 69 6e 75 6d 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6f 6c 64 2d 65 6e 64 | inum))..................(old-end |
| e920 | 3a 62 79 74 65 63 6f 6c 20 28 69 66 20 28 3e 20 6f 6c 64 2d 64 69 66 66 3a 6c 69 6e 75 6d 20 30 | :bytecol.(if.(>.old-diff:linum.0 |
| e940 | 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 | )............................... |
| e960 | 20 20 20 20 20 20 20 20 72 65 6c 2d 6f 6c 64 2d 65 6e 64 3a 62 79 74 65 63 6f 6c 0a 20 20 20 20 | ........rel-old-end:bytecol..... |
| e980 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................................ |
| e9a0 | 28 2b 20 62 65 67 3a 62 79 74 65 63 6f 6c 20 6f 6c 64 2d 6c 65 6e 3a 62 79 74 65 29 29 29 29 0a | (+.beg:bytecol.old-len:byte)))). |
| e9c0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 6f 6c 64 2d 65 6e 64 3a 62 79 74 65 | ..............(setq.old-end:byte |
| e9e0 | 20 28 2b 20 62 65 67 3a 62 79 74 65 20 6f 6c 64 2d 6c 65 6e 3a 62 79 74 65 29 0a 20 20 20 20 20 | .(+.beg:byte.old-len:byte)...... |
| ea00 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6f 6c 64 2d 65 6e 64 3a 70 6f 69 6e 74 20 60 28 2c | ...............old-end:point.`(, |
| ea20 | 6f 6c 64 2d 65 6e 64 3a 6c 69 6e 75 6d 20 2e 20 2c 6f 6c 64 2d 65 6e 64 3a 62 79 74 65 63 6f 6c | old-end:linum...,old-end:bytecol |
| ea40 | 29 29 29 29 29 29 0a 20 20 20 20 20 20 28 74 73 63 2d 65 64 69 74 2d 74 72 65 65 20 74 72 65 65 | )))))).......(tsc-edit-tree.tree |
| ea60 | 2d 73 69 74 74 65 72 2d 74 72 65 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | -sitter-tree.................... |
| ea80 | 20 20 62 65 67 3a 62 79 74 65 20 6f 6c 64 2d 65 6e 64 3a 62 79 74 65 20 6e 65 77 2d 65 6e 64 3a | ..beg:byte.old-end:byte.new-end: |
| eaa0 | 62 79 74 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 65 67 3a 70 6f | byte......................beg:po |
| eac0 | 69 6e 74 20 6f 6c 64 2d 65 6e 64 3a 70 6f 69 6e 74 20 6e 65 77 2d 65 6e 64 3a 70 6f 69 6e 74 29 | int.old-end:point.new-end:point) |
| eae0 | 0a 20 20 20 20 20 20 28 74 72 65 65 2d 73 69 74 74 65 72 2d 2d 64 6f 2d 70 61 72 73 65 29 29 29 | .......(tree-sitter--do-parse))) |
| eb00 | 29 0a 0a 28 64 65 66 75 6e 20 74 72 65 65 2d 73 69 74 74 65 72 2d 2d 64 6f 2d 70 61 72 73 65 20 | )..(defun.tree-sitter--do-parse. |
| eb20 | 28 29 0a 20 20 22 50 61 72 73 65 20 74 68 65 20 63 75 72 72 65 6e 74 20 62 75 66 66 65 72 20 61 | ()..."Parse.the.current.buffer.a |
| eb40 | 6e 64 20 75 70 64 61 74 65 20 74 68 65 20 73 79 6e 74 61 78 20 74 72 65 65 2e 22 0a 20 20 28 6c | nd.update.the.syntax.tree."...(l |
| eb60 | 65 74 20 28 28 6f 6c 64 2d 74 72 65 65 20 74 72 65 65 2d 73 69 74 74 65 72 2d 74 72 65 65 29 29 | et.((old-tree.tree-sitter-tree)) |
| eb80 | 0a 20 20 20 20 28 73 65 74 71 20 74 72 65 65 2d 73 69 74 74 65 72 2d 74 72 65 65 0a 20 20 20 20 | .....(setq.tree-sitter-tree..... |
| eba0 | 20 20 20 20 20 20 3b 3b 20 68 74 74 70 73 3a 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 65 6d 61 63 | ......;;.https://github.com/emac |
| ebc0 | 73 2d 74 72 65 65 2d 73 69 74 74 65 72 2f 65 6c 69 73 70 2d 74 72 65 65 2d 73 69 74 74 65 72 2f | s-tree-sitter/elisp-tree-sitter/ |
| ebe0 | 69 73 73 75 65 73 2f 33 0a 20 20 20 20 20 20 20 20 20 20 28 74 73 63 2d 2d 77 69 74 68 6f 75 74 | issues/3...........(tsc--without |
| ec00 | 2d 72 65 73 74 72 69 63 74 69 6f 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 74 73 63 2d 70 61 | -restriction.............(tsc-pa |
| ec20 | 72 73 65 2d 63 68 75 6e 6b 73 20 74 72 65 65 2d 73 69 74 74 65 72 2d 70 61 72 73 65 72 20 23 27 | rse-chunks.tree-sitter-parser.#' |
| ec40 | 74 73 63 2d 2d 62 75 66 66 65 72 2d 69 6e 70 75 74 20 6f 6c 64 2d 74 72 65 65 29 29 29 0a 20 20 | tsc--buffer-input.old-tree)))... |
| ec60 | 20 20 28 72 75 6e 2d 68 6f 6f 6b 2d 77 69 74 68 2d 61 72 67 73 20 27 74 72 65 65 2d 73 69 74 74 | ..(run-hook-with-args.'tree-sitt |
| ec80 | 65 72 2d 61 66 74 65 72 2d 63 68 61 6e 67 65 2d 66 75 6e 63 74 69 6f 6e 73 20 6f 6c 64 2d 74 72 | er-after-change-functions.old-tr |
| eca0 | 65 65 29 29 29 0a 0a 28 64 65 66 75 6e 20 74 72 65 65 2d 73 69 74 74 65 72 2d 2d 73 65 74 75 70 | ee)))..(defun.tree-sitter--setup |
| ecc0 | 20 28 29 0a 20 20 22 45 6e 61 62 6c 65 20 60 74 72 65 65 2d 73 69 74 74 65 72 27 20 69 6e 20 74 | .()..."Enable.`tree-sitter'.in.t |
| ece0 | 68 65 20 63 75 72 72 65 6e 74 20 62 75 66 66 65 72 2e 22 0a 20 20 28 75 6e 6c 65 73 73 20 74 72 | he.current.buffer."...(unless.tr |
| ed00 | 65 65 2d 73 69 74 74 65 72 2d 6c 61 6e 67 75 61 67 65 0a 20 20 20 20 3b 3b 20 44 65 74 65 72 6d | ee-sitter-language.....;;.Determ |
| ed20 | 69 6e 65 20 74 68 65 20 6c 61 6e 67 75 61 67 65 20 73 79 6d 62 6f 6c 20 62 61 73 65 64 20 6f 6e | ine.the.language.symbol.based.on |
| ed40 | 20 60 6d 61 6a 6f 72 2d 6d 6f 64 65 27 20 2e 0a 20 20 20 20 28 6c 65 74 20 28 28 6c 61 6e 67 2d | .`major-mode'.......(let.((lang- |
| ed60 | 73 79 6d 62 6f 6c 20 28 61 6c 69 73 74 2d 67 65 74 20 6d 61 6a 6f 72 2d 6d 6f 64 65 20 74 72 65 | symbol.(alist-get.major-mode.tre |
| ed80 | 65 2d 73 69 74 74 65 72 2d 6d 61 6a 6f 72 2d 6d 6f 64 65 2d 6c 61 6e 67 75 61 67 65 2d 61 6c 69 | e-sitter-major-mode-language-ali |
| eda0 | 73 74 29 29 29 0a 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 6c 61 6e 67 2d 73 79 6d 62 6f 6c 0a | st))).......(unless.lang-symbol. |
| edc0 | 20 20 20 20 20 20 20 20 28 65 72 72 6f 72 20 22 4e 6f 20 6c 61 6e 67 75 61 67 65 20 72 65 67 69 | ........(error."No.language.regi |
| ede0 | 73 74 65 72 65 64 20 66 6f 72 20 6d 61 6a 6f 72 20 6d 6f 64 65 20 60 25 73 27 22 20 6d 61 6a 6f | stered.for.major.mode.`%s'".majo |
| ee00 | 72 2d 6d 6f 64 65 29 29 0a 20 20 20 20 20 20 28 73 65 74 71 20 74 72 65 65 2d 73 69 74 74 65 72 | r-mode)).......(setq.tree-sitter |
| ee20 | 2d 6c 61 6e 67 75 61 67 65 20 28 74 72 65 65 2d 73 69 74 74 65 72 2d 72 65 71 75 69 72 65 20 6c | -language.(tree-sitter-require.l |
| ee40 | 61 6e 67 2d 73 79 6d 62 6f 6c 29 29 29 29 0a 20 20 28 75 6e 6c 65 73 73 20 74 72 65 65 2d 73 69 | ang-symbol))))...(unless.tree-si |
| ee60 | 74 74 65 72 2d 70 61 72 73 65 72 0a 20 20 20 20 28 73 65 74 71 20 74 72 65 65 2d 73 69 74 74 65 | tter-parser.....(setq.tree-sitte |
| ee80 | 72 2d 70 61 72 73 65 72 20 28 74 73 63 2d 6d 61 6b 65 2d 70 61 72 73 65 72 29 29 0a 20 20 20 20 | r-parser.(tsc-make-parser))..... |
| eea0 | 28 74 73 63 2d 73 65 74 2d 6c 61 6e 67 75 61 67 65 20 74 72 65 65 2d 73 69 74 74 65 72 2d 70 61 | (tsc-set-language.tree-sitter-pa |
| eec0 | 72 73 65 72 20 74 72 65 65 2d 73 69 74 74 65 72 2d 6c 61 6e 67 75 61 67 65 29 29 0a 20 20 28 61 | rser.tree-sitter-language))...(a |
| eee0 | 64 64 2d 68 6f 6f 6b 20 27 62 65 66 6f 72 65 2d 63 68 61 6e 67 65 2d 66 75 6e 63 74 69 6f 6e 73 | dd-hook.'before-change-functions |
| ef00 | 20 23 27 74 72 65 65 2d 73 69 74 74 65 72 2d 2d 62 65 66 6f 72 65 2d 63 68 61 6e 67 65 20 3a 61 | .#'tree-sitter--before-change.:a |
| ef20 | 70 70 65 6e 64 20 3a 6c 6f 63 61 6c 29 0a 20 20 28 61 64 64 2d 68 6f 6f 6b 20 27 61 66 74 65 72 | ppend.:local)...(add-hook.'after |
| ef40 | 2d 63 68 61 6e 67 65 2d 66 75 6e 63 74 69 6f 6e 73 20 23 27 74 72 65 65 2d 73 69 74 74 65 72 2d | -change-functions.#'tree-sitter- |
| ef60 | 2d 61 66 74 65 72 2d 63 68 61 6e 67 65 20 3a 61 70 70 65 6e 64 20 3a 6c 6f 63 61 6c 29 29 0a 0a | -after-change.:append.:local)).. |
| ef80 | 28 64 65 66 75 6e 20 74 72 65 65 2d 73 69 74 74 65 72 2d 2d 74 65 61 72 64 6f 77 6e 20 28 29 0a | (defun.tree-sitter--teardown.(). |
| efa0 | 20 20 22 44 69 73 61 62 6c 65 20 60 74 72 65 65 2d 73 69 74 74 65 72 27 20 69 6e 20 74 68 65 20 | .."Disable.`tree-sitter'.in.the. |
| efc0 | 63 75 72 72 65 6e 74 20 62 75 66 66 65 72 2e 22 0a 20 20 28 72 65 6d 6f 76 65 2d 68 6f 6f 6b 20 | current.buffer."...(remove-hook. |
| efe0 | 27 61 66 74 65 72 2d 63 68 61 6e 67 65 2d 66 75 6e 63 74 69 6f 6e 73 20 23 27 74 72 65 65 2d 73 | 'after-change-functions.#'tree-s |
| f000 | 69 74 74 65 72 2d 2d 61 66 74 65 72 2d 63 68 61 6e 67 65 20 3a 6c 6f 63 61 6c 29 0a 20 20 28 72 | itter--after-change.:local)...(r |
| f020 | 65 6d 6f 76 65 2d 68 6f 6f 6b 20 27 62 65 66 6f 72 65 2d 63 68 61 6e 67 65 2d 66 75 6e 63 74 69 | emove-hook.'before-change-functi |
| f040 | 6f 6e 73 20 23 27 74 72 65 65 2d 73 69 74 74 65 72 2d 2d 62 65 66 6f 72 65 2d 63 68 61 6e 67 65 | ons.#'tree-sitter--before-change |
| f060 | 20 3a 6c 6f 63 61 6c 29 0a 20 20 28 73 65 74 71 20 74 72 65 65 2d 73 69 74 74 65 72 2d 74 72 65 | .:local)...(setq.tree-sitter-tre |
| f080 | 65 20 6e 69 6c 0a 20 20 20 20 20 20 20 20 74 72 65 65 2d 73 69 74 74 65 72 2d 70 61 72 73 65 72 | e.nil.........tree-sitter-parser |
| f0a0 | 20 6e 69 6c 0a 20 20 20 20 20 20 20 20 74 72 65 65 2d 73 69 74 74 65 72 2d 6c 61 6e 67 75 61 67 | .nil.........tree-sitter-languag |
| f0c0 | 65 20 6e 69 6c 29 29 0a 0a 28 64 65 66 6d 61 63 72 6f 20 74 72 65 65 2d 73 69 74 74 65 72 2d 2d | e.nil))..(defmacro.tree-sitter-- |
| f0e0 | 65 72 72 6f 72 2d 70 72 6f 74 65 63 74 20 28 62 6f 64 79 2d 66 6f 72 6d 20 26 72 65 73 74 20 65 | error-protect.(body-form.&rest.e |
| f100 | 72 72 6f 72 2d 66 6f 72 6d 73 29 0a 20 20 22 45 78 65 63 75 74 65 20 42 4f 44 59 2d 46 4f 52 4d | rror-forms)..."Execute.BODY-FORM |
| f120 | 20 77 69 74 68 20 45 52 52 4f 52 2d 46 4f 52 4d 53 20 61 73 20 63 6c 65 61 6e 75 70 20 63 6f 64 | .with.ERROR-FORMS.as.cleanup.cod |
| f140 | 65 20 74 68 61 74 20 69 73 20 65 78 65 63 75 74 65 64 20 6f 6e 20 65 72 72 6f 72 2e 0a 55 6e 6c | e.that.is.executed.on.error..Unl |
| f160 | 69 6b 65 20 60 75 6e 77 69 6e 64 2d 70 72 6f 74 65 63 74 27 2c 20 45 52 52 4f 52 2d 46 4f 52 4d | ike.`unwind-protect',.ERROR-FORM |
| f180 | 53 20 69 73 20 6e 6f 74 20 65 78 65 63 75 74 65 64 20 69 66 20 42 4f 44 59 2d 46 4f 52 4d 20 64 | S.is.not.executed.if.BODY-FORM.d |
| f1a0 | 6f 65 73 20 6e 6f 74 0a 73 69 67 6e 61 6c 20 61 6e 20 65 72 72 6f 72 2e 22 0a 20 20 28 64 65 63 | oes.not.signal.an.error."...(dec |
| f1c0 | 6c 61 72 65 20 28 69 6e 64 65 6e 74 20 31 29 29 0a 20 20 60 28 6c 65 74 20 28 28 65 72 72 20 74 | lare.(indent.1))...`(let.((err.t |
| f1e0 | 29 29 0a 20 20 20 20 20 28 75 6e 77 69 6e 64 2d 70 72 6f 74 65 63 74 0a 20 20 20 20 20 20 20 20 | ))......(unwind-protect......... |
| f200 | 20 28 70 72 6f 67 31 20 2c 62 6f 64 79 2d 66 6f 72 6d 0a 20 20 20 20 20 20 20 20 20 20 20 28 73 | .(prog1.,body-form............(s |
| f220 | 65 74 71 20 65 72 72 20 6e 69 6c 29 29 0a 20 20 20 20 20 20 20 28 77 68 65 6e 20 65 72 72 0a 20 | etq.err.nil))........(when.err.. |
| f240 | 20 20 20 20 20 20 20 20 2c 40 65 72 72 6f 72 2d 66 6f 72 6d 73 29 29 29 29 0a 0a 3b 3b 3b 23 23 | ........,@error-forms))))..;;;## |
| f260 | 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 69 6e 65 2d 6d 69 6e 6f 72 2d 6d 6f 64 65 20 74 72 65 | #autoload.(define-minor-mode.tre |
| f280 | 65 2d 73 69 74 74 65 72 2d 6d 6f 64 65 0a 20 20 22 4d 69 6e 6f 72 20 6d 6f 64 65 20 74 68 61 74 | e-sitter-mode..."Minor.mode.that |
| f2a0 | 20 6b 65 65 70 73 20 61 6e 20 75 70 2d 74 6f 2d 64 61 74 65 20 73 79 6e 74 61 78 20 74 72 65 65 | .keeps.an.up-to-date.syntax.tree |
| f2c0 | 20 75 73 69 6e 67 20 69 6e 63 72 65 6d 65 6e 74 61 6c 20 70 61 72 73 69 6e 67 2e 22 0a 20 20 3a | .using.incremental.parsing."...: |
| f2e0 | 69 6e 69 74 2d 76 61 6c 75 65 20 6e 69 6c 0a 20 20 3a 6c 69 67 68 74 65 72 20 22 20 74 72 65 65 | init-value.nil...:lighter.".tree |
| f300 | 2d 73 69 74 74 65 72 22 0a 20 20 3a 61 66 74 65 72 2d 68 6f 6f 6b 20 28 77 68 65 6e 20 74 72 65 | -sitter"...:after-hook.(when.tre |
| f320 | 65 2d 73 69 74 74 65 72 2d 6d 6f 64 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 75 | e-sitter-mode.................(u |
| f340 | 6e 6c 65 73 73 20 74 72 65 65 2d 73 69 74 74 65 72 2d 74 72 65 65 0a 20 20 20 20 20 20 20 20 20 | nless.tree-sitter-tree.......... |
| f360 | 20 20 20 20 20 20 20 20 20 28 74 72 65 65 2d 73 69 74 74 65 72 2d 2d 64 6f 2d 70 61 72 73 65 29 | .........(tree-sitter--do-parse) |
| f380 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 72 75 6e 2d 68 6f 6f 6b 73 20 27 74 | ...................(run-hooks.'t |
| f3a0 | 72 65 65 2d 73 69 74 74 65 72 2d 61 66 74 65 72 2d 66 69 72 73 74 2d 70 61 72 73 65 2d 68 6f 6f | ree-sitter-after-first-parse-hoo |
| f3c0 | 6b 29 29 29 0a 20 20 28 69 66 20 74 72 65 65 2d 73 69 74 74 65 72 2d 6d 6f 64 65 0a 20 20 20 20 | k)))...(if.tree-sitter-mode..... |
| f3e0 | 20 20 28 74 72 65 65 2d 73 69 74 74 65 72 2d 2d 65 72 72 6f 72 2d 70 72 6f 74 65 63 74 0a 20 20 | ..(tree-sitter--error-protect... |
| f400 | 20 20 20 20 20 20 20 20 28 70 72 6f 67 6e 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 74 72 65 65 | ........(progn.............(tree |
| f420 | 2d 73 69 74 74 65 72 2d 2d 73 65 74 75 70 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 54 | -sitter--setup).............;;.T |
| f440 | 4f 44 4f 3a 20 57 68 65 6e 20 74 68 65 20 64 65 70 65 6e 64 65 6e 74 20 6d 6f 64 65 20 72 65 71 | ODO:.When.the.dependent.mode.req |
| f460 | 75 65 73 74 65 64 20 75 73 2c 20 62 75 74 20 74 68 65 6e 20 66 61 69 6c 65 64 20 74 6f 0a 20 20 | uested.us,.but.then.failed.to... |
| f480 | 20 20 20 20 20 20 20 20 20 20 3b 3b 20 74 75 72 6e 20 69 74 73 65 6c 66 20 6f 6e 2c 20 77 65 20 | ..........;;.turn.itself.on,.we. |
| f4a0 | 73 68 6f 75 6c 64 20 70 72 6f 62 61 62 6c 79 20 74 75 72 6e 20 6f 75 72 73 65 6c 76 65 73 20 6f | should.probably.turn.ourselves.o |
| f4c0 | 66 66 20 61 73 20 77 65 6c 6c 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 28 77 69 74 68 2d 64 65 | ff.as.well..............(with-de |
| f4e0 | 6d 6f 74 65 64 2d 65 72 72 6f 72 73 20 22 74 72 65 65 2d 73 69 74 74 65 72 2d 61 66 74 65 72 2d | moted-errors."tree-sitter-after- |
| f500 | 6f 6e 2d 68 6f 6f 6b 3a 20 25 53 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 72 75 6e 2d | on-hook:.%S"...............(run- |
| f520 | 68 6f 6f 6b 73 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 61 66 74 65 72 2d 6f 6e 2d 68 6f 6f 6b | hooks.'tree-sitter-after-on-hook |
| f540 | 29 29 29 0a 20 20 20 20 20 20 20 20 28 73 65 74 71 20 74 72 65 65 2d 73 69 74 74 65 72 2d 6d 6f | ))).........(setq.tree-sitter-mo |
| f560 | 64 65 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 28 74 72 65 65 2d 73 69 74 74 65 72 2d 2d 74 65 | de.nil).........(tree-sitter--te |
| f580 | 61 72 64 6f 77 6e 29 29 0a 20 20 20 20 28 72 75 6e 2d 68 6f 6f 6b 73 20 27 74 72 65 65 2d 73 69 | ardown)).....(run-hooks.'tree-si |
| f5a0 | 74 74 65 72 2d 2d 62 65 66 6f 72 65 2d 6f 66 66 2d 68 6f 6f 6b 29 0a 20 20 20 20 28 74 72 65 65 | tter--before-off-hook).....(tree |
| f5c0 | 2d 73 69 74 74 65 72 2d 2d 74 65 61 72 64 6f 77 6e 29 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f | -sitter--teardown)))..;;;###auto |
| f5e0 | 6c 6f 61 64 0a 28 64 65 66 75 6e 20 74 75 72 6e 2d 6f 6e 2d 74 72 65 65 2d 73 69 74 74 65 72 2d | load.(defun.turn-on-tree-sitter- |
| f600 | 6d 6f 64 65 20 28 29 0a 20 20 22 54 75 72 6e 20 6f 6e 20 60 74 72 65 65 2d 73 69 74 74 65 72 2d | mode.()..."Turn.on.`tree-sitter- |
| f620 | 6d 6f 64 65 27 20 69 6e 20 61 20 62 75 66 66 65 72 2c 20 69 66 20 70 6f 73 73 69 62 6c 65 2e 22 | mode'.in.a.buffer,.if.possible." |
| f640 | 0a 20 20 3b 3b 20 46 49 58 3a 20 49 67 6e 6f 72 65 20 6f 6e 6c 79 20 6b 6e 6f 77 6e 20 65 72 72 | ...;;.FIX:.Ignore.only.known.err |
| f660 | 6f 72 73 2e 20 4c 6f 67 20 74 68 65 20 72 65 73 74 2c 20 61 74 20 6c 65 61 73 74 2e 0a 20 20 28 | ors..Log.the.rest,.at.least....( |
| f680 | 69 67 6e 6f 72 65 2d 65 72 72 6f 72 73 0a 20 20 20 20 28 74 72 65 65 2d 73 69 74 74 65 72 2d 6d | ignore-errors.....(tree-sitter-m |
| f6a0 | 6f 64 65 20 31 29 29 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 69 6e 65 | ode.1)))..;;;###autoload.(define |
| f6c0 | 2d 67 6c 6f 62 61 6c 69 7a 65 64 2d 6d 69 6e 6f 72 2d 6d 6f 64 65 20 67 6c 6f 62 61 6c 2d 74 72 | -globalized-minor-mode.global-tr |
| f6e0 | 65 65 2d 73 69 74 74 65 72 2d 6d 6f 64 65 0a 20 20 74 72 65 65 2d 73 69 74 74 65 72 2d 6d 6f 64 | ee-sitter-mode...tree-sitter-mod |
| f700 | 65 20 74 75 72 6e 2d 6f 6e 2d 74 72 65 65 2d 73 69 74 74 65 72 2d 6d 6f 64 65 0a 20 20 3a 69 6e | e.turn-on-tree-sitter-mode...:in |
| f720 | 69 74 2d 76 61 6c 75 65 20 6e 69 6c 0a 20 20 3a 67 72 6f 75 70 20 27 74 72 65 65 2d 73 69 74 74 | it-value.nil...:group.'tree-sitt |
| f740 | 65 72 29 0a 0a 28 64 65 66 75 6e 20 74 72 65 65 2d 73 69 74 74 65 72 2d 2d 66 75 6e 63 61 6c 6c | er)..(defun.tree-sitter--funcall |
| f760 | 2d 66 6f 72 6d 20 28 66 75 6e 63 29 0a 20 20 22 52 65 74 75 72 6e 20 61 6e 20 65 71 75 69 76 61 | -form.(func)..."Return.an.equiva |
| f780 | 6c 65 6e 74 20 74 6f 20 28 66 75 6e 63 61 6c 6c 20 46 55 4e 43 29 20 74 68 61 74 20 63 61 6e 20 | lent.to.(funcall.FUNC).that.can. |
| f7a0 | 62 65 20 75 73 65 64 20 69 6e 20 61 20 6d 61 63 72 6f 2e 0a 49 66 20 46 55 4e 43 20 69 73 20 61 | be.used.in.a.macro..If.FUNC.is.a |
| f7c0 | 20 71 75 6f 74 65 64 20 73 79 6d 62 6f 6c 2c 20 73 6b 69 70 20 74 68 65 20 60 66 75 6e 63 61 6c | .quoted.symbol,.skip.the.`funcal |
| f7e0 | 6c 27 20 69 6e 64 69 72 65 63 74 69 6f 6e 2e 22 0a 20 20 28 69 66 20 28 61 6e 64 20 28 63 6f 6e | l'.indirection."...(if.(and.(con |
| f800 | 73 70 20 66 75 6e 63 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 6d 65 6d 71 20 28 63 61 72 20 66 | sp.func)............(memq.(car.f |
| f820 | 75 6e 63 29 20 27 28 71 75 6f 74 65 20 66 75 6e 63 74 69 6f 6e 29 29 0a 20 20 20 20 20 20 20 20 | unc).'(quote.function))......... |
| f840 | 20 20 20 28 73 79 6d 62 6f 6c 70 20 28 63 61 64 72 20 66 75 6e 63 29 29 29 0a 20 20 20 20 20 20 | ...(symbolp.(cadr.func)))....... |
| f860 | 60 28 2c 28 63 61 64 72 20 66 75 6e 63 29 29 0a 20 20 20 20 60 28 66 75 6e 63 61 6c 6c 20 2c 66 | `(,(cadr.func)).....`(funcall.,f |
| f880 | 75 6e 63 29 29 29 0a 0a 28 64 65 66 6d 61 63 72 6f 20 74 72 65 65 2d 73 69 74 74 65 72 2d 2d 68 | unc)))..(defmacro.tree-sitter--h |
| f8a0 | 61 6e 64 6c 65 2d 64 65 70 65 6e 64 65 6e 74 20 28 6d 6f 64 65 20 73 65 74 75 70 2d 66 75 6e 63 | andle-dependent.(mode.setup-func |
| f8c0 | 74 69 6f 6e 20 74 65 61 72 64 6f 77 6e 2d 66 75 6e 63 74 69 6f 6e 29 0a 20 20 22 42 75 69 6c 64 | tion.teardown-function)..."Build |
| f8e0 | 20 74 68 65 20 62 6c 6f 63 6b 20 6f 66 20 63 6f 64 65 20 74 68 61 74 20 68 61 6e 64 6c 65 73 20 | .the.block.of.code.that.handles. |
| f900 | 65 6e 61 62 6c 69 6e 67 2f 64 69 73 61 62 6c 69 6e 67 20 6f 66 20 61 20 64 65 70 65 6e 64 65 6e | enabling/disabling.of.a.dependen |
| f920 | 74 20 6d 6f 64 65 2e 0a 55 73 65 20 74 68 69 73 20 61 73 20 74 68 65 20 62 6f 64 79 20 6f 66 20 | t.mode..Use.this.as.the.body.of. |
| f940 | 74 68 65 20 60 64 65 66 69 6e 65 2d 6d 69 6e 6f 72 2d 6d 6f 64 65 27 20 62 6c 6f 63 6b 20 74 68 | the.`define-minor-mode'.block.th |
| f960 | 61 74 20 64 65 66 69 6e 65 73 20 4d 4f 44 45 2e 0a 0a 57 68 65 6e 20 4d 4f 44 45 20 69 73 20 65 | at.defines.MODE...When.MODE.is.e |
| f980 | 6e 61 62 6c 65 64 2c 20 69 74 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 65 6e 61 62 6c 65 73 | nabled,.it.automatically.enables |
| f9a0 | 20 60 74 72 65 65 2d 73 69 74 74 65 72 2d 6d 6f 64 65 27 2e 20 57 68 65 6e 20 4d 4f 44 45 20 69 | .`tree-sitter-mode'..When.MODE.i |
| f9c0 | 73 0a 64 69 73 61 62 6c 65 64 2c 20 69 74 20 64 6f 65 73 20 6e 6f 74 20 64 69 73 61 62 6c 65 20 | s.disabled,.it.does.not.disable. |
| f9e0 | 60 74 72 65 65 2d 73 69 74 74 65 72 2d 6d 6f 64 65 27 2c 20 73 69 6e 63 65 20 74 68 65 20 6c 61 | `tree-sitter-mode',.since.the.la |
| fa00 | 74 74 65 72 20 6d 61 79 20 68 61 76 65 20 62 65 65 6e 0a 72 65 71 75 65 73 74 65 64 20 62 79 20 | tter.may.have.been.requested.by. |
| fa20 | 65 6e 64 20 75 73 65 72 2c 20 6f 72 20 6f 74 68 65 72 20 64 65 70 65 6e 64 65 6e 74 20 6d 6f 64 | end.user,.or.other.dependent.mod |
| fa40 | 65 73 2e 0a 0a 57 68 65 6e 20 60 74 72 65 65 2d 73 69 74 74 65 72 2d 6d 6f 64 65 27 20 69 73 20 | es...When.`tree-sitter-mode'.is. |
| fa60 | 64 69 73 61 62 6c 65 64 2c 20 69 74 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c 79 20 64 69 73 61 62 | disabled,.it.automatically.disab |
| fa80 | 6c 65 73 20 4d 4f 44 45 2c 20 77 68 69 63 68 20 77 69 6c 6c 0a 6e 6f 74 20 66 75 6e 63 74 69 6f | les.MODE,.which.will.not.functio |
| faa0 | 6e 20 63 6f 72 72 65 63 74 6c 79 20 6f 74 68 65 72 77 69 73 65 2e 20 54 68 69 73 20 68 61 70 70 | n.correctly.otherwise..This.happ |
| fac0 | 65 6e 73 20 62 65 66 6f 72 65 20 60 74 72 65 65 2d 73 69 74 74 65 72 2d 6d 6f 64 65 27 20 63 6c | ens.before.`tree-sitter-mode'.cl |
| fae0 | 65 61 6e 73 0a 75 70 20 69 74 73 20 6f 77 6e 20 73 74 61 74 65 2e 0a 0a 53 45 54 55 50 2d 46 55 | eans.up.its.own.state...SETUP-FU |
| fb00 | 4e 43 54 49 4f 4e 20 69 73 20 63 61 6c 6c 65 64 20 77 68 65 6e 20 4d 4f 44 45 20 69 73 20 65 6e | NCTION.is.called.when.MODE.is.en |
| fb20 | 61 62 6c 65 64 2c 20 61 66 74 65 72 20 4d 4f 44 45 20 76 61 72 69 61 62 6c 65 20 68 61 73 20 62 | abled,.after.MODE.variable.has.b |
| fb40 | 65 65 6e 20 73 65 74 0a 74 6f 20 74 2c 20 61 6e 64 20 61 66 74 65 72 20 60 74 72 65 65 2d 73 69 | een.set.to.t,.and.after.`tree-si |
| fb60 | 74 74 65 72 2d 6d 6f 64 65 27 20 68 61 73 20 61 6c 72 65 61 64 79 20 62 65 65 6e 20 65 6e 61 62 | tter-mode'.has.already.been.enab |
| fb80 | 6c 65 64 2e 20 48 6f 77 65 76 65 72 2c 20 69 74 20 6d 75 73 74 0a 6e 6f 74 20 61 73 73 75 6d 65 | led..However,.it.must.not.assume |
| fba0 | 20 74 68 61 74 20 60 74 72 65 65 2d 73 69 74 74 65 72 2d 74 72 65 65 27 20 69 73 20 6e 6f 6e 2d | .that.`tree-sitter-tree'.is.non- |
| fbc0 | 6e 69 6c 2c 20 73 69 6e 63 65 20 74 68 65 20 66 69 72 73 74 20 70 61 72 73 65 20 6d 61 79 20 6e | nil,.since.the.first.parse.may.n |
| fbe0 | 6f 74 0a 68 61 70 70 65 6e 20 79 65 74 2e 20 49 74 20 73 68 6f 75 6c 64 20 69 6e 73 74 65 61 64 | ot.happen.yet..It.should.instead |
| fc00 | 20 73 65 74 20 75 70 20 68 6f 6f 6b 73 20 74 6f 20 68 61 6e 64 6c 65 20 70 61 72 73 65 20 65 76 | .set.up.hooks.to.handle.parse.ev |
| fc20 | 65 6e 74 73 2e 0a 0a 54 45 41 52 44 4f 57 4e 2d 46 55 4e 43 54 49 4f 4e 20 69 73 20 63 61 6c 6c | ents...TEARDOWN-FUNCTION.is.call |
| fc40 | 65 64 20 77 68 65 6e 20 4d 4f 44 45 20 69 73 20 64 69 73 61 62 6c 65 64 2c 20 61 66 74 65 72 20 | ed.when.MODE.is.disabled,.after. |
| fc60 | 4d 4f 44 45 20 76 61 72 69 61 62 6c 65 20 68 61 73 20 62 65 65 6e 0a 73 65 74 20 74 6f 20 6e 69 | MODE.variable.has.been.set.to.ni |
| fc80 | 6c 2e 20 49 74 20 73 68 6f 75 6c 64 20 63 6c 65 61 6e 20 75 70 20 61 6e 79 20 73 74 61 74 65 20 | l..It.should.clean.up.any.state. |
| fca0 | 73 65 74 20 75 70 20 62 79 20 4d 4f 44 45 2c 20 61 6e 64 20 73 68 6f 75 6c 64 20 6e 6f 74 20 73 | set.up.by.MODE,.and.should.not.s |
| fcc0 | 69 67 6e 61 6c 0a 61 6e 79 20 65 72 72 6f 72 2e 20 49 74 20 69 73 20 61 6c 73 6f 20 63 61 6c 6c | ignal.any.error..It.is.also.call |
| fce0 | 65 64 20 77 68 65 6e 20 53 45 54 55 50 2d 46 55 4e 43 54 49 4f 4e 20 73 69 67 6e 61 6c 73 20 61 | ed.when.SETUP-FUNCTION.signals.a |
| fd00 | 6e 20 65 72 72 6f 72 2c 20 74 6f 20 75 6e 64 6f 20 61 6e 79 0a 70 61 72 74 69 61 6c 20 73 65 74 | n.error,.to.undo.any.partial.set |
| fd20 | 75 70 2e 0a 0a 42 6f 74 68 20 53 45 54 55 50 2d 46 55 4e 43 54 49 4f 4e 20 61 6e 64 20 54 45 41 | up...Both.SETUP-FUNCTION.and.TEA |
| fd40 | 52 44 4f 57 4e 2d 46 55 4e 43 54 49 4f 4e 20 73 68 6f 75 6c 64 20 62 65 20 69 64 65 6d 70 6f 74 | RDOWN-FUNCTION.should.be.idempot |
| fd60 | 65 6e 74 2e 22 0a 20 20 28 64 65 63 6c 61 72 65 20 28 69 6e 64 65 6e 74 20 31 29 29 0a 20 20 28 | ent."...(declare.(indent.1))...( |
| fd80 | 6c 65 74 20 28 28 73 65 74 75 70 20 28 74 72 65 65 2d 73 69 74 74 65 72 2d 2d 66 75 6e 63 61 6c | let.((setup.(tree-sitter--funcal |
| fda0 | 6c 2d 66 6f 72 6d 20 73 65 74 75 70 2d 66 75 6e 63 74 69 6f 6e 29 29 0a 20 20 20 20 20 20 20 20 | l-form.setup-function))......... |
| fdc0 | 28 74 65 61 72 64 6f 77 6e 20 28 74 72 65 65 2d 73 69 74 74 65 72 2d 2d 66 75 6e 63 61 6c 6c 2d | (teardown.(tree-sitter--funcall- |
| fde0 | 66 6f 72 6d 20 74 65 61 72 64 6f 77 6e 2d 66 75 6e 63 74 69 6f 6e 29 29 29 0a 20 20 20 20 60 28 | form.teardown-function))).....`( |
| fe00 | 69 66 20 2c 6d 6f 64 65 0a 20 20 20 20 20 20 20 20 20 28 70 72 6f 67 6e 0a 20 20 20 20 20 20 20 | if.,mode..........(progn........ |
| fe20 | 20 20 20 20 28 74 72 65 65 2d 73 69 74 74 65 72 2d 2d 65 72 72 6f 72 2d 70 72 6f 74 65 63 74 0a | ....(tree-sitter--error-protect. |
| fe40 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 4d 61 6b 65 20 73 75 72 65 20 60 74 72 65 | ...............;;.Make.sure.`tre |
| fe60 | 65 2d 73 69 74 74 65 72 2d 6d 6f 64 65 27 20 69 73 20 65 6e 61 62 6c 65 64 20 62 65 66 6f 72 65 | e-sitter-mode'.is.enabled.before |
| fe80 | 20 4d 4f 44 45 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 70 72 6f 67 6e 0a 20 20 20 | .MODE.................(progn.... |
| fea0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 75 6e 6c 65 73 73 20 74 72 65 65 2d 73 69 74 74 65 | ..............(unless.tree-sitte |
| fec0 | 72 2d 6d 6f 64 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 74 72 65 65 2d | r-mode....................(tree- |
| fee0 | 73 69 74 74 65 72 2d 6d 6f 64 65 29 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2c | sitter-mode)).................., |
| ff00 | 73 65 74 75 70 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 53 65 74 75 70 20 66 61 69 | setup)..............;;.Setup.fai |
| ff20 | 6c 65 64 2e 20 43 6c 65 61 6e 20 74 68 69 6e 67 73 20 75 70 2c 20 6c 65 61 76 65 20 6e 6f 20 74 | led..Clean.things.up,.leave.no.t |
| ff40 | 72 61 63 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 2c 6d 6f 64 65 20 6e | race...............(setq.,mode.n |
| ff60 | 69 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 2c 74 65 61 72 64 6f 77 6e 29 0a 20 20 20 20 | il)..............,teardown)..... |
| ff80 | 20 20 20 20 20 20 20 3b 3b 20 44 69 73 61 62 6c 65 20 4d 4f 44 45 20 77 68 65 6e 20 60 74 72 65 | .......;;.Disable.MODE.when.`tre |
| ffa0 | 65 2d 73 69 74 74 65 72 2d 6d 6f 64 65 27 20 69 73 20 64 69 73 61 62 6c 65 64 2e 20 51 75 6f 74 | e-sitter-mode'.is.disabled..Quot |
| ffc0 | 69 6e 67 20 69 73 0a 20 20 20 20 20 20 20 20 20 20 20 3b 3b 20 69 6d 70 6f 72 74 61 6e 74 2c 20 | ing.is............;;.important,. |
| ffe0 | 62 65 63 61 75 73 65 20 77 65 20 64 6f 6e 27 74 20 77 61 6e 74 20 61 20 76 61 72 69 61 62 6c 65 | because.we.don't.want.a.variable |
| 10000 | 2d 63 61 70 74 75 72 69 6e 67 20 63 6c 6f 73 75 72 65 2e 0a 20 20 20 20 20 20 20 20 20 20 20 28 | -capturing.closure.............( |
| 10020 | 61 64 64 2d 68 6f 6f 6b 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 2d 62 65 66 6f 72 65 2d 6f 66 | add-hook.'tree-sitter--before-of |
| 10040 | 66 2d 68 6f 6f 6b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 77 69 74 | f-hook......................(wit |
| 10060 | 68 2d 6e 6f 2d 77 61 72 6e 69 6e 67 73 20 27 28 6c 61 6d 62 64 61 20 28 29 20 28 2c 6d 6f 64 65 | h-no-warnings.'(lambda.().(,mode |
| 10080 | 20 2d 31 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 6e 69 6c 20 | .-1)))......................nil. |
| 100a0 | 3a 6c 6f 63 61 6c 29 29 0a 20 20 20 20 20 20 20 2c 74 65 61 72 64 6f 77 6e 29 29 29 0a 0a 3b 3b | :local))........,teardown)))..;; |
| 100c0 | 3b 23 23 23 61 75 74 6f 6c 6f 61 64 0a 28 64 65 66 69 6e 65 2d 6f 62 73 6f 6c 65 74 65 2d 66 75 | ;###autoload.(define-obsolete-fu |
| 100e0 | 6e 63 74 69 6f 6e 2d 61 6c 69 61 73 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 6e 6f 64 65 2d 61 | nction-alias.'tree-sitter-node-a |
| 10100 | 74 2d 70 6f 69 6e 74 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 6e 6f 64 65 2d 61 74 2d 70 6f 73 | t-point.'tree-sitter-node-at-pos |
| 10120 | 20 22 32 30 32 31 2d 30 38 2d 33 30 22 29 0a 0a 28 64 65 66 69 6e 65 2d 65 72 72 6f 72 20 27 74 | ."2021-08-30")..(define-error.'t |
| 10140 | 72 65 65 2d 73 69 74 74 65 72 2d 69 6e 76 61 6c 69 64 2d 6e 6f 64 65 2d 74 79 70 65 20 22 4e 6f | ree-sitter-invalid-node-type."No |
| 10160 | 20 73 75 63 68 20 6e 6f 64 65 2d 74 79 70 65 22 29 0a 0a 3b 3b 3b 23 23 23 61 75 74 6f 6c 6f 61 | .such.node-type")..;;;###autoloa |
| 10180 | 64 0a 28 64 65 66 75 6e 20 74 72 65 65 2d 73 69 74 74 65 72 2d 6e 6f 64 65 2d 61 74 2d 70 6f 73 | d.(defun.tree-sitter-node-at-pos |
| 101a0 | 20 28 26 6f 70 74 69 6f 6e 61 6c 20 6e 6f 64 65 2d 74 79 70 65 20 70 6f 73 20 69 67 6e 6f 72 65 | .(&optional.node-type.pos.ignore |
| 101c0 | 2d 69 6e 76 61 6c 69 64 2d 74 79 70 65 29 0a 20 20 22 52 65 74 75 72 6e 20 74 68 65 20 73 6d 61 | -invalid-type)..."Return.the.sma |
| 101e0 | 6c 6c 65 73 74 20 73 79 6e 74 61 78 20 6e 6f 64 65 20 6f 66 20 74 79 70 65 20 4e 4f 44 45 2d 54 | llest.syntax.node.of.type.NODE-T |
| 10200 | 59 50 45 20 61 74 20 50 4f 53 2e 0a 4e 4f 44 45 2d 54 59 50 45 20 6d 61 79 20 62 65 20 61 20 73 | YPE.at.POS..NODE-TYPE.may.be.a.s |
| 10220 | 79 6d 62 6f 6c 2c 20 63 6f 72 72 65 73 70 6f 6e 64 69 6e 67 20 74 6f 20 61 20 6e 61 6d 65 64 20 | ymbol,.corresponding.to.a.named. |
| 10240 | 73 79 6e 74 61 78 20 6e 6f 64 65 3b 20 61 20 73 74 72 69 6e 67 2c 0a 63 6f 72 72 65 73 70 6f 6e | syntax.node;.a.string,.correspon |
| 10260 | 64 69 6e 67 20 74 6f 20 61 6e 20 61 6e 6f 6e 79 6d 6f 75 73 20 6e 6f 64 65 2c 20 6f 72 20 61 20 | ding.to.an.anonymous.node,.or.a. |
| 10280 | 6b 65 79 77 6f 72 64 2c 20 68 6f 6c 64 69 6e 67 20 61 20 73 70 65 63 69 61 6c 20 76 61 6c 75 65 | keyword,.holding.a.special.value |
| 102a0 | 2e 20 46 6f 72 0a 74 68 65 20 73 70 65 63 69 61 6c 20 76 61 6c 75 65 20 60 3a 6e 61 6d 65 64 27 | ..For.the.special.value.`:named' |
| 102c0 | 2c 20 72 65 74 75 72 6e 20 74 68 65 20 73 6d 61 6c 6c 65 73 74 20 6e 61 6d 65 64 20 6e 6f 64 65 | ,.return.the.smallest.named.node |
| 102e0 | 20 61 74 20 50 4f 53 2e 20 46 6f 72 20 74 68 65 0a 73 70 65 63 69 61 6c 20 76 61 6c 75 65 20 60 | .at.POS..For.the.special.value.` |
| 10300 | 3a 61 6e 6f 6e 79 6d 6f 75 73 27 2c 20 72 65 74 75 72 6e 20 74 68 65 20 73 6d 61 6c 6c 65 73 74 | :anonymous',.return.the.smallest |
| 10320 | 20 61 6e 6f 6e 79 6d 6f 75 73 20 6e 6f 64 65 20 61 74 20 50 4f 53 2e 20 49 46 20 50 4f 53 20 69 | .anonymous.node.at.POS..IF.POS.i |
| 10340 | 73 0a 6e 69 6c 2c 20 50 4f 53 20 64 65 66 61 75 6c 74 73 20 74 6f 20 74 68 65 20 70 6f 69 6e 74 | s.nil,.POS.defaults.to.the.point |
| 10360 | 2e 20 55 6e 6c 65 73 73 20 49 47 4e 4f 52 45 2d 49 4e 56 41 4c 49 44 2d 54 59 50 45 20 69 73 20 | ..Unless.IGNORE-INVALID-TYPE.is. |
| 10380 | 6e 6f 6e 2d 6e 69 6c 2c 20 73 69 67 6e 61 6c 20 61 6e 0a 65 72 72 6f 72 20 77 68 65 6e 20 61 20 | non-nil,.signal.an.error.when.a. |
| 103a0 | 73 70 65 63 69 66 69 65 64 20 6e 61 6d 65 64 20 4e 4f 44 45 2d 54 59 50 45 20 64 6f 65 73 20 6e | specified.named.NODE-TYPE.does.n |
| 103c0 | 6f 74 20 65 78 69 73 74 20 69 6e 20 74 68 65 20 63 75 72 72 65 6e 74 20 67 72 61 6d 6d 61 72 2e | ot.exist.in.the.current.grammar. |
| 103e0 | 0a 57 68 65 6e 65 76 65 72 20 4e 4f 44 45 2d 54 59 50 45 20 69 73 20 6e 6f 6e 2d 6e 69 6c 20 28 | .Whenever.NODE-TYPE.is.non-nil.( |
| 10400 | 6f 74 68 65 72 20 74 68 61 6e 20 60 3a 6e 61 6d 65 64 27 29 2c 20 69 74 20 69 73 20 70 6f 73 73 | other.than.`:named'),.it.is.poss |
| 10420 | 69 62 6c 65 20 66 6f 72 20 74 68 65 0a 66 75 6e 63 74 69 6f 6e 20 74 6f 20 72 65 74 75 72 6e 20 | ible.for.the.function.to.return. |
| 10440 | 6e 69 6c 2e 22 0a 20 20 28 77 68 65 6e 20 28 61 6e 64 20 28 6e 6f 74 20 69 67 6e 6f 72 65 2d 69 | nil."...(when.(and.(not.ignore-i |
| 10460 | 6e 76 61 6c 69 64 2d 74 79 70 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 6f 64 65 2d 74 | nvalid-type)..............node-t |
| 10480 | 79 70 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 6e 6f 74 20 28 6b 65 79 77 6f 72 64 70 20 | ype..............(not.(keywordp. |
| 104a0 | 6e 6f 64 65 2d 74 79 70 65 29 29 29 0a 20 20 20 20 28 77 68 65 6e 20 28 3d 20 30 20 28 74 73 63 | node-type))).....(when.(=.0.(tsc |
| 104c0 | 2d 6c 61 6e 67 2d 6e 6f 64 65 2d 74 79 70 65 2d 69 64 20 74 72 65 65 2d 73 69 74 74 65 72 2d 6c | -lang-node-type-id.tree-sitter-l |
| 104e0 | 61 6e 67 75 61 67 65 20 6e 6f 64 65 2d 74 79 70 65 29 29 0a 20 20 20 20 20 20 28 73 69 67 6e 61 | anguage.node-type)).......(signa |
| 10500 | 6c 20 27 74 72 65 65 2d 73 69 74 74 65 72 2d 69 6e 76 61 6c 69 64 2d 6e 6f 64 65 2d 74 79 70 65 | l.'tree-sitter-invalid-node-type |
| 10520 | 20 28 6c 69 73 74 20 6e 6f 64 65 2d 74 79 70 65 29 29 29 29 0a 20 20 28 6c 65 74 2a 20 28 28 72 | .(list.node-type))))...(let*.((r |
| 10540 | 6f 6f 74 20 28 74 73 63 2d 72 6f 6f 74 2d 6e 6f 64 65 20 74 72 65 65 2d 73 69 74 74 65 72 2d 74 | oot.(tsc-root-node.tree-sitter-t |
| 10560 | 72 65 65 29 29 0a 20 20 20 20 20 20 20 20 20 28 70 20 28 6f 72 20 70 6f 73 20 28 70 6f 69 6e 74 | ree))..........(p.(or.pos.(point |
| 10580 | 29 29 29 0a 20 20 20 20 20 20 20 20 20 28 6e 6f 64 65 20 28 69 66 20 28 65 71 20 6e 6f 64 65 2d | )))..........(node.(if.(eq.node- |
| 105a0 | 74 79 70 65 20 3a 6e 61 6d 65 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | type.:named).................... |
| 105c0 | 28 74 73 63 2d 67 65 74 2d 6e 61 6d 65 64 2d 64 65 73 63 65 6e 64 61 6e 74 2d 66 6f 72 2d 70 6f | (tsc-get-named-descendant-for-po |
| 105e0 | 73 69 74 69 6f 6e 2d 72 61 6e 67 65 20 72 6f 6f 74 20 70 20 70 29 0a 20 20 20 20 20 20 20 20 20 | sition-range.root.p.p).......... |
| 10600 | 20 20 20 20 20 20 20 20 28 74 73 63 2d 67 65 74 2d 64 65 73 63 65 6e 64 61 6e 74 2d 66 6f 72 2d | ........(tsc-get-descendant-for- |
| 10620 | 70 6f 73 69 74 69 6f 6e 2d 72 61 6e 67 65 20 72 6f 6f 74 20 70 20 70 29 29 29 29 0a 20 20 20 20 | position-range.root.p.p))))..... |
| 10640 | 28 70 63 61 73 65 20 6e 6f 64 65 2d 74 79 70 65 0a 20 20 20 20 20 20 28 27 6e 69 6c 20 6e 6f 64 | (pcase.node-type.......('nil.nod |
| 10660 | 65 29 0a 20 20 20 20 20 20 28 3a 6e 61 6d 65 64 20 6e 6f 64 65 29 0a 20 20 20 20 20 20 28 3a 61 | e).......(:named.node).......(:a |
| 10680 | 6e 6f 6e 79 6d 6f 75 73 20 28 75 6e 6c 65 73 73 20 28 74 73 63 2d 6e 6f 64 65 2d 6e 61 6d 65 64 | nonymous.(unless.(tsc-node-named |
| 106a0 | 2d 70 20 6e 6f 64 65 29 20 6e 6f 64 65 29 29 0a 20 20 20 20 20 20 28 5f 20 28 6c 65 74 20 28 28 | -p.node).node)).......(_.(let.(( |
| 106c0 | 74 68 69 73 20 6e 6f 64 65 29 20 72 65 73 75 6c 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 28 77 | this.node).result)............(w |
| 106e0 | 68 69 6c 65 20 74 68 69 73 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 28 69 66 20 28 65 71 75 61 | hile.this..............(if.(equa |
| 10700 | 6c 20 6e 6f 64 65 2d 74 79 70 65 20 28 74 73 63 2d 6e 6f 64 65 2d 74 79 70 65 20 74 68 69 73 29 | l.node-type.(tsc-node-type.this) |
| 10720 | 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 72 65 73 75 6c 74 20 | )..................(setq.result. |
| 10740 | 74 68 69 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 74 68 69 73 | this........................this |
| 10760 | 20 6e 69 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 28 73 65 74 71 20 74 68 69 73 20 | .nil)................(setq.this. |
| 10780 | 28 74 73 63 2d 67 65 74 2d 70 61 72 65 6e 74 20 74 68 69 73 29 29 29 29 0a 20 20 20 20 20 20 20 | (tsc-get-parent.this))))........ |
| 107a0 | 20 20 20 20 72 65 73 75 6c 74 29 29 29 29 29 0a 0a 28 70 72 6f 76 69 64 65 20 27 74 72 65 65 2d | ....result)))))..(provide.'tree- |
| 107c0 | 73 69 74 74 65 72 29 0a 3b 3b 3b 20 74 72 65 65 2d 73 69 74 74 65 72 2e 65 6c 20 65 6e 64 73 20 | sitter).;;;.tree-sitter.el.ends. |
| 107e0 | 68 65 72 65 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | here............................ |
| 10800 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10820 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10840 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10860 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10880 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 108a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 108c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 108e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10900 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10920 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10940 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10960 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10980 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 109a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 109c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 109e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10a00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10a20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10a40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10a60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10a80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10aa0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10ac0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10ae0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10b00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10b20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10b40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10b60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10b80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10ba0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10bc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10be0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10c00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10c20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10c40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10c60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10c80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10ca0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10cc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10ce0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10d00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10d20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10d40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10d60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10d80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10da0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10dc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10de0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10e00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10e20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10e40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10e60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10e80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10ea0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10ec0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10ee0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10f00 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10f20 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10f40 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10f60 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10f80 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10fa0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10fc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 10fe0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 11000 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 11020 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 11040 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 11060 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 11080 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 110a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 110c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 110e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 11100 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 11120 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 11140 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 11160 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 11180 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 111a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 111c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 111e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 11200 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 11220 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 11240 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 11260 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 11280 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 112a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 112c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 112e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 11300 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 11320 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 11340 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 11360 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 11380 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 113a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 113c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 113e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 11400 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 11420 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 11440 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 11460 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 11480 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 114a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 114c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 114e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 11500 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 11520 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 11540 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 11560 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 11580 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 115a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 115c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 115e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 11600 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 11620 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 11640 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 11660 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 11680 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 116a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 116c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 116e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 11700 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 11720 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 11740 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 11760 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 11780 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 117a0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 117c0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 117e0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |