<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rneovim.git/runtime/lua/vim/treesitter, branch rahm</title>
<subtitle>Neovim fork with Rahm's personal hacks.
</subtitle>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/'/>
<entry>
<title>feat(treesitter): show which nodes are missing in InspectTree</title>
<updated>2025-02-05T08:29:31+00:00</updated>
<author>
<name>Riley Bruins</name>
<email>ribru17@hotmail.com</email>
</author>
<published>2025-02-04T17:25:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=09f9f0a94625002f4c70efbdf858fe6918cbc9c6'/>
<id>09f9f0a94625002f4c70efbdf858fe6918cbc9c6</id>
<content type='text'>
Now `:InspectTree` will show missing nodes as e.g. `(MISSING identifier)`
or `(MISSING ";")` rather than just `(identifier)` or `";"`. This is
doable because the `MISSING` keyword is now valid query syntax.

Co-authored-by: Christian Clason &lt;c.clason@uni-graz.at&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Now `:InspectTree` will show missing nodes as e.g. `(MISSING identifier)`
or `(MISSING ";")` rather than just `(identifier)` or `";"`. This is
doable because the `MISSING` keyword is now valid query syntax.

Co-authored-by: Christian Clason &lt;c.clason@uni-graz.at&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>feat(treesitter): allow LanguageTree:is_valid() to accept a range</title>
<updated>2025-02-02T20:13:25+00:00</updated>
<author>
<name>Riley Bruins</name>
<email>ribru17@hotmail.com</email>
</author>
<published>2025-01-29T23:53:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=8543aa406c4ae88cc928372b2f8105005cdd0a80'/>
<id>8543aa406c4ae88cc928372b2f8105005cdd0a80</id>
<content type='text'>
When given, only that range will be checked for validity rather than the
entire tree. This is used in the highlighter to save CPU cycles since we
only need to parse a certain region at a time anyway.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When given, only that range will be checked for validity rather than the
entire tree. This is used in the highlighter to save CPU cycles since we
only need to parse a certain region at a time anyway.
</pre>
</div>
</content>
</entry>
<entry>
<title>refactor(treesitter): use coroutines for resuming _parse() logic</title>
<updated>2025-02-02T19:51:24+00:00</updated>
<author>
<name>Riley Bruins</name>
<email>ribru17@hotmail.com</email>
</author>
<published>2025-01-17T22:35:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=9508d6a8146350ffc9f31f4263fa871bab9130bf'/>
<id>9508d6a8146350ffc9f31f4263fa871bab9130bf</id>
<content type='text'>
This means that all work previously done by a `_parse()` iteration will
be kept in future iterations. This prevents it from running indefinitely
in some cases where the file is very large and there are 2+ injections.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This means that all work previously done by a `_parse()` iteration will
be kept in future iterations. This prevents it from running indefinitely
in some cases where the file is very large and there are 2+ injections.
</pre>
</div>
</content>
</entry>
<entry>
<title>refactor(treesitter): always return valid range from parse() #32273</title>
<updated>2025-02-02T11:46:26+00:00</updated>
<author>
<name>Riley Bruins</name>
<email>ribru17@hotmail.com</email>
</author>
<published>2025-02-02T11:46:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=77be44563acb64a481d48f45c8dbbfca2d7db415'/>
<id>77be44563acb64a481d48f45c8dbbfca2d7db415</id>
<content type='text'>
Problem:
When running an initial parse, parse() returns an empty table rather
than an actual range. In `languagetree.lua`, we manually check if
a parse was incremental to determine the changed parse region.

Solution:
- Always return a range (in the C side) from parse().
- Simplify the language tree code a bit.
- Logger no longer shows empty ranges on the initial parse.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem:
When running an initial parse, parse() returns an empty table rather
than an actual range. In `languagetree.lua`, we manually check if
a parse was incremental to determine the changed parse region.

Solution:
- Always return a range (in the C side) from parse().
- Simplify the language tree code a bit.
- Logger no longer shows empty ranges on the initial parse.</pre>
</div>
</content>
</entry>
<entry>
<title>refactor(treesitter): drop `LanguageTree._has_regions` #32274</title>
<updated>2025-02-02T11:42:47+00:00</updated>
<author>
<name>Riley Bruins</name>
<email>ribru17@hotmail.com</email>
</author>
<published>2025-02-02T11:42:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=02ea0e77a19b116006dc04848703aaeed3f50ded'/>
<id>02ea0e77a19b116006dc04848703aaeed3f50ded</id>
<content type='text'>
This simplifies some logic in `languagetree.lua`, removing the need for
`_has_regions`, and removing side effects in `:included_regions()`.

Before:
- Edit is made which sets `_regions = nil`
- Upon the next call to `included_regions()` (usually right after we
  marked `_regions` as `nil` due to an `_iter_regions()` call), if
  `_regions` is nil, we repopulate the table (as long as the tree
  actually has regions)

