tonight's random Mac thoughts

I think I've finally gotten all my mail imported into It was a tedious, glacial pain in the ass.

What's a good typing-break timer? I grabbed Time Out, and it seems ok... it's kinda ugly, though. And it's more insistent than what I'm used to (XWrits).

    Update: AntiRSI is a lot better looking.

I want a dock button that means "create a new Safari window". If you click on Safari in the dock, it opens a new window if there are none; but otherwise it opens some existing window. I want a fast way to always get a new window. (I imagine this is a Small Matter of Applescript...)

    Update: There's a "New Window" menu on the right-click context menu on the Safari icon in the dock, which is close enough.

I love that in Safari, Cmd-Shift-click does "Open Link Behind..." (opens a link in a new window, but stacks that window behind the one youre curent looking at.)

However, is there some way to change that binding so that Cmd-click does that (without a shift)? One of my mouse buttons sends Cmd-click, so I'd like to be able to do "Open Link Behind" without using the keyboard. (I could change that button to send Cmd-Shift-click, but that would be less convenient in other applications.)

    Update: Please stop telling me how much you love tabs. I'm happy for you, but I think they suck. You needn't elaborate on how wonderful you think they are. I get it.

I'm getting along with OK, but it's weird that:

  • You can't click in the "unread" and "flagged" columns to change the status of a message (you need to use a toolbar button instead).
  • There seems to be no way to put a "next message" or "next unread message" button in the toolbar. I really miss that. I find myself scroling and visually searching a lot.

I really wish I could get it to save a copy of my outgoing messages into the folder of the message to which I'm replying. Right now I'm doing BCC and then manually refiling my outgoing messages, but that's annoying.

    Update: Please stop mailing me to tell me "just Cmd-click the Sent folder to see your incoming and outgoing messages together." That conflates the entire Sent folder with the current folder, not just the subset of Sent that are replies to the messages in the current folder. It is, therefore, totally worthless.

Also, my BCCs make the "you have new mail" flag go up: it's not smart enough to not notify me about mail from me. To get better notifications for incoming mail, I'm using the "Mail Notification" AppleScript that came with Growl, and having my mail filters run that when putting messages into certain folders. I guess I could just hack that script to be silent when the mail is from me...

Tags: , , , , ,

