diff options
author | Robin Jarry <robin@jarry.cc> | 2021-10-26 17:24:45 +0200 |
---|---|---|
committer | Robin Jarry <robin@jarry.cc> | 2021-10-28 16:30:59 +0200 |
commit | 42b4302ba32e503c0a8011baae0ca433c8592dd7 (patch) | |
tree | cd29bf74fa404a0fd6e0ce6f1d524d41e7c6ab6f /config | |
parent | fea57839fbc7154c498a725f777c7fa0ab6a5e2a (diff) | |
download | aerc-42b4302ba32e503c0a8011baae0ca433c8592dd7.tar.gz |
index: allow dynamic formatting of message dates
When a message has been sent today (or this year) allow formatting the
date differently.
For example, with:
[ui]
index-format=%-25.25n %-25.25D %s
timestamp-format=2006 Jan 02, 15:04 GMT-0700
this-day-time-format=Today at 15:04
this-year-time-format=Jan 02
The message list would look like this (spaces collapsed):
Robin Jarry Today at 16:30 [PATCH 1/2] bindings: prepare for more modifers
bugzilla@dpdk.org Oct 26 [dpdk-dev] [Bug 839] pdump: any subsequent runs of pdump_autotest fail
Holger Levsen 2020 Mar 15, 13:44 GMT+01 +1 (Re: FTP Team -- call for volunteers)
Signed-off-by: Robin Jarry <robin@jarry.cc>
Diffstat (limited to 'config')
-rw-r--r-- | config/aerc.conf.in | 14 | ||||
-rw-r--r-- | config/config.go | 8 | ||||
-rw-r--r-- | config/triggers.go | 2 |
3 files changed, 22 insertions, 2 deletions
diff --git a/config/aerc.conf.in b/config/aerc.conf.in index b9381a8b..0421901a 100644 --- a/config/aerc.conf.in +++ b/config/aerc.conf.in @@ -16,6 +16,20 @@ index-format=%D %-17.17n %Z %s timestamp-format=2006-01-02 03:04 PM # +# Index-only time format for messages that were received/sent today. +# If this is not specified, timestamp-format is used instead. +# +# Default: "" +today-time-format= + +# +# Index-only time format for messages that were received/sent this year. +# If this is not specified, timestamp-format is used instead. +# +# Default: "" +this-year-time-format= + +# # Width of the sidebar, including the border. # # Default: 20 diff --git a/config/config.go b/config/config.go index af9c63b2..dfcbd4dd 100644 --- a/config/config.go +++ b/config/config.go @@ -29,6 +29,8 @@ type GeneralConfig struct { type UIConfig struct { IndexFormat string `ini:"index-format"` TimestampFormat string `ini:"timestamp-format"` + ThisDayTimeFormat string `ini:"this-day-time-format"` + ThisYearTimeFormat string `ini:"this-year-time-format"` ShowHeaders []string `delim:","` RenderAccountTabs string `ini:"render-account-tabs"` PinnedTabMarker string `ini:"pinned-tab-marker"` @@ -491,8 +493,10 @@ func LoadConfigFromFile(root *string, sharedir string) (*AercConfig, error) { Ini: file, Ui: UIConfig{ - IndexFormat: "%D %-17.17n %s", - TimestampFormat: "2006-01-02 03:04 PM", + IndexFormat: "%D %-17.17n %s", + TimestampFormat: "2006-01-02 03:04 PM", + ThisDayTimeFormat: "", + ThisYearTimeFormat: "", ShowHeaders: []string{ "From", "To", "Cc", "Bcc", "Subject", "Date", }, diff --git a/config/triggers.go b/config/triggers.go index 847a10f3..4777371b 100644 --- a/config/triggers.go +++ b/config/triggers.go @@ -38,6 +38,8 @@ func (trig *TriggersConfig) ExecNewEmail(account *AccountConfig, func(part string) (string, error) { formatstr, args, err := format.ParseMessageFormat( part, conf.Ui.TimestampFormat, + conf.Ui.ThisDayTimeFormat, + conf.Ui.ThisYearTimeFormat, format.Ctx{ FromAddress: account.From, AccountName: account.Name, |