X-Git-Url: https://git.distorted.org.uk/~mdw/profile/blobdiff_plain/e2fd2096c958f22c6beba9ac82641f8735193f55..c0a4a95f5bc569e8418b396da691b5fc411e3f9c:/bin/mdw-editor diff --git a/bin/mdw-editor b/bin/mdw-editor index 312995f..c162da3 100755 --- a/bin/mdw-editor +++ b/bin/mdw-editor @@ -2,15 +2,22 @@ set -e editor=${MDW_EDITOR-ed} -emacsclient=t +case ${TMP+t},${TMPDIR+t} in + t,) TMPDIR=$TMP; export TMPDIR ;; +esac +emacsclient=$( + emacsclient --eval '(>= emacs-major-version 23)' 2>/dev/null || :) [ -t 0 -a -t 1 ] || TERM=dumb case "$EDITOR,$VISUAL,$TERM" in - mdw-editor,mdw-editor,dumb) editor=emacsclient emacsclient=nil;; + mdw-editor,mdw-editor,dumb | \ + mdw-editor,mdw-editor,emacs | \ + mdw-editor,mdw-editor,eterm*) + editor=emacsclient emacsclient=nil;; mdw-editor,mdw-editor,*);; mdw-editor,*,*) editor=$VISUAL;; *,*,*) editor=$EDITOR;; esac case "$emacsclient" in t) exec emacsclient -nw -a "$editor" "$@";; - nil) exec $editor "$@";; + *) exec $editor "$@";; esac