Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:medozas74
freemind
urlsee
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File urlsee of Package freemind
#!/bin/sh # Small wrapper script around 'see' and some other commands in order to be # able to handle URLs. # Use the environment variables SEECMD, BROWSER, MAILER and FILEMGR # to control which commands are used per preference respectively for local # files, remote URLs, mailto URLs or local files URLs (i.e. file:/). # (c) Eric Lavarde 2005, placed under GPLv2 license if [ -n "${DEBUG}" ] then # due to the fact that FreeMind discards any output. exec >${TMPDIR:=/tmp}/urlsee.log 2>&1 fi _debug() { if [ -n "${DEBUG}" ] then echo "DEBUG: $1" >&2 shift for text in "$@" do echo " ${text}" >&2 done fi } _error() { echo "ERROR: $1" >&2 shift for text in "$@" do echo " ${text}" >&2 done } try_all_cmds() { local file cmd file="$1" shift for cmd in "${@}" do cmd=$(which "${cmd}") if [ -x "${cmd}" ] then _debug "CALLING ${cmd}" "${file}" exec "${cmd}" "${file}" fi done } if [ -z "$1" ] then _error "Parameter missing." "Usage: $0 <URL or filename>" exit 1 else FILENAME="$1" fi ### we start with the most generic and portable possibility ### if [ -x "$(which xdg-open)" ] then _debug "exec xdg-open ${FILENAME}" exec xdg-open "${FILENAME}" fi ### if this wasn't possible, we try with desktop specific commands ### # try KDE with kfmclient if [ "${DESKTOP_SESSION}" = "kde" ] && [ -x "$(which kfmclient)" ] then _debug "CALLING KDE kfmclient exec ${FILENAME}" exec kfmclient exec "${FILENAME}" fi # try GNOME with gnome-open if [ "${DESKTOP_SESSION}" = "gnome" ] && [ -x "$(which gnome-open)" ] then _debug "CALLING GNOME gnome-open ${FILENAME}" exec gnome-open "${FILENAME}" fi # try XFce with exo-open if [ "${DESKTOP_SESSION}" = "xfc4" ] && [ -x "$(which exo-open)" ] then _debug "CALLING XFce4 exo-open ${FILENAME}" exec exo-open "${FILENAME}" fi ### Looks like we're not using one of the standard desktops, ### ### so we just try the same commands without caring for env. ### try_all_cmds "${FILENAME}" gnome-open exo-open if [ -x "$(which kfmclient)" ] then # we can't use try_all_cmds because we have 2 parameters _debug "CALLING kfmclient exec ${FILENAME}" exec kfmclient exec "${FILENAME}" fi ### And now, we need to go the messy way ### ### I might remove this part in the future ### _debug "Going for the messy path, it might fail..." HTTPNAME=${FILENAME#*://} # covers all kind of url protocol MAILNAME=${FILENAME#mailto:} # covers only mailto addresses LOCALNAME=${FILENAME#file:/} # covers only local files URL if [ "${FILENAME}" != "${HTTPNAME}" ] && [ "${FILENAME}" = "${LOCALNAME}" ] \ && [ "${FILENAME}" = "${MAILNAME}" ] then # FILENAME did start with an URL protocol not equal to file: or mailto: try_all_cmds "${FILENAME}" ${BROWSER} sensible-browser \ mozilla konqueror galeon firefox _error "No browser could be found. Exiting." exit 1 fi if [ "${FILENAME}" != "${MAILNAME}" ] then # FILENAME did start with mailto: try_all_cmds "${FILENAME}" ${MAILER} mozilla konqueror thunderbird _error "No mailer could be found. Exiting." exit 1 fi if [ "${LOCALNAME}" != "${FILENAME}" ] then # FILENAME did start with file:/ # %20 is the URL expression of blanks LOCALNAME=$(echo "/${LOCALNAME}" | sed 's/%20/ /g') fi # first try commands that work best with local names try_all_cmds "${LOCALNAME}" ${SEECMD} see # then try commands that work best with file:/ names try_all_cmds "${FILENAME}" ${FILEMGR} konqueror nautilus \ ${BROWSER} sensible-browser mozilla galeon firefox _error "No file manager could be found. Exiting." exit 1
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor