|
|
@@ -28,7 +28,7 @@ pub fn painted_icon(file: &File, style: &FileStyle) -> String {
|
|
|
let file_icon = icon(&file).to_string();
|
|
|
let painted = style.exts
|
|
|
.colour_file(&file)
|
|
|
- .map_or(file_icon.to_string(), |c| {
|
|
|
+ .map_or(file_icon.to_string(), |c| {
|
|
|
// Remove underline from icon
|
|
|
if c.is_underline {
|
|
|
match c.foreground {
|
|
|
@@ -36,7 +36,7 @@ pub fn painted_icon(file: &File, style: &FileStyle) -> String {
|
|
|
None => Style::default().paint(file_icon).to_string(),
|
|
|
}
|
|
|
} else {
|
|
|
- c.paint(file_icon).to_string()
|
|
|
+ c.paint(file_icon).to_string()
|
|
|
}
|
|
|
});
|
|
|
format!("{} ", painted)
|
|
|
@@ -46,149 +46,147 @@ fn icon(file: &File) -> char {
|
|
|
let extensions = Box::new(FileExtensions);
|
|
|
if file.is_directory() { '\u{f115}' }
|
|
|
else if let Some(icon) = extensions.icon_file(file) { icon }
|
|
|
- else {
|
|
|
- if let Some(ext) = file.ext.as_ref() {
|
|
|
- match ext.as_str() {
|
|
|
- "ai" => '\u{e7b4}',
|
|
|
- "android" => '\u{e70e}',
|
|
|
- "apple" => '\u{f179}',
|
|
|
- "avro" => '\u{e60b}',
|
|
|
- "clj" => '\u{e768}',
|
|
|
- "coffee" => '\u{f0f4}',
|
|
|
- "cpp" => '\u{e61d}',
|
|
|
- "hpp" => '\u{e61d}',
|
|
|
- "c" => '\u{e61e}',
|
|
|
- "h" => '\u{e61e}',
|
|
|
- "cs" => '\u{f81a}',
|
|
|
- "css" => '\u{e749}',
|
|
|
- "d" => '\u{e7af}',
|
|
|
- "dart" => '\u{e798}',
|
|
|
- "db" => '\u{f1c0}',
|
|
|
- "diff" => '\u{f440}',
|
|
|
- "patch" => '\u{f440}',
|
|
|
- "rtf" => '\u{f1c2}',
|
|
|
- "doc" => '\u{f1c2}',
|
|
|
- "docx" => '\u{f1c2}',
|
|
|
- "odt" => '\u{f1c2}',
|
|
|
- "ebook" => '\u{e28b}',
|
|
|
- "env" => '\u{f462}',
|
|
|
- "epub" => '\u{e28a}',
|
|
|
- "erl" => '\u{e7b1}',
|
|
|
- "font" => '\u{f031}',
|
|
|
- "gform" => '\u{f298}',
|
|
|
- "git" => '\u{f1d3}',
|
|
|
- "go" => '\u{e626}',
|
|
|
- "hs" => '\u{e777}',
|
|
|
- "htm" => '\u{f13b}',
|
|
|
- "html" => '\u{f13b}',
|
|
|
- "xhtml" => '\u{f13b}',
|
|
|
- "iml" => '\u{e7b5}',
|
|
|
- "java" => '\u{e204}',
|
|
|
- "js" => '\u{e74e}',
|
|
|
- "mjs" => '\u{e74e}',
|
|
|
- "json" => '\u{e60b}',
|
|
|
- "jsx" => '\u{e7ba}',
|
|
|
- "vue" => '\u{fd42}',
|
|
|
- "node" => '\u{f898}',
|
|
|
- "less" => '\u{e758}',
|
|
|
- "log" => '\u{f18d}',
|
|
|
- "lua" => '\u{e620}',
|
|
|
- "md" => '\u{f48a}',
|
|
|
- "markdown" => '\u{f48a}',
|
|
|
- "mustache" => '\u{e60f}',
|
|
|
- "npmignore" => '\u{e71e}',
|
|
|
- "pdf" => '\u{f1c1}',
|
|
|
- "djvu" => '\u{f02d}',
|
|
|
- "mobi" => '\u{f02d}',
|
|
|
- "php" => '\u{e73d}',
|
|
|
- "pl" => '\u{e769}',
|
|
|
- "ppt" => '\u{f1c4}',
|
|
|
- "pptx" => '\u{f1c4}',
|
|
|
- "odp" => '\u{f1c4}',
|
|
|
- "psd" => '\u{e7b8}',
|
|
|
- "py" => '\u{e606}',
|
|
|
- "r" => '\u{f25d}',
|
|
|
- "rb" => '\u{e21e}',
|
|
|
- "ru" => '\u{e21e}',
|
|
|
- "erb" => '\u{e21e}',
|
|
|
- "gem" => '\u{e21e}',
|
|
|
- "rdb" => '\u{e76d}',
|
|
|
- "rs" => '\u{e7a8}',
|
|
|
- "rss" => '\u{f09e}',
|
|
|
- "rubydoc" => '\u{e73b}',
|
|
|
- "sass" => '\u{e74b}',
|
|
|
- "stylus" => '\u{e759}',
|
|
|
- "scala" => '\u{e737}',
|
|
|
- "shell" => '\u{f489}',
|
|
|
- "sqlite3" => '\u{e7c4}',
|
|
|
- "styl" => '\u{e600}',
|
|
|
- "latex" => '\u{e600}',
|
|
|
- "tex" => '\u{e600}',
|
|
|
- "ts" => '\u{e628}',
|
|
|
- "tsx" => '\u{e628}',
|
|
|
- "twig" => '\u{e61c}',
|
|
|
- "txt" => '\u{f15c}',
|
|
|
- "video" => '\u{f03d}',
|
|
|
- "vim" => '\u{e62b}',
|
|
|
- "xml" => '\u{e619}',
|
|
|
- "yml" => '\u{f481}',
|
|
|
- "yaml" => '\u{f481}',
|
|
|
- "rar" => '\u{f410}',
|
|
|
- "zip" => '\u{f410}',
|
|
|
- "bz" => '\u{f410}',
|
|
|
- "bz2" => '\u{f410}',
|
|
|
- "xz" => '\u{f410}',
|
|
|
- "taz" => '\u{f410}',
|
|
|
- "tbz" => '\u{f410}',
|
|
|
- "tbz2" => '\u{f410}',
|
|
|
- "tz" => '\u{f410}',
|
|
|
- "tar" => '\u{f410}',
|
|
|
- "tzo" => '\u{f410}',
|
|
|
- "lz" => '\u{f410}',
|
|
|
- "lzh" => '\u{f410}',
|
|
|
- "lzma" => '\u{f410}',
|
|
|
- "lzo" => '\u{f410}',
|
|
|
- "gz" => '\u{f410}',
|
|
|
- "deb" => '\u{e77d}',
|
|
|
- "rpm" => '\u{e7bb}',
|
|
|
- "exe" => '\u{e70f}',
|
|
|
- "msi" => '\u{e70f}',
|
|
|
- "dll" => '\u{e70f}',
|
|
|
- "cab" => '\u{e70f}',
|
|
|
- "bat" => '\u{e70f}',
|
|
|
- "cmd" => '\u{e70f}',
|
|
|
- "sh" => '\u{e795}',
|
|
|
- "bash" => '\u{e795}',
|
|
|
- "zsh" => '\u{e795}',
|
|
|
- "fish" => '\u{e795}',
|
|
|
- "csh" => '\u{e795}',
|
|
|
- "ini" => '\u{e615}',
|
|
|
- "toml" => '\u{e615}',
|
|
|
- "cfg" => '\u{e615}',
|
|
|
- "conf" => '\u{e615}',
|
|
|
- "apk" => '\u{e70e}',
|
|
|
- "ttf" => '\u{f031}',
|
|
|
- "woff" => '\u{f031}',
|
|
|
- "woff2" => '\u{f031}',
|
|
|
- "otf" => '\u{f031}',
|
|
|
- "csv" => '\u{f1c3}',
|
|
|
- "tsv" => '\u{f1c3}',
|
|
|
- "xls" => '\u{f1c3}',
|
|
|
- "xlsx" => '\u{f1c3}',
|
|
|
- "ods" => '\u{f1c3}',
|
|
|
- "so" => '\u{f17c}',
|
|
|
- "sql" => '\u{f1c0}',
|
|
|
- "jar" => '\u{e256}',
|
|
|
- "jad" => '\u{e256}',
|
|
|
- "class" => '\u{e256}',
|
|
|
- "war" => '\u{e256}',
|
|
|
- "groovy" => '\u{e775}',
|
|
|
- "iso" => '\u{e271}',
|
|
|
- "lock" => '\u{f023}',
|
|
|
- _ => '\u{f15b}'
|
|
|
- }
|
|
|
- } else {
|
|
|
- '\u{f15b}'
|
|
|
+ else if let Some(ext) = file.ext.as_ref() {
|
|
|
+ match ext.as_str() {
|
|
|
+ "ai" => '\u{e7b4}',
|
|
|
+ "android" => '\u{e70e}',
|
|
|
+ "apple" => '\u{f179}',
|
|
|
+ "avro" => '\u{e60b}',
|
|
|
+ "clj" => '\u{e768}',
|
|
|
+ "coffee" => '\u{f0f4}',
|
|
|
+ "cpp" => '\u{e61d}',
|
|
|
+ "hpp" => '\u{e61d}',
|
|
|
+ "c" => '\u{e61e}',
|
|
|
+ "h" => '\u{e61e}',
|
|
|
+ "cs" => '\u{f81a}',
|
|
|
+ "css" => '\u{e749}',
|
|
|
+ "d" => '\u{e7af}',
|
|
|
+ "dart" => '\u{e798}',
|
|
|
+ "db" => '\u{f1c0}',
|
|
|
+ "diff" => '\u{f440}',
|
|
|
+ "patch" => '\u{f440}',
|
|
|
+ "rtf" => '\u{f1c2}',
|
|
|
+ "doc" => '\u{f1c2}',
|
|
|
+ "docx" => '\u{f1c2}',
|
|
|
+ "odt" => '\u{f1c2}',
|
|
|
+ "ebook" => '\u{e28b}',
|
|
|
+ "env" => '\u{f462}',
|
|
|
+ "epub" => '\u{e28a}',
|
|
|
+ "erl" => '\u{e7b1}',
|
|
|
+ "font" => '\u{f031}',
|
|
|
+ "gform" => '\u{f298}',
|
|
|
+ "git" => '\u{f1d3}',
|
|
|
+ "go" => '\u{e626}',
|
|
|
+ "hs" => '\u{e777}',
|
|
|
+ "htm" => '\u{f13b}',
|
|
|
+ "html" => '\u{f13b}',
|
|
|
+ "xhtml" => '\u{f13b}',
|
|
|
+ "iml" => '\u{e7b5}',
|
|
|
+ "java" => '\u{e204}',
|
|
|
+ "js" => '\u{e74e}',
|
|
|
+ "mjs" => '\u{e74e}',
|
|
|
+ "json" => '\u{e60b}',
|
|
|
+ "jsx" => '\u{e7ba}',
|
|
|
+ "vue" => '\u{fd42}',
|
|
|
+ "node" => '\u{f898}',
|
|
|
+ "less" => '\u{e758}',
|
|
|
+ "log" => '\u{f18d}',
|
|
|
+ "lua" => '\u{e620}',
|
|
|
+ "md" => '\u{f48a}',
|
|
|
+ "markdown" => '\u{f48a}',
|
|
|
+ "mustache" => '\u{e60f}',
|
|
|
+ "npmignore" => '\u{e71e}',
|
|
|
+ "pdf" => '\u{f1c1}',
|
|
|
+ "djvu" => '\u{f02d}',
|
|
|
+ "mobi" => '\u{f02d}',
|
|
|
+ "php" => '\u{e73d}',
|
|
|
+ "pl" => '\u{e769}',
|
|
|
+ "ppt" => '\u{f1c4}',
|
|
|
+ "pptx" => '\u{f1c4}',
|
|
|
+ "odp" => '\u{f1c4}',
|
|
|
+ "psd" => '\u{e7b8}',
|
|
|
+ "py" => '\u{e606}',
|
|
|
+ "r" => '\u{f25d}',
|
|
|
+ "rb" => '\u{e21e}',
|
|
|
+ "ru" => '\u{e21e}',
|
|
|
+ "erb" => '\u{e21e}',
|
|
|
+ "gem" => '\u{e21e}',
|
|
|
+ "rdb" => '\u{e76d}',
|
|
|
+ "rs" => '\u{e7a8}',
|
|
|
+ "rss" => '\u{f09e}',
|
|
|
+ "rubydoc" => '\u{e73b}',
|
|
|
+ "sass" => '\u{e74b}',
|
|
|
+ "stylus" => '\u{e759}',
|
|
|
+ "scala" => '\u{e737}',
|
|
|
+ "shell" => '\u{f489}',
|
|
|
+ "sqlite3" => '\u{e7c4}',
|
|
|
+ "styl" => '\u{e600}',
|
|
|
+ "latex" => '\u{e600}',
|
|
|
+ "tex" => '\u{e600}',
|
|
|
+ "ts" => '\u{e628}',
|
|
|
+ "tsx" => '\u{e628}',
|
|
|
+ "twig" => '\u{e61c}',
|
|
|
+ "txt" => '\u{f15c}',
|
|
|
+ "video" => '\u{f03d}',
|
|
|
+ "vim" => '\u{e62b}',
|
|
|
+ "xml" => '\u{e619}',
|
|
|
+ "yml" => '\u{f481}',
|
|
|
+ "yaml" => '\u{f481}',
|
|
|
+ "rar" => '\u{f410}',
|
|
|
+ "zip" => '\u{f410}',
|
|
|
+ "bz" => '\u{f410}',
|
|
|
+ "bz2" => '\u{f410}',
|
|
|
+ "xz" => '\u{f410}',
|
|
|
+ "taz" => '\u{f410}',
|
|
|
+ "tbz" => '\u{f410}',
|
|
|
+ "tbz2" => '\u{f410}',
|
|
|
+ "tz" => '\u{f410}',
|
|
|
+ "tar" => '\u{f410}',
|
|
|
+ "tzo" => '\u{f410}',
|
|
|
+ "lz" => '\u{f410}',
|
|
|
+ "lzh" => '\u{f410}',
|
|
|
+ "lzma" => '\u{f410}',
|
|
|
+ "lzo" => '\u{f410}',
|
|
|
+ "gz" => '\u{f410}',
|
|
|
+ "deb" => '\u{e77d}',
|
|
|
+ "rpm" => '\u{e7bb}',
|
|
|
+ "exe" => '\u{e70f}',
|
|
|
+ "msi" => '\u{e70f}',
|
|
|
+ "dll" => '\u{e70f}',
|
|
|
+ "cab" => '\u{e70f}',
|
|
|
+ "bat" => '\u{e70f}',
|
|
|
+ "cmd" => '\u{e70f}',
|
|
|
+ "sh" => '\u{e795}',
|
|
|
+ "bash" => '\u{e795}',
|
|
|
+ "zsh" => '\u{e795}',
|
|
|
+ "fish" => '\u{e795}',
|
|
|
+ "csh" => '\u{e795}',
|
|
|
+ "ini" => '\u{e615}',
|
|
|
+ "toml" => '\u{e615}',
|
|
|
+ "cfg" => '\u{e615}',
|
|
|
+ "conf" => '\u{e615}',
|
|
|
+ "apk" => '\u{e70e}',
|
|
|
+ "ttf" => '\u{f031}',
|
|
|
+ "woff" => '\u{f031}',
|
|
|
+ "woff2" => '\u{f031}',
|
|
|
+ "otf" => '\u{f031}',
|
|
|
+ "csv" => '\u{f1c3}',
|
|
|
+ "tsv" => '\u{f1c3}',
|
|
|
+ "xls" => '\u{f1c3}',
|
|
|
+ "xlsx" => '\u{f1c3}',
|
|
|
+ "ods" => '\u{f1c3}',
|
|
|
+ "so" => '\u{f17c}',
|
|
|
+ "sql" => '\u{f1c0}',
|
|
|
+ "jar" => '\u{e256}',
|
|
|
+ "jad" => '\u{e256}',
|
|
|
+ "class" => '\u{e256}',
|
|
|
+ "war" => '\u{e256}',
|
|
|
+ "groovy" => '\u{e775}',
|
|
|
+ "iso" => '\u{e271}',
|
|
|
+ "lock" => '\u{f023}',
|
|
|
+ _ => '\u{f15b}'
|
|
|
}
|
|
|
+ } else {
|
|
|
+ '\u{f15b}'
|
|
|
}
|
|
|
}
|