1 unstable release
Uses new Rust 2024
new 0.1.1 | Mar 30, 2025 |
---|
#306 in Command-line interface
42KB
931 lines
tui-rule,
A pretty rule widget using colorgrad
Info:
A terminal representation of html's <hr>
tag in the form of a widget.
Uses colorgrad for gradients.
Note:
- Rules are automatically fitted inside the provided area to avoid being rendered over blocks
See CHANGELOG.md for more info
Horizontal rule with margin + gradient
let block = Block::bordered();
let rule = Rule::from_set(
presets::test_sets::HORIZONTAL
)
.with_gradient(colorgrad::preset::warm())
.horizontal_padding(4);
f.render_widget(rule, f.area());
f.render_widget(block, f.area());
Vertical rule with margin + gradient
let block = Block::bordered();
let rule = Rule::from_set(
presets::test_sets::VERTICAL,
)
.with_gradient(colorgrad::preset::warm())
.vertical()
.vertical_padding(1);
f.render_widget(rule, f.area());
f.render_widget(block, f.area());
Rules without gradients are also supported
let block = Block::bordered();
let rule_vert = Rule::from_set(
presets::test_sets::VERTICAL
)
.horizontal_alignment(Alignment::Left)
.vertical()
.horizontal_padding(4)
.vertical_padding(1);
let rule_hor = Rule::from_set(
presets::test_sets::HORIZONTAL
)
.horizontal_padding(6);
f.render_widget(rule_hor, f.area());
f.render_widget(rule_vert, f.area());
f.render_widget(block, f.area());
See PRESET_EXAMPLES.md for more examples
Dependencies
~7–18MB
~239K SLoC