ソースを参照

Merge pull request #560 from horosgrisa/master

Add some icons for files
Benjamin Sago 6 年 前
コミット
5521f2d4ab
1 ファイル変更136 行追加63 行削除
  1. 136 63
      src/output/icons.rs

+ 136 - 63
src/output/icons.rs

@@ -49,70 +49,143 @@ fn icon(file: &File) -> char {
     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}',
-                "c" => '\u{e61e}',
-                "clj" => '\u{e768}',
-                "coffee" => '\u{f0f4}',
-                "conf" => '\u{e615}',
-                "cpp" => '\u{e61d}',
-                "css" => '\u{e749}',
-                "d" => '\u{e7af}',
-                "dart" => '\u{e798}',
-                "db" => '\u{f1c0}',
-                "diff" => '\u{f440}',
-                "doc" => '\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}',
-                "html" => '\u{f13b}',
-                "iml" => '\u{e7b5}',
-                "java" => '\u{e204}',
-                "js" => '\u{e74e}',
-                "json" => '\u{e60b}',
-                "jsx" => '\u{e7ba}',
-                "less" => '\u{e758}',
-                "log" => '\u{f18d}',
-                "lua" => '\u{e620}',
-                "md" => '\u{f48a}',
-                "mustache" => '\u{e60f}',
+                "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}',
-                "php" => '\u{e73d}',
-                "pl" => '\u{e769}',
-                "ppt" => '\u{f1c4}',
-                "psd" => '\u{e7b8}',
-                "py" => '\u{e606}',
-                "r" => '\u{f25d}',
-                "rb" => '\u{e21e}',
-                "rdb" => '\u{e76d}',
-                "rs" => '\u{e7a8}',
-                "rss" => '\u{f09e}',
-                "rubydoc" => '\u{e73b}',
-                "sass" => '\u{e603}',
-                "scala" => '\u{e737}',
-                "shell" => '\u{f489}',
-                "sqlite3" => '\u{e7c4}',
-                "styl" => '\u{e600}',
-                "tex" => '\u{e600}',
-                "ts" => '\u{e628}',
-                "twig" => '\u{e61c}',
-                "txt" => '\u{f15c}',
-                "video" => '\u{f03d}',
-                "vim" => '\u{e62b}',
-                "xls" => '\u{f1c3}',
-                "xml" => '\u{e619}',
-                "yml" => '\u{f481}',
-                "zip" => '\u{f410}',
-                _ => '\u{f15b}'
+                "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}'