src/content/docs/highlights/v0.26.2.md
https://github.com/ratatui/ratatui/releases/tag/v0.26.2
The minimum supported Rust version of Ratatui is updated from 1.70.0 to 1.74.0.
We introduced a new method for List which allows a certain number of items be kept visible above
and below the currently selected item while scrolling.
let list = List::new(items).scroll_padding(1);
(visible on the left side)
</center> </details>Line and Text widgets now implement FromIterator which means you can:
Line from an iterator of Spanlet line = Line::from_iter(vec!["Hello".blue(), " world!".green()]);
let line: Line = iter::once("Hello".blue())
.chain(iter::once(" world!".green()))
.collect();
Text from an iterator of Linelet text = Text::from_iter(vec!["The first line", "The second line"]);
let text: Text = iter::once("The first line")
.chain(iter::once("The second line"))
.collect();
We added the following methods to the Text and Line structs:
Text::push_lineText::push_spanLine::push_spanThis allows for adding lines and spans to a text object without having to call methods on the fields directly, which is useful for incremental construction of text objects.
For example:
let mut line = Line::from("Hello, ");
line.push_span(Span::raw("world!"));
line.push_span(" How are you?");
Widget is now implemented for &str and String, which makes it easier to render strings with no
styles as widgets.
Example usage:
terminal.draw(|f| f.render_widget("Hello World!", f.size()))?;
The following Span methods are renamed accordingly to the Rust method naming conventions.
Deprecated usage:
Span::to_centered_lineSpan::to_left_aligned_lineSpan::to_right_aligned_lineNew usage:
Span::into_centered_lineSpan::into_left_aligned_lineSpan::into_right_aligned_lineWe are happy to share that we have received a funding donation from Radicle!
You can read about the details here.
And lastly, we welcome @EdJoPaTo on board as a maintainer! ๐ฅณ