为 oh-my-zsh robbyrussell 主题添加时间戳

为 oh-my-zsh robbyrussell 主题添加时间戳

我想在 oh-my-zsh 的命令提示符中添加时间戳。这是当前主题提示符 (羅比羅素):

local ret_status="%(?:%{$fg_bold[green]%}➜ :%{$fg_bold[red]%}➜ %s)"
PROMPT='${ret_status}%{$fg_bold[green]%}%p %{$fg[cyan]%}%c %{$fg_bold[blue]%}$(git_prompt_info)%{$fg_bold[blue]%} % %{$reset_color%}'

ZSH_THEME_GIT_PROMPT_PREFIX="git:(%{$fg[red]%}"
ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}"
ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[blue]%}) %{$fg[yellow]%}✗%{$reset_color%}"
ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg[blue]%})"

知道如何添加时间戳吗?

答案1

根据 zshmisc 手册页,%日期和时间有几种代码,例如:

 %D     The date in yy-mm-dd format.
 %T     Current time of day, in 24-hour format.
 %t %@  Current time of day, in 12-hour, am/pm format.
 %*     Current time of day in 24-hour format, with seconds.
 %w     The date in day-dd format.
 %W     The date in mm/dd/yy format.
 %D{strftime-format}

最后一个允许 strftime(3) 中列出的代码手册页. 编辑~/.zshrc文件并在末尾添加新的 PROMPT 值,例如:

 PROMPT='${ret_status}%{$fg_bold[green]%}%p %{$fg[cyan]%}%c %{$fg_bold[blue]%}$(git_prompt_info)%{$fg_bold[blue]%} %D %T % %{$reset_color%}'

答案2

如果要在右侧添加日期/时间,请设置 RPROMPT

本地 ret_status="%(?:%{$fg_bold[绿色]%}➜ :%{$fg_bold[红色]%}➜ )"
PROMPT='${ret_status} %{$fg[cyan]%}%c%{$reset_color%} $(git_prompt_info)'
RPROMPT="[%D{%y/%m/%f}|%@]"

在此处输入图片描述

答案3

我将其添加%D{%m/%f/%y}|%D{%L:%M:%S}到主主题以显示日期和时间mm/dd/yy | hh:mm:ss

以下是我使用的完整命令:

PROMPT='%D{%m/%f/%y}|%D{%L:%M:%S} ${ret_status}%{$fg_bold[green]%}%p %{$fg[cyan]%}%c %{$fg_bold[blue]%}$(git_prompt_info)%{$fg_bold[blue]%} % %{$reset_color%}${NEWLINE}$ '

这使:

在此处输入图片描述

答案4

在末尾添加以下内容.zshrc以获得如 GIF 中所示的类似输出。

PROMPT='%{$fg_bold[green]%}➜% %{$fg_bold[blue]%} [%D{%L:%M:%S}]% ${ret_status}%{$fg_bold[green]%}%p %{$fg[cyan]%}%c %{$fg_bold[blue]%}$(git_prompt_info)%{$reset_color%}'
TMOUT=1
TRAPALRM() {
    zle reset-prompt
}

动图:直播-哦-我的-zsh.gif

相关内容