diff --git a/config/cache.go b/config/cache.go index 890eac88..ad211d0e 100644 --- a/config/cache.go +++ b/config/cache.go @@ -153,7 +153,7 @@ func AddContact(name, email string) error { return nil } - email = strings.ToLower(strings.TrimSpace(email)) + email = strings.ToLower(strings.Trim(strings.TrimSpace(email), ",")) name = strings.TrimSpace(name) cache, err := LoadContactsCache() diff --git a/main.go b/main.go index e426766d..ab04ba98 100644 --- a/main.go +++ b/main.go @@ -752,10 +752,16 @@ func (m *mainModel) Update(msg tea.Msg) (tea.Model, tea.Cmd) { go func() { // Save the recipient as a contact if msg.To != "" { - // Parse "Name " format - name, email := parseEmailAddress(msg.To) - if err := config.AddContact(name, email); err != nil { - log.Printf("Error saving contact: %v", err) + recipients := strings.Split(msg.To, ",") + for _, r := range recipients { + r = strings.TrimSpace(r) + if r == "" { + continue + } + name, email := parseEmailAddress(r) + if err := config.AddContact(name, email); err != nil { + log.Printf("Error saving contact: %v", err) + } } } // Delete the draft since email is being sent