inessential by Brent Simmons

April 2005

Safari and setting your default feed reader

My favorite feature of Safari is—of course—that you can set your default aggregator.

Setting default aggregator in Safari

So any time you see the blue RSS button in Safari, just click to subscribe in your default RSS reader instead.

Safari RSS button

It goes beyond just clicking on the RSS button, though. With every feed I’ve tested, just clicking on the link in the web page sends the URL to NetNewsWire. (It doesn’t have to be a ‘feed’ URL: Safari figures out that it’s a feed and does the right thing.)

It’s the one-click-subscribing we’ve wanted for so long but didn’t have until now. This is a big step forward. I couldn’t be more pleased.

Safari Tiger hack

If you use Interface Builder to turn Safari’s browser from metal to regular, then have it use the unified title/toolbar look, it’s kind of cool. (At least, I like it. Not sure how well it wears yet, though.)

(Always take care and make backups when editing with Interface Builder, of course.)

Safari with unified title/toolbar

One thing I’ve noticed about Safari is that it has a customizable toolbar now. Yes!

But, on the downside, I can’t figure out how to get rid of the search field. (I always use Huevos instead, and I like having the extra space for the URL.) Does anyone know how to remove it?

Safari’s toolbar isn’t quite a conventional Cocoa toolbar. No chiclet in the upper-right of the window and no options for showing icon & text or icon only.

Still, though, I’m quite pleased, since it always kind of bugged me how you had to customize the address bar via menu commands. This is much better.

Screen shot of Automator and NetNewsWire

Automator and NetNewsWire screen shot:

Persistence

(Click for the full size version.)

The workflow shown in this screen shot may not be one you’d ever use—but, actually, come to think of it, I can imagine cases where you might.

It first gets the current URL from NetNewsWire—from the current headline or current web page. Then it asks Safari to get all the link URLs from that page. Then it asks NetNewsWire to subscribe to all those links.

It could be handy when you have a page with a ton of feeds on it and you want to subscribe to all of them.

The point, at least for now, is, “Hey, this stuff works.” And Automator is oddly addictive—I enjoy clicking the Run button and watching it do its thing.

Congratulations to Apple

Congratulations to the folks at Apple for working so hard and building such great stuff. Thank you! Tiger is very cool.

It’s been hard not talking about it!

NetNewsWire 2.0b45 includes Automator actions

NetNewsWire 2.0 icon

NetNewsWire 2.0b45 adds Automator actions, supports Atom enclosures, and fixes a bunch of bugs. See the change notes for for the full scoop.

You can download this release from the NetNewsWire betas page.

Of all the cool new features in Tiger, Automator excites me most.

When considering what to support first in NetNewsWire, we considered Spotlight and Dashboard. Both are very cool features—but Automator was a better fit because it let us concentrate first on the important thing: making users more powerful, giving users more ways to build their own systems and do more with their data.

So this release contains Automator actions for things like subscribing to feeds, exporting OPML, opening URLs, and getting the URL of the frontmost item.

I think Automator may be a kind of “sleeper hit” of Tiger. Dashboard and Spotlight will get most of the attention up front (as they should), but as people get into Automator, and as more and more actions are available, people will start to see the power it gives them.

Programmers and scripters already know about this, about how it totally changes the game when you can make your computer do all the boring stuff. With Automator this isn’t just for coders anymore.

(P.S. Also see BBEdit 8.2, which includes a bunch of Automator actions.)

We did a couple other Tiger compatibility fixes in this beta, but there wasn’t that much to do: it already worked well with Tiger. (Of course, we continue to look for bugs and appreciate bug reports.)

We’re in the middle of working on screen shots, so we can update the website for NetNewsWire 2.0. (Most of what remains to do is website work, actually.)

For people who enjoy screen shots, here are the ones we’ve done so far:

Activity Window
Bloglines
Browser
Dinosaurs
Flagged Items
Persistence
Podcasts
Search Feed
Searching
Smart List
Syncing
Widescreen

Neutrino XML

Fraser Speirs: “A Neutrino feed is a collection of pointers to other syndication feeds—say, a blog, Flickr and Del.icio.us—all of which belong to one individual. It’s essentially indirection for feeds—point someone at your Neutrino feed and they can then discover your blog feed, your Flickr feed, your Del.icio.us feed, and anything else you care to include which you publish and can be syndicated.”

