summary refs log tree commit diff
diff options
context:
space:
mode:
authorJune McEnroe <june@causal.agency>2015-11-02 22:12:50 -0500
committerJune McEnroe <june@causal.agency>2015-11-02 22:12:50 -0500
commitba60bcc5d64896770c8bf8aec7e7a9cbde8f75cd (patch)
treea2c0940738b4871edb2fca798bb43a4cfd2e95ba
parentRemove first prompt placement (diff)
downloadsrc-ba60bcc5d64896770c8bf8aec7e7a9cbde8f75cd.tar.gz
src-ba60bcc5d64896770c8bf8aec7e7a9cbde8f75cd.zip
Print newline before every prompt after first
-rw-r--r--.zshrc11
1 files changed, 7 insertions, 4 deletions
diff --git a/.zshrc b/.zshrc
index 62578c65..ee3c151e 100644
--- a/.zshrc
+++ b/.zshrc
@@ -36,10 +36,12 @@ _prompt_git_branch() {
       ;;
   esac
 }
-PROMPT='
-%{%(?.$fg[green]$_prompt_ssh_color.$fg[red])%}»%{$reset_color%} '
+PROMPT='%{%(?.$fg[green]$_prompt_ssh_color.$fg[red])%}»%{$reset_color%} '
 RPROMPT='%{$fg[blue]%}%-50<…<%~%{$fg[yellow]%}$(_prompt_git_branch)%{$reset_color%}'
 
+# Print a newline before every prompt after the first one.
+_newline_precmd() { print -n "$_newline"; _newline="\n" }
+
 # Set title to directory name at prompt, prefixed with hostname over SSH. Add
 # current command to title while running.
 _title() {
@@ -48,10 +50,11 @@ _title() {
 [[ -n "$SSH_CLIENT" ]] && _title_host='%m:'
 _title_preexec() { _title "$_title_host%1~: $1" }
 _title_precmd() { _title "$_title_host%1~" }
+
 typeset -ga preexec_functions
 typeset -ga precmd_functions
-preexec_functions+=_title_preexec
-precmd_functions+=_title_precmd
+preexec_functions+=(_title_preexec)
+precmd_functions+=(_newline_precmd _title_precmd)
 
 # General environment setup.
 PATH=$PATH:~/.bin