Mercurial > emacs
changeset 66027:61174c5e6da6
(sh-tmp-file): Use mktemp -t. Finish support for es and rc shells.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Tue, 11 Oct 2005 22:06:43 +0000 |
parents | 20752359c953 |
children | 6244b4c14cf6 |
files | lisp/progmodes/sh-script.el |
diffstat | 1 files changed, 5 insertions(+), 13 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/progmodes/sh-script.el Tue Oct 11 21:22:14 2005 +0000 +++ b/lisp/progmodes/sh-script.el Tue Oct 11 22:06:43 2005 +0000 @@ -3392,20 +3392,16 @@ "Insert code to setup temporary file handling. See `sh-feature'." (bash sh-append ksh88) (csh (file-name-nondirectory (buffer-file-name)) - "set tmp = `mktemp /tmp/" str ".XXXXXX`" \n + "set tmp = `mktemp -t " str ".XXXXXX`" \n "onintr exit" \n _ (and (goto-char (point-max)) (not (bolp)) ?\n) "exit:\n" "rm $tmp* >&/dev/null" > \n) - ;; The change to use mktemp here has not been tested; - ;; I don't know es syntax, so I had to guess. - ;; If you try it, or if you know es syntax and can check it, - ;; please tell me whether it needs any change. --rms. (es (file-name-nondirectory (buffer-file-name)) - > "local( signals = $signals sighup sigint; tmp = `mktemp /tmp/" str - ".XXXXXX` ) {" \n + > "local( signals = $signals sighup sigint;" \n + > "tmp = `{ mktemp -t " str ".XXXXXX } ) {" \n > "catch @ e {" \n > "rm $tmp^* >[2]/dev/null" \n "throw $e" \n @@ -3415,15 +3411,11 @@ ?\} > \n) (ksh88 sh-modify sh 7 "EXIT") - ;; The change to use mktemp here has not been tested; - ;; I don't know rc syntax, so I had to guess. - ;; If you try it, or if you know rc syntax and can check it, - ;; please tell me whether it needs any change. --rms. (rc (file-name-nondirectory (buffer-file-name)) - > "tmp = `mktemp /tmp/" str ".XXXXXX`" \n + > "tmp = `{ mktemp -t " str ".XXXXXX }" \n "fn sigexit { rm $tmp^* >[2]/dev/null }" \n) (sh (file-name-nondirectory (buffer-file-name)) - > "TMP=`mktemp ${TMPDIR:-/tmp}/" str ".XXXXXX`" \n + > "TMP=`mktemp -t " str ".XXXXXX`" \n "trap \"rm $TMP* 2>/dev/null\" " ?0 \n))