We want it to fix TMPDIR etc. in non-login shells, too! And this makes
sense, as there are some startup sequences (for example when using
screen(1) or tmux(1)) which result in br0ken TMPDIR settings ..
if [[ ! -w "$TMPDIR" ]]; then
echo "WARNING: Temporary directory \"$TMPDIR\" is not writable!" >&2
fi
-# Make sure TMPDIR ends in a slash (like on macOS by default): this makes its
-# usage a bit safer ...
-case "$TMPDIR" in
- */) ;;
- *) TMPDIR="$TMPDIR/"
-esac
-export TMPDIR
# Setup XDG cache directory
if [[ -z "$XDG_CACHE_HOME" ]]; then
--- /dev/null
+# AX-ZSH: Alex' Modular ZSH Configuration
+# 30_env.ax-io: Setup environment
+
+# Make sure TMPDIR ends in a slash (like on macOS by default): this makes its
+# usage a bit safer ...
+case "$TMPDIR" in
+ */) ;;
+ *) TMPDIR="$TMPDIR/"
+esac
+export TMPDIR
+
+# TMPDIR is the only one required to be set, but make sure that TMP, TEMP
+# and TEMPDIR are set to the same sane path name when already present in the
+# environment:
+[[ -n "$TMP" ]] && TMP="$TMPDIR"
+[[ -n "$TEMP" ]] && TEMP="$TMPDIR"
+[[ -n "$TEMPDIR" ]] && TEMPDIR="$TMPDIR"