timeago
In Rust, format Duration into string like "1 hour ago" or "01hou".
Currently it does not take the calendar into account and assumes each month is about 30.4 days long.
Parsing such string back to a Duration
is out of scope for this crate. Maybe see the chrono-english
crate instead.
With isolang
feature off, it supports Rust from version 1.24.
API
Simplified API excerpt (pseudocode):
;
;
A Language
can be constructed from isolang::Language.
Translations
- English
- Russian
- French
- Portuguese (contributed)
- German (unchecked)
- Belarusian (unchecked)
- Polish (unchecked)
- Spanish (contributed)
- Chinese (contributed)
- Romanian (contributed)
- Swedish (contributed)
- Turkish (contributed)
- Japanese (contributed)
- Danish (contributed)
- Italian (contributed)
- Ukrainian (contributed)
If you checked some language and certify that it's allright, submit a pull request that removes "(unchecked)" or "(contributed)" in the list above.
Tool
There is a helper command line tool that allows easier experimenting when adding a new translation:
$ cargo run --features isolang en
Finished dev [unoptimized + debuginfo] target(s) in 0.0 secs
Running `target/debug/timeago en`
60
1 minute ago
7200
2 hours ago
See also
- chrono-humanize
- compound_duration - split
Duration
into weeks/days/minues/etc. parts