config: allow per-account address-book-cmd
When using multiple accounts, the contacts may be different. Allow using specific address book commands per account. Signed-off-by: Robin Jarry <robin@jarry.cc> Acked-by: Moritz Poldrack <moritz@poldrack.dev>
This commit is contained in:
parent
f2dac06029
commit
db00accb57
4 changed files with 12 additions and 1 deletions
|
@ -263,6 +263,8 @@ header-layout=To|From,Subject
|
|||
# the first field. Only the email address field is required. The second field,
|
||||
# if present, will be treated as the contact name. Additional fields are
|
||||
# ignored.
|
||||
#
|
||||
# This parameter can also be set per account in accounts.conf.
|
||||
address-book-cmd=
|
||||
|
||||
#
|
||||
|
|
|
@ -112,6 +112,7 @@ type AccountConfig struct {
|
|||
SignatureCmd string
|
||||
EnableFoldersSort bool `ini:"enable-folders-sort"`
|
||||
FoldersSort []string `ini:"folders-sort" delim:","`
|
||||
AddressBookCmd string `ini:"address-book-cmd"`
|
||||
|
||||
// CheckMail
|
||||
CheckMail time.Duration `ini:"check-mail"`
|
||||
|
@ -279,6 +280,8 @@ func loadAccountConfig(path string) ([]AccountConfig, error) {
|
|||
account.PgpAutoSign, _ = strconv.ParseBool(val)
|
||||
} else if key == "pgp-opportunistic-encrypt" {
|
||||
account.PgpOpportunisticEncrypt, _ = strconv.ParseBool(val)
|
||||
} else if key == "address-book-cmd" {
|
||||
account.AddressBookCmd = val
|
||||
} else if key != "name" {
|
||||
account.Params[key] = val
|
||||
}
|
||||
|
|
|
@ -467,6 +467,8 @@ These options are configured in the *[compose]* section of aerc.conf.
|
|||
if present, will be treated as the contact name. Additional fields are
|
||||
ignored.
|
||||
|
||||
This parameter can also be set per account in accounts.conf.
|
||||
|
||||
Example:
|
||||
khard email --remove-first-line --parsable '%s'
|
||||
|
||||
|
|
|
@ -82,7 +82,11 @@ func NewComposer(aerc *Aerc, acct *AccountView, conf *config.AercConfig,
|
|||
}
|
||||
|
||||
templateData := templates.ParseTemplateData(h, orig)
|
||||
cmpl := completer.New(conf.Compose.AddressBookCmd, func(err error) {
|
||||
cmd := acctConfig.AddressBookCmd
|
||||
if cmd == "" {
|
||||
cmd = conf.Compose.AddressBookCmd
|
||||
}
|
||||
cmpl := completer.New(cmd, func(err error) {
|
||||
aerc.PushError(
|
||||
fmt.Sprintf("could not complete header: %v", err))
|
||||
worker.Logger.Printf("could not complete header: %v", err)
|
||||
|
|
Loading…
Reference in a new issue