aboutsummaryrefslogtreecommitdiffstats
path: root/config/aerc.conf
diff options
context:
space:
mode:
authorRobin Jarry <robin@jarry.cc>2022-12-27 22:59:10 +0100
committerRobin Jarry <robin@jarry.cc>2023-02-20 14:48:42 +0100
commitd2e74cdb91e140b50d14c3a8b315cde272f32587 (patch)
tree4f4a20c02f60b67d7a8eb967bb45d789a057453b /config/aerc.conf
parent6af06c9dfec03e923589d34187ba8358e3423d5c (diff)
downloadaerc-d2e74cdb91e140b50d14c3a8b315cde272f32587.tar.gz
statusline: add column based render format
In the spirit of commit 535300cfdbfc ("config: add columns based index format"), reuse the column definitions and table widget. Add automatic translation of render-format to column definitions. Allow empty columns to be compatible with the %m (mute) flag. Rename the State object to AccountState to be more precise. Reuse that object in state.TempateData to expose account state info. Move actual status line rendering in StatusLine.Draw(). Add new template fields for status specific data: {{.ConnectionInfo}} Connection state. {{.ContentInfo}} General status information (e.g. filter, search) {{.StatusInfo}} Combination of {{.ConnectionInfo}} and {{.StatusInfo}} {{.TrayInfo}} General on/off information (e.g. passthrough, threading, sorting) {{.PendingKeys}} Currently pressed key sequence that does not match any key binding and/or is incomplete. Display a warning on startup if render-format has been converted to status-columns. Signed-off-by: Robin Jarry <robin@jarry.cc> Acked-by: Tim Culverhouse <tim@timculverhouse.com>
Diffstat (limited to 'config/aerc.conf')
-rw-r--r--config/aerc.conf26
1 files changed, 23 insertions, 3 deletions
diff --git a/config/aerc.conf b/config/aerc.conf
index 43d17727..38049b77 100644
--- a/config/aerc.conf
+++ b/config/aerc.conf
@@ -279,10 +279,30 @@
#client-threads-delay=50ms
[statusline]
-# Describes the format string for the statusline.
#
-# Default: [%a] %S %>%T
-#render-format=[%a] %S %>%T
+# Describes the format for the status line. This is a comma separated list of
+# column names with an optional align and width suffix. See [ui].index-columns
+# for more details. To completely mute the status line except for push
+# notifications, explicitly set status-columns to an empty string.
+#
+# Default: left<*,center:=,right>*
+#status-columns=left<*,center:=,right>*
+
+#
+# Each name in status-columns must have a corresponding column-$name setting.
+# All column-$name settings accept golang text/template syntax. See
+# aerc-templates(7) for available template attributes and functions.
+#
+# Default settings
+#column-left=[{{.Account}}] {{.StatusInfo}}
+#column-center={{.PendingKeys}}
+#column-right={{.TrayInfo}}
+
+#
+# String separator inserted between columns.
+# See [ui].column-separator for more details.
+#
+#column-separator=" "
# Specifies the separator between grouped statusline elements.
#