X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=sane_editor;h=fbfdb751f06e4251d7fb6943747f0cfdbb62ec5b;hb=79334fd20b0bf56e3c4106900c0dd23445b0fb3f;hp=56c98d9650561bf23006f841d4853746a0d6818d;hpb=edaff4d1c50a0eae38d19ae673ab845b7d37805a;p=bin.git diff --git a/sane_editor b/sane_editor index 56c98d9..fbfdb75 100755 --- a/sane_editor +++ b/sane_editor @@ -10,7 +10,18 @@ # modify the gsrvdir check to search for directories that are owned by me if [ -x /usr/bin/emacsclient ] && [ -x /usr/bin/emacs ]; then - exec emacsclient -c "$@"; + # reset the tempdir to deal with setuid things clearing it + export TMPDIR="$(echo ~/tmp)"; + # If TERM is set to dumb, reset it to linux. (emacs does this for + # some reason) + if [ "$TERM" = "dumb" ]; then + TERM="linux" + fi; + if [ -z "$DISPLAY" ]; then + exec emacsclient --alternate-editor /usr/bin/vi -c -nw "$@"; + else + exec emacsclient --alternate-editor /usr/bin/vi -c "$@"; + fi; fi; if [ -x /usr/bin/gnuclient ] && [ -x /usr/bin/emacs ]; then if ( gnuclient -batch < /dev/null >/dev/null); then @@ -27,4 +38,4 @@ if [ -x /usr/bin/ed ]; then exec ed "$@"; fi; echo "Unable to find a suitable editor" >/dev/stderr; -exit 1; \ No newline at end of file +exit 1;