#!/bin/sh -e jipc="/tmp/jipc" [ -p "${jipc}" ] || { echo "ipcc: ${jipc} not found; ipcd not running?" >&2; exit 1; } pebkac() { echo "Usage: ipcc " echo "Or: ee " echo "Or: ff " echo "" echo "Command can be one of 'editor' or 'browser'; argument should be a single file." echo "Simplified wrappers 'ee' for editor and 'ff' for browser can also be used." exit 1 } case "$(basename "${0}")" in ipcc) cmd="${1}"; shift ;; ee) cmd="editor" ;; ff) cmd="browser" ;; *) pebkac ;; esac arg="${1}" case "${cmd}" in editor|edit|ee) echo "${arg}" | grep -q '^/' || arg="$(pwd)/${arg}" echo "editor ${arg}" > "${jipc}" ;; browser|browse|ff) echo "${arg}" | grep -vq "://" && echo "${arg}" | grep -vq '^/' && arg="$(pwd)/${arg}" echo "browser ${arg}" > "${jipc}" ;; *) pebkac ;; esac