]> git.donarmstrong.com Git - zsh.git/blob - .zsh/zshrc/39_tempfuncs
79f43dd89172c6a46e962b45b737494301ec09b1
[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   ln -sf $tmpdir ${TMPDIR:-/tmp}/cdt.latest
17 }
18
19 vit () {
20   local prefix
21   for i in "$@"; do 
22     case "$i" in
23       -) local stdin=1; shift;;
24       *) if [ -z "${prefix:-}" ]; then
25            prefix="$i"; shift
26          else
27            error "prefix already specified: $prefix"
28            return 1
29          fi
30          ;;
31     esac
32   done
33   local tmpfile=$(mktemp -t ${prefix:-vit}.XXXXXX)
34   [ -n "$stdin" ] && cat >| $tmpfile
35   sensible-editor $tmpfile </dev/tty >/dev/tty
36   echo $tmpfile
37   ln -sf $tmpfile ${TMPDIR:-/tmp}/vit.latest
38 }
39
40 # vim:ft=zsh