feat: add auto select key ids

This commit is contained in:
2023-12-10 14:08:02 +08:00
parent c597a87557
commit 2c2f623df4
3 changed files with 18 additions and 2 deletions

View File

@@ -111,7 +111,7 @@ pub fn decrypt(cmd_decrypt: CmdDecrypt) -> XResult<()> {
"Decrypt {} succeed, cost {} ms{}",
path.to_str().unwrap_or("N/A"),
start_decrypt_single.elapsed().as_millis(),
iff!(len <= 0, "".to_string(), format!(", file size {}", util_size::get_display_size(len as i64)))
iff!(len == 0, "".to_string(), format!(", file size {}", util_size::get_display_size(len as i64)))
);
}
}
@@ -650,6 +650,15 @@ pub fn select_envelop<'a>(meta: &'a TinyEncryptMeta, key_id: &Option<String>, co
return Ok(selected_envelop);
}
// auto select
if let Some(auto_select_key_ids) = util_env::get_auto_select_key_ids() {
for auto_select_key_id in auto_select_key_ids {
if let Some(envelop) = match_envelop_by_key_id(envelops, &Some(auto_select_key_id), config) {
return Ok(envelop);
}
}
}
envelops.iter().enumerate().for_each(|(i, envelop)| {
println_ex!("#{} {}", i + 1, util_envelop::format_envelop(envelop, config));
});