feat(deltachat-repl): built-in QR code printer

Print QR codes with Rust code
instead of depending on external `qrencode`.
This commit is contained in:
link2xt
2024-10-15 22:36:14 +00:00
parent 3a72188548
commit f14880146a
4 changed files with 42 additions and 16 deletions

View File

@@ -9,8 +9,6 @@
extern crate deltachat;
use std::borrow::Cow::{self, Borrowed, Owned};
use std::io::{self, Write};
use std::process::Command;
use anyhow::{bail, Error};
use deltachat::chat::ChatId;
@@ -450,12 +448,7 @@ async fn handle_cmd(
qr.replace_range(12..22, "0000000000")
}
println!("{qr}");
let output = Command::new("qrencode")
.args(["-t", "ansiutf8", qr.as_str(), "-o", "-"])
.output()
.expect("failed to execute process");
io::stdout().write_all(&output.stdout).unwrap();
io::stderr().write_all(&output.stderr).unwrap();
qr2term::print_qr(qr.as_str())?;
}
}
"getqrsvg" => {