Closed pm100 closed 11 months ago
As I understand it, @rhysd's plan is to make ratatui
the default in the next release and then deprecate tui in a release after that.
Why?
Because I don't want to remove compatibility as much as possible until there is some strong motivation. tui.rs was going inactive, but it is still usable and actually many apps are depending on it. When I think it is hard to maintain support for both crates, I would start to consider dropping tui-rs support.
new features are being added to ratatui and textarea cannot take advantage of them
We can add implementation to tui-textarea only when ratatui-*
feature gates are enabled.
impl TextArea {
#[cfg(any(feature = "ratatui-crossterm", feature = "ratatui-termion", feature = "ratatui-your-backend"))]
pub fn do_something(self) {
// Do something with features only available with ratatui
}
}
OK I will resumbit #29 using the ratatui masked feature. Please can you look at the PR sooner rather than later (once I have resubmitted it) . It took 5 months to get my last request through and my work on gitui was blocked for that duration.
@pm100 Yes, that's great. Please ping me by @rhysd mention when my response is not good.
@rhysd - ok the PR is there now. But I had a change of plan. The actual mask code was fairly simple - in fact just a one liner. But it got very complicated with all the feature combinations and fiddly due to it having to be in several places. So instead I just lifted the one liner from ratatuis mask code and dropped it in to replace_tabs, which is really 'prepare_line_for_display'. So now it works with tui and ratatui
Let me close this for now since there is no strong motivation to do this.
since tui is now basically dead, textarea should drop support for it and only support ratatui. Why? because new features are being added to ratatui and textarea cannot take advantage of them without getting very messy.
See https://github.com/rhysd/tui-textarea/pull/29