| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842 |
- use nu_ansi_term::Style;
- use phf::{phf_map, Map};
- use crate::fs::File;
- #[non_exhaustive]
- struct Icons;
- #[rustfmt::skip]
- impl Icons {
- const AUDIO: char = '\u{f001}'; // ๏
- const BINARY: char = '\u{eae8}'; // ๎ซจ
- const BOOK: char = '\u{e28b}'; // ๎
- const CALENDAR: char = '\u{eab0}'; // ๎ชฐ
- const CLOCK: char = '\u{f43a}'; // ๏บ
- const COMPRESSED: char = '\u{f410}'; // ๏
- const CONFIG: char = '\u{e615}'; // ๎
- const CSS3: char = '\u{e749}'; // ๎
- const DATABASE: char = '\u{f1c0}'; // ๎
- const DIFF: char = '\u{f440}'; // ๏
- const DISK_IMAGE: char = '\u{e271}'; // ๎ฑ
- const DOCKER: char = '\u{e650}'; // ๎
- const DOCUMENT: char = '\u{f1c2}'; // ๏
- const DOWNLOAD: char = '\u{f01da}'; // ๓ฐ
- const EMACS: char = '\u{e632}'; // ๎ฒ
- const ESLINT: char = '\u{e655}'; // ๎
- const FILE: char = '\u{f15b}'; // ๏
- const FILE_3D: char = '\u{f01a7}'; // ๓ฐง
- const FILE_OUTLINE: char = '\u{f016}'; // ๏
- const FOLDER: char = '\u{e5ff}'; // ๎ฟ
- const FOLDER_CONFIG: char = '\u{e5fc}'; // ๎ผ
- const FOLDER_GIT: char = '\u{e5fb}'; // ๎ป
- const FOLDER_GITHUB: char = '\u{e5fd}'; // ๎ฝ
- const FOLDER_HIDDEN: char = '\u{f179e}'; // ๓ฑ
- const FOLDER_KEY: char = '\u{f08ac}'; // ๓ฐขฌ
- const FOLDER_NPM: char = '\u{e5fa}'; // ๎บ
- const FOLDER_OPEN: char = '\u{f115}'; // ๏
- const FONT: char = '\u{f031}'; // ๏ฑ
- const GIST_SECRET: char = '\u{eafa}'; // ๎ซบ
- const GIT: char = '\u{f1d3}'; // ๏
- const GODOT: char = '\u{e65f}'; // ๎
- const GRADLE: char = '\u{e660}'; // ๎
- const GRAPHQL: char = '\u{e662}'; // ๎ข
- const GRUNT: char = '\u{e611}'; // ๎
- const GULP: char = '\u{e610}'; // ๎
- const HTML5: char = '\u{f13b}'; // ๏ป
- const IMAGE: char = '\u{f1c5}'; // ๏
- const INTELLIJ: char = '\u{e7b5}'; // ๎ต
- const JSON: char = '\u{e60b}'; // ๎
- const KEY: char = '\u{eb11}'; // ๎ฌ
- const KEYPASS: char = '\u{f23e}'; // ๏พ
- const LANG_ASSEMBLY: char = '\u{e637}'; // ๎ท
- const LANG_C: char = '\u{e61e}'; // ๎
- const LANG_CPP: char = '\u{e61d}'; // ๎
- const LANG_CSHARP: char = '\u{f031b}'; // ๓ฐ
- const LANG_D: char = '\u{e7af}'; // ๎ฏ
- const LANG_ELIXIR: char = '\u{e62d}'; // ๎ญ
- const LANG_FENNEL: char = '\u{e6af}'; // ๎ฏ
- const LANG_FORTRAN: char = '\u{f121a}'; // ๓ฑ
- const LANG_FSHARP: char = '\u{e7a7}'; // ๎ง
- const LANG_GO: char = '\u{e65e}'; // ๎
- const LANG_GROOVY: char = '\u{e775}'; // ๎ต
- const LANG_HASKELL: char = '\u{e777}'; // ๎ท
- const LANG_JAVA: char = '\u{e256}'; // ๎
- const LANG_JAVASCRIPT: char = '\u{e74e}'; // ๎
- const LANG_KOTLIN: char = '\u{e634}'; // ๎ด
- const LANG_NIM: char = '\u{e677}'; // ๎ท
- const LANG_OCAML: char = '\u{e67a}'; // ๎บ
- const LANG_PERL: char = '\u{e67e}'; // ๎พ
- const LANG_PHP: char = '\u{e73d}'; // ๎ฝ
- const LANG_PYTHON: char = '\u{e606}'; // ๎
- const LANG_R: char = '\u{e68a}'; // ๎
- const LANG_RUBY: char = '\u{e21e}'; // ๎
- const LANG_RUBYRAILS: char = '\u{e73b}'; // ๎ป
- const LANG_RUST: char = '\u{e68b}'; // ๎
- const LANG_SASS: char = '\u{e603}'; // ๎
- const LANG_SCHEME: char = '\u{e6b1}'; // ๎ฑ
- const LANG_STYLUS: char = '\u{e600}'; // ๎
- const LANG_TEX: char = '\u{e69b}'; // ๎
- const LANG_TYPESCRIPT: char = '\u{e628}'; // ๎จ
- const LANG_V: char = '\u{e6ac}'; // ๎ฌ
- const LIBRARY: char = '\u{eb9c}'; // ๎ฎ
- const LICENSE: char = '\u{f02d}'; // ๏ญ
- const LOCK: char = '\u{f023}'; // ๏ฃ
- const MAKE: char = '\u{e673}'; // ๎ณ
- const MARKDOWN: char = '\u{f48a}'; // ๏
- const MUSTACHE: char = '\u{e60f}'; // ๎
- const NODEJS: char = '\u{e718}'; // ๎
- const NPM: char = '\u{e71e}'; // ๎
- const OS_ANDROID: char = '\u{e70e}'; // ๎
- const OS_APPLE: char = '\u{f179}'; // ๏
น
- const OS_LINUX: char = '\u{f17c}'; // ๏
ผ
- const OS_WINDOWS: char = '\u{f17a}'; // ๏
บ
- const OS_WINDOWS_CMD: char = '\u{ebc4}'; // ๎ฏ
- const PLAYLIST: char = '\u{f0cb9}'; // ๓ฐฒน
- const POWERSHELL: char = '\u{ebc7}'; // ๎ฏ
- const PRIVATE_KEY: char = '\u{f0306}'; // ๓ฐ
- const PUBLIC_KEY: char = '\u{f0dd6}'; // ๓ฐท
- const RAZOR: char = '\u{f1fa}'; // ๏บ
- const REACT: char = '\u{e7ba}'; // ๎บ
- const README: char = '\u{f00ba}'; // ๓ฐบ
- const SHEET: char = '\u{f1c3}'; // ๏
- const SHELL: char = '\u{f1183}'; // ๓ฑ
- const SHELL_CMD: char = '\u{f489}'; // ๏
- const SHIELD_CHECK: char = '\u{f0565}'; // ๓ฐฅ
- const SHIELD_KEY: char = '\u{f0bc4}'; // ๓ฐฏ
- const SHIELD_LOCK: char = '\u{f099d}'; // ๓ฐฆ
- const SIGNED_FILE: char = '\u{f19c3}'; // ๓ฑง
- const SLIDE: char = '\u{f1c4}'; // ๏
- const SUBLIME: char = '\u{e7aa}'; // ๎ช
- const SUBTITLE: char = '\u{f0a16}'; // ๓ฐจ
- const TERRAFORM: char = '\u{f1062}'; // ๓ฑข
- const TEXT: char = '\u{f15c}'; // ๏
- const TYPST: char = '\u{1D42D}'; // ๐ญ
- const UNITY: char = '\u{e721}'; // ๎ก
- const VECTOR: char = '\u{f0559}'; // ๓ฐ
- const VIDEO: char = '\u{f03d}'; // ๏ฝ
- const VIM: char = '\u{e7c5}'; // ๎
- const WRENCH: char = '\u{f0ad}'; // ๏ญ
- const XML: char = '\u{f05c0}'; // ๓ฐ
- const YAML: char = '\u{e6a8}'; // ๎จ
- const YARN: char = '\u{e6a7}'; // ๎ง
- }
- /// Mapping from full filenames to directory icon. This mapping should contain
- /// all the directories that have a custom icon.
- const DIRECTORY_ICONS: Map<&'static str, char> = phf_map! {
- ".config" => Icons::FOLDER_CONFIG, // ๎ผ
- ".git" => Icons::FOLDER_GIT, // ๎ป
- ".github" => Icons::FOLDER_GITHUB, // ๎ฝ
- ".npm" => Icons::FOLDER_NPM, // ๎บ
- ".ssh" => Icons::FOLDER_KEY, // ๓ฐขฌ
- ".Trash" => '\u{f1f8}', // ๏ธ
- "config" => Icons::FOLDER_CONFIG, // ๎ผ
- "Contacts" => '\u{f024c}', // ๓ฐ
- "cron.d" => Icons::FOLDER_CONFIG, // ๎ผ
- "cron.daily" => Icons::FOLDER_CONFIG, // ๎ผ
- "cron.hourly" => Icons::FOLDER_CONFIG, // ๎ผ
- "cron.monthly" => Icons::FOLDER_CONFIG, // ๎ผ
- "cron.weekly" => Icons::FOLDER_CONFIG, // ๎ผ
- "Desktop" => '\u{f108}', // ๏
- "Downloads" => '\u{f024d}', // ๓ฐ
- "etc" => Icons::FOLDER_CONFIG, // ๎ผ
- "Favorites" => '\u{f069d}', // ๓ฐ
- "hidden" => Icons::FOLDER_HIDDEN, // ๓ฑ
- "home" => '\u{f10b5}', // ๓ฑต
- "include" => Icons::FOLDER_CONFIG, // ๎ผ
- "Mail" => '\u{f01f0}', // ๓ฐฐ
- "Movies" => '\u{f0fce}', // ๓ฐฟ
- "Music" => '\u{f1359}', // ๓ฑ
- "node_modules" => Icons::FOLDER_NPM, // ๎บ
- "npm_cache" => Icons::FOLDER_NPM, // ๎บ
- "pam.d" => Icons::FOLDER_KEY, // ๓ฐขฌ
- "Pictures" => '\u{f024f}', // ๓ฐ
- "ssh" => Icons::FOLDER_KEY, // ๓ฐขฌ
- "sudoers.d" => Icons::FOLDER_KEY, // ๓ฐขฌ
- "Videos" => '\u{f03d}', // ๏ฝ
- "xbps.d" => Icons::FOLDER_CONFIG, // ๎ผ
- "xorg.conf.d" => Icons::FOLDER_CONFIG, // ๎ผ
- "hi" => Icons::BINARY, // ๎ซจ
- "cabal" => Icons::LANG_HASKELL, // ๎ท
- };
- /// Mapping from full filenames to file icon. This mapping should also contain
- /// all the "dot" files that have a custom icon.
- const FILENAME_ICONS: Map<&'static str, char> = phf_map! {
- ".atom" => '\u{e764}', // ๎ค
- ".bashrc" => Icons::SHELL, // ๓ฑ
- ".bash_history" => Icons::SHELL, // ๓ฑ
- ".bash_logout" => Icons::SHELL, // ๓ฑ
- ".bash_profile" => Icons::SHELL, // ๓ฑ
- ".CFUserTextEncoding" => Icons::OS_APPLE, // ๏
น
- ".clang-format" => Icons::CONFIG, // ๎
- ".cshrc" => Icons::SHELL, // ๓ฑ
- ".DS_Store" => Icons::OS_APPLE, // ๏
น
- ".emacs" => Icons::EMACS, // ๎ฒ
- ".eslintrc.cjs" => Icons::ESLINT, // ๎
- ".eslintrc.js" => Icons::ESLINT, // ๎
- ".eslintrc.json" => Icons::ESLINT, // ๎
- ".eslintrc.yaml" => Icons::ESLINT, // ๎
- ".eslintrc.yml" => Icons::ESLINT, // ๎
- ".fennelrc" => Icons::CONFIG, // ๎
- ".gitattributes" => Icons::GIT, // ๏
- ".gitconfig" => Icons::GIT, // ๏
- ".gitignore" => Icons::GIT, // ๏
- ".gitignore_global" => Icons::GIT, // ๏
- ".gitlab-ci.yml" => '\u{f296}', // ๏
- ".gitmodules" => Icons::GIT, // ๏
- ".htaccess" => Icons::CONFIG, // ๎
- ".htpasswd" => Icons::CONFIG, // ๎
- ".idea" => Icons::INTELLIJ, // ๎ต
- ".ideavimrc" => Icons::VIM, // ๎
- ".inputrc" => Icons::CONFIG, // ๎
- ".kshrc" => Icons::SHELL, // ๓ฑ
- ".login" => Icons::SHELL, // ๓ฑ
- ".logout" => Icons::SHELL, // ๓ฑ
- ".mailmap" => Icons::GIT, // ๏
- ".node_repl_history" => Icons::NODEJS, // ๎
- ".npmignore" => Icons::NPM, // ๎
- ".npmrc" => Icons::NPM, // ๎
- ".profile" => Icons::SHELL, // ๓ฑ
- ".python_history" => Icons::LANG_PYTHON, // ๎
- ".rustfmt.toml" => Icons::LANG_RUST, // ๎
- ".rvm" => Icons::LANG_RUBY, // ๎
- ".rvmrc" => Icons::LANG_RUBY, // ๎
- ".tcshrc" => Icons::SHELL, // ๓ฑ
- ".viminfo" => Icons::VIM, // ๎
- ".vimrc" => Icons::VIM, // ๎
- ".Xauthority" => Icons::CONFIG, // ๎
- ".xinitrc" => Icons::CONFIG, // ๎
- ".Xresources" => Icons::CONFIG, // ๎
- ".yarnrc" => Icons::YARN, // ๎ง
- ".zlogin" => Icons::SHELL, // ๓ฑ
- ".zlogout" => Icons::SHELL, // ๓ฑ
- ".zprofile" => Icons::SHELL, // ๓ฑ
- ".zshenv" => Icons::SHELL, // ๓ฑ
- ".zshrc" => Icons::SHELL, // ๓ฑ
- ".zsh_history" => Icons::SHELL, // ๓ฑ
- ".zsh_sessions" => Icons::SHELL, // ๓ฑ
- "._DS_Store" => Icons::OS_APPLE, // ๏
น
- "a.out" => Icons::SHELL_CMD, // ๏
- "authorized_keys" => '\u{f08c0}', // ๓ฐฃ
- "bashrc" => Icons::SHELL, // ๓ฑ
- "bspwmrc" => Icons::CONFIG, // ๎
- "build.gradle.kts" => Icons::GRADLE, // ๎
- "Cargo.lock" => Icons::LANG_RUST, // ๎
- "Cargo.toml" => Icons::LANG_RUST, // ๎
- "CMakeLists.txt" => Icons::MAKE, // ๎ณ
- "composer.json" => Icons::LANG_PHP, // ๎ฝ
- "composer.lock" => Icons::LANG_PHP, // ๎ฝ
- "config" => Icons::CONFIG, // ๎
- "config.status" => Icons::CONFIG, // ๎
- "configure" => Icons::WRENCH, // ๏ญ
- "configure.ac" => Icons::CONFIG, // ๎
- "configure.in" => Icons::CONFIG, // ๎
- "constraints.txt" => Icons::LANG_PYTHON, // ๎
- "COPYING" => Icons::LICENSE, // ๏ญ
- "COPYRIGHT" => Icons::LICENSE, // ๏ญ
- "crontab" => Icons::CONFIG, // ๎
- "crypttab" => Icons::CONFIG, // ๎
- "csh.cshrc" => Icons::SHELL, // ๓ฑ
- "csh.login" => Icons::SHELL, // ๓ฑ
- "csh.logout" => Icons::SHELL, // ๓ฑ
- "docker-compose.yml" => Icons::DOCKER, // ๎
- "Dockerfile" => Icons::DOCKER, // ๎
- "compose.yaml" => Icons::DOCKER, // ๎
- "compose.yml" => Icons::DOCKER, // ๎
- "docker-compose.yaml" => Icons::DOCKER, // ๎
- "dune" => Icons::LANG_OCAML, // ๎บ
- "dune-project" => Icons::WRENCH, // ๏ญ
- "Earthfile" => '\u{f0ac}', // ๏ฌ
- "environment" => Icons::CONFIG, // ๎
- "GNUmakefile" => Icons::MAKE, // ๎ณ
- "go.mod" => Icons::LANG_GO, // ๎
- "go.sum" => Icons::LANG_GO, // ๎
- "go.work" => Icons::LANG_GO, // ๎
- "gradle" => Icons::GRADLE, // ๎
- "gradle.properties" => Icons::GRADLE, // ๎
- "gradlew" => Icons::GRADLE, // ๎
- "gradlew.bat" => Icons::GRADLE, // ๎
- "group" => Icons::LOCK, // ๏ฃ
- "gruntfile.coffee" => Icons::GRUNT, // ๎
- "gruntfile.js" => Icons::GRUNT, // ๎
- "gruntfile.ls" => Icons::GRUNT, // ๎
- "gshadow" => Icons::LOCK, // ๏ฃ
- "gulpfile.coffee" => Icons::GULP, // ๎
- "gulpfile.js" => Icons::GULP, // ๎
- "gulpfile.ls" => Icons::GULP, // ๎
- "heroku.yml" => '\u{e77b}', // ๎ป
- "hostname" => Icons::CONFIG, // ๎
- "id_dsa" => Icons::PRIVATE_KEY, // ๓ฐ
- "id_ecdsa" => Icons::PRIVATE_KEY, // ๓ฐ
- "id_ecdsa_sk" => Icons::PRIVATE_KEY, // ๓ฐ
- "id_ed25519" => Icons::PRIVATE_KEY, // ๓ฐ
- "id_ed25519_sk" => Icons::PRIVATE_KEY, // ๓ฐ
- "id_rsa" => Icons::PRIVATE_KEY, // ๓ฐ
- "inputrc" => Icons::CONFIG, // ๎
- "Jenkinsfile" => '\u{e66e}', // ๎ฎ
- "jsconfig.json" => Icons::LANG_JAVASCRIPT,// ๎
- "Justfile" => Icons::WRENCH, // ๏ญ
- "known_hosts" => '\u{f08c0}', // ๓ฐฃ
- "LICENCE" => Icons::LICENSE, // ๏ญ
- "LICENCE.md" => Icons::LICENSE, // ๏ญ
- "LICENCE.txt" => Icons::LICENSE, // ๏ญ
- "LICENSE" => Icons::LICENSE, // ๏ญ
- "LICENSE-APACHE" => Icons::LICENSE, // ๏ญ
- "LICENSE-MIT" => Icons::LICENSE, // ๏ญ
- "LICENSE.md" => Icons::LICENSE, // ๏ญ
- "LICENSE.txt" => Icons::LICENSE, // ๏ญ
- "localized" => Icons::OS_APPLE, // ๏
น
- "localtime" => Icons::CLOCK, // ๏บ
- "Makefile" => Icons::MAKE, // ๎ณ
- "makefile" => Icons::MAKE, // ๎ณ
- "Makefile.ac" => Icons::MAKE, // ๎ณ
- "Makefile.am" => Icons::MAKE, // ๎ณ
- "Makefile.in" => Icons::MAKE, // ๎ณ
- "MANIFEST" => Icons::LANG_PYTHON, // ๎
- "MANIFEST.in" => Icons::LANG_PYTHON, // ๎
- "npm-shrinkwrap.json" => Icons::NPM, // ๎
- "npmrc" => Icons::NPM, // ๎
- "package-lock.json" => Icons::NPM, // ๎
- "package.json" => Icons::NPM, // ๎
- "passwd" => Icons::LOCK, // ๏ฃ
- "php.ini" => Icons::LANG_PHP, // ๎ฝ
- "PKGBUILD" => '\u{f303}', // ๏
- "platformio.ini" => '\u{e682}', // ๎
- "pom.xml" => '\u{e674}', // ๎ด
- "Procfile" => '\u{e77b}', // ๎ป
- "profile" => Icons::SHELL, // ๓ฑ
- "pyproject.toml" => Icons::LANG_PYTHON, // ๎
- "Rakefile" => Icons::LANG_RUBY, // ๎
- "README" => Icons::README, // ๓ฐบ
- "release.toml" => Icons::LANG_RUST, // ๎
- "requirements.txt" => Icons::LANG_PYTHON, // ๎
- "robots.txt" => '\u{f06a9}', // ๓ฐฉ
- "rubydoc" => Icons::LANG_RUBYRAILS, // ๎ป
- "rvmrc" => Icons::LANG_RUBY, // ๎
- "settings.gradle.kts" => Icons::GRADLE, // ๎
- "shadow" => Icons::LOCK, // ๏ฃ
- "shells" => Icons::CONFIG, // ๎
- "sudoers" => Icons::LOCK, // ๏ฃ
- "timezone" => Icons::CLOCK, // ๏บ
- "tsconfig.json" => Icons::LANG_TYPESCRIPT,// ๎จ
- "Vagrantfile" => '\u{2371}', // โฑ
- "webpack.config.js" => '\u{f072b}', // ๓ฐซ
- "yarn.lock" => Icons::YARN, // ๎ง
- "zlogin" => Icons::SHELL, // ๓ฑ
- "zlogout" => Icons::SHELL, // ๓ฑ
- "zprofile" => Icons::SHELL, // ๓ฑ
- "zshenv" => Icons::SHELL, // ๓ฑ
- "zshrc" => Icons::SHELL, // ๓ฑ
- };
- /// Mapping from lowercase file extension to icons. If an image, video, or audio extension is add
- /// also update the extension filetype map.
- const EXTENSION_ICONS: Map<&'static str, char> = phf_map! {
- "3mf" => Icons::FILE_3D, // ๓ฐง
- "7z" => Icons::COMPRESSED, // ๏
- "a" => Icons::OS_LINUX, // ๏
ผ
- "acc" => Icons::AUDIO, // ๏
- "acf" => '\u{f1b6}', // ๏ถ
- "age" => Icons::SHIELD_LOCK, // ๓ฐฆ
- "ai" => '\u{e7b4}', // ๎ด
- "aif" => Icons::AUDIO, // ๏
- "aifc" => Icons::AUDIO, // ๏
- "aiff" => Icons::AUDIO, // ๏
- "alac" => Icons::AUDIO, // ๏
- "android" => Icons::OS_ANDROID, // ๎
- "ape" => Icons::AUDIO, // ๏
- "apk" => Icons::OS_ANDROID, // ๎
- "apple" => Icons::OS_APPLE, // ๏
น
- "ar" => Icons::COMPRESSED, // ๏
- "arj" => Icons::COMPRESSED, // ๏
- "arw" => Icons::IMAGE, // ๏
- "asc" => Icons::SHIELD_LOCK, // ๓ฐฆ
- "asm" => Icons::LANG_ASSEMBLY, // ๎ท
- "asp" => '\u{f121}', // ๏ก
- "avi" => Icons::VIDEO, // ๏ฝ
- "avif" => Icons::IMAGE, // ๏
- "avro" => Icons::JSON, // ๎
- "awk" => Icons::SHELL_CMD, // ๏
- "bash" => Icons::SHELL_CMD, // ๏
- "bat" => Icons::OS_WINDOWS_CMD, // ๎ฏ
- "bats" => Icons::SHELL_CMD, // ๏
- "bdf" => Icons::FONT, // ๏ฑ
- "bib" => Icons::LANG_TEX, // ๎
- "bin" => Icons::BINARY, // ๎ซจ
- "blend" => '\u{f00ab}', // ๓ฐซ
- "bmp" => Icons::IMAGE, // ๏
- "br" => Icons::COMPRESSED, // ๏
- "bst" => Icons::LANG_TEX, // ๎
- "bundle" => Icons::OS_APPLE, // ๏
น
- "bz" => Icons::COMPRESSED, // ๏
- "bz2" => Icons::COMPRESSED, // ๏
- "bz3" => Icons::COMPRESSED, // ๏
- "c" => Icons::LANG_C, // ๎
- "c++" => Icons::LANG_CPP, // ๎
- "cab" => Icons::OS_WINDOWS, // ๏
บ
- "cbr" => Icons::IMAGE, // ๏
- "cbz" => Icons::IMAGE, // ๏
- "cc" => Icons::LANG_CPP, // ๎
- "cert" => Icons::GIST_SECRET, // ๎ซบ
- "cfg" => Icons::CONFIG, // ๎
- "cjs" => Icons::LANG_JAVASCRIPT, // ๎
- "class" => Icons::LANG_JAVA, // ๎
- "clj" => '\u{e768}', // ๎จ
- "cljs" => '\u{e76a}', // ๎ช
- "cls" => Icons::LANG_TEX, // ๎
- "cmake" => Icons::MAKE, // ๎ณ
- "cmd" => Icons::OS_WINDOWS, // ๏
บ
- "coffee" => '\u{f0f4}', // ๏ด
- "com" => Icons::OS_WINDOWS_CMD, // ๎ฏ
- "conf" => Icons::CONFIG, // ๎
- "config" => Icons::CONFIG, // ๎
- "cp" => Icons::LANG_CPP, // ๎
- "cpio" => Icons::COMPRESSED, // ๏
- "cpp" => Icons::LANG_CPP, // ๎
- "cr" => '\u{e62f}', // ๎ฏ
- "cr2" => Icons::IMAGE, // ๏
- "crdownload" => Icons::DOWNLOAD, // ๓ฐ
- "crt" => Icons::GIST_SECRET, // ๎ซบ
- "cs" => Icons::LANG_CSHARP, // ๓ฐ
- "csh" => Icons::SHELL_CMD, // ๏
- "cshtml" => Icons::RAZOR, // ๏บ
- "csproj" => Icons::LANG_CSHARP, // ๓ฐ
- "css" => Icons::CSS3, // ๎
- "csv" => Icons::SHEET, // ๏
- "csx" => Icons::LANG_CSHARP, // ๓ฐ
- "cts" => Icons::LANG_TYPESCRIPT, // ๎จ
- "cu" => '\u{e64b}', // ๎
- "cue" => Icons::PLAYLIST, // ๓ฐฒน
- "cxx" => Icons::LANG_CPP, // ๎
- "d" => Icons::LANG_D, // ๎ฏ
- "dart" => '\u{e798}', // ๎
- "db" => Icons::DATABASE, // ๏
- "deb" => '\u{e77d}', // ๎ฝ
- "desktop" => '\u{ebd1}', // ๎ฏ
- "di" => Icons::LANG_D, // ๎ฏ
- "diff" => Icons::DIFF, // ๏
- "djv" => Icons::DOCUMENT, // ๏
- "djvu" => Icons::DOCUMENT, // ๏
- "dll" => Icons::LIBRARY, // ๎ฎ
- "dmg" => Icons::DISK_IMAGE, // ๎ฑ
- "doc" => Icons::DOCUMENT, // ๏
- "docx" => Icons::DOCUMENT, // ๏
- "dot" => '\u{f1049}', // ๓ฑ
- "download" => Icons::DOWNLOAD, // ๓ฐ
- "dockerfile" => Icons::DOCKER, // ๎
- "dockerignore" => Icons::DOCKER, // ๎
- "drawio" => '\u{ebba}', // ๎ฎบ
- "dump" => Icons::DATABASE, // ๎
- "dvi" => Icons::IMAGE, // ๏
- "dylib" => Icons::OS_APPLE, // ๏
น
- "ebook" => Icons::BOOK, // ๎
- "ebuild" => '\u{f30d}', // ๏
- "editorconfig" => Icons::CONFIG, // ๎
- "ejs" => '\u{e618}', // ๎
- "el" => Icons::EMACS, // ๎ฒ
- "elc" => Icons::EMACS, // ๎ฒ
- "elf" => Icons::BINARY, // ๎ซจ
- "elm" => '\u{e62c}', // ๎ฌ
- "eml" => '\u{f003}', // ๏
- "env" => '\u{f462}', // ๏ข
- "eot" => Icons::FONT, // ๏ฑ
- "eps" => Icons::VECTOR, // ๓ฐ
- "epub" => Icons::BOOK, // ๎
- "erb" => Icons::LANG_RUBYRAILS, // ๎ป
- "erl" => '\u{e7b1}', // ๎ฑ
- "ex" => Icons::LANG_ELIXIR, // ๎ญ
- "exe" => Icons::OS_WINDOWS_CMD, // ๎ฏ
- "exs" => Icons::LANG_ELIXIR, // ๎ญ
- "f" => Icons::LANG_FORTRAN, // ๓ฑ
- "f90" => Icons::LANG_FORTRAN, // ๓ฑ
- "fbx" => Icons::FILE_3D, // ๓ฐง
- "fdmdownload" => Icons::DOWNLOAD, // ๓ฐ
- "fish" => Icons::SHELL_CMD, // ๏
- "flac" => Icons::AUDIO, // ๏
- "flv" => Icons::VIDEO, // ๏ฝ
- "fnl" => Icons::LANG_FENNEL, // ๎ฏ
- "fnt" => Icons::FONT, // ๏ฑ
- "fodg" => Icons::VECTOR, // ๓ฐ
- "fodp" => Icons::SLIDE, // ๏
- "fods" => Icons::SHEET, // ๏
- "fodt" => Icons::DOCUMENT, // ๏
- "fon" => Icons::FONT, // ๏ฑ
- "font" => Icons::FONT, // ๏ฑ
- "for" => Icons::LANG_FORTRAN, // ๓ฑ
- "fs" => Icons::LANG_FSHARP, // ๎ง
- "fsi" => Icons::LANG_FSHARP, // ๎ง
- "fsproj" => Icons::LANG_FSHARP, // ๎ง
- "fsx" => Icons::LANG_FSHARP, // ๎ง
- "gcode" => '\u{f0af4}', // ๓ฐซด
- "gd" => Icons::GODOT, // ๎
- "gdoc" => Icons::DOCUMENT, // ๏
- "gem" => Icons::LANG_RUBY, // ๎
- "gemfile" => Icons::LANG_RUBY, // ๎
- "gemspec" => Icons::LANG_RUBY, // ๎
- "gform" => '\u{f298}', // ๏
- "gif" => Icons::IMAGE, // ๏
- "git" => Icons::GIT, // ๏
- "go" => Icons::LANG_GO, // ๎
- "godot" => Icons::GODOT, // ๎
- "gpg" => Icons::SHIELD_LOCK, // ๓ฐฆ
- "gql" => Icons::GRAPHQL, // ๎ข
- "gradle" => Icons::GRADLE, // ๎
- "graphql" => Icons::GRAPHQL, // ๎ข
- "groovy" => Icons::LANG_GROOVY, // ๎ต
- "gsheet" => Icons::SHEET, // ๏
- "gslides" => Icons::SLIDE, // ๏
- "guardfile" => Icons::LANG_RUBY, // ๎
- "gv" => '\u{f1049}', // ๓ฑ
- "gvy" => Icons::LANG_GROOVY, // ๎ต
- "gz" => Icons::COMPRESSED, // ๏
- "h" => Icons::LANG_C, // ๎
- "h++" => Icons::LANG_CPP, // ๎
- "h264" => Icons::VIDEO, // ๏ฝ
- "haml" => '\u{e664}', // ๎ค
- "hbs" => Icons::MUSTACHE, // ๎
- "heic" => Icons::IMAGE, // ๏
- "heics" => Icons::VIDEO, // ๏ฝ
- "heif" => Icons::IMAGE, // ๏
- "hex" => '\u{f12a7}', // ๓ฑง
- "hh" => Icons::LANG_CPP, // ๎
- "hpp" => Icons::LANG_CPP, // ๎
- "hs" => Icons::LANG_HASKELL, // ๎ท
- "htm" => Icons::HTML5, // ๏ป
- "html" => Icons::HTML5, // ๏ป
- "hxx" => Icons::LANG_CPP, // ๎
- "ical" => Icons::CALENDAR, // ๏ณ
- "icalendar" => Icons::CALENDAR, // ๏ณ
- "ico" => Icons::IMAGE, // ๏
- "ics" => Icons::CALENDAR, // ๏ณ
- "ifb" => Icons::CALENDAR, // ๏ณ
- "image" => Icons::DISK_IMAGE, // ๎ฑ
- "img" => Icons::DISK_IMAGE, // ๎ฑ
- "iml" => Icons::INTELLIJ, // ๎ต
- "ini" => Icons::CONFIG, // ๎
- "inl" => Icons::LANG_C, // ๎
- "ipynb" => '\u{e678}', // ๎ธ
- "iso" => Icons::DISK_IMAGE, // ๎ฑ
- "j2c" => Icons::IMAGE, // ๏
- "j2k" => Icons::IMAGE, // ๏
- "jad" => Icons::LANG_JAVA, // ๎
- "jar" => Icons::LANG_JAVA, // ๎
- "java" => Icons::LANG_JAVA, // ๎
- "jfi" => Icons::IMAGE, // ๏
- "jfif" => Icons::IMAGE, // ๏
- "jif" => Icons::IMAGE, // ๏
- "jl" => '\u{e624}', // ๎ค
- "jmd" => Icons::MARKDOWN, // ๏
- "jp2" => Icons::IMAGE, // ๏
- "jpe" => Icons::IMAGE, // ๏
- "jpeg" => Icons::IMAGE, // ๏
- "jpf" => Icons::IMAGE, // ๏
- "jpg" => Icons::IMAGE, // ๏
- "jpx" => Icons::IMAGE, // ๏
- "js" => Icons::LANG_JAVASCRIPT, // ๎
- "json" => Icons::JSON, // ๎
- "jsx" => Icons::REACT, // ๎บ
- "jxl" => Icons::IMAGE, // ๏
- "kbx" => Icons::SHIELD_KEY, // ๓ฐฏ
- "kdb" => Icons::KEYPASS, // ๏พ
- "kdbx" => Icons::KEYPASS, // ๏พ
- "key" => Icons::KEY, // ๎ฌ
- "ko" => Icons::OS_LINUX, // ๏
ผ
- "ksh" => Icons::SHELL_CMD, // ๏
- "kt" => Icons::LANG_KOTLIN, // ๎ด
- "kts" => Icons::LANG_KOTLIN, // ๎ด
- "latex" => Icons::LANG_TEX, // ๎
- "ldb" => Icons::DATABASE, // ๎
- "less" => '\u{e758}', // ๎
- "lhs" => Icons::LANG_HASKELL, // ๎ท
- "lib" => Icons::LIBRARY, // ๎ฎ
- "license" => Icons::LICENSE, // ๏ญ
- "lisp" => '\u{f0172}', // ๓ฐ
ฒ
- "localized" => Icons::OS_APPLE, // ๏
น
- "lock" => Icons::LOCK, // ๏ฃ
- "log" => '\u{f18d}', // ๏
- "ltx" => Icons::LANG_TEX, // ๎
- "lua" => '\u{e620}', // ๎
- "lz" => Icons::COMPRESSED, // ๏
- "lz4" => Icons::COMPRESSED, // ๏
- "lzh" => Icons::COMPRESSED, // ๏
- "lzma" => Icons::COMPRESSED, // ๏
- "lzo" => Icons::COMPRESSED, // ๏
- "m" => Icons::LANG_C, // ๎
- "m2ts" => Icons::VIDEO, // ๏ฝ
- "m2v" => Icons::VIDEO, // ๏ฝ
- "m3u" => Icons::PLAYLIST, // ๓ฐฒน
- "m3u8" => Icons::PLAYLIST, // ๓ฐฒน
- "m4a" => Icons::AUDIO, // ๏
- "m4v" => Icons::VIDEO, // ๏ฝ
- "magnet" => '\u{f076}', // ๏ถ
- "markdown" => Icons::MARKDOWN, // ๏
- "md" => Icons::MARKDOWN, // ๏
- "md5" => Icons::SHIELD_CHECK, // ๓ฐฅ
- "mdb" => Icons::DATABASE, // ๎
- "mid" => '\u{f08f2}', // ๓ฐฃฒ
- "mjs" => Icons::LANG_JAVASCRIPT, // ๎
- "mk" => Icons::MAKE, // ๎ณ
- "mka" => Icons::AUDIO, // ๏
- "mkd" => Icons::MARKDOWN, // ๏
- "mkv" => Icons::VIDEO, // ๏ฝ
- "ml" => Icons::LANG_OCAML, // ๎บ
- "mli" => Icons::LANG_OCAML, // ๎บ
- "mll" => Icons::LANG_OCAML, // ๎บ
- "mly" => Icons::LANG_OCAML, // ๎บ
- "mm" => Icons::LANG_CPP, // ๎
- "mobi" => Icons::BOOK, // ๎
- "mov" => Icons::VIDEO, // ๏ฝ
- "mp2" => Icons::AUDIO, // ๏
- "mp3" => Icons::AUDIO, // ๏
- "mp4" => Icons::VIDEO, // ๏ฝ
- "mpeg" => Icons::VIDEO, // ๏ฝ
- "mpg" => Icons::VIDEO, // ๏ฝ
- "msi" => Icons::OS_WINDOWS, // ๏
บ
- "mts" => Icons::LANG_TYPESCRIPT, // ๎จ
- "mustache" => Icons::MUSTACHE, // ๎
- "nef" => Icons::IMAGE, // ๏
- "nim" => Icons::LANG_NIM, // ๎ท
- "nimble" => Icons::LANG_NIM, // ๎ท
- "nims" => Icons::LANG_NIM, // ๎ท
- "ninja" => '\u{f0774}', // ๓ฐด
- "nix" => '\u{f313}', // ๏
- "node" => Icons::NODEJS, // ๎
- "o" => Icons::BINARY, // ๎ซจ
- "obj" => Icons::FILE_3D, // ๓ฐง
- "odf" => '\u{f0784}', // ๓ฐ
- "odg" => Icons::VECTOR, // ๓ฐ
- "odp" => Icons::SLIDE, // ๏
- "ods" => Icons::SHEET, // ๏
- "odt" => Icons::DOCUMENT, // ๏
- "ogg" => Icons::AUDIO, // ๏
- "ogm" => Icons::VIDEO, // ๏ฝ
- "ogv" => Icons::VIDEO, // ๏ฝ
- "opus" => Icons::AUDIO, // ๏
- "orf" => Icons::IMAGE, // ๏
- "org" => '\u{e633}', // ๎ณ
- "otf" => Icons::FONT, // ๏ฑ
- "out" => '\u{eb2c}', // ๎ฌฌ
- "p12" => Icons::KEY, // ๎ฌ
- "par" => Icons::COMPRESSED, // ๏
- "part" => Icons::DOWNLOAD, // ๓ฐ
- "patch" => Icons::DIFF, // ๏
- "pbm" => Icons::IMAGE, // ๏
- "pcm" => Icons::AUDIO, // ๏
- "pdf" => '\u{f1c1}', // ๏
- "pem" => Icons::KEY, // ๎ฌ
- "pfx" => Icons::KEY, // ๎ฌ
- "pgm" => Icons::IMAGE, // ๏
- "phar" => Icons::LANG_PHP, // ๎ฝ
- "php" => Icons::LANG_PHP, // ๎ฝ
- "pkg" => '\u{eb29}', // ๎ฌฉ
- "pl" => Icons::LANG_PERL, // ๎พ
- "plist" => Icons::OS_APPLE, // ๏
น
- "plx" => Icons::LANG_PERL, // ๎พ
- "ply" => Icons::FILE_3D, // ๓ฐง
- "pm" => Icons::LANG_PERL, // ๎พ
- "png" => Icons::IMAGE, // ๏
- "pnm" => Icons::IMAGE, // ๏
- "pod" => Icons::LANG_PERL, // ๎พ
- "pp" => '\u{e631}', // ๎ฑ
- "ppm" => Icons::IMAGE, // ๏
- "pps" => Icons::SLIDE, // ๏
- "ppsx" => Icons::SLIDE, // ๏
- "ppt" => Icons::SLIDE, // ๏
- "pptx" => Icons::SLIDE, // ๏
- "properties" => Icons::JSON, // ๎
- "prql" => Icons::DATABASE, // ๎
- "ps" => Icons::VECTOR, // ๓ฐ
- "ps1" => Icons::POWERSHELL, // ๎ฏ
- "psd" => '\u{e7b8}', // ๎ธ
- "psd1" => Icons::POWERSHELL, // ๎ฏ
- "psf" => Icons::FONT, // ๏ฑ
- "psm1" => Icons::POWERSHELL, // ๎ฏ
- "pub" => Icons::PUBLIC_KEY, // ๓ฐท
- "purs" => '\u{e630}', // ๎ฐ
- "pxm" => Icons::IMAGE, // ๏
- "py" => Icons::LANG_PYTHON, // ๎
- "pyc" => Icons::LANG_PYTHON, // ๎
- "pyd" => Icons::LANG_PYTHON, // ๎
- "pyi" => Icons::LANG_PYTHON, // ๎
- "pyo" => Icons::LANG_PYTHON, // ๎
- "qcow" => Icons::DISK_IMAGE, // ๎ฑ
- "qcow2" => Icons::DISK_IMAGE, // ๎ฑ
- "r" => Icons::LANG_R, // ๎
- "rar" => Icons::COMPRESSED, // ๏
- "raw" => Icons::IMAGE, // ๏
- "razor" => Icons::RAZOR, // ๏บ
- "rb" => Icons::LANG_RUBY, // ๎
- "rdata" => Icons::LANG_R, // ๎
- "rdb" => '\u{e76d}', // ๎ญ
- "rdoc" => Icons::MARKDOWN, // ๏
- "rds" => Icons::LANG_R, // ๎
- "readme" => Icons::README, // ๓ฐบ
- "rkt" => Icons::LANG_SCHEME, // ๎ฑ
- "rlib" => Icons::LANG_RUST, // ๎
- "rmd" => Icons::MARKDOWN, // ๎
- "rmeta" => Icons::LANG_RUST, // ๎
- "rpm" => '\u{e7bb}', // ๎ป
- "rs" => Icons::LANG_RUST, // ๎
- "rspec" => Icons::LANG_RUBY, // ๎
- "rspec_parallel" => Icons::LANG_RUBY, // ๎
- "rspec_status" => Icons::LANG_RUBY, // ๎
- "rss" => '\u{f09e}', // ๏
- "rst" => Icons::TEXT, // ๏
- "rtf" => Icons::TEXT, // ๏
- "ru" => Icons::LANG_RUBY, // ๎
- "rubydoc" => Icons::LANG_RUBYRAILS, // ๎ป
- "s" => Icons::LANG_ASSEMBLY, // ๎ท
- "sal" => '\u{f147b}', // ๓ฑป
- "sass" => Icons::LANG_SASS, // ๎
- "sbt" => Icons::SUBTITLE, // ๓ฐจ
- "scala" => '\u{e737}', // ๎ท
- "scm" => Icons::LANG_SCHEME, // ๎ฑ
- "scss" => Icons::LANG_SASS, // ๎
- "service" => '\u{eba2}', // ๎ฎข
- "sh" => Icons::SHELL_CMD, // ๏
- "sha1" => Icons::SHIELD_CHECK, // ๓ฐฅ
- "sha224" => Icons::SHIELD_CHECK, // ๓ฐฅ
- "sha256" => Icons::SHIELD_CHECK, // ๓ฐฅ
- "sha384" => Icons::SHIELD_CHECK, // ๓ฐฅ
- "sha512" => Icons::SHIELD_CHECK, // ๓ฐฅ
- "shell" => Icons::SHELL_CMD, // ๏
- "shtml" => Icons::HTML5, // ๏ป
- "sig" => Icons::SIGNED_FILE, // ๓ฑง
- "signature" => Icons::SIGNED_FILE, // ๓ฑง
- "sld" => Icons::LANG_SCHEME, // ๎ฑ
- "slim" => Icons::LANG_RUBYRAILS, // ๎ป
- "sln" => '\u{e70c}', // ๎
- "so" => Icons::OS_LINUX, // ๏
ผ
- "sql" => Icons::DATABASE, // ๎
- "sqlite3" => '\u{e7c4}', // ๎
- "sr" => '\u{f147b}', // ๓ฑป
- "srt" => Icons::SUBTITLE, // ๓ฐจ
- "ss" => Icons::LANG_SCHEME, // ๎ฑ
- "ssa" => Icons::SUBTITLE, // ๓ฐจ
- "stl" => Icons::FILE_3D, // ๓ฐง
- "sty" => Icons::LANG_TEX, // ๎
- "styl" => Icons::LANG_STYLUS, // ๎
- "stylus" => Icons::LANG_STYLUS, // ๎
- "sub" => Icons::SUBTITLE, // ๓ฐจ
- "sublime-build" => Icons::SUBLIME, // ๎ช
- "sublime-keymap" => Icons::SUBLIME, // ๎ช
- "sublime-menu" => Icons::SUBLIME, // ๎ช
- "sublime-options"=> Icons::SUBLIME, // ๎ช
- "sublime-package"=> Icons::SUBLIME, // ๎ช
- "sublime-project"=> Icons::SUBLIME, // ๎ช
- "sublime-session"=> Icons::SUBLIME, // ๎ช
- "sublime-settings"=>Icons::SUBLIME, // ๎ช
- "sublime-snippet"=> Icons::SUBLIME, // ๎ช
- "sublime-theme" => Icons::SUBLIME, // ๎ช
- "svelte" => '\u{e697}', // ๎
- "svg" => Icons::VECTOR, // ๓ฐ
- "swift" => '\u{e755}', // ๎
- "t" => Icons::LANG_PERL, // ๎พ
- "tar" => Icons::COMPRESSED, // ๏
- "taz" => Icons::COMPRESSED, // ๏
- "tbz" => Icons::COMPRESSED, // ๏
- "tbz2" => Icons::COMPRESSED, // ๏
- "tc" => Icons::DISK_IMAGE, // ๎ฑ
- "tex" => Icons::LANG_TEX, // ๎
- "tf" => Icons::TERRAFORM, // ๓ฑข
- "tfstate" => Icons::TERRAFORM, // ๓ฑข
- "tfvars" => Icons::TERRAFORM, // ๓ฑข
- "tgz" => Icons::COMPRESSED, // ๏
- "tif" => Icons::IMAGE, // ๏
- "tiff" => Icons::IMAGE, // ๏
- "tlz" => Icons::COMPRESSED, // ๏
- "tml" => Icons::CONFIG, // ๎
- "toml" => Icons::CONFIG, // ๎
- "torrent" => '\u{e275}', // ๎ต
- "tres" => Icons::GODOT, // ๎
- "ts" => Icons::LANG_TYPESCRIPT, // ๎จ
- "tscn" => Icons::GODOT, // ๎
- "tsv" => Icons::SHEET, // ๏
- "tsx" => Icons::REACT, // ๎บ
- "ttc" => Icons::FONT, // ๏ฑ
- "ttf" => Icons::FONT, // ๏ฑ
- "twig" => '\u{e61c}', // ๎
- "txt" => Icons::TEXT, // ๏
- "typ" => Icons::TYPST, // ๐ญ
- "txz" => Icons::COMPRESSED, // ๏
- "tz" => Icons::COMPRESSED, // ๏
- "tzo" => Icons::COMPRESSED, // ๏
- "unity" => Icons::UNITY, // ๎ก
- "unity3d" => Icons::UNITY, // ๎ก
- "v" => Icons::LANG_V, // ๎ฌ
- "vdi" => Icons::DISK_IMAGE, // ๎ฑ
- "vhd" => Icons::DISK_IMAGE, // ๎ฑ
- "video" => Icons::VIDEO, // ๏ฝ
- "vim" => Icons::VIM, // ๎
- "vmdk" => Icons::DISK_IMAGE, // ๎ฑ
- "vob" => Icons::VIDEO, // ๏ฝ
- "vue" => '\u{f0844}', // ๓ฐก
- "war" => Icons::LANG_JAVA, // ๎
- "wav" => Icons::AUDIO, // ๏
- "webm" => Icons::VIDEO, // ๏ฝ
- "webmanifest" => Icons::JSON, // ๎
- "webp" => Icons::IMAGE, // ๏
- "whl" => Icons::LANG_PYTHON, // ๎
- "windows" => Icons::OS_WINDOWS, // ๏
บ
- "wma" => Icons::AUDIO, // ๏
- "wmv" => Icons::VIDEO, // ๏ฝ
- "woff" => Icons::FONT, // ๏ฑ
- "woff2" => Icons::FONT, // ๏ฑ
- "wv" => Icons::AUDIO, // ๏
- "xcf" => Icons::IMAGE, // ๏
- "xhtml" => Icons::HTML5, // ๏ป
- "xlr" => Icons::SHEET, // ๏
- "xls" => Icons::SHEET, // ๏
- "xlsm" => Icons::SHEET, // ๏
- "xlsx" => Icons::SHEET, // ๏
- "xml" => Icons::XML, // ๓ฐ
- "xpm" => Icons::IMAGE, // ๏
- "xul" => Icons::XML, // ๓ฐ
- "xz" => Icons::COMPRESSED, // ๏
- "yaml" => Icons::YAML, // ๎จ
- "yml" => Icons::YAML, // ๎จ
- "z" => Icons::COMPRESSED, // ๏
- "zig" => '\u{e6a9}', // ๎ฉ
- "zip" => Icons::COMPRESSED, // ๏
- "zsh" => Icons::SHELL_CMD, // ๏
- "zsh-theme" => Icons::SHELL, // ๓ฑ
- "zst" => Icons::COMPRESSED, // ๏
- };
- /// Converts the style used to paint a file name into the style that should be
- /// used to paint an icon.
- ///
- /// - The background colour should be preferred to the foreground colour, as
- /// if one is set, itโs the more โobviousโ colour choice.
- /// - If neither is set, just use the default style.
- /// - Attributes such as bold or underline should not be used to paint the
- /// icon, as they can make it look weird.
- pub fn iconify_style(style: Style) -> Style {
- style
- .background
- .or(style.foreground)
- .map(Style::from)
- .unwrap_or_default()
- }
- /// Lookup the icon for a file based on the file's name, if the entry is a
- /// directory, or by the lowercase file extension.
- pub fn icon_for_file(file: &File<'_>) -> char {
- if file.points_to_directory() {
- *DIRECTORY_ICONS.get(file.name.as_str()).unwrap_or_else(|| {
- if file.is_empty_dir() {
- &Icons::FOLDER_OPEN // ๏
- } else {
- &Icons::FOLDER // ๎ฟ
- }
- })
- } else if let Some(icon) = FILENAME_ICONS.get(file.name.as_str()) {
- *icon
- } else if let Some(ext) = file.ext.as_ref() {
- *EXTENSION_ICONS.get(ext.as_str()).unwrap_or(&Icons::FILE) // ๏
- } else {
- Icons::FILE_OUTLINE // ๏
- }
- }
|