Trying to get GroupWare's Evolution to show the time and date in the mail listing window pane in the way that I wanted has been a pain, simply because you have to discover the variables in a trial-and-error method. I can't find a list anywhere (for Evolution). I don't know if they're following a Linux standard, or their own (there seems to be a mixture). Some of the explanations I've included below are from the date command, and will require longer testing to see if Evolution is following them or doing its own thing.
This is what I've discovered with Evolution3.28.5 on CentOS 7 in July 2024, organised into the components of calendar, time, and timezone; then preformatted strings for date & time; and lastly (weird) numerical day and week numbers. (Weird, as in people normally start counting the first day or week of the year from one, not zero.)
Variable | Function | Example |
---|---|---|
%a | short dayname (locale format) | Fri |
%A | long dayname (locale format) | Friday |
%ad | short relative day or dayname | Today, Yesterday, or Fri |
%d | numerical day of the month (zero padded) | 19 |
%e | numerical day of the month (space padded) | 19 |
%m | numerical month of year (zero padded) | 07 |
%b | short month name (locale format) | Jul |
%h | short month name (same as %b) | Jul |
%B | long month name (locale format) | July |
%g | year (short format) of ISO week number (see %G) | 24 |
%y | year (short format) in normal human usage | 24 |
%G | year (long format) of ISO week number (for %V) | 2024 |
%Y | year (long format) in normal human usage | 2024 |
%C | century (last two digits of %Y) | 24 |
%H | hours (24-hour clock, zero padded) | 10 |
%I | hours (12-hour clock, zero padded) | 10 |
%k | hours (24-hour clock, space padded) | 10 |
%l | hours (12-hour clock, space padded) | 10 |
%M | minutes | 51 |
%S | seconds | 15 |
%p | AM/PM (uppercase or locale format?) | AM |
%P | am/pm (lowercase) | am |
%z | timezone (numerical) | +0930 |
%Z | timezone (by initialised name) | ACST |
%r | time locale 12-hour clock format (zero padded) | 10:54:15 AM |
%R | time 24-hour clock (%H:%M) | 10:54 |
%T | time 24-hour clock (%H:%M:%S) | 10:54:15 |
%X | time locale 24-hour clock format | 10:54:15 |
%D | date numerical (%m/%d/%y aka American format) | 07/19/24 |
%F | date numerical (%Y:%m:%d aka library/ISO format) | 2024-07-19 |
%x | date locale format | 19/07/24 |
%c | locale time & date | Fri 19 Jul 2024 10:54:15 ACST |
%n | new line (not practically useful here) | |
%t | tab (not practically useful here) | |
%w | numerical day of week (0–6, Sunday = 0) | 5 |
%u | numerical day of week (1–7, Monday = 1) | 5 |
%U | week number of year (00–53, with week beginning on Sunday) | 28 |
%W | week number of year (00–53, with week beginning on Monday) | 29 |
%V | ISO week number of year (01–53, with week beginning on Monday) | 29 |
%j | day of year (001–366) | 201 |
%s | epoch timestamp (seconds since 1970-01-01 00:00:00 UTC) | 1721353318 |
NB: Locale examples are showing what I see in my locale. If you're not in South Australia, expect to see how times and dates are usually written in your locale. Of course this depends on how you've set up your computer preferences, it's not fully automatic. I'm guessing that some are locale settings, rather than simply string presets, because they match other locale styles. And I'm not changing my system settings, nor mis-setting my clock, to test this.
I set my variables in Evolutions mail header preferences thus: %A %e-%b-%Y %l:%M %P
To see: Friday 19-Jul-2024 10:54 am
I've skipped variables that produced no obvious result (null or blank spaces).
Removing all the variables just produced a short numerical time and date display in the local format, or replacing the date with today or yesterday for mail from today or yesterday.
Regarding library or ISO date formats (essentially the same thing)…
ISO is an international standards organisation, but without saying which particular standard you're referring to, it's an extremely vague to say that something is in an ISO format. Though an ISO date usually refers to a four digit year, two digit month, then a two digit day (e.g. 2024-07-19).
The same thing is often called a libary format, because it allowed libraries to use simple numerical sorting to get things into chronological order. If you ignore the punctuation, treating 2024-07-19 as 20240719, and compare it against 20240323 (2024-03-23), the smallest number is the earlier date.
In either case it's most significant (largest) digits first (years), working its way to down the least significant (smallest) digits (days) last. Just the same way as normal numbering starts with largest numbers (e.g. thousands), down to single digits.
You can compare numerical values, directly, to get things into date order, without having to care about how many days in a week, in a month, etc. But if you wrote the date in another sequence you'd have to massage the figures into a different order, and/or convert names of months into numbers, first, to do chronological sorting.