#editor #text-editing #text #user-input #cli-applications #xvrqt

scrawl

打开用户首选的文本编辑器,以便他们可以在线编辑数据,并返回一个可读的struct,用于交互式CLI应用程序

10个版本 (3个稳定版)

2.0.0 2023年2月2日
1.1.0 2019年12月5日
1.0.0 2019年7月30日
0.9.0 2019年7月27日
0.1.5 2019年7月27日

#134 in 文本编辑器

Download history 168/week @ 2024-03-11 80/week @ 2024-03-18 74/week @ 2024-03-25 136/week @ 2024-04-01 67/week @ 2024-04-08 104/week @ 2024-04-15 82/week @ 2024-04-22 119/week @ 2024-04-29 60/week @ 2024-05-06 83/week @ 2024-05-13 75/week @ 2024-05-20 223/week @ 2024-05-27 121/week @ 2024-06-03 58/week @ 2024-06-10 55/week @ 2024-06-17 45/week @ 2024-06-24

每月308次下载
5 crates中使用

BSD-3-Clause

16KB
223

Scrawl

Scrawl是一个Rust库,可以打开用户的文本编辑器,并将结果作为字符串返回。可以用来打开和编辑现有文件,或者只是一个输入的临时空间。对于让用户在CLI程序中在线编辑文本非常有用,类似于git commit -m

快速开始

use scrawl;

fn main() {
    // Open an empty buffer with the user's preferred text editor
    let output = scrawl::new()?;
    println!("User Input: {}", output.to_string());

    // Open a buffer with contents in the text editor
    let output = scrawl::with(&"Favorite color: ")?;
    println!("{}", output.to_string());

    // Open a buffer with text from a file in the text editor
    let output = scrawl::from_file(&"survey.txt")?;
    println!("{}", output.to_string());

    // Open a file for direct editing in the text editor
    scrawl::edit_file(&"README.md")?;
}

编辑器结构体

编辑器结构体允许你在打开编辑器之前设置某些选项。例如:打开哪个编辑器,传递给该编辑器的哪些参数,编辑时使用哪个文件扩展名(为编辑器提供语法高亮提示)。

use scrawl::{editor, Contents};

fn main() -> Result<(), error::ScrawlError> {
    let output = editor::new()
                        .editor("vim")
                        .args("--clean")
                        .ext(".rs)
                        .open(Contents::FromFile(&"foo.txt"))?;
}

无运行时依赖