diff --git a/etc/config.csh/aliases b/etc/config.csh/aliases
index 1f63a50900e052778a163d30db6ca6b6f32d1b4d..d423c053e4f9a29c36f28f367a99a971b26be48f 100644
--- a/etc/config.csh/aliases
+++ b/etc/config.csh/aliases
@@ -49,6 +49,11 @@ alias util 'cd $FOAM_UTILITIES'
 alias tut 'cd $FOAM_TUTORIALS'
 alias run 'cd $FOAM_RUN'
 
+alias ufoam 'cd $WM_PROJECT_USER_DIR'
+alias uapp 'cd $WM_PROJECT_USER_DIR/applications'
+alias usol 'cd $WM_PROJECT_USER_DIR/applications/solvers'
+alias uutil 'cd $WM_PROJECT_USER_DIR/applications/utilities'
+
 
 # Refresh the environment
 # ~~~~~~~~~~~~~~~~~~~~~~~
diff --git a/etc/config.csh/unset b/etc/config.csh/unset
index 92cef08d00d9bdb1b35c325aa71f590181fae781..7769d74e6100cfff00e4cbf0171c2959eaf65e16 100644
--- a/etc/config.csh/unset
+++ b/etc/config.csh/unset
@@ -175,6 +175,11 @@ unalias util
 unalias tut
 unalias run
 
+unalias ufoam
+unalias uapp
+unalias usol
+unalias uutil
+
 unalias wmRefresh
 unalias foamVersion
 unalias foamPV
diff --git a/etc/config.sh/aliases b/etc/config.sh/aliases
index 088d653ce0b3e0e89fbed556dc1048e570fe8e9e..f93b5c6818185305c97a2ac72bef918a276f1f0f 100644
--- a/etc/config.sh/aliases
+++ b/etc/config.sh/aliases
@@ -47,6 +47,11 @@ alias util='cd $FOAM_UTILITIES'
 alias tut='cd $FOAM_TUTORIALS'
 alias run='cd $FOAM_RUN'
 
+alias ufoam='cd $WM_PROJECT_USER_DIR'
+alias uapp='cd $WM_PROJECT_USER_DIR/applications'
+alias usol='cd $WM_PROJECT_USER_DIR/applications/solvers'
+alias uutil='cd $WM_PROJECT_USER_DIR/applications/utilities'
+
 
 # Refresh the environment
 # ~~~~~~~~~~~~~~~~~~~~~~~
@@ -106,4 +111,22 @@ foamPV()
 }
 
 
+# OpenFOAM working directory with basic env replacements
+# ~~~~~~~~~~~~~~~~~~~~~~~~~~
+unset -f foamPwd 2>/dev/null
+foamPwd()
+{
+    if [ -d "$WM_PROJECT_DIR" ]
+    then
+        echo $PWD | sed \
+        -e "s#^${FOAM_RUN}#\$FOAM_RUN#;" \
+        -e "s#^${WM_PROJECT_DIR}#\$WM_PROJECT_DIR#;" \
+        -e "s#^${WM_PROJECT_USER_DIR}#\$WM_PROJECT_USER_DIR#;" \
+        -e "s#^${HOME}#\$HOME#";
+    else
+        echo $PWD | sed -e "s#^${HOME}#\$HOME#;"
+    fi
+}
+
+
 #------------------------------------------------------------------------------
diff --git a/etc/config.sh/unset b/etc/config.sh/unset
index 09aa5855793706bc6cb8628eac43b1605857df86..871afe1ecd5a0a442640ebe1244fe298d47afe91 100644
--- a/etc/config.sh/unset
+++ b/etc/config.sh/unset
@@ -170,10 +170,19 @@ unalias util        2>/dev/null
 unalias tut         2>/dev/null
 unalias run         2>/dev/null
 
+unalias ufoam       2>/dev/null
+unalias uapp        2>/dev/null
+unalias usol        2>/dev/null
+unalias uutil       2>/dev/null
+
 unset -f wmRefresh  2>/dev/null
+unset -f foamPwd    2>/dev/null
 unset -f foamVersion 2>/dev/null
 unset -f foamPV     2>/dev/null
 
+# NB: no good way to remove foamPwd reference in PS1.
+
+
 # Remove old completions, which look like
 #     "complete ... -F _of_complete_ APPNAME
 # For economy, obtain list first