Before anyone asks if we plan to support this in NetNewsWire: the answer is yes, we do. It’s too late to make it into 2.0, but we plan to add support in a post-2.0 release.

Terminal app unfair to Monaco 9

Whenever I use BBEdit’s shell worksheet, I’m reminded how much it bugs me that Terminal doesn’t render Monaco 9 very well.

In the screen shot, Terminal is in front and BBEdit behind. Note the “to” in “total” and the “dr” in “drwx.” The rendering in Terminal is distracting.

monaco 9 differences

(I’ve been using Monaco 9 for text editing, programming, etc. for at least 10 years, and I’m not going to switch now.)

Here’s what I want—and what I would pay for—in a Terminal app.

1. Good rendering of Monaco 9! (As in the BBEdit shell worksheet.)

2. Tabs. (Using space-saving widgets more like browser tabs, as in Transmit or Interarchy, or a drawer a la BBEdit or OmniWeb.)

3. Performance at least equal to Apple’s Terminal app. (Better is nice but not required.)

Sometimes I wish BBEdit had a terminal, not just shell worksheets. But that’s probably not appropriate for a text editor. (I could mention Emacs right here, but the thing about Emacs is that it can be used to prove both sides of the argument.)

(From time to time I’ve considered writing a Terminal app myself. But it would be one of those things where you get endless streams of requests like “I need the meta key to frobble the jim-nose when smatterizing the sleepnorp. On Tuesdays.”)

A really good terminal app would be wonderful for people who, for whatever reasons, spend a certain amount of their time every day in that world.

NetNewsWire 2.0 Progress Report

Now that the ship date of Tiger (April 29) has been announced, now might be a good time for a progress report on NetNewsWire 2.0.

NetNewsWire is close to being finished. Since the most recent public beta I’ve been fixing bugs and Sheila has been adding more sites to the Sites Drawer.

It’s not going to ship this week—it’s not quite that close—but it’s getting there. (We haven’t set a date, because any date we set will be wrong. It will ship when it’s ready.)

What remains to do:

1. Fix more bugs.

2. Finalize the Sites Drawer.

3. Finish updating the Help book.

4. Update the website.

Of course, these happen concurrently, and Sheila and I both are hard at work. (The cat too is working long hours, though at what we’re not entirely sure. The code word is tuna. Pass it on.)

A brief look back is in order. For my benefit if no one else’s—it’s good for me to step back and look at the whole thing, even while I’m in the midst of concentrating on a series of very small details as I fix bugs.

Here are the main new things in 2.0 (in no particular order):

  1. Podcasting/enclosures support
  2. Bloglines subscriptions
  3. Searching
  4. Search engine subscriptions
  5. Tag subscriptions
  6. Scripted subscriptions
  7. Smart lists
  8. Atom support
  9. Embedded tabbed browser
  10. Removed the notepad
  11. External weblog editor API (and MarsEdit)
  12. Dinosaurs window
  13. Subscriptions list sorting
  14. Syncing via .Mac and FTP
  15. Bonjour (formerly Rendezvous) sharing
  16. Styles, built-in and customizable
  17. A thousand or so new feeds in the Sites Drawer
  18. UI makeover
  19. Flagged items
  20. Persistence
  21. Lots of per-feed and per-group settings
  22. Activity window
  23. File downloads window
  24. Datelines/summaries in headlines table

Not bad for a 2.0 release, I think. (What is harder to describe is how it’s not just a collection of new features but a much better designed app than 1.0.8, both above- and below-the-hood.)

Our private testers are saying “time to ship.” We’re thinking the same thing.

We’re also thinking about what comes next. There is absolutely no shortage of great ideas—we’ve got plenty of our own, and folks send us tons of excellent feature requests.

It’s just a matter of setting priorities—and that’s where you can help. What would you like to see next?

Close, minimize, or hide?

Are you a closer, minimizer, or hider?

(I’m talking about windows, of course.)

Me, I usually have a few applications open at a time, like most people, and I tend to leave them running. I’ve noticed that different people do different things when switching applications. Some people close their windows, other people minimize, and other people hide applications.

I’m a hider, and have been since the System 7 days. This way I don’t have to destroy the context of the app when I switch to another app—the windows stay open, stay where they are: they’re just hidden.

I often use the cmd-option-H keystroke (the Hide Others command) so that I can concentrate on the app I’m working on without distractions. (Though there are times, of course, when I want more than one application visible.)

