<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rneovim.git/src/nvim/api/window.c, branch tmp</title>
<subtitle>Neovim fork with Rahm's personal hacks.</subtitle>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/'/>
<entry>
<title>vim-patch:8.1.2057: the screen.c file is much too big</title>
<updated>2022-08-19T09:01:40+00:00</updated>
<author>
<name>Lewis Russell</name>
<email>lewis6991@gmail.com</email>
</author>
<published>2022-08-16T11:27:07+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=51063a90df4cc8af4e1111dd50194ae487e8097e'/>
<id>51063a90df4cc8af4e1111dd50194ae487e8097e</id>
<content type='text'>
Problem:    The screen.c file is much too big.
Solution:   Split it in three parts. (Yegappan Lakshmanan, closes vim/vim#4943)
https://github.com/vim/vim/commit/7528d1f6b5422750eb778dfb550cfd0b0e540964

This is an approximation vim-patch 8.1.2057. Applying the patch directly
isn't feasible since our version of screen.c has diverged too much,
however we still introduce drawscreen.c and drawline.c:
- screen.c is now a much smaller file used for low level screen functions
- drawline.c contains everything needed for win_line()
- drawscreen.c contains everything needed for update_screen()

Co-authored-by: zeertzjq &lt;zeertzjq@outlook.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem:    The screen.c file is much too big.
Solution:   Split it in three parts. (Yegappan Lakshmanan, closes vim/vim#4943)
https://github.com/vim/vim/commit/7528d1f6b5422750eb778dfb550cfd0b0e540964

This is an approximation vim-patch 8.1.2057. Applying the patch directly
isn't feasible since our version of screen.c has diverged too much,
however we still introduce drawscreen.c and drawline.c:
- screen.c is now a much smaller file used for low level screen functions
- drawline.c contains everything needed for win_line()
- drawscreen.c contains everything needed for update_screen()

Co-authored-by: zeertzjq &lt;zeertzjq@outlook.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>feat(ui): allow to set the highlight namespace per window</title>
<updated>2022-08-17T14:20:39+00:00</updated>
<author>
<name>bfredl</name>
<email>bjorn.linse@gmail.com</email>
</author>
<published>2022-07-25T08:16:33+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=d879331b0dee66cb106b5bea9efc2f920caf9abd'/>
<id>d879331b0dee66cb106b5bea9efc2f920caf9abd</id>
<content type='text'>
- reimplement 'winhl' in terms of highlight namespaces
- check for EOF in screen tests (to indicate a likely crash)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- reimplement 'winhl' in terms of highlight namespaces
- check for EOF in screen tests (to indicate a likely crash)
</pre>
</div>
</content>
</entry>
<entry>
<title>refactor(api): move option code to own file</title>
<updated>2022-06-12T14:09:42+00:00</updated>
<author>
<name>bfredl</name>
<email>bjorn.linse@gmail.com</email>
</author>
<published>2022-06-11T22:37:39+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=4a275e3291d3eade38490801d9842640df3de202'/>
<id>4a275e3291d3eade38490801d9842640df3de202</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>refactor(uncrustify): set maximum number of consecutive newlines to 2 (#18695)</title>
<updated>2022-05-25T18:31:14+00:00</updated>
<author>
<name>dundargoc</name>
<email>33953936+dundargoc@users.noreply.github.com</email>
</author>
<published>2022-05-25T18:31:14+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=9fec6dc9a25b5cf9c9a444ac2bd0728e8af3229e'/>
<id>9fec6dc9a25b5cf9c9a444ac2bd0728e8af3229e</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>docs: typo fixes (#17859)</title>
<updated>2022-04-15T10:35:06+00:00</updated>
<author>
<name>dundargoc</name>
<email>33953936+dundargoc@users.noreply.github.com</email>
</author>
<published>2022-04-15T10:35:06+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=e63e5d1dbd3dd4711efa0ecf9e844ff308b370a6'/>
<id>e63e5d1dbd3dd4711efa0ecf9e844ff308b370a6</id>
<content type='text'>
Co-authored-by: Elias Alves Moura &lt;eliamoura.alves@gmail.com&gt;
Co-authored-by: venkatesh &lt;shariharanvenkatesh@gmail.com&gt;
Co-authored-by: zeertzjq &lt;zeertzjq@outlook.com&gt;
Co-authored-by: Vikas Raj &lt;24727447+numToStr@users.noreply.github.com&gt;
Co-authored-by: Steve Vermeulen &lt;sfvermeulen@gmail.com&gt;
Co-authored-by: Evgeni Chasnovski &lt;evgeni.chasnovski@gmail.com&gt;
Co-authored-by: rwxd &lt;rwxd@pm.me&gt;
Co-authored-by: casswedson &lt;58050969+casswedson@users.noreply.github.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Co-authored-by: Elias Alves Moura &lt;eliamoura.alves@gmail.com&gt;
Co-authored-by: venkatesh &lt;shariharanvenkatesh@gmail.com&gt;
Co-authored-by: zeertzjq &lt;zeertzjq@outlook.com&gt;
Co-authored-by: Vikas Raj &lt;24727447+numToStr@users.noreply.github.com&gt;
Co-authored-by: Steve Vermeulen &lt;sfvermeulen@gmail.com&gt;
Co-authored-by: Evgeni Chasnovski &lt;evgeni.chasnovski@gmail.com&gt;
Co-authored-by: rwxd &lt;rwxd@pm.me&gt;
Co-authored-by: casswedson &lt;58050969+casswedson@users.noreply.github.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>perf(screen): reduce cursorline redrawing when jumping around</title>
<updated>2022-03-24T08:08:59+00:00</updated>
<author>
<name>zeertzjq</name>
<email>zeertzjq@outlook.com</email>
</author>
<published>2022-03-23T03:28:32+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=c29a14d1fa58d5472bd14fec99c5b4228ed38b24'/>
<id>c29a14d1fa58d5472bd14fec99c5b4228ed38b24</id>
<content type='text'>
vim-patch:8.2.4614: redrawing too much when 'cursorline' is set

Problem:    Redrawing too much when 'cursorline' is set and jumping around.
Solution:   Rely on win_update() to redraw the current and previous cursor
            line, do not mark lines as modified. (closes vim/vim#9996)
https://github.com/vim/vim/commit/c20e46a4e3efcd408ef132872238144ea34f7ae5

This doesn't match the patch exactly, because I missed some lines when
porting patch 8.1.2029, and these lines were removed in this patch.

This also makes win_update() always update for 'concealcursor' like how
it always updates for 'cursorline', as 'cursorline' and 'concealcursor'
redrawing logic has been unified in Nvim.

As redrawing for 'cursorline' now always only requires VALID redraw
type, it is no longer necessary to call redraw_for_cursorline() in
nvim_win_set_cursor().
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
vim-patch:8.2.4614: redrawing too much when 'cursorline' is set

Problem:    Redrawing too much when 'cursorline' is set and jumping around.
Solution:   Rely on win_update() to redraw the current and previous cursor
            line, do not mark lines as modified. (closes vim/vim#9996)
https://github.com/vim/vim/commit/c20e46a4e3efcd408ef132872238144ea34f7ae5

This doesn't match the patch exactly, because I missed some lines when
porting patch 8.1.2029, and these lines were removed in this patch.

This also makes win_update() always update for 'concealcursor' like how
it always updates for 'cursorline', as 'cursorline' and 'concealcursor'
redrawing logic has been unified in Nvim.

As redrawing for 'cursorline' now always only requires VALID redraw
type, it is no longer necessary to call redraw_for_cursorline() in
nvim_win_set_cursor().
</pre>
</div>
</content>
</entry>
<entry>
<title>chore: fix typos (#17670)</title>
<updated>2022-03-17T05:21:24+00:00</updated>
<author>
<name>dundargoc</name>
<email>33953936+dundargoc@users.noreply.github.com</email>
</author>
<published>2022-03-17T05:21:24+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=d238b8f6003d34cae7f65ff7585b48a2cd9449fb'/>
<id>d238b8f6003d34cae7f65ff7585b48a2cd9449fb</id>
<content type='text'>
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: zeertzjq &lt;zeertzjq@outlook.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>fix(api): nvim_win_set_cursor() redraw for cursorline and statusline</title>
<updated>2022-02-15T03:53:12+00:00</updated>
<author>
<name>zeertzjq</name>
<email>zeertzjq@outlook.com</email>
</author>
<published>2022-02-15T03:12:09+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=f92e74900fda4583001cb85ba7f974394948ce1a'/>
<id>f92e74900fda4583001cb85ba7f974394948ce1a</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>fix: close floating windows when calling win_close()</title>
<updated>2022-02-10T15:26:40+00:00</updated>
<author>
<name>Rom Grk</name>
<email>romgrk.cc@gmail.com</email>
</author>
<published>2021-04-17T21:33:59+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=85ae04dbfd405343b10c400d40e95334a44cc978'/>
<id>85ae04dbfd405343b10c400d40e95334a44cc978</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>fix(api/nvim_win_call): share common win_execute logic</title>
<updated>2022-02-03T15:03:08+00:00</updated>
<author>
<name>Sean Dewar</name>
<email>seandewar@users.noreply.github.com</email>
</author>
<published>2022-01-08T12:27:35+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=452b46fcf79de52317e2c41adb083d461a93ace5'/>
<id>452b46fcf79de52317e2c41adb083d461a93ace5</id>
<content type='text'>
We have to be sure that the bugs fixed in the previous patches also apply to
nvim_win_call.

Checking v8.1.2124 and v8.2.4026 is especially important as these patches were
only applied to win_execute, but nvim_win_call is also affected by the same
bugs. A lot of win_execute's logic can be shared with nvim_win_call, so factor
it out into a common macro to reduce the possibility of this happening again.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We have to be sure that the bugs fixed in the previous patches also apply to
nvim_win_call.

Checking v8.1.2124 and v8.2.4026 is especially important as these patches were
only applied to win_execute, but nvim_win_call is also affected by the same
bugs. A lot of win_execute's logic can be shared with nvim_win_call, so factor
it out into a common macro to reduce the possibility of this happening again.
</pre>
</div>
</content>
</entry>
</feed>
