From 0ee723b9cf5f8437d9a8a7b938b85a234597e173 Mon Sep 17 00:00:00 2001 From: Maxim Likhachev Date: Thu, 12 Apr 2018 18:24:28 +0500 Subject: [PATCH] ls: ++NerdFonts --- etc/shell/bash/aliases | 11 +- etc/shell/bash/bashrc | 34 +- etc/shell/bash/ls_colors_generator.py | 952 ++++++++++++++++++++++++++++++++++ etc/soft/vifm/filetypes | 2 +- 4 files changed, 980 insertions(+), 19 deletions(-) create mode 100755 etc/shell/bash/ls_colors_generator.py diff --git a/etc/shell/bash/aliases b/etc/shell/bash/aliases index 2f82a46..6a78f6b 100755 --- a/etc/shell/bash/aliases +++ b/etc/shell/bash/aliases @@ -18,13 +18,18 @@ alias rm="rm -i -v" #noindex alias rmdir="rmdir -v" #noindex #- Алиасы для стандартных команд + +ls-with-icons() { ls-i --color=always -N -w $(tput cols) "$@"; } #noindex +dir-with-icons() { dir-i --color=always -N -w $(tput cols) "$@"; } #noindex +vdir-with-icons() { vdir-i --color=always -N -w $(tput cols) "$@"; } #noindex + alias gcc="gcc -Os -Wextra -Wall" #noindex alias g++="g++ -Os -Wall" #noindex alias echo="echo -e" #noindex alias less="less -R" #noindex -alias ls='ls -lGhpX --color=always --group-directories-first -v' #noindex -alias lsl='ls -L' #noindex -alias lst='ls -al --time-style=+%D | grep $(\date +%D)' #noindex +alias ls='ls-with-icons -lGhpXv --color=always --group-directories-first' #noindex +alias lsl='ls-with-icons -L' #noindex +alias lst='ls-with-icons -al --time-style=+%D | grep $(\date +%D)' #noindex alias lss='\ls --format=single-column' #noindex alias nl="nl -b a" #noindex alias df='df -hT' #noindex diff --git a/etc/shell/bash/bashrc b/etc/shell/bash/bashrc index 9e699be..efbf9ea 100755 --- a/etc/shell/bash/bashrc +++ b/etc/shell/bash/bashrc @@ -1,6 +1,6 @@ #!/bin/bash #################################################################### # -# Изменён: Чт 05 апр 2018 21:36:19 +# Изменён: Чт 12 апр 2018 17:03:57 # ################################################################################ @@ -109,20 +109,22 @@ white="\033[1;1m" export GREP_COLOR='1;31' #Цвета ls -export LS_COLORS="\ -no=00:fi=00:di=01;34:ln=01;36:\ -pi=40;33:so=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:ex=01;32:\ -*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:\ -*.lzh=01;31:*.zip=01;31:*.7z=01;31:*.rar=01;31:*.z=01;31:*.Z=01;31:\ -*.gz=01;31:*.bz2=01;31:*.deb=01;31:*.rpm=01;31:\ -*.jpg=00;35:*.jpeg=00;35:*.JPG=00;35:*.png=00;35:*.gif=00;35:*.bmp=00;35:\ -*.ppm=00;35:*.tga=00;35:*.xbm=00;35:*.xpm=00;35:*.tif=00;35:*.png=00;35:\ -*.mpg=01;35:*.avi=01;35:*.fli=01;35:*.vob=01;35:*.mp4=01;35:*.wmv=01;35:\ -*.txt=00;33:*.doc=00;33:*.odt=00;33:*.rtf=00;33:*.pdf=00;33:*.djvu=00;33:\ -*.mp3=01;36:*.wav=01;36:*.ape=01;36:*.ogg=01;36:*.wma=01;36:*.midi=01;36:\ -*.flac=01;36:*.gpt=01;38:*.gp2=01;38:*.gp3=01;38:*.gp4=01;38:\ -*.c=00;04:*.cpp=00;04:*.pas=00;04:*.ui=00;04:*.sh=00;04:*.py=00;04:*.rb=00;04:\ -*.gl=01;35:*.dl=01;35:" +# export LS_COLORS="\ +# no=00:fi=00:di=01;34:ln=01;36:\ +# pi=40;33:so=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:ex=01;32:\ +# *.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:\ +# *.lzh=01;31:*.zip=01;31:*.7z=01;31:*.rar=01;31:*.z=01;31:*.Z=01;31:\ +# *.gz=01;31:*.bz2=01;31:*.deb=01;31:*.rpm=01;31:\ +# *.jpg=00;35:*.jpeg=00;35:*.JPG=00;35:*.png=00;35:*.gif=00;35:*.bmp=00;35:\ +# *.ppm=00;35:*.tga=00;35:*.xbm=00;35:*.xpm=00;35:*.tif=00;35:*.png=00;35:\ +# *.mpg=01;35:*.avi=01;35:*.fli=01;35:*.vob=01;35:*.mp4=01;35:*.wmv=01;35:\ +# *.txt=00;33:*.doc=00;33:*.odt=00;33:*.rtf=00;33:*.pdf=00;33:*.djvu=00;33:\ +# *.mp3=01;36:*.wav=01;36:*.ape=01;36:*.ogg=01;36:*.wma=01;36:*.midi=01;36:\ +# *.flac=01;36:*.gpt=01;38:*.gp2=01;38:*.gp3=01;38:*.gp4=01;38:\ +# *.c=00;04:*.cpp=00;04:*.pas=00;04:*.ui=00;04:*.sh=00;04:*.py=00;04:*.rb=00;04:\ +# *.gl=01;35:*.dl=01;35:" + +export LS_COLORS=$($BASHRC/ls_colors_generator.py) #Настройка подсветки мануалов export LESS_TERMCAP_mb=$'\E[01;31m' @@ -317,6 +319,8 @@ bind -m vi-insert "\C-k":kill-line #hstr bind '"\C-r": "\C-ahh \C-j"' +# bind '"\C-r": "\C-aprintf \033c\e]20;;100x100+1000+1000\a \C-j"' + #commacd source $SHELLRC/etc/shell/bash/commacd diff --git a/etc/shell/bash/ls_colors_generator.py b/etc/shell/bash/ls_colors_generator.py new file mode 100755 index 0000000..49d31f2 --- /dev/null +++ b/etc/shell/bash/ls_colors_generator.py @@ -0,0 +1,952 @@ +#!/usr/bin/env python +# -*- coding: utf-8 -*- + +# View this file with a 4-space-to-tab ratio. +def get_colors(): + + FORMAT_COLORS = { + LEFT : "", # Sequence to print *before* outputting a file name. + RIGHT : "", # Sequence to print *after* outputting a file name. + END : "\x1b[0m", # Sequence to print *after* the command executes. + RESET : "\x1b[0m" # Sequence to print *after* the command executes. (functionally identical) + } + + # The color_char(fg, bg, char, other) function takes arguments and formats them into a valid + # LS_COLORS format specifier. FG denotes foreground (it is required). BG denotes background; + # in order to disable the background set it to -1. The char argument is the character code for + # the character that must be printed before the filename in ls. The "other" argument denotes + # any escape codes to print after the main fg/bg sequence (e.g. bold, italic formatters). + # ^^cc is an alias for color_char. + SPECIAL = { + NORMAL : "", # Should be left blank. Used as a fallback for everything else. + FILE : color_char(234,-1,0xE612,0), # Normal file, or one that does not have a color associated with it. + DIRECTORY : color_char(18,-1,0xE5FE,1), # A folder. + LINK : color_char(32,-1,0xF178,1), # Any kind of link. + ORPHAN : color_char(232, 197, 0xF12A,0), # An "orphaned" inode. Should be set to an error condition. + MISSING : color_char(232, 197,ord("?"),0),# A "missing" inode. Should be set to an error condition. + PIPE : color_char(115,239,0xFCE3,0), # A named pipe. + SOCKET : color_char(140,-1,0xF135,0), # Honestly not sure what this is, so it must not appear much. Not needed probably. + BLOCKDEV : color_char(177,239,0xF069,0), # A block device (e.g. /dev/sda) + CHARDEV : color_char(178,239,0xF069,0), # A character device (e.g. /dev/random) + DOOR : color_char(84,-1,0xE5FE,0), # Client-server communication door. Not needed. + EXEC : color_char(10,-1,0xF135,1), # An executable file. + SETUID : "", # Set UID upon execution + SETGID : "", # Set GID upon execution + STICKY : color_char(196,-1,0xF982,1), # Sticky bit set. + OTHERWRITE : color_char(4,2,0xF83E,0), # Writable by others than the owner + root. + STOTHERWRITE: color_char(9,2,0xE612,0), # Sticky, but writable by others than the owner + root. + } + + EXTENSION_LIST = { + "*..": cc(18,-1,0xF062,1), + + "*sda": cc(177,239,0xF0A0,0), + "*sda1": cc(177,239,0xF0A0,0), + "*sda2": cc(177,239,0xF0A0,0), + "*sda3": cc(177,239,0xF0A0,0), + + "*bin": cc(18, -1, 0xE712,1), + "*boot": cc(18, -1, 0xE712,1), + "*dev": cc(18, -1, 0xE712,1), + "*etc": cc(18, -1, 0xF0AD,1), + "*home": cc(18, -1, 0xF015,1), + "*lost+found": cc(1, -1, 0xF118,1), + "*lib32": cc(18, -1, 0xE712,1), + "*lib64": cc(18, -1, 0xE712,1), + "*mnt": cc(18, -1, 0xF0A0,1), + "*opt": cc(18, -1, 0xE712,1), + "*proc": cc(18, -1, 0xE712,1), + "*root": cc(18, -1, 0xE26E,1), + "*run": cc(18, -1, 0xE712,1), + "*sbin": cc(18, -1, 0xE712,1), + "*sys": cc(18, -1, 0xE712,1), + "*usr": cc(18, -1, 0xE712,1), + "*tmp": cc(18, -1, 0xE712,1), + "*var": cc(18, -1, 0xE712,1), + + "*README": cc(143, -1, 0xE714,1), + "*README.rst": cc(143, -1, 0xE714,1), + "*LICENSE": cc(143, -1, 0xE714,1), + "*COPYING": cc(143, -1, 0xE714,1), + "*INSTALL": cc(143, -1, 0xE714,1), + "*COPYRIGHT": cc(143, -1, 0xE714,1), + "*AUTHORS": cc(143, -1, 0xE714,1), + "*HISTORY": cc(143, -1, 0xE714,1), + "*CONTRIBUTORS": cc(143, -1, 0xE714,1), + "*PATENTS": cc(143, -1, 0xE714,1), + "*VERSION": cc(143, -1, 0xE714,1), + "*NOTICE": cc(143, -1, 0xE714,1), + "*CHANGES": cc(143, -1, 0xE714,1), + ".log": cc(241, -1, 0xE714,1), + ".txt": cc(240, -1, 0xE714,0), + ".etx": cc(130, -1, 0xE60E,0), + ".info": cc(130, -1, 0xE60E,0), + ".markdown": cc(130, -1, 0xE60E,0), + ".md": cc(130, -1, 0xE60E,0), + ".wiki": cc(130, -1, 0xF266,0), + ".mkd": cc(130, -1, 0xE60E,0), + ".nfo": cc(130, -1, 0xE60E,0), + ".pod": cc(130, -1, 0xE60E,0), + ".tex": cc(130, -1, 0xE60E,0), + ".textile": cc(130, -1, 0xE60E,0), + ".json": cc(58, -1, 0xE60B,0), + ".msg": cc(58, -1, 0xE60B,0), + ".pgn": cc(58, -1, 0xE60B,0), + ".rss": cc(58, -1, 0xE60B,0), + ".xml": cc(58, -1, 0xE60B,0), + ".yml": cc(58, -1, 0xE60B,0), + ".RData": cc(58, -1, 0xE60B,0), + ".rdata": cc(58, -1, 0xE60B,0), + ".cbr": cc(11, -1, 0xF02D,0), + ".cbz": cc(11, -1, 0xF02D,0), + ".chm": cc(11, -1, 0xF02D,0), + ".fb2": cc(11, -1, 0xF02D,0), + ".djvu": cc(11, -1, 0xF02D,1), + ".pdf": cc(11, -1, 0xF411,1), + ".PDF": cc(11, -1, 0xF411,1), + ".docm": cc(57, -1, 0xF1C2, 0, other="4"), + ".doc": cc(57, -1, 0xF1C2,0), + ".docx": cc(57, -1, 0xF1C2,0), + ".eps": cc(57, -1, 0xF1C2,0), + ".ps": cc(57, -1, 0xF1C2,0), + ".odb": cc(57, -1, 0xF1C2,0), + ".odt": cc(57, -1, 0xF1C2,0), + ".rtf": cc(57, -1, 0xF035,0), + ".odp": cc(166, -1, 0xF035,0), + ".pps": cc(166, -1, 0xF1C4,0), + ".ppt": cc(166, -1, 0xF1C4,0), + ".pptx": cc(166, -1, 0xF1C4,0), + ".ppts": cc(166, -1, 0xF1C4,0), + ".pptxm": cc(166, -1, 0xF1C4, 0, other="4"), + ".pptsm": cc(166, -1, 0xF1C4, 0, other="4"), + ".csv": cc(78, -1, 0xF1C0,0), + ".ods": cc(93, -1, 0xF1C3,0), + ".xla": cc(76, -1, 0xF1C3,0), + ".xls": cc(93, -1, 0xF1C3,0), + ".xlsx": cc(93, -1, 0xF1C3,0), + ".xlsxm": cc(93, -1, 0xF1C3, 0, other="4"), + ".xltm": cc(73, -1, 0xF1C3, 0, other="4"), + ".xltx": cc(73, -1, 0xF1C3,0), + "*cfg": cc(237, -1, 0xF0AD,1), + "*conf": cc(237, -1, 0xF0AD,1), + "*rc": cc(237, -1, 0xF0AD,1), + ".ini": cc(237, -1, 0xF0AD,1), + ".viminfo": cc(237, -1, 0xF0AD,1), + ".pcf": cc(237, -1, 0xF0AD,1), + ".psf": cc(237, -1, 0xF0AD,1), + ".git": cc(197, -1, 0xE725,1), + ".gitignore": cc(240, -1, 0xE725,0), + ".gitattributes": cc(240, -1, 0xE725,0), + ".gitmodules": cc(240, -1, 0xE725,0), + ".awk": cc(10, -1, 0xF120,0), + ".bash": cc(10, -1, 0xF120,0), + ".bat": cc(2, -1, 0xF120,0), + ".BAT": cc(2, -1, 0xF120,0), + ".sed": cc(2, -1, 0xF120,0), + ".sh": cc(10, -1, 0xF120,1), + ".zsh": cc(10, -1, 0xF120,1), + ".vim": cc(2, -1, 0xF120,0), + ".ahk": cc(39, -1, 0xF120,0), + ".py": cc(39, -1, 0xE606,0), + ".pl": cc(208, -1, 0xE769,0), + ".PL": cc(160, -1, 0xE769,0), + ".t": cc(114, -1, 0xE769,0), + ".msql": cc(222, -1, 0xE229,0), + ".mysql": cc(222, -1, 0xE229,0), + ".pgsql": cc(222, -1, 0xF1C0,0), + ".sql": cc(222, -1, 0xF1C0,0), + ".tcl": cc(64, -1, 0xE7C4, 0, other="1"), + ".r": cc(49, -1, ord("R"),0), + ".R": cc(49, -1, ord("R"),0), + ".gs": cc(21, -1, ord("G"),0), + ".asm": cc(21, -1, 0xE79D,0), + ".cl": cc(21, -1, 0xE768,0), + ".lisp": cc(21, -1, 0xE768,0), + ".lua": cc(21, -1, 0xE620,0), + ".moon": cc(21, -1, 0xF186,0), + ".c": cc(21, -1, 0xE61E,0), + ".C": cc(21, -1, 0xE61E,0), + ".h": cc(110, -1, 0xE61E,0), + ".H": cc(110, -1, 0xE61E,0), + ".tcc": cc(110, -1, 0xE61E,0), + ".c++": cc(21, -1, 0xE61D,0), + ".h++": cc(110, -1, 0xE61D,0), + ".hpp": cc(110, -1, 0xE61D,0), + ".hxx": cc(110, -1, 0xE61D,0), + ".ii": cc(110, -1, 0xE61D,0), + ".M": cc(110, -1, 0xE61E,0), + ".m": cc(110, -1, 0xE61E,0), + ".cc": cc(21, -1, ord("#"),0), + ".cs": cc(21, -1, ord("#"),0), + ".cp": cc(21, -1, ord("#"),0), + ".cpp": cc(21, -1, 0xE61D,0), + ".cxx": cc(21, -1, 0xE61D,0), + ".cr": cc(21, -1, 0xE739,0), + ".go": cc(21, -1, 0xE626,0), + ".f": cc(21, -1, ord("F"),0), + ".for": cc(21, -1, ord("F"),0), + ".ftn": cc(21, -1, ord("F"),0), + ".s": cc(110, -1, 0xE79D,0), + ".S": cc(110, -1, 0xE79D,0), + ".rs": cc(21, -1, 0xE7A8,0), + ".sx": cc(21, -1, ord("?"),0), + ".hi": cc(110, -1, ord("I"),0), + ".hs": cc(21, -1, 0xE61F,0), + ".lhs": cc(21, -1, 0xE61F,0), + ".pyc": cc(240, -1, 0xE606,0), + ".css": cc(21, -1, 0xE614, 0), + ".less": cc(21, -1, 0xE60B, 0), + ".sass": cc(21, -1, 0xE603, 0), + ".scss": cc(21, -1, 0xE603, 0), + ".htm": cc(21, -1, 0xE60E, 0), + ".html": cc(21, -1, 0xE60E, 0), + ".jhtm": cc(21, -1, 0xE60E, 0), + ".mht": cc(21, -1, 0xE60E, 0), + ".eml": cc(21, -1, 0xE60E, 0), + ".mustache": cc(21, -1, 0xE60F, 0), + ".coffee": cc(21, -1, 0xE61B, 0), + ".js": cc(21, -1, 0xE60C, 0), + ".java": cc(74, -1, 0xE61B, 0), + ".jsm": cc(74, -1, 0xE60C, 0), + ".jsm": cc(74, -1, 0xE60C, 0), + ".jsp": cc(74, -1, 0xE60C, 0), + ".php": cc(21, -1, 0xE608,0), + ".ctp": cc(21, -1, 0xE608,0), + ".twig": cc(21, -1, 0xE61C,0), + ".vb": cc(21, -1, ord("V"),0), + ".vba": cc(21, -1, ord("V"),0), + ".vbs": cc(21, -1, ord("V"),0), + "*Dockerfile": cc(232, -1, 0xE7B0,0), + ".dockerignore":cc(240, -1, 0xE7B0,0), + "*Makefile": cc(232, -1, 0xF0AD,0), + "*MANIFEST": cc(243, -1, 0xF0AD,0), + "*pm_to_blib": cc(240, -1, 0xF0AD,0), + ".am": cc(242, -1, 0xF0AD,0), + ".in": cc(242, -1, 0xF0AD,0), + ".hin": cc(242, -1, 0xF0AD,0), + ".scan": cc(242, -1, 0xF0AD,0), + ".m4": cc(242, -1, 0xF0AD,0), + ".old": cc(242, -1, 0xF0AD,0), + ".out": cc(242, -1, 0xF0AD,0), + ".SKIP": cc(244, -1, 0xF0AD,0), + ".diff": cc(232, 197, 0xF467, 0, other="1"), + ".patch": cc(232, 197, 0xF467, 0, other="1"), + ".bmp": cc(91, -1, 0xE60D,0), + ".tiff": cc(91, -1, 0xE60D,0), + ".tif": cc(91, -1, 0xE60D,0), + ".TIFF": cc(91, -1, 0xE60D,0), + ".cdr": cc(91, -1, 0xE60D,0), + ".gif": cc(91, -1, 0xE60D,0), + ".ico": cc(91, -1, 0xE60D,0), + ".JPEG": cc(91, -1, 0xE60D,0), + ".jpeg": cc(91, -1, 0xE60D,0), + ".JPG": cc(91, -1, 0xE60D,0), + ".jpg": cc(91, -1, 0xE60D,0), + ".nth": cc(91, -1, 0xE60D,0), + ".png": cc(91, -1, 0xE60D,0), + ".psd": cc(91, -1, 0xE7B8,0), + ".xpm": cc(91, -1, 0xE60D,0), + ".ai": cc(99, -1, 0xE7B4,0), + ".eps": cc(99, -1, 0xE60D,0), + ".epsf": cc(99, -1, 0xE60D,0), + ".drw": cc(99, -1, 0xE60D,0), + ".ps": cc(99, -1, 0xE7B8,0), + ".svg": cc(99, -1, 0xE60D,0), + ".avi": cc(35, -1, 0xE60D,0), + ".divx": cc(35, -1, 0xE60D,0), + ".IFO": cc(35, -1, 0xE60D,0), + ".m2v": cc(35, -1, 0xE60D,0), + ".m4v": cc(35, -1, 0xE60D,0), + ".mkv": cc(35, -1, 0xE60D,0), + ".MOV": cc(35, -1, 0xE60D,0), + ".mov": cc(35, -1, 0xE60D,0), + ".mp4": cc(35, -1, 0xE60D,0), + ".mpeg": cc(35, -1, 0xE60D,0), + ".mpg": cc(35, -1, 0xE60D,0), + ".ogm": cc(35, -1, 0xE60D,0), + ".rmvb": cc(35, -1, 0xE60D,0), + ".sample": cc(35, -1, 0xE60D,0), + ".wmv": cc(35, -1, 0xE60D,0), + ".3g2": cc(69, -1, 0xF10B,0), + ".3gp": cc(69, -1, 0xF10B,0), + ".gp3": cc(69, -1, 0xF10B,0), + ".webm": cc(69, -1, 0xF10B,0), + ".gp4": cc(69, -1, 0xF10B,0), + ".asf": cc(69, -1, 0xF10B,0), + ".flv": cc(69, -1, 0xF10B,0), + ".ts": cc(69, -1, 0xF10B,0), + ".ogv": cc(69, -1, 0xF10B,0), + ".f4v": cc(69, -1, 0xF10B,0), + ".VOB": cc(69, -1, 0xE60D, 0, other="1"), + ".vob": cc(69, -1, 0xE60D, 0, other="1"), + ".3ga": cc(6, -1, 0xF025, 0, other="1"), + ".S3M": cc(6, -1, 0xF025, 0, other="1"), + ".aac": cc(6, -1, 0xF025, 0, other="1"), + ".au": cc(6, -1, 0xF025, 0, other="1"), + ".dat": cc(6, -1, 0xF025, 0, other="1"), + ".dts": cc(6, -1, 0xF025, 0, other="1"), + ".fcm": cc(6, -1, 0xF025, 0, other="1"), + ".m4a": cc(6, -1, 0xF025, 0, other="1"), + ".mid": cc(6, -1, 0xF025, 0, other="1"), + ".midi": cc(6, -1, 0xF025, 0, other="1"), + ".mod": cc(6, -1, 0xF025, 0, other="1"), + ".mp3": cc(6, -1, 0xF025, 0, other="1"), + ".mp4a": cc(6, -1, 0xF025, 0, other="1"), + ".oga": cc(6, -1, 0xF025, 0, other="1"), + ".ogg": cc(6, -1, 0xF025, 0, other="1"), + ".opus": cc(6, -1, 0xF025, 0, other="1"), + ".s3m": cc(6, -1, 0xF025, 0, other="1"), + ".sid": cc(6, -1, 0xF025, 0, other="1"), + ".wma": cc(6, -1, 0xF025, 0, other="1"), + ".ape": cc(6, -1, 0xF025, 0, other="1"), + ".aiff": cc(6, -1, 0xF025, 0, other="1"), + ".cda": cc(6, -1, 0xF025, 0, other="1"), + ".flac": cc(6, -1, 0xF025, 0, other="1"), + ".alac": cc(6, -1, 0xF025, 0, other="1"), + ".midi": cc(6, -1, 0xF025, 0, other="1"), + ".pcm": cc(6, -1, 0xF025, 0, other="1"), + ".wav": cc(6, -1, 0xF025, 0, other="1"), + ".wv": cc(6, -1, 0xF025, 0, other="1"), + ".wvc": cc(6, -1, 0xF025, 0, other="1"), + ".afm": cc(66, -1, 0xF031,0), + ".fon": cc(66, -1, 0xF031,0), + ".fnt": cc(66, -1, 0xF031,0), + ".pfb": cc(66, -1, 0xF031,0), + ".pfm": cc(66, -1, 0xF031,0), + ".ttf": cc(66, -1, 0xF031,0), + ".otf": cc(66, -1, 0xF031,0), + ".PFA": cc(66, -1, 0xF031,0), + ".pfa": cc(66, -1, 0xF031,0), + ".7z": cc(88, -1, 0xF187,1), + ".a": cc(88, -1, 0xF187,1), + ".arj": cc(88, -1, 0xF187,1), + ".bz2": cc(88, -1, 0xF187,1), + ".cpio": cc(88, -1, 0xF187,1), + ".gz": cc(88, -1, 0xF187,1), + ".lrz": cc(88, -1, 0xF187,1), + ".lz": cc(88, -1, 0xF187,1), + ".lzma": cc(88, -1, 0xF187,1), + ".lzo": cc(88, -1, 0xF187,1), + ".rar": cc(88, -1, 0xF187,1), + ".s7z": cc(88, -1, 0xF187,1), + ".sz": cc(88, -1, 0xF187,1), + ".tar": cc(88, -1, 0xF187,1), + ".tgz": cc(88, -1, 0xF187,1), + ".xz": cc(88, -1, 0xF187,1), + ".zip": cc(88, -1, 0xF187,1), + ".zipx": cc(88, -1, 0xF187,1), + ".zoo": cc(88, -1, 0xF187,1), + ".zpaq": cc(88, -1, 0xF187,1), + ".zz": cc(88, -1, 0xF187,1), + ".Z": cc(88, -1, 0xF187,1), + ".z": cc(88, -1, 0xF187,1), + ".apk": cc(88, -1, 0xF487,1), + ".deb": cc(88, -1, 0xF487,1), + ".rpm": cc(88, -1, 0xF487,1), + ".jad": cc(88, -1, 0xF487,1), + ".jar": cc(88, -1, 0xF487,1), + ".cab": cc(88, -1, 0xF487,1), + ".pak": cc(88, -1, 0xF487,1), + ".pk3": cc(88, -1, 0xF487,1), + ".vdf": cc(88, -1, 0xF487,1), + ".vpk": cc(88, -1, 0xF487,1), + ".bsp": cc(88, -1, 0xF487,1), + ".dmg": cc(88, -1, 0xF487,1), + ".r00": cc(239, -1, 0xE601,0), + ".r01": cc(239, -1, 0xE601,0), + ".r02": cc(239, -1, 0xE601,0), + ".r03": cc(239, -1, 0xE601,0), + ".r04": cc(239, -1, 0xE601,0), + ".r05": cc(239, -1, 0xE601,0), + ".r06": cc(239, -1, 0xE601,0), + ".r07": cc(239, -1, 0xE601,0), + ".r08": cc(239, -1, 0xE601,0), + ".r09": cc(239, -1, 0xE601,0), + ".r10": cc(239, -1, 0xE601,0), + ".r100": cc(239, -1, 0xE601,0), + ".r101": cc(239, -1, 0xE601,0), + ".r102": cc(239, -1, 0xE601,0), + ".r103": cc(239, -1, 0xE601,0), + ".r104": cc(239, -1, 0xE601,0), + ".r105": cc(239, -1, 0xE601,0), + ".r106": cc(239, -1, 0xE601,0), + ".r107": cc(239, -1, 0xE601,0), + ".r108": cc(239, -1, 0xE601,0), + ".r109": cc(239, -1, 0xE601,0), + ".r11": cc(239, -1, 0xE601,0), + ".r110": cc(239, -1, 0xE601,0), + ".r111": cc(239, -1, 0xE601,0), + ".r112": cc(239, -1, 0xE601,0), + ".r113": cc(239, -1, 0xE601,0), + ".r114": cc(239, -1, 0xE601,0), + ".r115": cc(239, -1, 0xE601,0), + ".r116": cc(239, -1, 0xE601,0), + ".r12": cc(239, -1, 0xE601,0), + ".r13": cc(239, -1, 0xE601,0), + ".r14": cc(239, -1, 0xE601,0), + ".r15": cc(239, -1, 0xE601,0), + ".r16": cc(239, -1, 0xE601,0), + ".r17": cc(239, -1, 0xE601,0), + ".r18": cc(239, -1, 0xE601,0), + ".r19": cc(239, -1, 0xE601,0), + ".r20": cc(239, -1, 0xE601,0), + ".r21": cc(239, -1, 0xE601,0), + ".r22": cc(239, -1, 0xE601,0), + ".r25": cc(239, -1, 0xE601,0), + ".r26": cc(239, -1, 0xE601,0), + ".r27": cc(239, -1, 0xE601,0), + ".r28": cc(239, -1, 0xE601,0), + ".r29": cc(239, -1, 0xE601,0), + ".r30": cc(239, -1, 0xE601,0), + ".r31": cc(239, -1, 0xE601,0), + ".r32": cc(239, -1, 0xE601,0), + ".r33": cc(239, -1, 0xE601,0), + ".r34": cc(239, -1, 0xE601,0), + ".r35": cc(239, -1, 0xE601,0), + ".r36": cc(239, -1, 0xE601,0), + ".r37": cc(239, -1, 0xE601,0), + ".r38": cc(239, -1, 0xE601,0), + ".r39": cc(239, -1, 0xE601,0), + ".r40": cc(239, -1, 0xE601,0), + ".r41": cc(239, -1, 0xE601,0), + ".r42": cc(239, -1, 0xE601,0), + ".r43": cc(239, -1, 0xE601,0), + ".r44": cc(239, -1, 0xE601,0), + ".r45": cc(239, -1, 0xE601,0), + ".r46": cc(239, -1, 0xE601,0), + ".r47": cc(239, -1, 0xE601,0), + ".r48": cc(239, -1, 0xE601,0), + ".r49": cc(239, -1, 0xE601,0), + ".r50": cc(239, -1, 0xE601,0), + ".r51": cc(239, -1, 0xE601,0), + ".r52": cc(239, -1, 0xE601,0), + ".r53": cc(239, -1, 0xE601,0), + ".r54": cc(239, -1, 0xE601,0), + ".r55": cc(239, -1, 0xE601,0), + ".r56": cc(239, -1, 0xE601,0), + ".r57": cc(239, -1, 0xE601,0), + ".r58": cc(239, -1, 0xE601,0), + ".r59": cc(239, -1, 0xE601,0), + ".r60": cc(239, -1, 0xE601,0), + ".r61": cc(239, -1, 0xE601,0), + ".r62": cc(239, -1, 0xE601,0), + ".r63": cc(239, -1, 0xE601,0), + ".r64": cc(239, -1, 0xE601,0), + ".r65": cc(239, -1, 0xE601,0), + ".r66": cc(239, -1, 0xE601,0), + ".r67": cc(239, -1, 0xE601,0), + ".r68": cc(239, -1, 0xE601,0), + ".r69": cc(239, -1, 0xE601,0), + ".r69": cc(239, -1, 0xE601,0), + ".r70": cc(239, -1, 0xE601,0), + ".r71": cc(239, -1, 0xE601,0), + ".r72": cc(239, -1, 0xE601,0), + ".r73": cc(239, -1, 0xE601,0), + ".r74": cc(239, -1, 0xE601,0), + ".r75": cc(239, -1, 0xE601,0), + ".r76": cc(239, -1, 0xE601,0), + ".r77": cc(239, -1, 0xE601,0), + ".r78": cc(239, -1, 0xE601,0), + ".r79": cc(239, -1, 0xE601,0), + ".r80": cc(239, -1, 0xE601,0), + ".r81": cc(239, -1, 0xE601,0), + ".r82": cc(239, -1, 0xE601,0), + ".r83": cc(239, -1, 0xE601,0), + ".r84": cc(239, -1, 0xE601,0), + ".r85": cc(239, -1, 0xE601,0), + ".r86": cc(239, -1, 0xE601,0), + ".r87": cc(239, -1, 0xE601,0), + ".r88": cc(239, -1, 0xE601,0), + ".r89": cc(239, -1, 0xE601,0), + ".r90": cc(239, -1, 0xE601,0), + ".r91": cc(239, -1, 0xE601,0), + ".r92": cc(239, -1, 0xE601,0), + ".r93": cc(239, -1, 0xE601,0), + ".r94": cc(239, -1, 0xE601,0), + ".r95": cc(239, -1, 0xE601,0), + ".r96": cc(239, -1, 0xE601,0), + ".r97": cc(239, -1, 0xE601,0), + ".r98": cc(239, -1, 0xE601,0), + ".r99": cc(239, -1, 0xE601,0), + ".zx00": cc(239, -1, 0xE601,0), + ".zx01": cc(239, -1, 0xE601,0), + ".zx02": cc(239, -1, 0xE601,0), + ".zx03": cc(239, -1, 0xE601,0), + ".zx04": cc(239, -1, 0xE601,0), + ".zx05": cc(239, -1, 0xE601,0), + ".zx06": cc(239, -1, 0xE601,0), + ".zx07": cc(239, -1, 0xE601,0), + ".zx08": cc(239, -1, 0xE601,0), + ".zx09": cc(239, -1, 0xE601,0), + ".zx10": cc(239, -1, 0xE601,0), + ".zx11": cc(239, -1, 0xE601,0), + ".zx12": cc(239, -1, 0xE601,0), + ".zx13": cc(239, -1, 0xE601,0), + ".zx14": cc(239, -1, 0xE601,0), + ".zx15": cc(239, -1, 0xE601,0), + ".zx16": cc(239, -1, 0xE601,0), + ".zx17": cc(239, -1, 0xE601,0), + ".zx18": cc(239, -1, 0xE601,0), + ".zx19": cc(239, -1, 0xE601,0), + ".zx20": cc(239, -1, 0xE601,0), + ".zx21": cc(239, -1, 0xE601,0), + ".zx22": cc(239, -1, 0xE601,0), + ".zx25": cc(239, -1, 0xE601,0), + ".zx26": cc(239, -1, 0xE601,0), + ".zx27": cc(239, -1, 0xE601,0), + ".zx28": cc(239, -1, 0xE601,0), + ".zx29": cc(239, -1, 0xE601,0), + ".zx30": cc(239, -1, 0xE601,0), + ".zx31": cc(239, -1, 0xE601,0), + ".zx32": cc(239, -1, 0xE601,0), + ".zx33": cc(239, -1, 0xE601,0), + ".zx34": cc(239, -1, 0xE601,0), + ".zx35": cc(239, -1, 0xE601,0), + ".zx36": cc(239, -1, 0xE601,0), + ".zx37": cc(239, -1, 0xE601,0), + ".zx38": cc(239, -1, 0xE601,0), + ".zx39": cc(239, -1, 0xE601,0), + ".zx40": cc(239, -1, 0xE601,0), + ".zx41": cc(239, -1, 0xE601,0), + ".zx42": cc(239, -1, 0xE601,0), + ".zx43": cc(239, -1, 0xE601,0), + ".zx44": cc(239, -1, 0xE601,0), + ".zx45": cc(239, -1, 0xE601,0), + ".zx46": cc(239, -1, 0xE601,0), + ".zx47": cc(239, -1, 0xE601,0), + ".zx48": cc(239, -1, 0xE601,0), + ".zx49": cc(239, -1, 0xE601,0), + ".zx50": cc(239, -1, 0xE601,0), + ".zx51": cc(239, -1, 0xE601,0), + ".zx52": cc(239, -1, 0xE601,0), + ".zx53": cc(239, -1, 0xE601,0), + ".zx54": cc(239, -1, 0xE601,0), + ".zx55": cc(239, -1, 0xE601,0), + ".zx56": cc(239, -1, 0xE601,0), + ".zx57": cc(239, -1, 0xE601,0), + ".zx58": cc(239, -1, 0xE601,0), + ".zx59": cc(239, -1, 0xE601,0), + ".zx60": cc(239, -1, 0xE601,0), + ".zx61": cc(239, -1, 0xE601,0), + ".zx62": cc(239, -1, 0xE601,0), + ".zx63": cc(239, -1, 0xE601,0), + ".zx64": cc(239, -1, 0xE601,0), + ".zx65": cc(239, -1, 0xE601,0), + ".zx66": cc(239, -1, 0xE601,0), + ".zx67": cc(239, -1, 0xE601,0), + ".zx68": cc(239, -1, 0xE601,0), + ".zx69": cc(239, -1, 0xE601,0), + ".zx69": cc(239, -1, 0xE601,0), + ".zx70": cc(239, -1, 0xE601,0), + ".zx71": cc(239, -1, 0xE601,0), + ".zx72": cc(239, -1, 0xE601,0), + ".zx73": cc(239, -1, 0xE601,0), + ".zx74": cc(239, -1, 0xE601,0), + ".zx75": cc(239, -1, 0xE601,0), + ".zx76": cc(239, -1, 0xE601,0), + ".zx77": cc(239, -1, 0xE601,0), + ".zx78": cc(239, -1, 0xE601,0), + ".zx79": cc(239, -1, 0xE601,0), + ".zx80": cc(239, -1, 0xE601,0), + ".zx81": cc(239, -1, 0xE601,0), + ".zx82": cc(239, -1, 0xE601,0), + ".zx83": cc(239, -1, 0xE601,0), + ".zx84": cc(239, -1, 0xE601,0), + ".zx85": cc(239, -1, 0xE601,0), + ".zx86": cc(239, -1, 0xE601,0), + ".zx87": cc(239, -1, 0xE601,0), + ".zx88": cc(239, -1, 0xE601,0), + ".zx89": cc(239, -1, 0xE601,0), + ".zx90": cc(239, -1, 0xE601,0), + ".zx91": cc(239, -1, 0xE601,0), + ".zx92": cc(239, -1, 0xE601,0), + ".zx93": cc(239, -1, 0xE601,0), + ".zx94": cc(239, -1, 0xE601,0), + ".zx95": cc(239, -1, 0xE601,0), + ".zx96": cc(239, -1, 0xE601,0), + ".zx97": cc(239, -1, 0xE601,0), + ".zx98": cc(239, -1, 0xE601,0), + ".zx99": cc(239, -1, 0xE601,0), + ".zx100": cc(239, -1, 0xE601,0), + ".zx101": cc(239, -1, 0xE601,0), + ".zx102": cc(239, -1, 0xE601,0), + ".zx103": cc(239, -1, 0xE601,0), + ".zx104": cc(239, -1, 0xE601,0), + ".zx105": cc(239, -1, 0xE601,0), + ".zx106": cc(239, -1, 0xE601,0), + ".zx107": cc(239, -1, 0xE601,0), + ".zx108": cc(239, -1, 0xE601,0), + ".zx109": cc(239, -1, 0xE601,0), + ".zx110": cc(239, -1, 0xE601,0), + ".zx111": cc(239, -1, 0xE601,0), + ".zx112": cc(239, -1, 0xE601,0), + ".zx113": cc(239, -1, 0xE601,0), + ".zx114": cc(239, -1, 0xE601,0), + ".zx115": cc(239, -1, 0xE601,0), + ".zx116": cc(239, -1, 0xE601,0), + ".z00": cc(239, -1, 0xE601,0), + ".z01": cc(239, -1, 0xE601,0), + ".z02": cc(239, -1, 0xE601,0), + ".z03": cc(239, -1, 0xE601,0), + ".z04": cc(239, -1, 0xE601,0), + ".z05": cc(239, -1, 0xE601,0), + ".z06": cc(239, -1, 0xE601,0), + ".z07": cc(239, -1, 0xE601,0), + ".z08": cc(239, -1, 0xE601,0), + ".z09": cc(239, -1, 0xE601,0), + ".z10": cc(239, -1, 0xE601,0), + ".z11": cc(239, -1, 0xE601,0), + ".z12": cc(239, -1, 0xE601,0), + ".z13": cc(239, -1, 0xE601,0), + ".z14": cc(239, -1, 0xE601,0), + ".z15": cc(239, -1, 0xE601,0), + ".z16": cc(239, -1, 0xE601,0), + ".z17": cc(239, -1, 0xE601,0), + ".z18": cc(239, -1, 0xE601,0), + ".z19": cc(239, -1, 0xE601,0), + ".z20": cc(239, -1, 0xE601,0), + ".z21": cc(239, -1, 0xE601,0), + ".z22": cc(239, -1, 0xE601,0), + ".z25": cc(239, -1, 0xE601,0), + ".z26": cc(239, -1, 0xE601,0), + ".z27": cc(239, -1, 0xE601,0), + ".z28": cc(239, -1, 0xE601,0), + ".z29": cc(239, -1, 0xE601,0), + ".z30": cc(239, -1, 0xE601,0), + ".z31": cc(239, -1, 0xE601,0), + ".z32": cc(239, -1, 0xE601,0), + ".z33": cc(239, -1, 0xE601,0), + ".z34": cc(239, -1, 0xE601,0), + ".z35": cc(239, -1, 0xE601,0), + ".z36": cc(239, -1, 0xE601,0), + ".z37": cc(239, -1, 0xE601,0), + ".z38": cc(239, -1, 0xE601,0), + ".z39": cc(239, -1, 0xE601,0), + ".z40": cc(239, -1, 0xE601,0), + ".z41": cc(239, -1, 0xE601,0), + ".z42": cc(239, -1, 0xE601,0), + ".z43": cc(239, -1, 0xE601,0), + ".z44": cc(239, -1, 0xE601,0), + ".z45": cc(239, -1, 0xE601,0), + ".z46": cc(239, -1, 0xE601,0), + ".z47": cc(239, -1, 0xE601,0), + ".z48": cc(239, -1, 0xE601,0), + ".z49": cc(239, -1, 0xE601,0), + ".z50": cc(239, -1, 0xE601,0), + ".z51": cc(239, -1, 0xE601,0), + ".z52": cc(239, -1, 0xE601,0), + ".z53": cc(239, -1, 0xE601,0), + ".z54": cc(239, -1, 0xE601,0), + ".z55": cc(239, -1, 0xE601,0), + ".z56": cc(239, -1, 0xE601,0), + ".z57": cc(239, -1, 0xE601,0), + ".z58": cc(239, -1, 0xE601,0), + ".z59": cc(239, -1, 0xE601,0), + ".z60": cc(239, -1, 0xE601,0), + ".z61": cc(239, -1, 0xE601,0), + ".z62": cc(239, -1, 0xE601,0), + ".z63": cc(239, -1, 0xE601,0), + ".z64": cc(239, -1, 0xE601,0), + ".z65": cc(239, -1, 0xE601,0), + ".z66": cc(239, -1, 0xE601,0), + ".z67": cc(239, -1, 0xE601,0), + ".z68": cc(239, -1, 0xE601,0), + ".z69": cc(239, -1, 0xE601,0), + ".z69": cc(239, -1, 0xE601,0), + ".z70": cc(239, -1, 0xE601,0), + ".z71": cc(239, -1, 0xE601,0), + ".z72": cc(239, -1, 0xE601,0), + ".z73": cc(239, -1, 0xE601,0), + ".z74": cc(239, -1, 0xE601,0), + ".z75": cc(239, -1, 0xE601,0), + ".z76": cc(239, -1, 0xE601,0), + ".z77": cc(239, -1, 0xE601,0), + ".z78": cc(239, -1, 0xE601,0), + ".z79": cc(239, -1, 0xE601,0), + ".z80": cc(239, -1, 0xE601,0), + ".z81": cc(239, -1, 0xE601,0), + ".z82": cc(239, -1, 0xE601,0), + ".z83": cc(239, -1, 0xE601,0), + ".z84": cc(239, -1, 0xE601,0), + ".z85": cc(239, -1, 0xE601,0), + ".z86": cc(239, -1, 0xE601,0), + ".z87": cc(239, -1, 0xE601,0), + ".z88": cc(239, -1, 0xE601,0), + ".z89": cc(239, -1, 0xE601,0), + ".z90": cc(239, -1, 0xE601,0), + ".z91": cc(239, -1, 0xE601,0), + ".z92": cc(239, -1, 0xE601,0), + ".z93": cc(239, -1, 0xE601,0), + ".z94": cc(239, -1, 0xE601,0), + ".z95": cc(239, -1, 0xE601,0), + ".z96": cc(239, -1, 0xE601,0), + ".z97": cc(239, -1, 0xE601,0), + ".z98": cc(239, -1, 0xE601,0), + ".z99": cc(239, -1, 0xE601,0), + ".z100": cc(239, -1, 0xE601,0), + ".z101": cc(239, -1, 0xE601,0), + ".z102": cc(239, -1, 0xE601,0), + ".z103": cc(239, -1, 0xE601,0), + ".z104": cc(239, -1, 0xE601,0), + ".z105": cc(239, -1, 0xE601,0), + ".z106": cc(239, -1, 0xE601,0), + ".z107": cc(239, -1, 0xE601,0), + ".z108": cc(239, -1, 0xE601,0), + ".z109": cc(239, -1, 0xE601,0), + ".z110": cc(239, -1, 0xE601,0), + ".z111": cc(239, -1, 0xE601,0), + ".z112": cc(239, -1, 0xE601,0), + ".z113": cc(239, -1, 0xE601,0), + ".z114": cc(239, -1, 0xE601,0), + ".z115": cc(239, -1, 0xE601,0), + ".z116": cc(239, -1, 0xE601,0), + ".part": cc(239, -1, 0xE601,0), + ".dmg": cc(124, -1, 0xF0A0,0), + ".iso": cc(124, -1, 0xF0A0,0), + ".bin": cc(124, -1, 0xF0A0,0), + ".nrg": cc(124, -1, 0xF0A0,0), + ".qcow": cc(124, -1, 0xF0A0,0), + ".sparseimage": cc(124, -1, 0xF0A0,0), + ".toast": cc(124, -1, 0xF0A0,0), + ".vcd": cc(124, -1, 0xF0A0,0), + ".vmdk": cc(124, -1, 0xF0A0,0), + ".accdb": cc(60, -1, 0xF1C0,0), + ".accde": cc(60, -1, 0xF1C0,0), + ".accdr": cc(60, -1, 0xF1C0,0), + ".accdt": cc(60, -1, 0xF1C0,0), + ".db": cc(60, -1, 0xF1C0,0), + ".fmp12": cc(60, -1, 0xF1C0,0), + ".fp7": cc(60, -1, 0xF1C0,0), + ".localstorage":cc(60, -1, 0xF1C0,0), + ".mdb": cc(60, -1, 0xF1C0,0), + ".mde": cc(60, -1, 0xF1C0,0), + ".sqlite": cc(60, -1, 0xF1C0,0), + ".typelib": cc(60, -1, 0xF1C0,0), + ".nc": cc(60, -1, 0xF1C0,0), + ".pacnew": cc(241, -1, 0xF0E2,0), + ".un~": cc(241, -1, 0xF0E2,0), + ".orig": cc(241, -1, 0xF0E2,0), + ".BUP": cc(241, -1, 0xF0E2,0), + ".bak": cc(241, -1, 0xF0E2,0), + ".swp": cc(244, -1, ord("T"),0), + ".swo": cc(244, -1, ord("T"),0), + ".tmp": cc(244, -1, ord("T"),0), + ".sassc": cc(244, -1, ord("T"),0), + ".pid": cc(248, -1, 0xF023,0), + ".state": cc(248, -1, 0xF023,0), + "*lockfile": cc(248, -1, 0xF023,0), + ".err": cc(160, -1, 0xF12A, 0, other="1"), + ".error": cc(160, -1, 0xF12A, 0, other="1"), + ".stderr": cc(160, -1, 0xF12A, 0, other="1"), + ".dump": cc(241, -1, 0xF487,0), + ".stackdump": cc(241, -1, 0xF487,0), + ".zcompdump": cc(241, -1, 0xF487,0), + ".zwc": cc(241, -1, 0xF487,0), + ".pcap": cc(29, -1, 0xE765,0), + ".cap": cc(29, -1, 0xE765,0), + ".dmp": cc(29, -1, 0xE765,0), + ".DS_Store": cc(239, -1, 0xF179,0), + ".localized": cc(239, -1, 0xF179,0), + ".CFUserTextEncoding": cc(239, -1, 0xF179,0), + ".allow": cc(34, -1, 0xF00C,1), + ".deny": cc(196, -1, 0xF12A,0), + ".service": cc(45, -1, 0xF109,0), + "*@.service": cc(45, -1, 0xF109,0), + ".socket": cc(45, -1, 0xF109,0), + ".swap": cc(45, -1, 0xF109,0), + ".device": cc(45, -1, 0xF109,0), + ".mount": cc(45, -1, 0xF109,0), + ".automount": cc(45, -1, 0xF109,0), + ".target": cc(45, -1, 0xF109,0), + ".path": cc(45, -1, 0xF109,0), + ".timer": cc(45, -1, 0xF109,0), + ".snapshot": cc(45, -1, 0xF109,0), + ".application": cc(90, -1, 0xE60B,0), + ".cue": cc(90, -1, 0xE60B,0), + ".description": cc(90, -1, 0xE60B,0), + ".directory": cc(90, -1, 0xE60B,0), + ".m3u": cc(90, -1, 0xE60B,0), + ".m3u8": cc(90, -1, 0xE60B,0), + ".md5": cc(90, -1, ord("#"),0), + ".properties": cc(90, -1, 0xE60B,0), + ".sfv": cc(90, -1, 0xE60B,0), + ".srt": cc(90, -1, 0xE60B,0), + ".theme": cc(90, -1, 0xE60B,0), + ".torrent": cc(90, -1, 0xF6D9,0), + ".urlview": cc(90, -1, 0xE60B,0), + ".ovpn": cc(13, -1, 0xF817, 1), + ".asc": cc(13, -1, 0xF084, 0), + ".bfe": cc(13, -1, 0xF084, 0), + ".enc": cc(13, -1, 0xF084, 0), + ".gpg": cc(13, -1, 0xF084, 0), + ".key": cc(13, -1, 0xF084, 0), + ".secrets": cc(13, -1, 0xF084, 0), + ".pass": cc(90, -1, 0xF084, 0), + ".cer": cc(13, -1, 0xF084, 0), + ".csr": cc(13, -1, 0xF084, 0), + ".crt": cc(13, -1, 0xF084, 0), + ".signature": cc(13, -1, 0xF084, 0), + ".sig": cc(13, -1, 0xF084, 0), + ".p12": cc(13, -1, 0xF084, 0), + ".pem": cc(13, -1, 0xF084, 0), + ".pgp": cc(13, -1, 0xF084, 0), + ".asc": cc(13, -1, 0xF084, 0), + ".enc": cc(13, -1, 0xF084, 0), + ".sig": cc(13, -1, 0xF084, 0), + ".32x": cc(213, -1, 0xF11B,0), + ".cdi": cc(213, -1, 0xF11B,0), + ".fm2": cc(213, -1, 0xF11B,0), + ".rom": cc(213, -1, 0xF11B,0), + ".sav": cc(213, -1, 0xF11B,0), + ".st": cc(213, -1, 0xF11B,0), + ".a00": cc(213, -1, 0xF11B,0), + ".a52": cc(213, -1, 0xF11B,0), + ".A64": cc(213, -1, 0xF11B,0), + ".a64": cc(213, -1, 0xF11B,0), + ".a78": cc(213, -1, 0xF11B,0), + ".adf": cc(213, -1, 0xF11B,0), + ".atr": cc(213, -1, 0xF11B,0), + ".gb": cc(213, -1, 0xF11B,0), + ".gba": cc(213, -1, 0xF11B,0), + ".gbc": cc(213, -1, 0xF11B,0), + ".gel": cc(213, -1, 0xF11B,0), + ".gg": cc(213, -1, 0xF11B,0), + ".ggl": cc(213, -1, 0xF11B,0), + ".j64": cc(213, -1, 0xF11B,0), + ".nds": cc(213, -1, 0xF11B,0), + ".nes": cc(213, -1, 0xF11B,0), + ".sms": cc(213, -1, 0xF11B,0), + ".pot": cc(7, -1, ord("P"),0), + ".pcb": cc(7, -1, 0xF493,0), + ".mm": cc(7, -1, 0xF035,0), + ".pod": cc(7, -1, 0xF035,0), + ".gbr": cc(7, -1, 0xF1FC,0), + ".spl": cc(7, -1, ord("S"),0), + ".scm": cc(7, -1, 0xF1FC,0), + ".Rproj": cc(11, -1, 0xF1FC,0), + ".sis": cc(7, -1, 0xF10B,0), + ".1p": cc(7, -1, 0xF10B,0), + ".3p": cc(7, -1, 0xF10B,0), + ".cnc": cc(7, -1, 0xF10B,0), + ".def": cc(7, -1, 0xF10B,0), + ".ex": cc(7, -1, 0xF10B,0), + ".example": cc(7, -1, 0xF10B,0), + ".feature": cc(7, -1, 0xF10B,0), + ".ger": cc(7, -1, 0xF10B,0), + ".map": cc(7, -1, 0xF10B,0), + ".mf": cc(7, -1, 0xF10B,0), + ".mfasl": cc(7, -1, 0xF10B,0), + ".mi": cc(7, -1, 0xF10B,0), + ".mtx": cc(7, -1, 0xF10B,0), + ".pc": cc(7, -1, 0xF10B,0), + ".pi": cc(7, -1, 0xF10B,0), + ".plt": cc(7, -1, 0xF10B,0), + ".pm": cc(7, -1, 0xF10B,0), + ".rb": cc(1, -1, 0xE739,0), + ".rdf": cc(7, -1, 0xF10B,0), + ".rst": cc(7, -1, 0xF10B,0), + ".ru": cc(7, -1, 0xF10B,0), + ".sch": cc(7, -1, 0xF10B,0), + ".sty": cc(7, -1, 0xF10B,0), + ".sug": cc(7, -1, 0xF10B,0), + ".t": cc(7, -1, 0xF10B,0), + ".tdy": cc(7, -1, 0xF10B,0), + ".tfm": cc(7, -1, 0xF10B,0), + ".tfnt": cc(7, -1, 0xF10B,0), + ".tg": cc(7, -1, 0xF10B,0), + ".vcard": cc(7, -1, 0xF10B,0), + ".vcf": cc(7, -1, 0xF10B,0), + ".xln": cc(7, -1, 0xF10B,0) + } + + return FORMAT_COLORS, SPECIAL, EXTENSION_LIST + +# Formats arguments into an LS_COLORS-complete escape sequence. +def color_char(f,b,c,bold,other=""): + return "m%s\x1b" % ("%s%s " % (color_seq(f,b,bold,other),get_unicode(c))) + +cc = color_char + +# Formats fg and bg into an escape sequence. +def color_seq(f,b,bold,other): + if b != -1: + if other != "": + return "\x1b[%s;38;5;%i;48;5;%i;%sm" % (bold, f, b, other) + else: + return "\x1b[%s;38;5;%i;48;5;%im" % (bold, f, b) + else: + if other != "": + return "\x1b[%s;38;5;%i;%sm" % (bold, f, other) + else: + return "\x1b[%s;38;5;%im" % (bold, f) + +# Return a unicode character. Python 2 and 3 complete. +def get_unicode(ch): + try: + return unichr(ch) + except: + return chr(ch) + + +LEFT = "lc" +RIGHT = "rc" +END = "ec" +RESET = "rs" + +# LS_COLORS special file codes. +NORMAL = "no" +FILE = "fi" +DIRECTORY = "di" +LINK = "ln" +ORPHAN = "or" +MISSING = "mi" +PIPE = "pi" +SOCKET = "so" +BLOCKDEV = "bd" +CHARDEV = "cd" +DOOR = "do" +EXEC = "ex" +SETUID = "su" +SETGID = "sg" +STICKY = "st" +OTHERWRITE = "ow" +STOTHERWRITE = "tw" + +if __name__ == "__main__": + import sys + import os + lsc = "" + formcol, special, exten = get_colors() + try: + if sys.argv[1] == "test": # generate a test directory with all file extensions + os.system("mkdir test") + os.system("touch" + " ".join("test/"+ext for ext in exten.keys())) + sys.exit() + except: + pass + + # Format left/right/exit/reset color codes. + for compname in formcol.keys(): + comp = formcol[compname] + if comp != "": + lsc += compname+"="+comp+":" + # Format default file/folder colors. + for compname in special.keys(): + comp = special[compname] + if comp != "": + lsc += compname+"="+comp+":" + # Format extensions. + for compname in sorted(exten.keys()): + comp = exten[compname] + if comp != "": + if compname.startswith("*"): + lsc += compname+"="+comp+":" + elif compname.startswith("-"): + lsc += compname+"="+comp+":" + else: + lsc += "*."+compname.lstrip("*.")+"="+comp+":" + try: + sys.stdout.buffer.write(lsc.encode('utf-8')) + except: + print(lsc.encode('utf-8')) # python2 + diff --git a/etc/soft/vifm/filetypes b/etc/soft/vifm/filetypes index 027ccc3..7c8f465 100644 --- a/etc/soft/vifm/filetypes +++ b/etc/soft/vifm/filetypes @@ -24,7 +24,7 @@ filetype *.txt vim %f " img filextype *.bmp,*.jpg,*.jpeg,*.png,*.gif viewnior %c filextype *.svg sensible-browser %f & -fileviewer *.jpg,*.png lsimg %f %q %pc +fileviewer *.jpg,*.png lsimg %d/%f %q %pc " audio filextype *.mp3,*.wav,*.flac,*.ogg,*.m4a vlc %f &