2013-12-11 42 views
7

我可以配置我的提示在每個命令後顯示一個新行嗎?每個命令後zsh新行提示

給你舉個例子。在下面的屏幕截圖中,我運行了cat .zshrc。我想要在命令的最後一個輸出行. ~/.zsh_aliases~ $之間有一條新行。

enter image description here

回答

17

編輯~/.zshrc並添加行precmd() { print "" }。這將在PROMPT呈現之前簡單地打印空行。

+0

謝謝!完美解決方案 – orschiro

+0

太棒了!謝謝:D – htmldrum

+6

這可行,問題是它會在每次提示之前打印一個新行,即使在啓動shell時也是如此!任何方式繞過? – Sethen

2

我知道這是有點老了,但我找到了一種方法,即使它是不是很乾淨,我只是想分享:

function precmd { 
    if [[ "$NEW_LINE" = true ]] then 
     if [[ "${ADD_NEW_LINE}" = true ]] then 
      PROMPT=$'\n'"${PROMPT}" 
      ADD_NEW_LINE=false 
     fi 
    else 
     PROMPT="${PROMPT}" 
     NEW_LINE=true 
     ADD_NEW_LINE=true 
    fi 
} 

希望它可以幫助

2

另一種方式是通過只需在~/.zshrc中設置一個包含換行符的自定義提示即可。例如:

autoload -Uz promptinit 
promptinit 

PROMPT=" 
%[email protected]%m:%~ $ " 
+0

這就是我在每次新提示之前最終做出的避免換行的方式。 – Sethen