Another thing I often do is option-click on the desktop. This used to hide everything except the Finder, except that these days it seems to hide only what was the frontmost app. But cmd-option click works, and I’m trying to remember it. (Also, this trick works for clicking on the window of any app, not just the desktop.)

I rarely do a cmd-H (which hides the current application) because I don’t know what will come to the front.

I almost never close a window unless I’m truly finished with it. (I’ll close a document window when I’m finished editing whatever it is.) And I almost never minimize windows either—this way my Dock is more stable, a place for applications rather than documents. (I also have my Applications and Home folders in the Dock.) (I like a clean Dock with big icons.)

As cool as Exposé is—it is really, truly cool—I always forget that it exists.

How to move NetNewsWire and MarsEdit to a new OS

Once Tiger ships, a question we’ll get is how to move your NetNewsWire and MarsEdit prefs and data to a new OS.

Here’s what you need to copy over...

NetNewsWire:

1. Prefs: ~/Library/Preferences/com.ranchero.NetNewsWire.plist

2. Data: ~/Library/Application Support/NetNewsWire/

MarsEdit:

1. Prefs: ~/Library/Preferences/com.ranchero.MarsEdit.plist

2. Data: ~/Library/Application Support/MarsEdit/

That’s all. (Well, the applications too, of course.)

Don’t Fear the Assembler

Jonathan Rentzsch: “I don’t think you have to be a hard-core geek to pick up PowerPC assembly.”

Probably true. And now it’s on my to-do list. (Hey, I learned it once when I was a kid, I could do it again. It can’t, after all, be as difficult as AppleScript.)

Random PPC Assembly links

Mark Dalrymple: “Learning PPC assembly has been on my ‘to-do’ list for awhile. sknaster and I were bouncing some links back and forth, so I figured I’d accumulate them here.”

For hard-core geeks only. I might click on a few of the links. But carefully.

(I used to know some 6502 assembler, but I’ve forgotten almost all of it. Something about JMP seems to stick. Oh no, wait—here it all is. Holy cow, I used to spend long hours with this stuff. In the days before Macs.)

Some basic command line tips, just for jazz

Here are a few command-line tips, some basic stuff that I use regularly but that novices may not have discovered yet:

open

The open command is cool because it bridges the Terminal and GUI worlds. From its man page: “The open command opens a file (or a directory or URL), just as if you had double-clicked the file’s icon.”

Say you’re in your home folder in Terminal, and you decide you want to open the folder in the Finder. Type open . (and hit return). The Finder comes to front with the current folder open. (You can of course also specify a folder, as in open /usr/share/calendar)

But open also opens other things. For instance, you could launch Chess like this:

open /Applications/Chess.app

Or launch a URL in your default browser:

open 'http://example.org/'

Or open a file:

open path/to/some/file

Aside about tab completion

Typing the above command open /Applications/Chess.app doesn’t look easy, actually. But here’s what I type when I do it:

op[tab] /A[tab]Ch[tab]

Tab completion is your friend. Without it, using Terminal would be unbearable.

pushd/popd: snapback for directories

You know snapback, right, in Safari? How you can snap back to a previous page?

You can do something similar with directories in Terminal. Say you’re some place odd, and you have have to go somewhere else, but then you want to come back easily.

Instead of just doing a cd to someplace else, use pushd, as in pushd /some/other/directory. When you’re finished in some-other-directory—when you want to snap back to where you were—type popd.

(It’s actually a stack, but I’m not going to explain that right now. Plus, most of the time I myself just use it as a quick snap-back feature rather than as a stack.)

What day of the week is the 23rd?

I myself don’t have iCal running all the time. And questions like this come up from time to time—what day of the week is the 23rd? What’s the date of the last Tuesday of this month?

These questions can be easily answered with a quick look at a basic calendar for the current month. Type cal and hit return. Easy.

Quickly view a text file

Say there’s a text file and you just want to view it—you don’t need to edit it or anything.

Type less filename (or less /path/to/file).

Less is a fast and easy-to-use text file viewer. Hit the space bar to scroll down. Type b to scroll backwards. Type q to quit. Type h for help. Type /, followed by a search string and the return key, to search for something.

How I use tag subscriptions

I subscribe to a few tag subscriptions aside from pictures of cats from Flickr.

osxcli at del.icio.us is one of my favorites. Lots of good stuff for Terminal nerds and would-bes.

