44 lines
880 B
Go
44 lines
880 B
Go
package compose
|
|
|
|
import (
|
|
"git.sr.ht/~rjarry/aerc/app"
|
|
"git.sr.ht/~rjarry/aerc/commands"
|
|
)
|
|
|
|
type CC struct {
|
|
Recipients string `opt:"recipients" complete:"CompleteAddress" desc:"Recipient from address book."`
|
|
}
|
|
|
|
func init() {
|
|
commands.Register(CC{})
|
|
}
|
|
|
|
func (CC) Description() string {
|
|
return "Add the given address(es) to the Cc or Bcc header."
|
|
}
|
|
|
|
func (CC) Context() commands.CommandContext {
|
|
return commands.COMPOSE_EDIT | commands.COMPOSE_REVIEW
|
|
}
|
|
|
|
func (CC) Aliases() []string {
|
|
return []string{"cc", "bcc"}
|
|
}
|
|
|
|
func (*CC) CompleteAddress(arg string) []string {
|
|
return commands.GetAddress(arg)
|
|
}
|
|
|
|
func (c CC) Execute(args []string) error {
|
|
composer, _ := app.SelectedTabContent().(*app.Composer)
|
|
|
|
switch args[0] {
|
|
case "cc":
|
|
return composer.AddEditor("Cc", c.Recipients, true)
|
|
case "bcc":
|
|
return composer.AddEditor("Bcc", c.Recipients, true)
|
|
}
|
|
|
|
return nil
|
|
}
|