Ajouter un horodatage au thème oh-my-zsh robbyrussell

27

Je veux ajouter un horodatage à mon invite de commande dans oh-my-zsh. Voici l'invite de thème actuelle ( 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]%})"

Une idée de comment ajouter l'horodatage?

yossi.ittach
la source

Réponses:

42

Selon la page de manuel zshmisc, il existe plusieurs %codes pour la date et l'heure, par exemple:

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

Le dernier permet des codes répertoriés dans la strftime (3) page de manuel . Modifiez votre ~/.zshrcfichier et ajoutez à la fin une nouvelle valeur PROMPT, par exemple:

 PROMPT='${ret_status}%{$fg_bold[green]%}%p %{$fg[cyan]%}%c %{$fg_bold[blue]%}$(git_prompt_info)%{$fg_bold[blue]%} %D %T % %{$reset_color%}'
meuh
la source
Cela ne reste pas après la fermeture de la fenêtre du terminal. Je dois faire source ~ / .zsh à chaque fois comment éviter cela?
user391339
1
Il y avait une erreur de frappe dans ma réponse. Le fichier à utiliser ~/.zshrcne l' est pas ~/.zsh.
meuh
22

Si vous souhaitez ajouter la date / l'heure à droite, vous définissez RPROMPT

local ret_status = "% (?:% {$ fg_bold [green]%} ➜:% {$ fg_bold [red]%} ➜)"
PROMPT = '$ {ret_status}% {$ fg [cyan]%}% c% {$ reset_color%} $ (git_prompt_info)'
RPROMPT = "[% D {% y /% m /% f} |% @]"

entrez la description de l'image ici

Héctor Villarroel
la source
2
ça va définitivement mieux sur le côté droit car j'ai déjà beaucoup de choses sur l'invite de gauche
WhoSayIn
1
dans mon cas nano ~/.zshrcet ajouté RPROMPT="%{$fg[yellow]%}[%D{%f/%m/%y}|%@]"comme dernière ligne pour définir l'invite de droite avec la couleur jaune
Victor R. Oliveira
1
@ VictorR.Oliveira que vous voudriez ajouter %{$reset_color%}à la fin pour éviter que le jaune ne gâche le reste des lignes.
Raf
8

J'ai ajouté cela %D{%m/%f/%y}|%D{%L:%M:%S}au thème principal pour afficher la date et l'heure au format mm/dd/yy | hh:mm:ss.

Voici donc la commande complète que j'utilise:

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

Qui donne:

entrez la description de l'image ici

iamaziz
la source
0

Pour obtenir la date et la zone complètes

[Dim 11 août 2019 20:41:53 AEST]

Je mets

RPROMPT = "% {$ fg [vert]%} [% D {% c}]"

dans mon fichier ~ / .zshrc

user1074460
la source