I realized having to host this potentially indefinitely might not be the best idea, so I am going to shut down this gitea instance eventually.
You’ll have time, at least until the end of 2022, probably longer, but please just get all your stuff somewhere safe in case we ever disappear.
If any of your build scripts rely on my (kageru’s) projects hosted here, check my Github or IEW on Github for encoding projects. If you can’t find what you’re looking there, tell me to migrate it.

Process multiple files at a time

master
kageru 4 years ago
parent 5e84b5729c
commit f96f454791
Signed by: kageru
GPG Key ID: 8282A2BEA4ADA3D2

@ -5,6 +5,20 @@ use std::env;
use std::fs;
use std::process;
fn apply_renames(filename: &String, renames: &HashMap<String, String>) -> Result<()> {
let mut outputs = Vec::new();
let pls_file = File::open(filename)?;
for entry in BufReader::new(pls_file).lines() {
let entry = entry?;
let new = renames.get(&entry).unwrap_or(&entry).to_string();
outputs.push(new);
}
let data = outputs.join("\n");
fs::write(filename, data).expect("unable to write");
Ok(())
}
fn main() -> Result<()> {
let args: Vec<String> = env::args().collect();
@ -14,8 +28,6 @@ fn main() -> Result<()> {
}
let rename_file = &args[1];
let playlist_file = &args[2];
println!("{:?}", rename_file);
let file = File::open(rename_file)?;
let mut renames = HashMap::new();
@ -24,24 +36,16 @@ fn main() -> Result<()> {
let split: Vec<&str> = line.split("\t\t").collect();
renames.insert(split[0].to_string(), split[1].to_string());
}
let mut outputs = Vec::new();
let pls_file = File::open(playlist_file)?;
for entry in BufReader::new(pls_file).lines() {
let entry = entry?;
let new = renames.get(&entry).unwrap_or(&entry).to_string();
for r in &args[2..] {
try!(apply_renames(&r, &renames));
/*
if new != &entry {
println!("renamed “{}” to “{}”", entry, new);
} else {
println!("“{}” remains unchanged", entry);
}
match apply_renames(&r, &renames) {
Ok(()) => println!("Successfully processed renames for {}", r)
},
_ => println!("Error processing {}", r);
*/
outputs.push(new);
}
let data = outputs.join("\n");
fs::write("playlist2.m3u", data).expect("unable to write");
Ok(())
Ok(())
}

Loading…
Cancel
Save