Aggiungi il timestamp al tema oh-my-zsh robbyrussell


27

Voglio aggiungere un timestamp al mio prompt dei comandi in oh-my-zsh. Questo è il prompt del tema corrente ( robbyrussell ):

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]%})"

Qualche idea su come aggiungere il timestamp?

Risposte:


42

Secondo la pagina man di zshmisc ci sono diversi %codici per data e ora, ad esempio:

 %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}

L'ultimo consente i codici elencati nella pagina man strftime (3) . Modifica il tuo ~/.zshrcfile e aggiungi alla fine un nuovo valore PROMPT, ad esempio:

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

Questo non rimane dopo aver chiuso la finestra del terminale. Devo fare source ~ / .zsh ogni volta come posso evitarlo?
user391339

1
C'è stato un errore di battitura nella mia risposta. Il file da utilizzare ~/.zshrcnon lo è ~/.zsh.
Meuh

22

Se si desidera aggiungere data / ora a destra, impostare RPROMPT

local ret_status = "% (?:% {$ fg_bold [verde]%} ➜:% {$ fg_bold [rosso]%} ➜)"
PROMPT = '$ {ret_status}% {$ fg [ciano]%}% c% {$ reset_color%} $ (git_prompt_info)'
Rprompt = "[% D {% a /% m / f}% |% @]"

inserisci qui la descrizione dell'immagine


2
va decisamente meglio sul lato destro poiché ho già un sacco di cose sul prompt di sinistra
WhoSayIn

1
nel mio caso nano ~/.zshrce aggiunto RPROMPT="%{$fg[yellow]%}[%D{%f/%m/%y}|%@]"come ultima riga per impostare il prompt giusto con il colore giallo
Victor R. Oliveira,

1
@ VictorR.Oliveira che vorresti aggiungere %{$reset_color%}alla fine per evitare che il giallo rovini il resto delle linee.
Raf

8

Ho aggiunto questo %D{%m/%f/%y}|%D{%L:%M:%S}al tema principale per visualizzare la data e l'ora come mm/dd/yy | hh:mm:ss.

Quindi ecco il comando completo che uso:

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}$ '

Che dà:

inserisci qui la descrizione dell'immagine


0

Per ottenere il datetime completo e la zona

[Dom 11 Agosto 2019 20:41:53 AEST]

Io posto

Rprompt = "% {$ fg [green]%} [% D {% c}]"

nel mio file ~ / .zshrc

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.