如何在 zsh 中在单独的行上制作信息并在新行上制作命令?

问题描述

我使用 zsh 作为我的命令行。

在我的zsh中,显示的信息太多(文件路径,git状态),以至于每一行可以输入的命令的空间非常少。红色矩形包围的是我可以输入的空间输入命令。

但我不想删除显示的信息。每次按回车时,我可以将信息放在单独的一行上,并将命令放在新的一行上吗?

当我echo $PROMPT时,结果是:

%m %{${fg_bold[blue]}%}:: %{$reset_color%}%{${fg[green]}%}%3~ $(git_prompt_info)%{${fg_bold[$CARETCOLOR]}%}»%{${reset_color}%} 

enter image description here

解决方法

您当前的 bash PROMPT 是;

%m %{${fg_bold[blue]}%}:: %{$reset_color%}%{${fg[green]}%}%3~ $(git_prompt_info)%{${fg_bold[$CARETCOLOR]}%}»%{${reset_color}%} 

让我们在这些值之间添加一些 newlines ($'\n');

export PROMPT="%m %{${fg_bold[blue]}%}::"$'\n'"%{$reset_color%}%{${fg[green]}%}%3~ "$'\n'"$(git_prompt_info)%{${fg_bold[$CARETCOLOR]}%}»%{${reset_color}%}"

在我本地的 PROMPT 上,这会生成:

enter image description here

MBP 是我的本地机器名)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...