diff --git a/modules/prompt/functions/prompt-pwd b/modules/prompt/functions/prompt-pwd
index d2d1788f..ba509eb2 100644
--- a/modules/prompt/functions/prompt-pwd
+++ b/modules/prompt/functions/prompt-pwd
@@ -12,13 +12,15 @@ setopt localoptions extendedglob
 local current_pwd="${PWD/#$HOME/~}"
 local ret_directory
 
-if [[ "$current_pwd" == (#m)[/~] ]]; then
+if zstyle -m ':prezto:module:prompt' pwd-length 'full'; then
+  ret_directory=${PWD}
+elif [[ "$current_pwd" == (#m)[/~] ]]; then
   ret_directory="$MATCH"
   unset MATCH
-elif zstyle -m ':prezto:module:prompt' pwd-length 'full'; then
-  ret_directory=${PWD}
 elif zstyle -m ':prezto:module:prompt' pwd-length 'long'; then
   ret_directory=${current_pwd}
+elif zstyle -m ':prezto:module:prompt' pwd-length 'tail'; then
+  ret_directory=${current_pwd:t}
 else
   ret_directory="${${${${(@j:/:M)${(@s:/:)current_pwd}##.#?}:h}%/}//\%/%%}/${${current_pwd:t}//\%/%%}"
 fi