Enum comfy_table::Attribute
source · [−]#[non_exhaustive]
pub enum Attribute {
Show 28 variants
Reset,
Bold,
Dim,
Italic,
Underlined,
DoubleUnderlined,
Undercurled,
Underdotted,
Underdashed,
SlowBlink,
RapidBlink,
Reverse,
Hidden,
CrossedOut,
Fraktur,
NoBold,
NormalIntensity,
NoItalic,
NoUnderline,
NoBlink,
NoReverse,
NoHidden,
NotCrossedOut,
Framed,
Encircled,
OverLined,
NotFramedOrEncircled,
NotOverLined,
}
Expand description
Attributes used for styling cell content. Reexport of crossterm’s Attributes enum. Represents an attribute.
Platform-specific Notes
- Only UNIX and Windows 10 terminals do support text attributes.
- Keep in mind that not all terminals support all attributes.
- Crossterm implements almost all attributes listed in the SGR parameters.
Attribute | Windows | UNIX | Notes |
---|---|---|---|
Reset | ✓ | ✓ | |
Bold | ✓ | ✓ | |
Dim | ✓ | ✓ | |
Italic | ? | ? | Not widely supported, sometimes treated as inverse. |
Underlined | ✓ | ✓ | |
SlowBlink | ? | ? | Not widely supported, sometimes treated as inverse. |
RapidBlink | ? | ? | Not widely supported. MS-DOS ANSI.SYS; 150+ per minute. |
Reverse | ✓ | ✓ | |
Hidden | ✓ | ✓ | Also known as Conceal. |
Fraktur | ✗ | ✓ | Legible characters, but marked for deletion. |
DefaultForegroundColor | ? | ? | Implementation specific (according to standard). |
DefaultBackgroundColor | ? | ? | Implementation specific (according to standard). |
Framed | ? | ? | Not widely supported. |
Encircled | ? | ? | This should turn on the encircled attribute. |
OverLined | ? | ? | This should draw a line at the top of the text. |
Examples
Basic usage:
use crossterm::style::Attribute;
println!(
"{} Underlined {} No Underline",
Attribute::Underlined,
Attribute::NoUnderline
);
Style existing text:
use crossterm::style::Stylize;
println!("{}", "Bold text".bold());
println!("{}", "Underlined text".underlined());
println!("{}", "Negative text".negative());
Variants (Non-exhaustive)
This enum is marked as non-exhaustive
Reset
Resets all the attributes.
Bold
Increases the text intensity.
Dim
Decreases the text intensity.
Italic
Emphasises the text.
Underlined
Underlines the text.
DoubleUnderlined
Double underlines the text.
Undercurled
Undercurls the text.
Underdotted
Underdots the text.
Underdashed
Underdashes the text.
SlowBlink
Makes the text blinking (< 150 per minute).
RapidBlink
Makes the text blinking (>= 150 per minute).
Reverse
Swaps foreground and background colors.
Hidden
Hides the text (also known as Conceal).
CrossedOut
Crosses the text.
Fraktur
Sets the Fraktur typeface.
Mostly used for mathematical alphanumeric symbols.
NoBold
Turns off the Bold
attribute. - Inconsistent - Prefer to use NormalIntensity
NormalIntensity
Switches the text back to normal intensity (no bold, italic).
NoItalic
Turns off the Italic
attribute.
NoUnderline
Turns off the Underlined
attribute.
NoBlink
Turns off the text blinking (SlowBlink
or RapidBlink
).
NoReverse
Turns off the Reverse
attribute.
NoHidden
Turns off the Hidden
attribute.
NotCrossedOut
Turns off the CrossedOut
attribute.
Framed
Makes the text framed.
Encircled
Makes the text encircled.
OverLined
Draws a line at the top of the text.
NotFramedOrEncircled
Turns off the Frame
and Encircled
attributes.
NotOverLined
Turns off the OverLined
attribute.
Implementations
sourceimpl Attribute
impl Attribute
Attributes used for styling cell content. Reexport of crossterm’s Attributes enum.
sourceimpl Attribute
impl Attribute
Attributes used for styling cell content. Reexport of crossterm’s Attributes enum.
sourcepub const fn bytes(self) -> u32
pub const fn bytes(self) -> u32
Returns a u32 with one bit set, which is the signature of this attribute in the Attributes bitset.
The +1 enables storing Reset (whose index is 0) in the bitset Attributes.
sourcepub fn sgr(self) -> String
pub fn sgr(self) -> String
Returns the SGR attribute value.
See https://en.wikipedia.org/wiki/ANSI_escape_code#SGR_parameters
Trait Implementations
sourceimpl Ord for Attribute
impl Ord for Attribute
1.21.0 · sourcefn max(self, other: Self) -> Self
fn max(self, other: Self) -> Self
Compares and returns the maximum of two values. Read more
1.21.0 · sourcefn min(self, other: Self) -> Self
fn min(self, other: Self) -> Self
Compares and returns the minimum of two values. Read more
1.50.0 · sourcefn clamp(self, min: Self, max: Self) -> Self where
Self: PartialOrd<Self>,
fn clamp(self, min: Self, max: Self) -> Self where
Self: PartialOrd<Self>,
Restrict a value to a certain interval. Read more
sourceimpl PartialEq<Attribute> for Attribute
impl PartialEq<Attribute> for Attribute
sourceimpl PartialOrd<Attribute> for Attribute
impl PartialOrd<Attribute> for Attribute
sourcefn partial_cmp(&self, other: &Attribute) -> Option<Ordering>
fn partial_cmp(&self, other: &Attribute) -> Option<Ordering>
This method returns an ordering between self
and other
values if one exists. Read more
1.0.0 · sourcefn lt(&self, other: &Rhs) -> bool
fn lt(&self, other: &Rhs) -> bool
This method tests less than (for self
and other
) and is used by the <
operator. Read more
1.0.0 · sourcefn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
impl Copy for Attribute
impl Eq for Attribute
impl StructuralEq for Attribute
impl StructuralPartialEq for Attribute
Auto Trait Implementations
impl RefUnwindSafe for Attribute
impl Send for Attribute
impl Sync for Attribute
impl Unpin for Attribute
impl UnwindSafe for Attribute
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more