From: Steve Goldman Date: Sun, 23 Nov 2008 19:39:10 +0000 (-0500) Subject: show matching aliases before email addresses in auto complete X-Git-Url: https://git.cworth.org/git?a=commitdiff_plain;h=65750a8d4399e7c81742d17fab6c05452606a005;p=sup show matching aliases before email addresses in auto complete --- diff --git a/lib/sup/buffer.rb b/lib/sup/buffer.rb index 0447f61..2143deb 100644 --- a/lib/sup/buffer.rb +++ b/lib/sup/buffer.rb @@ -433,7 +433,7 @@ EOS prefix, target = partial.split_on_commas_with_remainder target ||= prefix.pop || "" prefix = prefix.join(", ") + (prefix.empty? ? "" : ", ") - completions.select { |x| x =~ /^#{Regexp::escape target}/i }.map { |x| [prefix + x, x] } + completions.select { |x| x =~ /^#{Regexp::escape target}/i }.sort_by { |c| [ContactManager.contact_for(c) ? 0 : 1, c] }.map { |x| [prefix + x, x] } end end @@ -501,7 +501,7 @@ EOS recent = Index.load_contacts(AccountManager.user_emails, :num => 10).map { |c| [c.full_address, c.email] } contacts = ContactManager.contacts.map { |c| [ContactManager.alias_for(c), c.full_address, c.email] } - completions = (recent + contacts).flatten.uniq.sort + completions = (recent + contacts).flatten.uniq completions += HookManager.run("extra-contact-addresses") || [] answer = BufferManager.ask_many_emails_with_completions domain, question, completions, default