aboutsummaryrefslogtreecommitdiffstats
path: root/config
diff options
context:
space:
mode:
authorKoni Marti <koni.marti@gmail.com>2022-11-20 16:22:39 +0100
committerRobin Jarry <robin@jarry.cc>2022-11-21 13:31:00 +0100
commitc063b1d5f38ae144b7c86fe450a58f5f0ead667b (patch)
treecc067ecdf0312523358ae446779a68a1bb78cf44 /config
parente5f2fb08d8a7604aeef726698ef696874bcd2561 (diff)
downloadaerc-c063b1d5f38ae144b7c86fe450a58f5f0ead667b.tar.gz
attach: open file picker menu with -m flag
Open a user-defined file picker with the -m flag for the attach command to select attachments. Specify your file picker of choice with the 'file-picker-cmd' in the [composer] section of aerc.conf, e.g. "file-picker-cmd=fzf -m". A '%s' placeholder can be used in the 'file-picker-cmd' which is then substituted for the argument <arg> provided to :attach -m <arg>. For example, when you set 'file-picker-cmd=find %s -type f | fzf -m', you can easily change the directory to start the search with ':attach -m <path-to-search>'. Tested with fzf, fzy and peco. Implements: https://todo.sr.ht/~rjarry/aerc/108 Signed-off-by: Koni Marti <koni.marti@gmail.com> Acked-by: Tim Culverhouse <tim@timculverhouse.com>
Diffstat (limited to 'config')
-rw-r--r--config/aerc.conf8
-rw-r--r--config/compose.go1
2 files changed, 9 insertions, 0 deletions
diff --git a/config/aerc.conf b/config/aerc.conf
index adfa1e12..8b153ad8 100644
--- a/config/aerc.conf
+++ b/config/aerc.conf
@@ -338,6 +338,14 @@ header-layout=To|From,Subject
# This parameter can also be set per account in accounts.conf.
address-book-cmd=
+# Specifies the command to be used to select attachments. Any occurence of '%s'
+# in the file-picker-cmd will be replaced the argument <arg> to :attach -m
+# <arg>.
+#
+# The command must output the selected files to standard output, one file per
+# line.
+file-picker-cmd=
+
#
# Allow to address yourself when replying
#
diff --git a/config/compose.go b/config/compose.go
index 31ee0a8b..f9c1ba90 100644
--- a/config/compose.go
+++ b/config/compose.go
@@ -14,6 +14,7 @@ type ComposeConfig struct {
AddressBookCmd string `ini:"address-book-cmd"`
ReplyToSelf bool `ini:"reply-to-self"`
NoAttachmentWarning *regexp.Regexp `ini:"-"`
+ FilePickerCmd string `ini:"file-picker-cmd"`
}
func defaultComposeConfig() ComposeConfig {