Skip to content

Commit

Permalink
SetCursorStyle documentation improvements (#744)
Browse files Browse the repository at this point in the history
  • Loading branch information
Cl00e9ment committed Jan 12, 2023
1 parent 814df1c commit fadec7a
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 17 deletions.
26 changes: 12 additions & 14 deletions src/cursor.rs
Expand Up @@ -328,12 +328,11 @@ impl Command for Show {
}

/// A command that enables blinking of the terminal cursor.
///
/// See `SetCursorStyle` which is more advanced and better supported.
///
///
/// # Notes
///
/// - Windows versions lower than Windows 10 do not support this functionality.
/// - Some Unix terminals (ex: GNOME and Konsole) as well as Windows versions lower than Windows 10 do not support this functionality.
/// Use `SetCursorStyle` for better cross-compatibility.
/// - Commands must be executed/queued for execution otherwise they do nothing.
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub struct EnableBlinking;
Expand All @@ -349,11 +348,10 @@ impl Command for EnableBlinking {

/// A command that disables blinking of the terminal cursor.
///
/// See `SetCursorStyle` which is more advanced and better supported.
///
/// # Notes
///
/// - Windows versions lower than Windows 10 do not support this functionality.
/// - Some Unix terminals (ex: GNOME and Konsole) as well as Windows versions lower than Windows 10 do not support this functionality.
/// Use `SetCursorStyle` for better cross-compatibility.
/// - Commands must be executed/queued for execution otherwise they do nothing.
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub struct DisableBlinking;
Expand Down Expand Up @@ -393,13 +391,13 @@ pub enum SetCursorStyle {
impl Command for SetCursorStyle {
fn write_ansi(&self, f: &mut impl fmt::Write) -> fmt::Result {
match self {
SetCursorStyle::DefaultUserShape => f.write_str("\x1b[?12h\x1b[0 q"),
SetCursorStyle::BlinkingBlock => f.write_str("\x1b[?12h\x1b[1 q"),
SetCursorStyle::SteadyBlock => f.write_str("\x1b[?12l\x1b[2 q"),
SetCursorStyle::BlinkingUnderScore => f.write_str("\x1b[?12h\x1b[3 q"),
SetCursorStyle::SteadyUnderScore => f.write_str("\x1b[?12l\x1b[4 q"),
SetCursorStyle::BlinkingBar => f.write_str("\x1b[?12h\x1b[5 q"),
SetCursorStyle::SteadyBar => f.write_str("\x1b[?12l\x1b[6 q"),
SetCursorStyle::DefaultUserShape => f.write_str("\x1b[0 q"),
SetCursorStyle::BlinkingBlock => f.write_str("\x1b[1 q"),
SetCursorStyle::SteadyBlock => f.write_str("\x1b[2 q"),
SetCursorStyle::BlinkingUnderScore => f.write_str("\x1b[3 q"),
SetCursorStyle::SteadyUnderScore => f.write_str("\x1b[4 q"),
SetCursorStyle::BlinkingBar => f.write_str("\x1b[5 q"),
SetCursorStyle::SteadyBar => f.write_str("\x1b[6 q"),
}
}

Expand Down
5 changes: 2 additions & 3 deletions src/lib.rs
Expand Up @@ -41,15 +41,14 @@
//! - Module [`cursor`](cursor/index.html)
//! - Visibility - [`Show`](cursor/struct.Show.html), [`Hide`](cursor/struct.Hide.html)
//! - Appearance - [`EnableBlinking`](cursor/struct.EnableBlinking.html),
//! [`DisableBlinking`](cursor/struct.DisableBlinking.html)
//! [`DisableBlinking`](cursor/struct.DisableBlinking.html),
//! [`SetCursorStyle`](cursor/enum.SetCursorStyle.html)
//! - Position -
//! [`SavePosition`](cursor/struct.SavePosition.html), [`RestorePosition`](cursor/struct.RestorePosition.html),
//! [`MoveUp`](cursor/struct.MoveUp.html), [`MoveDown`](cursor/struct.MoveDown.html),
//! [`MoveLeft`](cursor/struct.MoveLeft.html), [`MoveRight`](cursor/struct.MoveRight.html),
//! [`MoveTo`](cursor/struct.MoveTo.html), [`MoveToColumn`](cursor/struct.MoveToColumn.html),[`MoveToRow`](cursor/struct.MoveToRow.html),
//! [`MoveToNextLine`](cursor/struct.MoveToNextLine.html), [`MoveToPreviousLine`](cursor/struct.MoveToPreviousLine.html)
//! - Shape -
//! [`SetCursorShape`](cursor/struct.SetCursorShape.html)
//! - Module [`event`](event/index.html)
//! - Keyboard events -
//! [`PushKeyboardEnhancementFlags`](event/struct.PushKeyboardEnhancementFlags.html),
Expand Down

0 comments on commit fadec7a

Please sign in to comment.