removed extension colouring, and changed some colours

This commit is contained in:
2026-04-11 02:11:23 +08:00
parent 2f8d3e8d9e
commit fe57971b91
+12 -33
View File
@@ -22,36 +22,15 @@ file_colour() {
_fc_ext="${_fc_name##*.}" _fc_ext="${_fc_name##*.}"
_fc_ext=$(printf '%s' "$_fc_ext" | tr '[:upper:]' '[:lower:]') _fc_ext=$(printf '%s' "$_fc_ext" | tr '[:upper:]' '[:lower:]')
# executable? # executable?
[ -x "${CWD}/${_fc_name}" ] && { printf '%s' "${RED}${BOLD}"; return; } [ -x "${CWD}/${_fc_name}" ] && { printf '%s' "${GREEN}${BOLD}" ; return; }
case "$_fc_ext" in # node device?
# images [ -c "${CWD}/${_fc_name}" ] && { printf '%s' "${MAGENTA}${BOLD}"; return; }
jpg|jpeg|png|gif|bmp|tiff|tif|webp|svg|ico|heic|heif|avif) # block device?
printf '%s' "${MAGENTA}" ;; [ -b "${CWD}/${_fc_name}" ] && { printf '%s' "${MAGENTA}${BOLD}"; return; }
# video # readable?
mp4|mkv|avi|mov|wmv|flv|webm|m4v|mpeg|mpg|3gp|ogv) [ -r "${CWD}/${_fc_name}" ] || { printf '%s' "${RED}${BOLD}" ; return; }
printf '%s' "${MAGENTA}${BOLD}" ;; # writable?
# audio [ -w "${CWD}/${_fc_name}" ] || { printf '%s' "${RED}${BOLD}" ; return; }
mp3|flac|ogg|wav|aac|m4a|opus|wma|aiff)
printf '%s' "${CYAN}${BOLD}" ;;
# archives
zip|tar|gz|bz2|xz|zst|7z|rar|tgz|tbz2)
printf '%s' "${RED}" ;;
# documents / text
pdf|doc|docx|odt|xls|xlsx|ods|ppt|pptx|odp)
printf '%s' "${YELLOW}" ;;
# code / scripts
sh|bash|zsh|fish|py|rb|pl|lua|js|ts|jsx|tsx|\
c|h|cpp|cc|cxx|hpp|rs|go|java|kt|swift|cs|php|r)
printf '%s' "${GREEN}" ;;
# data / config
json|xml|yaml|yml|toml|ini|conf|cfg|env)
printf '%s' "${CYAN}" ;;
# markdown / text
md|markdown|rst|txt|log)
printf '%s' "${WHITE}" ;;
# default
*) printf '%s' "${WHITE}" ;;
esac
} }
goto() { printf '\033[%d;%dH' "$1" "$2"; } goto() { printf '\033[%d;%dH' "$1" "$2"; }
@@ -362,12 +341,12 @@ render_row() {
entry=$(get_entry "$_idx") entry=$(get_entry "$_idx")
case "$entry" in case "$entry" in
*/) colour="${GREEN}${BOLD}" ;; */) colour="${BLUE}${BOLD}" ;;
*@) *@)
_name="${entry%@}" _name="${entry%@}"
# broken symlink if target doesn't exist # broken symlink if target doesn't exist
if [ -e "${CWD}/${_name}" ]; then if [ -e "${CWD}/${_name}" ]; then
colour="${MAGENTA}${BOLD}" colour="${CYAN}${BOLD}"
else else
colour="${RED}${BOLD}" colour="${RED}${BOLD}"
fi ;; fi ;;
@@ -471,7 +450,7 @@ draw_preview() {
_dl=" ${_dn}/" _dl=" ${_dn}/"
[ "${#_dl}" -gt "$((_pw - 1))" ] && _dl="$(printf '%s' "$_dl" | cut -c1-$((_pw-2)))~" [ "${#_dl}" -gt "$((_pw - 1))" ] && _dl="$(printf '%s' "$_dl" | cut -c1-$((_pw-2)))~"
goto "$_pr" "$_px" goto "$_pr" "$_px"
printf '%s%s%s' "${GREEN}${BOLD}" "$_dl" "${RESET}" printf '%s%s%s' "${BLUE}${BOLD}" "$_dl" "${RESET}"
_pr=$((_pr + 1)) _pr=$((_pr + 1))
done done
for _fe in "$_path"/*; do for _fe in "$_path"/*; do