pub mod commit_msg;
mod footer;
pub mod header;
fn preprocess_lines(content: &str) -> Vec<String> {
content
.lines()
.map(|line| line.trim_start_matches('\u{feff}')) .map(|line| line.trim_matches(|c: char| c.is_control())) .filter(|line| !line.trim_start().starts_with('#')) .map(|s| s.to_string())
.collect()
}
pub fn get_first_non_empty_line(content: &str) -> Option<String> {
preprocess_lines(content)
.into_iter()
.find(|line| !line.trim().is_empty())
}