123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108 |
- #!/bin/sh
- # $1 - action
- # $2 - type of file
- action=$1
- filetype=$2
- if [ -n "$DISPLAY" ]; then
- [ -n "${MC_XDG_OPEN}" ] || MC_XDG_OPEN="xdg-open"
- fi
- do_view_action() {
- filetype=$1
- case "${filetype}" in
- common)
- mediainfo "${MC_EXT_FILENAME}"
- ;;
- mp3)
- mpg123 -vtn1 "${MC_EXT_FILENAME}" 2>&1 | \
- sed -n '/^Title/,/^Comment/p;/^MPEG/,/^Audio/p'
- ;;
- ogg)
- ogginfo "${MC_EXT_FILENAME}"
- ;;
- opus)
- opusinfo "${MC_EXT_FILENAME}"
- ;;
- wma)
- mplayer -quiet -slave -frames 0 -vo null -ao null -identify "${MC_EXT_FILENAME}" 2>/dev/null | \
- tail +13 || file "${MC_EXT_FILENAME}"
- ;;
- *)
- cat "${MC_EXT_FILENAME}"
- ;;
- esac
- }
- do_open_action() {
- filetype=$1
- case "${filetype}" in
- common)
- if [ -n "$DISPLAY" ]; then
- (audacious "${MC_EXT_FILENAME}" >/dev/null 2>&1 &)
- else
- play "${MC_EXT_FILENAME}"
- fi
- ;;
- mod)
- mikmod "${MC_EXT_FILENAME}"
- #tracker "${MC_EXT_FILENAME}"
- ;;
- wav22)
- vplay -s 22 "${MC_EXT_FILENAME}"
- ;;
- mp3)
- if [ -n "$DISPLAY" ]; then
- (audacious "${MC_EXT_FILENAME}" >/dev/null 2>&1 &)
- else
- mpg123 "${MC_EXT_FILENAME}"
- fi
- ;;
- ogg)
- if [ -n "$DISPLAY" ]; then
- (audacious "${MC_EXT_FILENAME}" >/dev/null 2>&1 &)
- else
- ogg123 "${MC_EXT_FILENAME}"
- fi
- ;;
- opus)
- if [ -n "$DISPLAY" ]; then
- (audacious "${MC_EXT_FILENAME}" >/dev/null 2>&1 &)
- else
- play "${MC_EXT_FILENAME}"
- fi
- ;;
- midi)
- timidity "${MC_EXT_FILENAME}"
- ;;
- wma)
- mplayer -vo null "${MC_EXT_FILENAME}"
- ;;
- playlist)
- if [ -n "$DISPLAY" ]; then
- (audacious -p "${MC_EXT_FILENAME}" >/dev/null 2>&1 &)
- else
- mplayer -vo null -playlist "${MC_EXT_FILENAME}"
- fi
- ;;
- *)
- ;;
- esac
- }
- case "${action}" in
- view)
- do_view_action "${filetype}"
- ;;
- open)
- ("${MC_XDG_OPEN}" "${MC_EXT_FILENAME}" >/dev/null 2>&1) || \
- do_open_action "${filetype}"
- ;;
- *)
- ;;
- esac
|