The code to follow logs had a bug where it'd increment the scroll offset regardless of how much of the screen was filled, so on startup it would start "following", pushing the logs up off the top.
This PR adds a second check to wait until the logs have filled the screen before auto-incrementing the scroll offset to follow.
I also tweaked the formatting of the key mapping matches to be more readable (IMO) and introduced a rudimentary debug status bar (hidden by default) which was essential for understanding this bug and fixing it.
I've found keeping debug info like this readily available to be a huge boon when working on my text editor project. I recommend keeping this in the code, at least while the TUI is in an experimental stage. But I'm also happy to remove if you'd rather not include that change.
Commits are atomic; I recommend reviewing them individually.
The code to follow logs had a bug where it'd increment the scroll offset regardless of how much of the screen was filled, so on startup it would start "following", pushing the logs up off the top.
This PR adds a second check to wait until the logs have filled the screen before auto-incrementing the scroll offset to follow.
I also tweaked the formatting of the key mapping
match
es to be more readable (IMO) and introduced a rudimentary debug status bar (hidden by default) which was essential for understanding this bug and fixing it.I've found keeping debug info like this readily available to be a huge boon when working on my text editor project. I recommend keeping this in the code, at least while the TUI is in an experimental stage. But I'm also happy to remove if you'd rather not include that change.
Commits are atomic; I recommend reviewing them individually.