]> git.donarmstrong.com Git - zsh.git/blob - .zsh/zshrc/39_tempfuncs
add sh mode
[zsh.git] / .zsh / zshrc / 39_tempfuncs
1 # zshrc/40_tempfuncs
2 #
3 # Helper functions to create temporary files and directories
4 #
5 # Copyright © 1994–2008 martin f. krafft <madduck@madduck.net>
6 # Released under the terms of the Artistic Licence 2.0
7 #
8 # Source repository: git://git.madduck.net/etc/zsh.git
9 #
10
11 cdt () {
12   local tmpdir
13   tmpdir=$(mktemp -td ${1:-cdt}.XXXXXX)
14   builtin cd $tmpdir
15   pwd
16   rm -f ${TMPDIR:-/tmp}/cdt.latest
17   ln -s $tmpdir ${TMPDIR:-/tmp}/cdt.latest
18 }
19
20 vit () {
21   local prefix
22   for i in "$@"; do
23     case "$i" in
24       -) local stdin=1; shift;;
25       *) if [ -z "${prefix:-}" ]; then
26            prefix="$i"; shift
27          else
28            error "prefix already specified: $prefix"
29            return 1
30          fi
31          ;;
32     esac
33   done
34   local tmpfile=$(mktemp -t ${prefix:-vit}.XXXXXX)
35   [ -n "$stdin" ] && cat >| $tmpfile
36   sensible-editor $tmpfile </dev/tty >/dev/tty
37   echo $tmpfile
38   ln -sf $tmpfile ${TMPDIR:-/tmp}/vit.latest
39 }
40
41 # vim:ft=zsh