view unixSoft/bin/magic_editor.sh @ 336:ea73ef5dc38c

emacs: avoid weird package.el breakage with newish packages I've been toting around this package.el from 2009 or so, and something in the package format seems to have changed that broke me. Thanks to some related diagnostics by Lucas, I've grabbed the last package.el that worked with emacs 23 and stashed it here. This seems to work, modulo some things (notably js2-mode and smex) now seem to require emacs 24 if you install them using package.el, so this will end up being brittle on my last couple of emacs23 machines.
author Augie Fackler <raf@durin42.com>
date Thu, 29 May 2014 14:30:42 -0400
parents c30d68fbd368
children
line wrap: on
line source

#!/bin/sh
# "magically" pick the 'best' available editor for a given platform

# use emacs if it is running a server
# disabled because I ended up not liking using emacs as $EDITOR, weird, I know
# tempuid=`id -u`
# temphost=`hostname`
# if [ -e "/tmp/esrv$tempuid-$temphost" ]
# then
#     emacsclient "$@"
#     exit $?
# fi

# use subethaedit on OS X
if test "`uname`" = "Darwin" ; then
	if test "x`whereis see`" != "x" ; then
		see -w "$@"
		exit $?
	# no subetha, then try for textwrangler
	elif test "x`whereis edit`" != "x" ; then
		edit -w "$@"
		exit $?
	fi
fi

# we're not on a mac (or preferred mac editors failed, so we like gvim
if test "x`whereis gvim`" != "x"  && test "x$DISPLAY" != "x" ; then
	gvim -f "$@"
# ...or vim, since either gvim wasn't there or display wasn't set
elif test "x`whereis vim`" != "x" ; then
	vim -f "$@"
# wow, this is a weird host, use vi. if that doesn't exist, we're really screwed
else
	vi "$@"
fi

exit $?