#!/bin/zsh #dep:mdcat iconv chardetect #encoding=$(file -i "$1" | sed "s/.*charset=\(.*\)$/\1/") if [[ $2 ]]; then encoding=$2 else encoding=$(chardetect "$1" | grep -oP '(?<=: )\S*') fi if ! iconv -f $encoding <<<"" &> /dev/null; then cat "$1" elif [[ $encoding != 'utf-8' ]]; then iconv -f $encoding -t 'utf-8' < "$1" | mdcat /dev/stdin else mdcat $1 fi