58 Responses:

  1. duskwuff says:

    Safari and open-behind: The option's available IFF you're using tabs instead of windows. If you're hell-bent on using multiple windows, though, I'm pretty sure that the source (not just the WebCore source!) is now available, though, and it doesn't sound too massively hard to change.

    As far as and BCCs, you can set up a rule to automagically flag messages from yourself as read as soon as they come in. If the folder configuration is based on subject and/or sender, you can probably hack that to refile them as well, but it'll probably be messy.

    • jwz says:

      I despise tabs. They are an abomination. An attrocity.

      Sure, I'll hack the source to my browser. Ha ha ha ha ha ha ha. *snork*. You so funny.

      • I've been using tabbed browsing for years and have gotten really used to it, but I always expect the multiple pages that I'm viewing (in tabs) to be visible when I use Expose (which wouldn't make sense, but which I find disappointing every time I bring up Expose, regardless). I didn't know about command-shift-clicking to get a new window to open under the current one, but it does seem like a solid alternative. Thanks!

      • chucker23n says:

        It may not require the source code, really. A bit of fiddling with the interface builder files might suffice. Since I'm not currently on OS X, however, I can't check.

        Have you checked the various extensions available at PimpMySafari? Maybe ther's something there that exposes this functionality.

      • remaker says:

        I'd like to see a dedicated rant on tabs. I used to think tabs were an abomination since tabs are really doing the job that a proper window manager and/or a properly designed web page/site ought to be doing.

        In the process of poo-pooing tabs, I discovered that my browsing habits were organized into what I might call "contexts." I operated in several browsing contexts and swapped between them. For example, in one context I might be chasing down some technical information, and in another context bouncing around various news items. As I jumped from site to site, or searched for forking threads of search, I had to shuffle around potentially irrelevant windows. Using tabs, one window then contained all of the paths of my search. A new window would be spawned to pursue a separate context. A context switch requires a change between tabbed windows rather than a desperate thumbing through a dozen windows in two contexts. Best of all, terminating a context meant closing one window.

        So, when you are doing multi-context browsing, pursuing several trains of thought at once, how many windows do you have open and how do you manage them?

        Or, are you simply more disciplined and only run one context at a time? Or simply able to keep track of more than 10 open browsers and patiently kill off 5 windows when terminating a specific context (rather than a window with a bunch of tabs).

        Maybe a gruntle on "how to properly use the web, from someone who made it possible for your sorry ass" would be in order. RSS has cut down on my web browser clutter, bit not enough to live without tabs. I do not argue that my way is right, I just ended up at a place where I can no longer live WITHOUT tabs.

      • sherm says:

        I despise tabs. They are an abomination. An attrocity.

        Do you have any good arguments/rants explaining that? I actually agree with you, but can never come up with a good defense for the position other than "EEEW!"

        • jwz says:

          Basically, that's what the window manager is for. Embedding a second window manager inside an application is just wrong. It's a cop-out that hides the real problem (if there is one).

          • strspn says:

            There are sometimes a good reason to add another layer of grouping mechanisms. If you are "doing two things" in your top-level goals, then tabs allow you to have two clearly-deliniated sets browser windows, which sometimes helps. You wouldn't want a filesystem without any directories. Inasmuch as applications open files, window manager includes a short term, session-based file system.

            When conducting a breadth-first search, tabs make things much easier, and provide an algorithm with which to traverse an arbirtary tree with limited memory. Depth-first traversal of an arbirtary tree can be done in one window if visited link coloring is working, with no limits to memory.

            • strspn says:

              My ability too right noes know bounds.

              s/There are/There is/
              s/sets browser/sets of browser/
              s/files, window/files, the window/
              s/no limits/limits/

          • ewindisch says:

            But until I find a good tabbed window manager, tabs in the browser are an acceptable alternative. I'm not too crazy about pwm or the blackbox derivatives (anymore).

          • netik says:

            I suppose I should introduce you to the magic of the 'open' command on the OS X CLI.

            Open up a terminal window, and type 'open ...' where ... can be a URL, a JPG, a movie, or whatever, and the GUI will 'do the right thing' and find the appropriate app to open.

            If you make a shortcut to an 'open' bash with a url at the end of it, and stuff that into the doc, you can probably get the feature you want to work with a minimal amount of coding.

          • jesus_x says:

            So should we ignore the problem, or find a way to fix it? You're right that it's a window manager problem, but no window manager addresses it.

            • jwz says:

              Well, I don't think there's a problem, certainly not one that tabs solve.

              Whatever, if you like them use them, I don't care. But I think they're horrible.

            • strspn says:

              Maybe window system users need a way to group running applications (do we still call them clients here?) Whatever you use to pull up a list of running applications (e.g. "Force Quit...") needs analogous functionality to "process groups" in unixeese or "jobs" in shell tty disciplines. Both of those let you group related processes. Users want to do the same things. Often the idea of virtual desktops is used; I like that in principle but in practice it doesn't always make things better. If there is an icon bar, dock, icon region, or icon-related program activities, there ought to be a way to bind them so that they can be operated on as a group. How to do that best beats me.

              • jesus_x says:

                WinXP has app-window grouping, but frankly, I find browser tabs abetter way of doing it. It's not as wasteful of screen real-estate as full blown MDI is, but it's faster than alt-tabbing through _all_ open windows as you just flip through the tabs. And frankly, I think it's a better metaphor sometimes than full blown MDI in other apps like word processors, or DTP. Spreadsheets already use the tab idea and no one complains. I think it's a great idea to make life easier. I used to do the multiple window thing before tabs were built into Mozilla, and frankly, I switched to tabs only within minutes. I'm not sure how to quantify it, but it just feels much faster and easier to use. I also have the taskbar to Autohide, so maybe that is part of why I like tabs better than MDI or multiple windows...

                • strspn says:

                  There is a failure mode in tabs, in that rapid switching between tabs can be significantly slower (often no default mouse binding other than "click in a small, possibly obscured trapezoidish rectangle.")

                  I bet jwz and/or his followers would love tab switching if there were an agreed-upon "switch to the last [and next? etc? next last?] tab in this window."

                  I'm not using ctrl-middleclick for anything, at least as far as I can tell. What do you bind your bucky middleclick to?

                  • jesus_x says:

                    For opening new tabs (Firefox and Mozilla here), I just middle click the link, and I have the pref set to raise that new tab to front (I find that I generally read that page, then continue back with the original, rather than most people doing it the other way, I'm odd). To switch tabs, CTRL-PgUp/PgDown go Right-to-Reft and Left-to-Right, respectively, and CTRL-TAB goes Left-to-Right. I'm hooked on CTRL-PgUp/PgDown because it lets be go either direction, while CTRL-TAB is just forward, and then I'd have to cycle through everything just to switch between two tabs if I have more than two open. This is with a three buttom wheelemouse on WinXP, although I've used the same keystrokes on Linux too. Not a clue about Macs.

    • partylemon says:

      Nope, just WebKit and JavaScriptCore. Although, Safari is just WebKit in a window.

    • chucker23n says:

      You are mistaken. The source to WebKit was released recently (WebKit is a wrapper to easily let you embed WebCore and JavaScriptCore into a new Cocoa app; in other words, it's a basic "pre-designed browser"), and in addition, a public SCM repository and bugtracker were opened to facilitate communication with the KHTML and KJS projects. Safari, however, is not open source.

      • duskwuff says:

        As above: Oop, you're right. The application wrapper isn't available. Pity. That's the bit that needs the most tweaking.

  2. smin says:

    Open Script Editor from AppleScripts in Utilities in Applications and paste:

    tell application "Safari"
    make new document
    end tell

    "Save as" application, drag to dock.

  3. ezhar says:

    You can right-click the Safari icon in the dock and it will give you a menu that includes "New Window".

  4. edouardp says:

    When I moved to Tiger, I did two things - firstly I updated Growl to 0.6.something, and added in the new mail notification script. Then I decided I would take the plunge and move to using as my main mailer (as previous versions weren't up to the task - no fulltext search, no smart folders, inability to deal with 60000+ sized mailboxes, etc).

    So I point at my pop account. With 4000 messages in it.

    I use Music Video as my growl notification style. Up popped a growl message telling me "Mr. Kofi Olante" was mailing me about some money he would like me to help him with. Next up was "Janell West" and "St0cks in Play". And then a new wonder "multi orgasm pill for men".

    "Bugger" I thought. Should have imported the mail first, then played with the growl notification. How do I turn that off then?

    But was importing at an alarming rate, and the messages were all being queued. Turning off growl didn't work, as for some reason it just started back up again automatically.

    So I just left it. I was still getting notifications the next morning, but they had stopped when I got home from work that night.

    Good to hear you managed to think that one through a little better than I did...

  5. aquarionical says:

    For keyboard break stuff, I use AntiRSI. Or there's always Workrave.

    I recently Switched to a Powerbook and moved from Thunderbird to at the same time. The lack of "Jump to next unread message" is rapidly driving me bat-shit insane.

  6. rosefox says:

    I really wish I could get it to save a copy of my outgoing messages into the folder of the message to which I'm replying.

    I set my filters to include mail to each person as well as from, and then routinely hit my Sent Mail folder, select all, and command-option-L to "Apply Rules". It's crude, but it works.

    For any kind of alarm or timer, I highly, highly recommend Alarm Clock Pro.

    • yesthattom says:

      I'm confused. All the emails that I'm composing can be found in the "Drafts" folder. After it's been sent a copy is put in the "Sent" folder. I keep both of these "on the server" and "never delete" and I get the functionality that you are looking for. What am I misunderstanding?

  7. If you keep a copy of outgoing mail in the "sent" folder, as opposed to BCCing yourself, it shouldn't trigger the new mail behavior. You should then be able to organize it to your heart's content.

  8. terryray says:

    jwz has always had this bizarre desire to keep his sent messages mixed up with his incoming messages. *almost* has a cool feature that would maybe give him what he wants in a different way.

    If you go to some folder of incoming messages, and then command-click the Sent folder, it will display both folders merged together. You can then go to the "threaded view", and it will thread the two folders together.

    The problem is that it doesn't remember what message you were looking at when you do the command-click. So you have to go find it again, which makes the whole process too much of a PITA.

    Still, it's a cool feature, and worth playing around with.

    • n0man says:

      What's so bizarre about keeping responses close to the message they are related to? Gmail does this, and while they probably weren't the first, seeing my email organized that way was a real "a-ha!" moment for me.

      • jwz says:

        Terry doesn't like threading. I think he reads all his mail sorted alphabetically by sender or something.

        • terryray says:

          Nah, I just read them sorted by date.

          Sometimes when looking through history I will sort by subject, which is close enough to threading for my purposes.

          I like the concept of threading, I just don't find I have much need for it.

    • jimm3uller says:

      Yes, only, still thinks that a "thread" is all messages with a common Subject, so it thinks there is a single thread, for example, that contains all messages whose subject is "!", which in fact are hundreds of unrelated threads that I've started over the years about exciting things I've noticed, e.g.

      Subject: !

      Oh joy, the new Mac OS X is up and running on my mac and *still* doesn't have a reasonable notion of thread and it *still* doesn't that laptops routinely use multiple SMTP servers in a single day, and it *still*....


      Subject: !

      Tahoe, Baby. What time do you get off work.

  9. jieves says:

    It seems that Applescript is getting suggested for a lot of the customizations here. I'll probably get flamed for this, but if you have 10.4 (which JWZ does) then wouldn't Automator be a good way to create a lot of this functionality (or at least a reasonable facsimile thereof) without having to actually touch Applescript? It does seem like this is the sort of thing Automater was built for.

    Then again, I haven't had cause to use Automator yet, just poked around in it to see what could be done. I'm just curious as to why it hasn't been suggested (other than "everyone posting here writes Perl scripts for breakfast").

    • Automator is higher-level than AppleScript. The functionality desired can easily be accomplished just by using AppleScript, thus no need to involve Automator. That is why.

  10. truffle666 says:

    I'd suggest you try doing things "the apple way(tm)" for a while before you start introducing your own conceptual mods to the UI.

    Select safari, apple-N, to get a new window.

    • jwz says:

      I have tried that way, and that way sucks. (It is also the "Firefox on Linux" way.) E.g., it ends up uniconifying some random window that I don't want to see right now.

      Also, where The Apple Way is "use the keyboard for doing something other than composing text", The Apple Way is unacceptable because it makes my hands hurt. Using the mouse as much as possible is part of how I stopped my wrists from turning into bloody RSI stumps.

      • mvc says:

        Not directly relevant to the Safari question, but if you're trying to avoid unnecessary keyboarding, you might be interested in Cocoa Gestures, which adds mouse gestures to any Cocoa application.

  11. danomite55 says:

    Why don't you just create a Smart Folder with a single rule to show unread messages. Use this smart folder instead of your Inboxes, and your next message will always be the next unread message.

  12. taiganaut says:

    Mail for me doesn't seem to be saving my outgoing messages to the Sent folder on my IMAP accounts at all.

  13. rexpop says:

    If you look on the "Keyboard and Mouse" pane in the System Preferences there is a tab called "Keyboard Shortcuts". I believe that you can override the keyboard shortcuts of (almost) every application.

    This might provide a way of implementing the Safari behavior you were looking for.

    • strspn says:

      Can you bind applications' keyboard shortcuts to mouse/key-mouse clicks?

      • rexpop says:

        Not 100% sure.

        This is one of those MacOS features that I know exists, but haven't really played with that much. I do know that you can use it to change existing shortcuts for most applications. (I believe that some of the Finder ones don't work)

  14. partylemon says:

    Depending how you have your mailboxes/folders, you should be able to get your inbox and your sent messages in one with a smart mailbox (Union of the appropriate inbox and sent box)?

  15. dr_memory says:

    If it makes you feel any better, the "save outgoing messages in the proper folder" issue is the whole reason I'm still limping along back in the 18th century with mutt rather than using a gui mail reader like 99.99% of the rest of the human race.

    In theory, it should be possible to coax Thunderbird into doing this with a XUL extension, but the whole notion of learning javascript and XUL just to make a circa-2005 application do something that pine and elm did for the last 15 years or so makes my eyeballs throb with hatred.

    • senji says:

      Not being able to use simple command-line tools on mail messages easily is why I'm evidently still in the 14th century, using nmh... :)

  16. mcgroarty says:

    There's a swerve-arrow indicator to the left of a message that indicates you've replied to a message. That's also clickable, and it takes you to your reply.