<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rneovim.git/src/nvim/tui, branch 20230125_mix</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>fix(tui): detach/attach on suspend/resume (#22040)</title>
<updated>2023-02-02T14:42:15+00:00</updated>
<author>
<name>zeertzjq</name>
<email>zeertzjq@outlook.com</email>
</author>
<published>2023-02-02T14:42:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=d3355ad01c3b9d1dbc62210c29d8e51245f081aa'/>
<id>d3355ad01c3b9d1dbc62210c29d8e51245f081aa</id>
<content type='text'>
Problem:
When a TUI client is suspended it still receives UI events from the
server, and has to process these accumulated events when it is resumed.
With mulitple TUI clients this is a bigger problem, considering the
following steps:
1. A TUI client is attached.
2. CTRL-Z is pressed and the first client is suspended.
3. Another TUI client is attached.
4. CTRL-Z is pressed and a "suspend" event is sent to both clients. The
   second client is suspended, while the first client isn't able to
   process the event because it has already been suspended.
5. The first client is resumed. It processes the accumulated "suspend"
   event and suspends immediately.

Solution:
Make a TUI client detach on suspend and re-attach on resume.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem:
When a TUI client is suspended it still receives UI events from the
server, and has to process these accumulated events when it is resumed.
With mulitple TUI clients this is a bigger problem, considering the
following steps:
1. A TUI client is attached.
2. CTRL-Z is pressed and the first client is suspended.
3. Another TUI client is attached.
4. CTRL-Z is pressed and a "suspend" event is sent to both clients. The
   second client is suspended, while the first client isn't able to
   process the event because it has already been suspended.
5. The first client is resumed. It processes the accumulated "suspend"
   event and suspends immediately.

Solution:
Make a TUI client detach on suspend and re-attach on resume.</pre>
</div>
</content>
</entry>
<entry>
<title>fix(exit): skip unnecessary steps in TUI preserve_exit() (#21897)</title>
<updated>2023-02-02T02:05:03+00:00</updated>
<author>
<name>zeertzjq</name>
<email>zeertzjq@outlook.com</email>
</author>
<published>2023-02-02T02:05:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=2c5906b55bb6092121f4d3b032d5449da7675c2b'/>
<id>2c5906b55bb6092121f4d3b032d5449da7675c2b</id>
<content type='text'>
This prevents the TUI from doing unexpected things when receiving a
deadly signal or running out of memory.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This prevents the TUI from doing unexpected things when receiving a
deadly signal or running out of memory.</pre>
</div>
</content>
</entry>
<entry>
<title>refactor(tests): run unittests using main nvim binary in interpreter mode</title>
<updated>2023-01-31T18:28:26+00:00</updated>
<author>
<name>bfredl</name>
<email>bjorn.linse@gmail.com</email>
</author>
<published>2023-01-30T19:36:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=13aa23b62af4df3e7f10687b76fe8c04efa2a598'/>
<id>13aa23b62af4df3e7f10687b76fe8c04efa2a598</id>
<content type='text'>
This allows us to get rid of the separate "nvim-test" target
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This allows us to get rid of the separate "nvim-test" target
</pre>
</div>
</content>
</entry>
<entry>
<title>fix(tui): set stdin as "blocking" on exit (#21973)</title>
<updated>2023-01-24T23:34:28+00:00</updated>
<author>
<name>zeertzjq</name>
<email>zeertzjq@outlook.com</email>
</author>
<published>2023-01-24T23:34:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=51b39f816ca4a44660e7ab7906520ae908492734'/>
<id>51b39f816ca4a44660e7ab7906520ae908492734</id>
<content type='text'>
This fixes a regression from #21605 that stdin is no longer set as
"blocking" after Nvim TUI exits, and the problems described in #2598
happen again.

I'm not sure if this should be done in TUI code or common exiting code.
I added this call in tui_stop() as it is also present in tui_suspend().</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This fixes a regression from #21605 that stdin is no longer set as
"blocking" after Nvim TUI exits, and the problems described in #2598
happen again.

I'm not sure if this should be done in TUI code or common exiting code.
I added this call in tui_stop() as it is also present in tui_suspend().</pre>
</div>
</content>
</entry>
<entry>
<title>feat(tui): support altfont mode in tui.c</title>
<updated>2023-01-24T11:27:50+00:00</updated>
<author>
<name>Paul "LeoNerd" Evans</name>
<email>leonerd@leonerd.org.uk</email>
</author>
<published>2023-01-18T18:19:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=a56dc7a7f6f4cae9461921cf9253152a40cd7619'/>
<id>a56dc7a7f6f4cae9461921cf9253152a40cd7619</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>refactor(highlight): reshape the HL_UNDER* bits into a 3-bit integer mask</title>
<updated>2023-01-24T11:27:50+00:00</updated>
<author>
<name>Paul "LeoNerd" Evans</name>
<email>leonerd@leonerd.org.uk</email>
</author>
<published>2023-01-19T17:51:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=f5d357de553c1aa61cdb25b047f984f6414b1967'/>
<id>f5d357de553c1aa61cdb25b047f984f6414b1967</id>
<content type='text'>
Saves two bits for reuse for new features
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Saves two bits for reuse for new features
</pre>
</div>
</content>
</entry>
<entry>
<title>fix(unittests): fix TUI broken test previously ignored</title>
<updated>2023-01-18T13:56:55+00:00</updated>
<author>
<name>bfredl</name>
<email>bjorn.linse@gmail.com</email>
</author>
<published>2023-01-18T12:59:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=6bfbb4db1d3708ce4ea69d29f3afe73def5a9f2a'/>
<id>6bfbb4db1d3708ce4ea69d29f3afe73def5a9f2a</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge pull request #21831 from bfredl/nofd</title>
<updated>2023-01-16T10:55:34+00:00</updated>
<author>
<name>bfredl</name>
<email>bjorn.linse@gmail.com</email>
</author>
<published>2023-01-16T10:55:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=90493beb1584b9a99d3a71658bccd536d601e0f7'/>
<id>90493beb1584b9a99d3a71658bccd536d601e0f7</id>
<content type='text'>
fix(ui): re-organize tty fd handling and fix issues</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
fix(ui): re-organize tty fd handling and fix issues</pre>
</div>
</content>
</entry>
<entry>
<title>fix(ui): re-organize tty fd handling and fix issues</title>
<updated>2023-01-16T10:26:49+00:00</updated>
<author>
<name>bfredl</name>
<email>bjorn.linse@gmail.com</email>
</author>
<published>2023-01-10T13:03:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=160c69b655ce2e47fbedcc87fcb4949c2bc04dce'/>
<id>160c69b655ce2e47fbedcc87fcb4949c2bc04dce</id>
<content type='text'>
- Use the correct fd to replace stdin on windows (CONIN)
- Don't start the TUI if there are no tty fd (not a regression,
  but makes sense regardless)
- De-mythologize "global input fd". it is just STDIN.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- Use the correct fd to replace stdin on windows (CONIN)
- Don't start the TUI if there are no tty fd (not a regression,
  but makes sense regardless)
- De-mythologize "global input fd". it is just STDIN.
</pre>
</div>
</content>
</entry>
<entry>
<title>refactor: fix IWYU mapping file and use IWYU (#21802)</title>
<updated>2023-01-15T13:16:33+00:00</updated>
<author>
<name>dundargoc</name>
<email>33953936+dundargoc@users.noreply.github.com</email>
</author>
<published>2023-01-15T13:16:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=3269902a13df3bccf8705db73488c0a47f495514'/>
<id>3269902a13df3bccf8705db73488c0a47f495514</id>
<content type='text'>
Also add the EXITFREE definition to main_lib rather than the nvim target, as the header generation needs the EXITFREE flag to work properly.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Also add the EXITFREE definition to main_lib rather than the nvim target, as the header generation needs the EXITFREE flag to work properly.</pre>
</div>
</content>
</entry>
</feed>
