Lewis Russell
2ca076e45f
feat(treesitter)!: incremental injection parsing
...
Problem:
Treesitter highlighting is slow for large files with lots of injections.
Solution:
Only parse injections we are going to render during a redraw cycle.
---
- `LanguageTree:parse()` will no longer parse injections by default and
now requires an explicit range argument to be passed.
- `TSHighlighter` now parses injections incrementally during on_win
callbacks for the line range being rendered.
- Plugins which require certain injections to be parsed must run
`parser:parse({ start_row, end_row })` before using the tree.
2023-08-12 16:11:36 +01:00
..
2023-08-03 14:01:53 +02:00
2023-07-25 05:07:13 -07:00
2023-07-25 05:07:13 -07:00
2023-08-12 08:19:06 +08:00
2023-06-25 17:14:28 +02:00
2023-07-25 05:07:13 -07:00
2023-07-25 05:07:13 -07:00
2019-05-09 20:27:11 -04:00
2023-07-17 18:27:16 +02:00
2022-12-02 16:05:00 +01:00
2023-08-03 14:01:53 +02:00
2023-08-09 11:06:13 +02:00
2023-04-17 15:46:24 +08:00
2023-07-25 20:58:09 +08:00
2023-06-25 17:14:28 +02:00
2023-04-04 19:07:33 +02:00
2023-06-25 17:14:28 +02:00
2023-08-09 20:44:12 +02:00
2023-06-25 17:14:28 +02:00
2023-06-25 17:14:28 +02:00
2021-09-10 08:48:27 +02:00
2023-06-25 17:14:28 +02:00
2022-10-29 17:41:22 +02:00
2023-06-25 17:14:28 +02:00
2023-06-25 17:14:28 +02:00
2023-02-28 15:14:03 +01:00
2023-06-22 03:44:51 -07:00
2023-06-26 11:16:55 +02:00
2023-06-22 03:44:51 -07:00
2023-07-25 05:07:13 -07:00
2023-04-29 09:20:52 +08:00
2023-06-26 11:29:12 +02:00
2023-06-27 10:21:27 -07:00
2023-06-19 02:24:44 -07:00
2023-08-08 06:41:55 -07:00
2023-05-13 21:33:22 +02:00
2023-08-09 11:06:13 +02:00
2023-08-03 08:35:10 -07:00
2023-08-09 15:41:45 -05:00
2023-08-03 08:35:10 -07:00
2023-07-02 11:17:23 +02:00
2023-06-25 17:14:28 +02:00
2023-06-25 17:14:28 +02:00
2023-06-25 17:14:28 +02:00
2022-10-14 08:01:13 -07:00
2023-07-25 05:07:13 -07:00
2023-07-17 17:09:16 +01:00
2023-08-12 16:11:36 +01:00
2023-06-29 07:04:46 +08:00
2022-12-11 18:41:26 -08:00
2023-08-09 15:33:53 -07:00
2023-07-08 16:06:46 +02:00
2023-06-25 17:14:28 +02:00
2023-05-05 18:15:44 +02:00
2023-07-25 20:58:09 +08:00
2023-06-29 14:14:14 -07:00
2018-10-29 09:55:07 +01:00
2023-01-01 15:05:13 +01:00
2023-06-25 17:14:28 +02:00
2015-08-15 15:25:30 -03:00
2023-06-25 17:14:28 +02:00
2023-06-22 03:44:51 -07:00
2023-07-14 06:46:16 +08:00
2023-06-26 11:29:12 +02:00
2023-04-23 15:22:55 +02:00
2023-06-25 17:14:28 +02:00
2023-02-21 23:50:29 +08:00
2023-07-14 06:46:16 +08:00
2023-01-01 15:05:13 +01:00
2023-06-19 08:40:33 -07:00
2023-06-25 17:14:28 +02:00
2023-07-28 14:48:41 +01:00
2023-06-11 12:40:22 +01:00
2023-07-25 05:07:13 -07:00
2023-04-04 19:07:33 +02:00
2023-07-25 05:07:13 -07:00
2022-09-26 17:43:23 +08:00
2023-07-25 05:07:13 -07:00
2023-07-16 18:39:45 +08:00
2023-08-09 11:06:13 +02:00
2023-08-10 17:28:02 +08:00
2023-08-12 16:11:36 +01:00
2023-02-21 23:50:29 +08:00
2023-07-25 05:07:13 -07:00
2023-08-10 17:45:36 +08:00
2023-06-11 12:40:22 +01:00
2023-05-15 09:38:32 +02:00
2023-02-21 23:50:29 +08:00
2023-04-23 15:22:55 +02:00
2022-02-24 18:13:44 +08:00
2023-08-10 17:28:04 +08:00
2023-01-03 10:07:43 +00:00
2022-02-24 18:13:44 +08:00
2023-01-01 15:05:21 +01:00
2023-06-25 17:14:28 +02:00
2023-01-01 15:05:21 +01:00
2023-06-19 08:40:33 -07:00
2023-06-25 17:14:28 +02:00
2023-01-01 15:05:21 +01:00
2023-07-25 05:07:13 -07:00
2023-06-25 17:14:28 +02:00
2021-05-01 22:29:03 -04:00
2023-06-25 17:14:28 +02:00
2023-01-01 15:05:21 +01:00
2018-10-29 10:01:44 +01:00
2021-04-29 09:27:19 -04:00
2023-06-25 17:14:28 +02:00
2023-06-26 11:29:12 +02:00
2023-06-25 17:14:28 +02:00
2021-04-29 20:42:16 -04:00
2023-01-01 15:05:21 +01:00
2023-06-26 11:29:12 +02:00
2023-08-12 05:51:49 +08:00
2023-01-01 15:05:21 +01:00
2023-07-25 05:07:13 -07:00
2021-04-27 09:21:34 -04:00
2023-06-19 08:40:33 -07:00
2023-01-03 10:07:43 +00:00
2023-08-03 14:01:53 +02:00
2023-06-25 17:14:28 +02:00
2023-08-12 09:50:17 +08:00
2023-05-13 21:33:22 +02:00
2023-06-25 17:14:28 +02:00