web.sh.in 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  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. html)
  11. links -dump "${MC_EXT_FILENAME}" 2>/dev/null || \
  12. w3m -dump "${MC_EXT_FILENAME}" 2>/dev/null || \
  13. lynx -dump -force_html "${MC_EXT_FILENAME}"
  14. ;;
  15. *)
  16. ;;
  17. esac
  18. }
  19. do_open_action() {
  20. filetype=$1
  21. case "${filetype}" in
  22. html)
  23. (if [ -n "@X11_WWW@" -a -n "$DISPLAY" ]; then
  24. (@X11_WWW@ file://"${MC_EXT_CURRENTDIR}"/"${MC_EXT_BASENAME}" &) 1>&2
  25. else
  26. elinks "${MC_EXT_FILENAME}" || \
  27. links "${MC_EXT_FILENAME}" || \
  28. lynx -force_html "${MC_EXT_FILENAME}" || \
  29. ${PAGER:-more} "${MC_EXT_FILENAME}"
  30. fi) 2>/dev/null
  31. ;;
  32. *)
  33. ;;
  34. esac
  35. }
  36. case "${action}" in
  37. view)
  38. do_view_action "${filetype}"
  39. ;;
  40. open)
  41. "${MC_XDG_OPEN}" "${MC_EXT_FILENAME}" 2>/dev/null || \
  42. do_open_action "${filetype}"
  43. ;;
  44. *)
  45. ;;
  46. esac