image.sh 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. #!/bin/sh
  2. # $1 - action
  3. # $2 - type of file
  4. action=$1
  5. filetype=$2
  6. [ -n "${MC_XDG_OPEN}" ] || MC_XDG_OPEN="xdg-open"
  7. do_view_action() {
  8. filetype=$1
  9. case "${filetype}" in
  10. jpeg)
  11. identify "${MC_EXT_FILENAME}"; test -x /usr/bin/exif && echo && exif "${MC_EXT_FILENAME}" 2>/dev/null
  12. ;;
  13. xpm)
  14. sxpm "${MC_EXT_FILENAME}"
  15. ;;
  16. *)
  17. identify "${MC_EXT_FILENAME}"
  18. ;;
  19. esac
  20. }
  21. do_open_action() {
  22. filetype=$1
  23. case "${filetype}" in
  24. xbm)
  25. bitmap "${MC_EXT_FILENAME}"
  26. ;;
  27. xcf)
  28. (gimp "${MC_EXT_FILENAME}" &)
  29. ;;
  30. svg)
  31. (inkscape "${MC_EXT_FILENAME}" &)
  32. ;;
  33. *)
  34. if [ -n "$DISPLAY" ]; then
  35. (gqview "${MC_EXT_FILENAME}" &)
  36. elif see >/dev/null 2>&1; then
  37. (see "${MC_EXT_FILENAME}" &)
  38. else
  39. zgv "${MC_EXT_FILENAME}"
  40. fi
  41. ;;
  42. esac
  43. }
  44. case "${action}" in
  45. view)
  46. do_view_action "${filetype}"
  47. ;;
  48. open)
  49. "${MC_XDG_OPEN}" "${MC_EXT_FILENAME}" 2>/dev/null || \
  50. do_open_action "${filetype}"
  51. ;;
  52. *)
  53. ;;
  54. esac