v0.26.2
https://github.com/ratatui/ratatui/releases/tag/v0.26.2
MSRV: 1.74.0🦀
Ratatuiの最小サポートされたRustバージョンは、 1.70.0
から 1.74.0
に更新されます。
List: Scroll Padding 📜
スクロール中に、現在選択されている項目の上下に一定数の項目を表示し続けることができる「List」の新しいメソッドを導入しました。
let list = List::new(items).scroll_padding(1);
Demo of the new behavior
(visible on the left side)
テキスト: iterator🏗️の構成
Line
および Text
ウィジェットは、 FromIterator
を実装するようになりました。
Span
のiteratorからLine
を構築する
let line = Line::from_iter(vec!["Hello".blue(), " world!".green()]);let line: Line = iter::once("Hello".blue()) .chain(iter::once(" world!".green())) .collect();
Line
のiteratorからText
を構築する
let 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();
テキスト: プッシュメソッド📥
Text
および Line
structsに次の方法を追加しました:
Text::push_line
Text::push_span
Line::push_span
これにより、フィールドのメソッドを直接呼び出すことなく、テキスト オブジェクトに線や範囲を追加できるため、テキスト オブジェクトの増分構築に役立ちます。
例えば:
let mut line = Line::from("Hello, ");line.push_span(Span::raw("world!"));line.push_span(" How are you?");
文字列にウィジェットを実装する
Widget
は、 &str
および String
のために実装されるようになりました。
使用例:
terminal.draw(|f| f.render_widget("Hello World!", f.size()))?;
Span: Rename Methods 🔄
以下の Span メソッドは、Rust メソッドの命名規則に従って名前が変更されています。
非推奨の使用法:
Span::to_centered_line
Span::to_left_aligned_line
Span::to_right_aligned_line
新しい使用法:
Span::into_centered_line
Span::into_left_aligned_line
Span::into_right_aligned_line
資金調達🧀
Radicle から資金提供を受けたことをお知らせします。
詳細については、こちら をご覧ください。
他の💼
- さまざまな関数を const としてマークしました (#951)
- 行切り捨ての配置を尊重します (#987)
- 長さゼロのトラックにスクロールバーをレンダリングしません (#964)
- 境界外のテキストをレンダリングするときにパニックが発生する問題を修正しました (#997)
- highlight_symbol のオーバーフローを修正しました (#949)
- 長いリストでスクロールバーのサムが表示されない問題を修正しました(#959)
- 段落がスタイル付きテキストを正しくレンダリングするようにします (#992)
- クリッピー (ペダンティック) な提案を適用しました
最後に、@EdJoPaTo をメンテナーとして歓迎します! 🥳