diff options
| author | sigoden <sigoden@gmail.com> | 2023-10-30 13:36:08 +0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-10-30 13:36:08 +0800 |
| commit | ba3cc4f15dd4b7457bbcacc64fcdbdbb0362d473 (patch) | |
| tree | 0689264c52b226c9fe88b1fb6730715a74b5a2a0 /src/term.rs | |
| parent | 2f9121e515150981ac061389656c33eea577c336 (diff) | |
| download | aichat-ba3cc4f15dd4b7457bbcacc64fcdbdbb0362d473.tar.gz | |
feat: deprecate history file (#179)
Diffstat (limited to 'src/term.rs')
| -rw-r--r-- | src/term.rs | 32 |
1 files changed, 0 insertions, 32 deletions
diff --git a/src/term.rs b/src/term.rs deleted file mode 100644 index 84449f4..0000000 --- a/src/term.rs +++ /dev/null @@ -1,32 +0,0 @@ -use anyhow::Result; -use crossterm::{ - cursor, queue, style, - terminal::{self, disable_raw_mode, enable_raw_mode, ClearType}, -}; -use std::io::{self, Stdout, Write}; - -pub fn clear_screen(keep_lines: u16) -> Result<()> { - enable_raw_mode()?; - let mut stdout = io::stdout(); - - let ret = clear_screen_inner(&mut stdout, keep_lines); - - // restore terminal - disable_raw_mode()?; - - ret -} - -fn clear_screen_inner(writer: &mut Stdout, keep_lines: u16) -> Result<()> { - let (_, h) = terminal::size()?; - queue!( - writer, - style::Print("\n".repeat((h - 2).into())), - terminal::ScrollUp(2), - cursor::MoveTo(0, 0), - terminal::Clear(ClearType::FromCursorDown), - terminal::ScrollUp(keep_lines), - )?; - writer.flush()?; - Ok(()) -} |
