aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjohn1doe@ya.ru <john1doe@ya.ru>2022-01-31 16:28:58 +0200
committerRobin Jarry <robin@jarry.cc>2022-01-31 16:22:54 +0100
commit27122ef8e885f6824afd395c0c0b7b4f19f71b21 (patch)
treed158fb435aeefce3ff1e103d7ccafaa2839f128b
parent622802d3a5ea980b2d08ffec91497b57d3bae7f4 (diff)
downloadaerc-27122ef8e885f6824afd395c0c0b7b4f19f71b21.tar.gz
aerc-27122ef8e885f6824afd395c0c0b7b4f19f71b21.zip
compose: add option to never include your own address when replying
Introduce an option in aerc.conf to disable the auto-including of your own address when replying to your own emails (address replies to the original To: and Cc: instead); default to true (allow the auto-including)
-rw-r--r--commands/msg/reply.go13
-rw-r--r--config/aerc.conf.in6
-rw-r--r--config/config.go2
-rw-r--r--doc/aerc-config.5.scd7
4 files changed, 28 insertions, 0 deletions
diff --git a/commands/msg/reply.go b/commands/msg/reply.go
index a7768372..dac9f7a6 100644
--- a/commands/msg/reply.go
+++ b/commands/msg/reply.go
@@ -112,6 +112,19 @@ func (reply) Execute(aerc *widgets.Aerc, args []string) error {
} else {
to = msg.Envelope.From
}
+
+ if !aerc.Config().Compose.ReplyToSelf {
+ for i, v := range to {
+ if v.Address == from.Address {
+ to = append(to[:i], to[i+1:]...)
+ break
+ }
+ }
+ if len(to) == 0 {
+ to = append(msg.Envelope.To)
+ }
+ }
+
recSet.AddList(to)
if replyAll {
diff --git a/config/aerc.conf.in b/config/aerc.conf.in
index 9f45883f..87f7e563 100644
--- a/config/aerc.conf.in
+++ b/config/aerc.conf.in
@@ -194,6 +194,12 @@ header-layout=To|From,Subject
# ignored.
address-book-cmd=
+#
+# Allow to address yourself when replying
+#
+# Default: true
+reply-to-self=true
+
[filters]
#
# Filters allow you to pipe an email body through a shell command to render
diff --git a/config/config.go b/config/config.go
index e2acbaf3..8d818c26 100644
--- a/config/config.go
+++ b/config/config.go
@@ -123,6 +123,7 @@ type ComposeConfig struct {
Editor string `ini:"editor"`
HeaderLayout [][]string `ini:"-"`
AddressBookCmd string `ini:"address-book-cmd"`
+ ReplyToSelf bool `ini:"reply-to-self"`
}
type FilterConfig struct {
@@ -595,6 +596,7 @@ func LoadConfigFromFile(root *string, sharedir string, logger *log.Logger) (*Aer
{"To", "From"},
{"Subject"},
},
+ ReplyToSelf: true,
},
Templates: TemplateConfig{
diff --git a/doc/aerc-config.5.scd b/doc/aerc-config.5.scd
index f40c9cb0..a5af0d21 100644
--- a/doc/aerc-config.5.scd
+++ b/doc/aerc-config.5.scd
@@ -340,6 +340,13 @@ These options are configured in the *[compose]* section of aerc.conf.
Default: none
+*reply-to-self*
+ Allow to include your own address. Otherwise, if set to false, do not mail
+ yourself when replying (e.g., if replying to emails previously sent by
+ yourself, address your replies to the original To: and Cc:).
+
+ Default: true
+
## FILTERS
Filters allow you to pipe an email body through a shell command to render