diff options
author | Gaurav <allmanpride@gmail.com> | 2022-08-03 00:44:10 +0000 |
---|---|---|
committer | Gaurav <allmanpride@gmail.com> | 2022-08-14 00:03:49 +0000 |
commit | b018457e54c66862f163cb5aacbca71a3321c9ae (patch) | |
tree | 1f2384581abfd3b75ec752cb6b17cab38dc44136 /src/listing.rs | |
parent | Bump deps (diff) | |
download | miniserve-b018457e54c66862f163cb5aacbca71a3321c9ae.tar.gz miniserve-b018457e54c66862f163cb5aacbca71a3321c9ae.zip |
Add support for readme rendering
Diffstat (limited to '')
-rw-r--r-- | src/listing.rs | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/listing.rs b/src/listing.rs index 25f50fa..3c77c14 100644 --- a/src/listing.rs +++ b/src/listing.rs @@ -232,6 +232,7 @@ pub fn directory_listing( } let mut entries: Vec<Entry> = Vec::new(); + let mut readme: Option<String> = None; for entry in dir.path.read_dir()? { if dir.is_visible(&entry) || conf.show_hidden { @@ -275,13 +276,17 @@ pub fn directory_listing( )); } else if metadata.is_file() { entries.push(Entry::new( - file_name, + file_name.clone(), EntryType::File, file_url, Some(ByteSize::b(metadata.len())), last_modification_date, symlink_dest, )); + // TODO: Pattern match, or user arg for readme name? + if file_name.to_lowercase() == "readme.md"{ + readme = Some(file_name); + } } } else { continue; @@ -372,6 +377,7 @@ pub fn directory_listing( HttpResponse::Ok().content_type(mime::TEXT_HTML_UTF_8).body( renderer::page( entries, + readme, is_root, query_params, breadcrumbs, |