After:
- Edit is made which resets `_regions` if it exists
- `included_regions()` no longer needs to perform this logic itself, and
  also no longer needs to read a `_has_regions` variable</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This simplifies some logic in `languagetree.lua`, removing the need for
`_has_regions`, and removing side effects in `:included_regions()`.

Before:
- Edit is made which sets `_regions = nil`
- Upon the next call to `included_regions()` (usually right after we
  marked `_regions` as `nil` due to an `_iter_regions()` call), if
  `_regions` is nil, we repopulate the table (as long as the tree
  actually has regions)

After:
- Edit is made which resets `_regions` if it exists
- `included_regions()` no longer needs to perform this logic itself, and
  also no longer needs to read a `_has_regions` variable</pre>
</div>
</content>
</entry>
<entry>
<title>fix(treesitter): nil access when running string parser async</title>
<updated>2025-02-01T16:02:52+00:00</updated>
<author>
<name>Riley Bruins</name>
<email>ribru17@hotmail.com</email>
</author>
<published>2025-01-30T21:34:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=096ae3bfd7075dce69c70182ccedcd6d33e66d31'/>
<id>096ae3bfd7075dce69c70182ccedcd6d33e66d31</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>docs: misc</title>
<updated>2025-01-30T12:46:06+00:00</updated>
<author>
<name>dundargoc</name>
<email>gocdundar@gmail.com</email>
</author>
<published>2025-01-13T14:48:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=e71d2c817d1a2475551f58a98e411f6b39a5be3f'/>
<id>e71d2c817d1a2475551f58a98e411f6b39a5be3f</id>
<content type='text'>
Co-authored-by: Dustin S. &lt;dstackmasta27@gmail.com&gt;
Co-authored-by: Ferenc Fejes &lt;fejes@inf.elte.hu&gt;
Co-authored-by: Maria José Solano &lt;majosolano99@gmail.com&gt;
Co-authored-by: Yochem van Rosmalen &lt;git@yochem.nl&gt;
Co-authored-by: brianhuster &lt;phambinhanctb2004@gmail.com&gt;
Co-authored-by: zeertzjq &lt;zeertzjq@outlook.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Co-authored-by: Dustin S. &lt;dstackmasta27@gmail.com&gt;
Co-authored-by: Ferenc Fejes &lt;fejes@inf.elte.hu&gt;
Co-authored-by: Maria José Solano &lt;majosolano99@gmail.com&gt;
Co-authored-by: Yochem van Rosmalen &lt;git@yochem.nl&gt;
Co-authored-by: brianhuster &lt;phambinhanctb2004@gmail.com&gt;
Co-authored-by: zeertzjq &lt;zeertzjq@outlook.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>fix(treesitter): stop async parsing if buffer is invalid</title>
<updated>2025-01-29T08:15:13+00:00</updated>
<author>
<name>notomo</name>
<email>notomo.motono@gmail.com</email>
</author>
<published>2025-01-25T12:15:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=e7ebc5c13d2d1658005a7fb477bc92718044746f'/>
<id>e7ebc5c13d2d1658005a7fb477bc92718044746f</id>
<content type='text'>
Problem: Error occurs if delete buffer in the middle of parsing.
Solution: Check if buffer is valid in parsing.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem: Error occurs if delete buffer in the middle of parsing.
Solution: Check if buffer is valid in parsing.
</pre>
</div>
</content>
</entry>
<entry>
<title>fix(treesitter) Set modeline=false in TSHighlighter:destroy (#32234)</title>
<updated>2025-01-29T08:02:49+00:00</updated>
<author>
<name>Daniel Petrovic</name>
<email>daniel-dev@hotmail.de</email>
</author>
<published>2025-01-29T08:02:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=19f00bf32cebfa66a17e0f5945d62d7da1859623'/>
<id>19f00bf32cebfa66a17e0f5945d62d7da1859623</id>
<content type='text'>
Problem:  `TSHighlighter:destroy()` causes double-processing of the modeline
and failure of `b:undo_ftplugin`.

Solution: Disable modeline in `TSHighlighter:destroy()` by setting `modeline=false`
if executing `syntaxset` autocommands for the `FileType` event.

Co-authored-by: Daniel Petrovic &lt;daniel.petrovic@ebcont.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem:  `TSHighlighter:destroy()` causes double-processing of the modeline
and failure of `b:undo_ftplugin`.

Solution: Disable modeline in `TSHighlighter:destroy()` by setting `modeline=false`
if executing `syntaxset` autocommands for the `FileType` event.

Co-authored-by: Daniel Petrovic &lt;daniel.petrovic@ebcont.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>feat(treesitter): support modelines in `query.set()` (#30257)</title>
<updated>2025-01-29T07:59:28+00:00</updated>
<author>
<name>Maria José Solano</name>
<email>majosolano99@gmail.com</email>
</author>
<published>2025-01-29T07:59:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=da0ae953490098c28bad4791e08e2cc4c2e385e2'/>
<id>da0ae953490098c28bad4791e08e2cc4c2e385e2</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