I also subscribe to cocoa, sqlite, and of course tags for our own software.

They all go into a group named Tags. Since these feeds are not really breaking-news feeds, I set a custom refresh interval of nine hours, and I set them to get skipped during a manual refresh. This is important, by the way—it’s nicer to the folks behind these services if you refresh only as much as really makes sense.

(I chose nine hours instead of eight so that I would be surprised. I like it when some things don’t happen at the same time every day.)

Bartelme Design’s cool styles

We didn’t get permission in time for this latest NetNewsWire beta to include Bartelme Design’s style sheets. (My fault! I should have emailed sooner than Saturday.)

But we did get permission, so the next beta will include BD Aqua Floating and BD Graphit Floating. You don’t have to wait, of course, you can go download and install them yourself.

(To install a style, just double-click on the *.nnwstyle file.)

Embedded browser changes

NetNewsWire 2.0 browser tabs screenshot

The browser in the latest beta of NetNewsWire 2.0 has a few changes. One is an updated look for the browser tabs. (Click the thumbnail to see a screen shot.)

Also there is now a Feed button in the lower-right corner that appears when a page you’re viewing has a feed. NetNewsWire looks for the proper link tag in the source of the page, as described here.

Click the button to subscribe to the feed. (The subscribe sheet appears with the URL filled in.)

When we first added this feature, I found it oddly addicting—I just surfed around looking to see which sites would make the Feed button appear. What I found was that lots of sites make the Feed button appear: I was happily surprised.

(Note: the Feed button doesn’t appear for a site that you’ve already subscribed to. So if it doesn’t appear for your weblog, it’s probably because you’ve subscribed to your weblog.)

More about the look of the tabs...

The look of the tabs is tricky because there is no standard tab widget that works for browser tabs. Yes, there is a standard Cocoa tab widget, but it’s not good for browser tabs. (Note how Safari, Firefox, etc. use custom tab widgets.)

We ended up making them rectangles instead of rounded, since in this context it looks sharper. And, instead of a single gradient, it’s a two-tone, two-gradient look, kind of a “glass” look, that you see in other parts of the OS X user interface.

With the standard tab widget, the selected tab is blue-ish (or graphite-ish)—but with browser tabs this is highly distracting. Since we couldn’t use color, it was quite a challenge to get enough contrast between active and inactive and highlighted tabs. We iterated over it a bit, and ended up quite happy with the results.

I suspect that one of these days there will have to be a variant of the standard Cocoa NSTabView that works for tabbed browsers (and similar). More and more apps are using the idea (not just browsers)—eventually a consistent look will be a good idea. But, for now, people are experimenting, trying different things, which is cool.

NetNewsWire (full and Lite) 2.0b37

NetNewsWire 2.0 icon

NetNewsWire (full and Lite) 2.0b37 has been posted to the NetNewsWire betas page.

(Side note: woo-hoo!)

New features include tag subscriptions, syncing, feed detection for the browser, per-feed podcast settings, and more. Bugs were fixed, performance was boosted. See the change notes for all the details.

One of the new features has quickly become one of my favorite features: tag subscriptions. They’re kind of like search engine subscriptions, but instead of subscribing to a search you subscribe to a tag at Del.icio.us, Flickr, or Technorati.

For instance, I like cat pictures (to not like cat pictures would be to not like the web), so I created a tag subscription for the tag cats using Flickr. (Choose File > New Special Subscription > Tag to create a tag subscription.)

We’ve been calling this beta the “almost-there” beta. Here’s what remains to do before shipping 2.0:

1. Fix some more bugs.
2. Add a bit more polish.
3. Review and edit the Help book.

As always, your feedback and bug reports are very helpful.

Pope

I’m not Catholic, and I disagreed with many of the Pope’s pronouncements—but for all he did to free Poland and Eastern Europe from communism, I thank him with all my heart.

The end of communism in Europe is still the central historical event of my lifetime, and it’s the thing that reminds me that people can be both good and courageous. Not just popes—dock workers too. Everybody. Even, from time to time, leaders of countries.

If, some day, historians call him Pope John Paul the Great, I’ll be fine with that.

I remember when this Pope was elected, and I remember when his predecessor was elected. For those of you too young to remember, consider this a head’s-up—the process and ritual here is fascinating, worth paying attention to, whether you’re Catholic or not. It’s history. (And, with luck, it’s history we won’t see again for many decades.)