diff options
| author | sigoden <sigoden@gmail.com> | 2023-05-04 22:42:50 +0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-05-04 22:42:50 +0800 |
| commit | 00ce1575715329a21726a506b13c0c2aef7f3f82 (patch) | |
| tree | 766da2bf873b8f37936e1f5a385fc19d191bc193 /src/utils | |
| parent | cf03952c7bd44a3ad94a675b846cdfafb2af1c75 (diff) | |
| download | aichat-00ce1575715329a21726a506b13c0c2aef7f3f82.tar.gz | |
feat: add `.copy` command (#119)
Diffstat (limited to 'src/utils')
| -rw-r--r-- | src/utils/mod.rs | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/utils/mod.rs b/src/utils/mod.rs index 64fc01c..ec57fed 100644 --- a/src/utils/mod.rs +++ b/src/utils/mod.rs @@ -2,6 +2,7 @@ mod tiktoken; pub use self::tiktoken::{cl100k_base_singleton, count_tokens, text_to_tokens, tokens_to_text}; +use arboard::Clipboard; use chrono::prelude::*; use crossterm::style::{Color, Stylize}; use std::io::{stdout, Write}; @@ -35,6 +36,11 @@ pub fn mask_text(text: &str, head: usize, tail: usize) -> String { format!("{}...{}", &text[0..head], &text[text.len() - tail..]) } +pub fn copy(src: &str) -> Result<(), arboard::Error> { + let mut clipboard = Clipboard::new()?; + clipboard.set_text(src) +} + #[cfg(test)] mod tests { use super::*; |
