Repository navigation
fix -w clears or messes up terminal - #227
Pistonight wants to merge 2 commits into
Conversation
|
How are you killing it? Why are the changes to run_sync not needed in the -w case? Does terminate() vs kill() affect refresh performance? I feel like that's why I chose kill in the first place |
|
I will do more testing and get back |
|
Ahh I remembered, the changes to I haven't tested the performance question yet |
|
I made a (somewhat hacky) benchmark with LLM. The result is kill/terminate doesn't make a big difference in terms of refresh performance, but my change actually makes it faster with terminate() even though kill() is faster at killing the process. The reason is the change from However the difference (considering the tput reset) is only 2-3 ms, which is insignificant to the 100ms fs watch debounce interval and objdump which also takes tens of ms. Another question is if run_sync should raise KeyboardInterrupt. Right now |
|
Yeah, exiting cleanly is probably nicer. Nice to hear the absolute perf numbers are better. But just to double-check, because it's what I was really worrying about: does it add visual flickering? |
|
Yes it does flicker, let me see what I can do about it.. I didn't catch this because I was running inside neovim's terminal which has a very low refresh rate :< Even kill flickers but it only flickers to blank instead of whatever was in the terminal before the alternate screen launches which is a little bit better |
|
Proof of concept that worked: Run less with @simonlindholm are you ok with this path? It does add ~ 100 lines of code for handling the alternate screen and Ctrl-Z suspend signals ourselves |
When killing
less, terminal gets messed up so there's no way to restore it other than clearing it completely, which is a bit annoying.