Thêm dấu thời gian vào chủ đề robbyrussell oh-my-zsh


27

Tôi muốn thêm dấu thời gian vào dấu nhắc lệnh của mình trong oh-my-zsh. Đây là lời nhắc chủ đề hiện tại ( 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]%})"

Bất kỳ ý tưởng làm thế nào có thể thêm dấu thời gian?

Câu trả lời:


42

Theo trang man zshmisc, có một số %mã cho ngày và giờ, ví dụ:

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

Cái cuối cùng cho phép các mã được liệt kê trong trang man strftime (3) . Chỉnh sửa ~/.zshrctệp của bạn và thêm vào cuối giá trị PROMPT mới, ví dụ:

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

Điều này không ở lại sau khi tôi đóng cửa sổ thiết bị đầu cuối. Tôi phải làm nguồn ~ / .zsh mỗi lần làm cách nào để tránh điều đó?
dùng391339

1
Có một lỗi đánh máy trong câu trả lời của tôi. Các tập tin để sử dụng là ~/.zshrckhông ~/.zsh.
meuh

22

Nếu bạn muốn thêm ngày / giờ ở bên phải, bạn đặt RPROMPT

ret_status cục bộ = "% (?:% {$ fg_bold [xanh]%}:% {$ fg_bold [đỏ]%} ➜)"
PROMPT = '$ {ret_status}% {$ fg [cyan]%}% c% {$ reset_color%} $ (git_prompt_info)'
RPROMPT = "[% D {% y /% m /% f} |% @]"

nhập mô tả hình ảnh ở đây


2
nó chắc chắn sẽ tốt hơn ở phía bên phải vì tôi đã có rất nhiều thứ ở dấu nhắc bên trái
WhoSayIn

1
trong trường hợp của tôi nano ~/.zshrcvà được thêm vào RPROMPT="%{$fg[yellow]%}[%D{%f/%m/%y}|%@]"như dòng cuối cùng để đặt dấu nhắc đúng với màu vàng
Victor R. Oliveira

1
@ VictorR.Oliveira bạn muốn thêm %{$reset_color%}vào cuối để tránh màu vàng làm rối tung các dòng còn lại.
Raf

8

Tôi đã thêm nó %D{%m/%f/%y}|%D{%L:%M:%S}vào chủ đề chính để hiển thị ngày và giờ mm/dd/yy | hh:mm:ss.

Vì vậy, đây là toàn bộ lệnh tôi sử dụng:

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

Cung cấp cho:

nhập mô tả hình ảnh ở đây


0

Để có được toàn bộ thời gian và vùng

[Chủ Nhật ngày 11 tháng 8 năm 2019 20:41:53 AEST]

Tôi đặt

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

trong tập tin ~ / .zshrc của tôi

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.