Add the following to your remote {{.zsh}} 

{{{
# prompts
if [[ $TERM == "dumb" ]]; then	# in emacs
    PS1='%(?..[%?])%!:%~%# '
    # for tramp to not hang, need the following. cf:
    # http://www.emacswiki.org/emacs/TrampMode
    unsetopt zle
    unsetopt prompt_cr
    unsetopt prompt_subst
    unfunction precmd
    unfunction preexec
else
    # your prompt stuff
fi
}}}

----
[Emacs | CategoryComputing.IDE.Emacs] - [Shell.Zsh | CategoryComputing.Shell.Zsh]