add url to rendered text

This commit is contained in:
2025-07-18 22:11:33 +02:00
parent 5c5845adf6
commit 1aec2abca5

View File

@@ -1,5 +1,6 @@
use clap::Parser;
use regex::Regex;
use std::io::Write;
use std::{fs, path::PathBuf};
use termimad::crossterm::style::Color::*;
use termimad::*;
@@ -31,6 +32,8 @@ fn replace_links(input: &str) -> String {
intermediate.replace("]", "** ")
}
fn add_github_link(input: &str, name: &str, file: &DirEntry) -> String {}
fn render(input: &str) -> String {
let mut skin = MadSkin::default();
skin.set_headers_fg(rgb(255, 187, 0));
@@ -53,17 +56,25 @@ async fn process_file(
let html_stripped = &remove_html(markdown);
let links_replaced = &replace_links(html_stripped);
let name = get_file_name(&file);
let dir = file.path().parent().unwrap();
let url = fs::read_to_string(dir.to_str().unwrap().to_owned() + "url").unwrap();
let rendered = render(links_replaced);
copy_readme(&file, readme_dir);
let github_link_added =
links_replaced.to_owned() + "\n" + name.as_str() + " Github: " + url.as_str();
let rendered = render(github_link_added.as_str());
copy_readme(&file, readme_dir, &url);
write_file(output_dir, &file, &rendered)
}
fn copy_readme(file: &DirEntry, readme_dir: PathBuf) {
fn copy_readme(file: &DirEntry, readme_dir: PathBuf, url: &str) {
let file_name = get_file_name(&file) + ".md";
let readme_path = get_output_path(readme_dir, &file_name);
let _ = std::fs::copy(file.path(), readme_path);
let _ = std::fs::copy(file.path(), &readme_path);
let mut readme_file = fs::File::options().append(true).open(readme_path).unwrap();
writeln!(readme_file, "\n[{} Github]({})", file_name, url);
}
fn get_file_name(file: &DirEntry) -> String {
@@ -114,7 +125,7 @@ async fn main() {
.max_depth(2)
.into_iter()
.filter_map(|e| e.ok())
.filter(|file| file.file_name() == "README.md")
.filter(|file| file.file_name().eq_ignore_ascii_case("readme.md"))
.map(|file| task::spawn(process_file(file, render_path.clone(), readme_path.clone())))
.collect();