2026-02-21 14:59:48 -05:00
|
|
|
// SPDX-FileCopyrightText: 2026, Shaun Reed <shaunrd0@gmail.com>
|
|
|
|
|
//
|
|
|
|
|
// SPDX-License-Identifier: GNU General Public License v3.0 or later
|
|
|
|
|
|
|
|
|
|
pub mod entry_meta;
|
2026-02-22 11:35:25 -05:00
|
|
|
|
|
|
|
|
use devicons::FileIcon;
|
|
|
|
|
use std::path::Path;
|
|
|
|
|
|
|
|
|
|
pub fn icon<P: AsRef<str>>(p: P) -> FileIcon {
|
|
|
|
|
let path = p.as_ref();
|
|
|
|
|
if Path::new(&path).is_dir() {
|
|
|
|
|
// Ensures directories are given a folder icon and not mistakenly resolved to a language.
|
|
|
|
|
// For example, a directory named `cpp` would otherwise return a C++ icon.
|
|
|
|
|
return FileIcon::from("dir/");
|
|
|
|
|
}
|
|
|
|
|
FileIcon::from(path)
|
|
|
|
|
}
|