Take the 2-minute tour ×
Ask Different is a question and answer site for power users of Apple hardware and software. It's 100% free, no registration required.

I'm looking for an app that will let me send email only. Often in the course of my work I need to just fire off a quick email but don't want to get stuck firing up my mail client and reading new email.

The closest I've seen is QuickMailer, but it just fires up Mail.app and sends an email using that... then keeps Mail.app open.

I want a UI like QuickMailer's, but an app that sends the email right away without using Mail.app.

Does anything like this exist?

share|improve this question
    
might be a duplicate apple.stackexchange.com/questions/58730/… –  Anonymous Feb 25 '13 at 10:15
    
Quicksilver has a plugin to do this, but I've just tried it and can't get it to work reliably. It's free, though, so you might give it a try. qsapp.com –  seanhussey Feb 25 '13 at 19:53
    
The linked question might help, but since the answers there are to use QuickMailer (and not Quicksilver) let's leave both live on the site for now. –  bmike Feb 25 '13 at 22:56
1  
For iOS? Mac OS X? Platform matters. –  Daniel Lawson Mar 1 '13 at 17:15
add comment

7 Answers 7

Co-author of QuickMailer here. We just released QuickMailer 2.0 which has SMTP support.

http://quickmailer.im

That would make it possible for you to bypass Mail.app and do exactly what you wanted.

share|improve this answer
add comment

Command line will do the trick (with some configuration). You will need to set it up to use your Google account authentication (I noted you tagged the question with "gmail" so I am assuming that's your provider).

This site has the details on how to set it up. If you use two-step authentication with your account just create an application password for command line and use that token when adding in SASL password.

This setup works well but won't handle attachments. If you need to send a file, you'll probably have an easier time using the Mail GUI.

However, your problem is that you don't want to open a program to send a message, correct? Because this requires you to have Terminal open, or to open Terminal when you need to send. But it would be fairly easy to knock together an Applescript that will prompt you for destination address, subject, and text of email, then bounce that directly to the shell and exit. Throw this into your user scripts folder and make sure your Mac is configured to show Scripts in the menu bar for quick access.

Second Edit: Updated the applescript to work a little more efficiently; uses the code from here to write the message body to a temp file in your home directory, then simply uses cat to read the file contents into an email message, and finally deletes the temp file. I tested it and it works well even with characters that were mishandled by the original script.

try
    display dialog "Send email to:" default answer "email@domain.com"
    set theEmail to (text returned of result)
    if theEmail is "email@domain.com" then error "No recipient specified!"

    display dialog "Email subject:" default answer "Subject"
    set theSubject to (text returned of result)
    if theEmail is "Subject" then error "No subject specified!"

    display dialog "Message:" default answer ¬
        "Enter message text" & return & return & return & return
    set theBody to (text returned of result)

    set this_file to (((path to home folder) as text) & "message.tmp")
    my write_to_file(theBody, this_file, true)

    do shell script "cd ~/; cat message.tmp | mail -s \"" & theSubject & "\" " & theEmail & "; rm message.tmp"

on error theError
    display dialog theError buttons {"Quit"} default button 1
end try

-- this subroutine saves input as a text file
on write_to_file(this_data, target_file, append_data) -- (string, file path as string, boolean)
    try
        set the target_file to the target_file as text
        set the open_target_file to ¬
            open for access file target_file with write permission
        if append_data is false then ¬
            set eof of the open_target_file to 0
        write this_data to the open_target_file starting at eof
        close access the open_target_file
        return true
on error
        try
            close access file target_file
        end try
        return false
    end try
end write_to_file
share|improve this answer
    
Addendum: To get Postfix running at start you'll need to see the instructions here, otherwise it will shut down on you at reboot. –  dr.nixon Mar 1 '13 at 16:24
add comment

The closest thing I've found for writing a quick email is Mail Unread Menu. Donation-ware, lives in the menubar, alerts to new mail, show number of unread and more; technically a Mail plugin, has worked for me for years.

You would have to leave Mail running, background or hide or send to another desktop.

And you do have to pull down Mail Unread Menu to select Compose New Mail. But handy nonetheless.

share|improve this answer
add comment

I use Apple Mail. When I need to work without email distraction, I take all accounts offline (under the Mailbox menu). This lets me still send email without being distracted by incoming messages.

share|improve this answer
add comment

Does your work involve a web browser already being open? Just type mailto: into its URL bar and your favorite mail client will open to a compose screen; even a web client, if your browser is set up to do that! Closing it again just takes a Cmd-Q (Cmd-W, if you were using a web client in a browser tab).

share|improve this answer
1  
Why didn't that work? –  Zo219 Feb 26 '13 at 22:36
    
@Zo219 — Typing mailto: in the address bar is not enough. Then you have to pres Return. –  Nicolas Barbulesco Jun 5 at 9:02
add comment

If you like the command line, you could just type the following into an app such as Terminal:

myserver> mail friend@some-domain.com

share|improve this answer
1  
Are you sure that this works out of the box on a standard OS X system? –  patrix Feb 28 '13 at 19:07
1  
No, it would have to be a mail server. –  Roger Feb 28 '13 at 20:12
add comment

If you put "......" in the "incoming mail server" you will be able to sent but not to receive mails in the Mail.app

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.