aboutsummaryrefslogtreecommitdiffstats
path: root/config/aerc.conf
diff options
context:
space:
mode:
authorRobin Jarry <robin@jarry.cc>2022-09-30 14:12:07 +0200
committerRobin Jarry <robin@jarry.cc>2022-10-01 15:47:25 +0200
commit45bff8851509432f6b5a21360ce67a7b2ca55eb5 (patch)
tree9290e56c3483a60b04d321837ac609c404a38768 /config/aerc.conf
parent92ba132d70fe1d9afabe3cf4f23376025ccff897 (diff)
downloadaerc-45bff8851509432f6b5a21360ce67a7b2ca55eb5.tar.gz
open: allow overriding default program
Instead of xdg-open (or open on MacOS), allow forcing a program to open a message part. The program is determined in that order of priority: 1) If :open has arguments, they will be used as command to open the attachment. If the arguments contain the {} placeholder, the temporary file will be substituted, otherwise the file path is added at the end of the arguments. 2) If a command is specified in the [openers] section of aerc.conf for the part MIME type, then it is used with the same rules of {} substitution. 3) Finally, fallback to xdg-open/open with the file path as argument. Update the docs and default config accordingly with examples. Fixes: https://todo.sr.ht/~rjarry/aerc/64 Co-authored-by: Jason Stewart <support@eggplantsd.com> Signed-off-by: Robin Jarry <robin@jarry.cc> Tested-by: Tim Culverhouse <tim@timculverhouse.com> Acked-by: Moritz Poldrack <moritz@poldrack.dev>
Diffstat (limited to 'config/aerc.conf')
-rw-r--r--config/aerc.conf14
1 files changed, 14 insertions, 0 deletions
diff --git a/config/aerc.conf b/config/aerc.conf
index 6e5efe7d..0bd96fb5 100644
--- a/config/aerc.conf
+++ b/config/aerc.conf
@@ -308,6 +308,20 @@ text/plain=sed 's/^>\+.*/\x1b[36m&\x1b[0m/'
#text/html=w3m -dump -I UTF-8 -T text/html
#image/*=catimg -w $(tput cols) -
+[openers]
+#
+# Openers allow you to specify the command to use for the :open action on a
+# per-MIME-type basis.
+#
+# {} is expanded as the temporary filename to be opened. If it is not
+# encountered in the command, the temporary filename will be appened to the end
+# of the command.
+#
+# Examples:
+# text/html=surf -dfgms
+# text/plain=gvim {} +125
+# message/rfc822=thunderbird
+
[triggers]
#
# Triggers specify commands to execute when certain events occur.