icons.h (18582B)
1 #ifndef INCLUDE_ICONS_H 2 #define INCLUDE_ICONS_H 3 4 #if defined(ICONS_GENERATE) || defined(ICONS_ENABLED) 5 6 /* 7 * 1st arg = ICONS_IN_TERM 8 * 9 * 2nd arg = NERD ICONS 10 * You can find hex codes for nerd fonts here: https://www.nerdfonts.com/cheat-sheet 11 * 12 * 3rd arg = EMOJIS 13 * You can find a list of emoji here: https://unicode.org/Public/emoji/5.0/emoji-test.txt 14 * 15 * Any entry with empty icon gets removed by the hash-table generator 16 */ 17 #if defined(ICONS_IN_TERM) 18 #define ICON_STR(I, N, E) I 19 #include "icons-in-terminal.h" 20 #elif defined(NERD) 21 #define ICON_STR(I, N, E) N 22 #elif defined(EMOJI) 23 #define ICON_STR(I, N, E) E 24 #endif 25 26 /* 27 * Define a string to be printed before and after the icon 28 * Adjust if the icons are not printed properly 29 */ 30 #if defined(EMOJI) 31 /* 32 * NOTE: As some emojis take up two cells, all of the emoji icons must 33 * be of width 2. Therefore, right pad single-width emoji with a space. 34 */ 35 #define ICON_SIZE 2 36 #define ICON_PADDING_RIGHT " " 37 #else 38 #define ICON_SIZE 1 39 #define ICON_PADDING_RIGHT " " 40 #endif 41 #define ICON_PADDING_LEFT "" 42 #define ICON_PADDING_LEFT_LEN (sizeof ICON_PADDING_LEFT - 1) 43 #define ICON_PADDING_RIGHT_LEN (sizeof ICON_PADDING_RIGHT - 1) 44 45 /* ARROWS */ 46 #define ICON_ARROW_UP ICON_STR(MD_ARROW_UPWARD, "", "⬆") 47 #define ICON_ARROW_FORWARD ICON_STR(MD_ARROW_FORWARD, "", "➡") 48 #define ICON_ARROW_DOWN ICON_STR(MD_ARROW_DOWNWARD, "", "⬇") 49 50 /* GENERIC */ 51 #define ICON_DIRECTORY ICON_STR(FA_FOLDER, "", "📂") 52 #define ICON_FILE ICON_STR(FA_FILE, "", "📃") 53 #define ICON_EXEC ICON_STR(FA_COG, "", "⚙️ ") 54 55 /* Top level and common icons */ 56 #define ICON_ARCHIVE ICON_STR(FA_FILE_ARCHIVE_O, "", "📦") 57 #define ICON_BRIEFCASE ICON_STR(FA_BRIEFCASE, "", "💼") 58 #define ICON_C ICON_STR(MFIZZ_C, "", "🇨 ") 59 #define ICON_CHANGELOG ICON_STR(FA_HISTORY, "", "🔺") 60 #define ICON_CHESS ICON_STR("", "", "♟️ ") 61 #define ICON_CLOJURE ICON_STR(MFIZZ_CLOJURE, "", "") 62 #define ICON_CONFIGURE ICON_STR(FILE_CONFIG, "", "🔧") 63 #define ICON_CPLUSPLUS ICON_STR(MFIZZ_CPLUSPLUS, "", ICON_C) 64 #define ICON_DATABASE ICON_STR(MFIZZ_DATABASE_ALT2, "", "🗃️ ") 65 #define ICON_DESKTOP ICON_STR(FA_DESKTOP, "", "🖥️ ") 66 #define ICON_DJVU ICON_STR(FA_PAPERCLIP, "", "📎") 67 #define ICON_DOCUMENT ICON_STR(FA_FILE_TEXT_O, "", "🗒 ") 68 #define ICON_DOWNLOADS ICON_STR(FA_DOWNLOAD, "", "📥") 69 #define ICON_ELIXIR ICON_STR(MFIZZ_ELIXIR, "", "💧") 70 #define ICON_ENCRYPT ICON_STR("", "", "🔒") 71 #define ICON_FSHARP ICON_STR(DEV_FSHARP, "", "") 72 #define ICON_FONT ICON_STR(FILE_FONT, "", "🔤") 73 #define ICON_GIT ICON_STR(FA_GIT, "", "🌱") 74 #define ICON_HASKELL ICON_STR("", "", "") 75 #define ICON_HTML ICON_STR(FA_FILE_CODE_O, "", "🌍") 76 #define ICON_JAVA ICON_STR(MFIZZ_JAVA, "", "☕") 77 #define ICON_JAVASCRIPT ICON_STR(FA_FILE_CODE_O, "", ICON_SCRIPT) 78 #define ICON_LICENSE ICON_STR(FA_COPYRIGHT, "", "⚖️ ") 79 #define ICON_LINUX ICON_STR(FA_LINUX, "", "🐧") 80 #define ICON_MAKEFILE ICON_STR(FILE_CMAKE, "", "🛠 ") 81 #define ICON_MANUAL ICON_STR(FILE_MANPAGE, "", "❓") 82 #define ICON_MS_EXCEL ICON_STR(FILE_EXCEL, "", "📗") 83 #define ICON_MUSIC ICON_STR(FA_MUSIC, "", "🎧") 84 #define ICON_MUSICFILE ICON_STR(FA_FILE_AUDIO_O, "", "🎵") 85 #define ICON_OPTICALDISK ICON_STR(LINEA_MUSIC_CD, "", "💿") 86 #define ICON_PDF ICON_STR(FA_FILE_PDF_O, "", "📕") 87 #define ICON_PHOTOSHOP ICON_STR(DEV_PHOTOSHOP, "", "🖌️ ") 88 #define ICON_PICTUREFILE ICON_STR(FA_FILE_IMAGE_O, "", "🖼️ ") 89 #define ICON_PICTURES ICON_STR(MD_CAMERA_ALT, "", "🎨") 90 #define ICON_PLAYLIST ICON_STR(ICON_MUSICFILE, "", "🎶") 91 #define ICON_POWERPOINT ICON_STR(FILE_POWERPOINT, "", "📊") 92 #define ICON_PUBLIC ICON_STR(FA_INBOX, "", "👀") 93 #define ICON_PYTHON ICON_STR(MFIZZ_PYTHON, "", "🐍") 94 #define ICON_REACT ICON_STR(FILE_JSX, "", ICON_JAVASCRIPT) 95 #define ICON_RUBY ICON_STR(MFIZZ_RUBY, "", "💎") 96 #define ICON_RUST ICON_STR(DEV_RUST, "", "🦀") 97 #define ICON_SASS ICON_STR("", "", ICON_EXT_CSS) 98 #define ICON_SCRIPT ICON_STR(MFIZZ_SCRIPT, "", "📜") 99 #define ICON_SUBTITLE ICON_STR(FA_COMMENTS_O, "", "💬") 100 #define ICON_TEMPLATES ICON_STR(FA_PAPERCLIP, "", "📎") 101 #define ICON_TEX ICON_STR(FILE_TEX, "", ICON_DOCUMENT) 102 #define ICON_VIDEOFILE ICON_STR(FA_FILE_MOVIE_O, "", "🎞 ") 103 #define ICON_VIDEOS ICON_STR(FA_FILM, "", "🎬") 104 #define ICON_VIM ICON_STR(DEV_VIM, "", "") 105 #define ICON_WORDDOC ICON_STR(FILE_WORD, "", "📘") 106 107 #define ICON_EXT_ASM ICON_STR(FILE_NASM, "", "") 108 #define ICON_EXT_BIN ICON_STR(OCT_FILE_BINARY, "", "📓") 109 #define ICON_EXT_COFFEE ICON_STR(MFIZZ_COFFEE_BEAN, "", ICON_JAVASCRIPT) 110 #define ICON_EXT_CSS ICON_STR(MFIZZ_CSS3, "", "🦋") 111 #define ICON_EXT_DEB ICON_STR(MFIZZ_DEBIAN, "", "🍥") 112 #define ICON_EXT_DIFF ICON_STR(FILE_DIFF, "", "📋") 113 #define ICON_EXT_GO ICON_STR(MFIZZ_GO, "", "") 114 #define ICON_EXT_JSON ICON_STR(ICON_JAVASCRIPT, "", ICON_JAVASCRIPT) 115 #define ICON_EXT_LUA ICON_STR(FILE_LUA, "", "🌘") 116 #define ICON_EXT_M ICON_STR("", "", "📊") 117 #define ICON_EXT_MAT ICON_STR("", "", ICON_EXT_M) 118 #define ICON_EXT_MD ICON_STR(DEV_MARKDOWN, "", "📝") 119 #define ICON_EXT_MSI ICON_STR(FA_WINDOWS, "", "🪟") 120 #define ICON_EXT_NIX ICON_STR("", "", "❄️ ") 121 #define ICON_EXT_PATCH ICON_STR(FILE_PATCH, "", "🩹") 122 #define ICON_EXT_PHP ICON_STR(MFIZZ_PHP, "", ICON_HTML) 123 #define ICON_EXT_ROM ICON_STR(FA_LOCK, "", "🔒") 124 #define ICON_EXT_RSS ICON_STR(FA_RSS_SQUARE, "", "📡") 125 #define ICON_EXT_RTF ICON_STR(ICON_PDF, "", ICON_PDF) 126 #define ICON_EXT_SCALA ICON_STR(MFIZZ_SCALA, "", "") 127 #define ICON_EXT_SLN ICON_STR(DEV_VISUALSTUDIO, "", "") 128 #define ICON_EXT_TS ICON_STR(FILE_TS, "", ICON_JAVASCRIPT) 129 130 131 /* 132 * Hex xterm 256 color code, 0 to follow file specific (if any) 133 * Codes: https://jonasjacek.github.io/colors/ 134 * Spectrum sorted: https://upload.wikimedia.org/wikipedia/commons/1/15/Xterm_256color_chart.svg 135 * Color names: https://www.ditig.com/256-colors-cheat-sheet 136 */ 137 #define COLOR_LIST \ 138 COLOR_X(COLOR_VIDEO, 45) /* Turquoise2 */ \ 139 COLOR_X(COLOR_VIDEO1, 226) /* Yellow1 */ \ 140 COLOR_X(COLOR_AUDIO, 220) /* Gold1 */ \ 141 COLOR_X(COLOR_AUDIO1, 205) /* HotPink */ \ 142 COLOR_X(COLOR_IMAGE, 82) /* Chartreuse2 */ \ 143 COLOR_X(COLOR_DOCS, 202) /* OrangeRed1 */ \ 144 COLOR_X(COLOR_ARCHIVE, 209) /* Salmon1 */ \ 145 COLOR_X(COLOR_C, 81) /* SteelBlue1 */ \ 146 COLOR_X(COLOR_JAVA, 32) /* DeepSkyBlue3 */ \ 147 COLOR_X(COLOR_JAVASCRIPT, 47) /* SpringGreen2 */ \ 148 COLOR_X(COLOR_REACT, 39) /* DeepSkyBlue1 */ \ 149 COLOR_X(COLOR_CSS, 199) /* DeepPink1 */ \ 150 COLOR_X(COLOR_PYTHON, 227) /* LightGoldenrod1 */ \ 151 COLOR_X(COLOR_LUA, 19) /* Blue3 */ \ 152 COLOR_X(COLOR_DOCUMENT, 15) /* White */ \ 153 COLOR_X(COLOR_FSHARP, 31) /* DeepSkyBlue3 */ \ 154 COLOR_X(COLOR_RUBY, 160) /* Red3 */ \ 155 COLOR_X(COLOR_SCALA, 196) /* Red1 */ \ 156 COLOR_X(COLOR_SHELL, 47) /* SpringGreen2 */ \ 157 COLOR_X(COLOR_VIM, 28) /* Green4 */ \ 158 COLOR_X(COLOR_ELIXIR, 104) /* MediumPurple */ \ 159 160 /* X-Macro: https://en.wikipedia.org/wiki/X_Macro */ 161 #define COLOR_X(N, V) N = (V), 162 enum { COLOR_LIST }; 163 #undef COLOR_X 164 #define COLOR_X(N, V) N, 165 static const unsigned char init_colors[] = { COLOR_LIST }; 166 #undef COLOR_X 167 168 #ifdef ICONS_GENERATE 169 /* temporary struct using `char *`. the hash-table generator will 170 * output a more optimized version which uses `char[]` instead reducing 171 * indirection and the total binary size. 172 */ 173 struct icon_pair { const char *match; const char *icon; unsigned char color; }; 174 #endif 175 176 struct icon { const char *icon; unsigned char color; }; 177 178 static const struct icon dir_icon = {ICON_DIRECTORY, 0}; 179 static const struct icon file_icon = {ICON_FILE, 0}; 180 static const struct icon exec_icon = {ICON_EXEC, 0}; 181 182 static const struct icon_pair icons_name[] = { 183 {".git", ICON_GIT, 0}, 184 {"Desktop", ICON_DESKTOP, 0}, 185 {"Documents", ICON_BRIEFCASE, 0}, 186 {"Downloads", ICON_DOWNLOADS, 0}, 187 {"Music", ICON_MUSIC, 0}, 188 {"Pictures", ICON_PICTURES, 0}, 189 {"Public", ICON_PUBLIC, 0}, 190 {"Templates", ICON_TEMPLATES, 0}, 191 {"Videos", ICON_VIDEOS, 0}, 192 {"CHANGELOG", ICON_CHANGELOG, COLOR_DOCS}, 193 {"configure", ICON_CONFIGURE, 0}, 194 {"License", ICON_LICENSE, COLOR_DOCS}, 195 {"Makefile", ICON_MAKEFILE, 0}, 196 }; 197 198 #ifdef ICONS_GENERATE 199 /* 200 * The goal here is to provide a small set of default values. We don't try to 201 * provide icons for everything under the sun because keeping a _huge_ table of 202 * icons would: increase binary size, increase memory usage, decrease performance. 203 * 204 * Users are free to customize this *locally* as they see fit. Only open a 205 * pull-request if you think your changes are aligned with the goal described 206 * above. 207 */ 208 209 static const struct icon_pair icons_ext[] = { /* All entries are case-insensitive */ 210 /* Numbers */ 211 {"1", ICON_MANUAL, COLOR_DOCS}, 212 {"7z", ICON_ARCHIVE, COLOR_ARCHIVE}, 213 214 /* A */ 215 {"a", ICON_MANUAL, 0}, 216 {"apk", ICON_ARCHIVE, COLOR_ARCHIVE}, 217 {"asm", ICON_EXT_ASM, 0}, 218 {"aup", ICON_MUSICFILE, COLOR_AUDIO}, 219 {"avi", ICON_VIDEOFILE, COLOR_VIDEO}, 220 221 /* B */ 222 {"bat", ICON_SCRIPT, 0}, 223 {"bib", ICON_TEX, 0}, 224 {"bin", ICON_EXT_BIN, 0}, 225 {"bmp", ICON_PICTUREFILE, COLOR_IMAGE}, 226 {"bz2", ICON_ARCHIVE, COLOR_ARCHIVE}, 227 228 /* C */ 229 {"c", ICON_C, COLOR_C}, 230 {"c++", ICON_CPLUSPLUS, COLOR_C}, 231 {"cabal", ICON_HASKELL, COLOR_VIDEO}, 232 {"cab", ICON_ARCHIVE, COLOR_ARCHIVE}, 233 {"cbr", ICON_ARCHIVE, COLOR_ARCHIVE}, 234 {"cbz", ICON_ARCHIVE, COLOR_ARCHIVE}, 235 {"cc", ICON_CPLUSPLUS, COLOR_C}, 236 {"cjs", ICON_JAVASCRIPT, COLOR_JAVASCRIPT}, 237 {"class", ICON_JAVA, COLOR_JAVA}, 238 {"clj", ICON_CLOJURE, 0}, 239 {"cljc", ICON_CLOJURE, 0}, 240 {"cljs", ICON_CLOJURE, 0}, 241 {"cls", ICON_TEX, 0}, 242 {"cmake", ICON_MAKEFILE, 0}, 243 {"coffee", ICON_EXT_COFFEE, 0}, 244 {"conf", ICON_CONFIGURE, 0}, 245 {"cpio", ICON_ARCHIVE, COLOR_ARCHIVE}, 246 {"cpp", ICON_CPLUSPLUS, COLOR_C}, 247 {"css", ICON_EXT_CSS, COLOR_CSS}, 248 {"cts", ICON_EXT_TS, COLOR_JAVASCRIPT}, 249 {"cue", ICON_PLAYLIST, COLOR_AUDIO}, 250 {"cvs", ICON_CONFIGURE, 0}, 251 {"cxx", ICON_CPLUSPLUS, COLOR_C}, 252 253 /* D */ 254 {"db", ICON_DATABASE, 0}, 255 {"deb", ICON_EXT_DEB, COLOR_ARCHIVE}, 256 {"diff", ICON_EXT_DIFF, 0}, 257 {"dll", ICON_SCRIPT, 0}, 258 {"djvu", ICON_DJVU, COLOR_DOCS}, 259 {"doc", ICON_WORDDOC, COLOR_DOCUMENT}, 260 {"docx", ICON_WORDDOC, COLOR_DOCUMENT}, 261 262 /* E */ 263 {"ejs", ICON_JAVASCRIPT, COLOR_JAVASCRIPT}, 264 {"elf", ICON_LINUX, 0}, 265 {"epub", ICON_PDF, COLOR_DOCS}, 266 {"exe", ICON_EXEC, 0}, 267 {"ex", ICON_ELIXIR, COLOR_ELIXIR}, 268 {"eex", ICON_ELIXIR, COLOR_ELIXIR}, 269 {"exs", ICON_ELIXIR, COLOR_ELIXIR}, 270 271 /* F */ 272 {"f#", ICON_FSHARP, COLOR_FSHARP}, 273 {"fen", ICON_CHESS, 0}, 274 {"flac", ICON_MUSICFILE, COLOR_AUDIO1}, 275 {"flv", ICON_VIDEOFILE, COLOR_VIDEO}, 276 {"fs", ICON_FSHARP, COLOR_FSHARP}, 277 {"fsi", ICON_FSHARP, COLOR_FSHARP}, 278 {"fsscript", ICON_FSHARP, COLOR_FSHARP}, 279 {"fsx", ICON_FSHARP, COLOR_FSHARP}, 280 281 /* G */ 282 {"gem", ICON_RUBY, COLOR_RUBY}, 283 {"gif", ICON_PICTUREFILE, COLOR_IMAGE}, 284 {"go", ICON_EXT_GO, COLOR_C}, 285 {"gpg", ICON_ENCRYPT, COLOR_ARCHIVE}, 286 {"gz", ICON_ARCHIVE, COLOR_ARCHIVE}, 287 {"gzip", ICON_ARCHIVE, COLOR_ARCHIVE}, 288 289 /* H */ 290 {"h", ICON_C, COLOR_C}, 291 {"hh", ICON_CPLUSPLUS, COLOR_C}, 292 {"hpp", ICON_CPLUSPLUS, COLOR_C}, 293 {"hs", ICON_HASKELL, COLOR_ELIXIR}, 294 {"htaccess", ICON_CONFIGURE, 0}, 295 {"htpasswd", ICON_CONFIGURE, 0}, 296 {"htm", ICON_HTML, 0}, 297 {"html", ICON_HTML, 0}, 298 {"hxx", ICON_CPLUSPLUS, COLOR_C}, 299 {"heex", ICON_ELIXIR, COLOR_ELIXIR}, 300 301 /* I */ 302 {"ico", ICON_PICTUREFILE, COLOR_IMAGE}, 303 {"ini", ICON_CONFIGURE, 0}, 304 {"img", ICON_OPTICALDISK, COLOR_ARCHIVE}, 305 {"iso", ICON_OPTICALDISK, COLOR_ARCHIVE}, 306 307 /* J */ 308 {"jar", ICON_JAVA, COLOR_JAVA}, 309 {"java", ICON_JAVA, COLOR_JAVA}, 310 {"jl", ICON_CONFIGURE, 0}, 311 {"jpeg", ICON_PICTUREFILE, COLOR_IMAGE}, 312 {"jpg", ICON_PICTUREFILE, COLOR_IMAGE}, 313 {"js", ICON_JAVASCRIPT, COLOR_JAVASCRIPT}, 314 {"json", ICON_EXT_JSON, COLOR_JAVASCRIPT}, 315 {"jsx", ICON_REACT, COLOR_REACT}, 316 {"jxl", ICON_PICTUREFILE, COLOR_IMAGE}, 317 318 /* K */ 319 {"ksh", ICON_SCRIPT, COLOR_SHELL}, 320 321 /* L */ 322 {"lha", ICON_ARCHIVE, COLOR_ARCHIVE}, 323 {"lhs", ICON_HASKELL, COLOR_VIM}, 324 {"log", ICON_DOCUMENT, 0}, 325 {"lua", ICON_EXT_LUA, COLOR_LUA}, 326 {"lz", ICON_ARCHIVE, COLOR_ARCHIVE}, 327 {"lzh", ICON_ARCHIVE, COLOR_ARCHIVE}, 328 {"lzma", ICON_ARCHIVE, COLOR_ARCHIVE}, 329 330 /* M */ 331 {"m", ICON_EXT_M, COLOR_C}, 332 {"m4a", ICON_MUSICFILE, COLOR_AUDIO}, 333 {"m4v", ICON_VIDEOFILE, COLOR_VIDEO}, 334 {"markdown", ICON_EXT_MD, COLOR_DOCS}, 335 {"mat", ICON_EXT_MAT, COLOR_C}, 336 {"md", ICON_EXT_MD, COLOR_DOCS}, 337 {"mjs", ICON_JAVASCRIPT, COLOR_JAVASCRIPT}, 338 {"mk", ICON_MAKEFILE, 0}, 339 {"mkv", ICON_VIDEOFILE, COLOR_VIDEO}, 340 {"mov", ICON_VIDEOFILE, COLOR_VIDEO}, 341 {"mp3", ICON_MUSICFILE, COLOR_AUDIO}, 342 {"mp4", ICON_VIDEOFILE, COLOR_VIDEO1}, 343 {"mpeg", ICON_VIDEOFILE, COLOR_VIDEO}, 344 {"mpg", ICON_VIDEOFILE, COLOR_VIDEO}, 345 {"msi", ICON_EXT_MSI, 0}, 346 {"mts", ICON_EXT_TS, COLOR_JAVASCRIPT}, 347 348 /* N */ 349 {"nix", ICON_EXT_NIX, COLOR_FSHARP}, 350 351 /* O */ 352 {"o", ICON_MANUAL, 0}, 353 {"ogg", ICON_MUSICFILE, COLOR_AUDIO}, 354 {"opus", ICON_MUSICFILE, COLOR_AUDIO}, 355 {"opdownload", ICON_DOWNLOADS, 0}, 356 {"otf", ICON_FONT, 0}, 357 {"out", ICON_LINUX, 0}, 358 359 /* P */ 360 {"part", ICON_DOWNLOADS, 0}, 361 {"patch", ICON_EXT_PATCH, 0}, 362 {"pdf", ICON_PDF, COLOR_DOCS}, 363 {"pgn", ICON_CHESS, 0}, 364 {"php", ICON_EXT_PHP, 0}, 365 {"png", ICON_PICTUREFILE, COLOR_IMAGE}, 366 {"ppt", ICON_POWERPOINT, 0}, 367 {"pptx", ICON_POWERPOINT, 0}, 368 {"psb", ICON_PHOTOSHOP, 0}, 369 {"psd", ICON_PHOTOSHOP, 0}, 370 {"py", ICON_PYTHON, COLOR_PYTHON}, 371 {"pyc", ICON_PYTHON, COLOR_PYTHON}, 372 {"pyd", ICON_PYTHON, COLOR_PYTHON}, 373 {"pyo", ICON_PYTHON, COLOR_PYTHON}, 374 375 /* Q */ 376 377 /* R */ 378 {"rar", ICON_ARCHIVE, COLOR_ARCHIVE}, 379 {"rb", ICON_RUBY, COLOR_RUBY}, 380 {"rc", ICON_CONFIGURE, 0}, 381 {"rom", ICON_EXT_ROM, 0}, 382 {"rpm", ICON_ARCHIVE, COLOR_ARCHIVE}, 383 {"rs", ICON_RUST, COLOR_DOCS}, 384 {"rss", ICON_EXT_RSS, 0}, 385 {"rtf", ICON_EXT_RTF, 0}, 386 387 /* S */ 388 {"sass", ICON_SASS, COLOR_CSS}, 389 {"scss", ICON_SASS, COLOR_CSS}, 390 {"so", ICON_MANUAL, 0}, 391 {"scala", ICON_EXT_SCALA, COLOR_SCALA}, 392 {"sh", ICON_SCRIPT, COLOR_SHELL}, 393 {"slim", ICON_SCRIPT, COLOR_DOCUMENT}, 394 {"sln", ICON_EXT_SLN, 0}, 395 {"sql", ICON_DATABASE, 0}, 396 {"srt", ICON_SUBTITLE, 0}, 397 {"sty", ICON_TEX, 0}, 398 {"sub", ICON_SUBTITLE, 0}, 399 {"svg", ICON_PICTUREFILE, COLOR_IMAGE}, 400 401 /* T */ 402 {"tar", ICON_ARCHIVE, COLOR_ARCHIVE}, 403 {"tex", ICON_TEX, 0}, 404 {"tgz", ICON_ARCHIVE, COLOR_ARCHIVE}, 405 {"ts", ICON_EXT_TS, COLOR_JAVASCRIPT}, 406 {"tsx", ICON_REACT, COLOR_REACT}, 407 {"txt", ICON_DOCUMENT, COLOR_DOCUMENT}, 408 {"txz", ICON_ARCHIVE, COLOR_ARCHIVE}, 409 {"ttf", ICON_FONT, 0}, 410 411 /* U */ 412 413 /* V */ 414 {"vid", ICON_VIDEOFILE, COLOR_VIDEO}, 415 {"vim", ICON_VIM, COLOR_VIM}, 416 {"vimrc", ICON_VIM, COLOR_VIM}, 417 {"vtt", ICON_SUBTITLE, 0}, 418 419 /* W */ 420 {"wav", ICON_MUSICFILE, COLOR_AUDIO}, 421 {"webm", ICON_VIDEOFILE, COLOR_VIDEO}, 422 {"webp", ICON_PICTUREFILE, COLOR_IMAGE}, 423 {"wma", ICON_VIDEOFILE, COLOR_AUDIO}, 424 {"wmv", ICON_VIDEOFILE, COLOR_VIDEO}, 425 426 /* X */ 427 {"xbps", ICON_ARCHIVE, COLOR_ARCHIVE}, 428 {"xcf", ICON_PICTUREFILE, COLOR_IMAGE}, 429 {"xhtml", ICON_HTML, 0}, 430 {"xls", ICON_MS_EXCEL, 0}, 431 {"xlsx", ICON_MS_EXCEL, 0}, 432 {"xml", ICON_HTML, 0}, 433 {"xz", ICON_ARCHIVE, COLOR_ARCHIVE}, 434 435 /* Y */ 436 {"yaml", ICON_CONFIGURE, COLOR_DOCUMENT}, 437 {"yml", ICON_CONFIGURE, COLOR_DOCUMENT}, 438 439 /* Z */ 440 {"zip", ICON_ARCHIVE, COLOR_ARCHIVE}, 441 {"zsh", ICON_SCRIPT, COLOR_SHELL}, 442 {"zst", ICON_ARCHIVE, COLOR_ARCHIVE}, 443 444 /* Other */ 445 }; 446 #endif 447 448 #endif /* defined(ICONS_GENERATE) || defined(ICONS_ENABLED) */ 449 450 #endif /* INCLUDE_ICONS_H */