commit 4e5075542e5247c14c329821d011a711982479b2 Author: Narrat Date: Thu Oct 8 02:45:32 2015 +0200 Add support for mimeo diff --git a/scripts/xdg-email.in b/scripts/xdg-email.in index 2819e28..d95e938 100644 --- a/scripts/xdg-email.in +++ b/scripts/xdg-email.in @@ -213,6 +213,18 @@ open_envvar() exit_failure_operation_failed } +open_mimeo() +{ + DEBUG 1 "Running mimeo \"$1\"" + mimeo "$1" + + if [ $? -eq 0 ]; then + exit_success + else + exit_failure_operation_failed + fi +} + open_generic() { local client @@ -459,6 +471,10 @@ case "$DE" in open_xfce "${mailto}" ;; + mimeo) + open_mimeo "${mailto}" + ;; + generic) open_generic "${mailto}" ;; diff --git a/scripts/xdg-mime.in b/scripts/xdg-mime.in index 074256c..da57bb0 100644 --- a/scripts/xdg-mime.in +++ b/scripts/xdg-mime.in @@ -90,6 +90,16 @@ info_gnome() fi } +info_mimeo() +{ + mimeo -m "$1" + if [ $? -eq 0 ]; then + exit_success + else + exit_failure_operation_failed + fi +} + info_generic() { if mimetype --version >/dev/null 2>&1; then @@ -590,6 +600,10 @@ if [ "$action" = "info" ]; then info_gnome "$filename" ;; + mimeo) + info_mimeo "$filename" + ;; + *) info_generic "$filename" ;; diff --git a/scripts/xdg-open.in b/scripts/xdg-open.in index 0fbd63d..1ed4385 100644 --- a/scripts/xdg-open.in +++ b/scripts/xdg-open.in @@ -211,6 +211,17 @@ open_enlightenment() fi } +open_mimeo() +{ + DEBUG 1 "Running mimeo \"$1\"" + mimeo "$1" + if [ $? -eq 0 ]; then + exit_success + else + exit_failure_operation_failed + fi +} + #----------------------------------------- # Recursively search .desktop file @@ -492,6 +503,10 @@ case "$DE" in open_darwin "$url" ;; + mimeo) + open_mimeo "$url" + ;; + generic) open_generic "$url" ;; diff --git a/scripts/xdg-screensaver.in b/scripts/xdg-screensaver.in index 1dd7bf7..96c1e3d 100644 --- a/scripts/xdg-screensaver.in +++ b/scripts/xdg-screensaver.in @@ -114,7 +114,7 @@ perform_action() [ -n "$DISPLAY" ] && screensaver_xserver "$1" ;; - ''|generic) + ''|generic|mimeo) [ -n "$DISPLAY" ] && screensaver_xserver "$1" ;; esac diff --git a/scripts/xdg-settings.in b/scripts/xdg-settings.in index 3d03507..7585d1c 100644 --- a/scripts/xdg-settings.in +++ b/scripts/xdg-settings.in @@ -463,6 +463,42 @@ set_browser_xfce() } # }}} xfce +# {{{ mimeo + +get_browser_mimeo() +{ + DEBUG 1 "Running mimeo -d 'http:'" + mimeo -d http: | sed -rn '2s/ ([^ ]+) +.*/\1/p' + if [ $? -eq 0 ]; then + exit_success + else + exit_failure_operation_failed + fi +} + +check_browser_mimeo() +{ + browser=`get_browser_mimeo $1` + if [ x"$browser" != x"$1" ]; then + echo no + exit_success + fi + echo yes + exit_success +} + +set_browser_mimeo() +{ + DEBUG 1 "Running mimeo --prefer x-scheme-handler/http \"$1\"" + mimeo --prefer x-scheme-handler/http \"$1\" + if [ $? -eq 0 ]; then + exit_success + else + exit_failure_operation_failed + fi +} + +# }}} mimeo # {{{ generic get_browser_generic() @@ -698,6 +734,24 @@ set_url_scheme_handler_xfce() } # }}} xfce +# {{{ mimeo + +get_url_scheme_handler_mimeo() +{ + exit_unimplemented_default_handler "$1" +} + +check_url_scheme_handler_mimeo() +{ + exit_unimplemented_default_handler "$1" +} + +set_url_scheme_handler_mimeo() +{ + exit_unimplemented_default_handler "$1" +} + +# }}} mimeo # {{{ generic get_url_scheme_handler_generic() @@ -852,6 +906,10 @@ case "$DE" in dispatch_specific xfce "$@" ;; + mimeo) + dispatch_specific mimeo "$@" + ;; + generic) dispatch_specific generic "$@" ;; diff --git a/scripts/xdg-utils-common.in b/scripts/xdg-utils-common.in index f920799..1ac95bc 100644 --- a/scripts/xdg-utils-common.in +++ b/scripts/xdg-utils-common.in @@ -294,6 +294,7 @@ detectDE() elif xprop -root _DT_SAVE_MODE 2> /dev/null | grep ' = \"xfce4\"$' >/dev/null 2>&1; then DE=xfce; elif xprop -root 2> /dev/null | grep -i '^xfce_desktop_window' >/dev/null 2>&1; then DE=xfce elif echo $DESKTOP | grep -q '^Enlightenment'; then DE=enlightenment; + elif which mimeo > /dev/null; then DE=mimeo; fi fi