Archives / Search ›

First progress exams for med school are Monday, so I'm planning on disappearing into a hole this weekend. Before I go…

Inluminent and 347.com have been discussing Zoe and appear to be having similar reactions to mine. I gave Nat an introduction to Zoe last week and he was suitably impressed. Seriously, if you ever ask yourself “how do I find that email I got six months ago about subject X?”, feed your mail into Zoe.

I still haven't had a chance to fix the serialization problem I got upgrading to Zoe 0.2.6; a kind soul sent me the 0.2.4 version I accidentally deleted, and it continues to work fine. Raphaël hasn't been able to reproduce the error I and another person were getting, but suggested a couple of things I can do to work around it.

Today I spent some time on my lunch break looking at the material from macosxlabs.com: lots of useful setup info from medium to large sites which have implemented lab management and incorporated OS X machines into heterogeneous networks (AFS, NFS, NIS, LDAP, Kerberos). The info is good, but I wish they wouldn't use Web Crossing for their forums—its interface is so cumbersome and outmoded. Although, if they turned on the Web Crossing NNTP gateway it would help!


Jaguar introduces a keyboard equivalent for the “Hide Others” command in the application menu: Command-Option-H. LaunchBar includes an option to map Command-Shift-H to Hide Others in all applications, which I'd been using for many months. I use application hiding much more often in Mac OS X than I did in OS 9, possibly because I often have twenty or more applications open and appreciate the ability to focus on my current work to the exclusion of other things.

Carbon applications, which get application menus automatically built by Mac OS X, gain command-shift-H automatically if they're not already using it. Cocoa applications supply their own application menus, and the newly recommended key equivalent isn't even supported by Apple's own applications such as TextEdit.

In an effort to stop myself from using the 'wrong' keyboard equivalent, which in any case shadows useful equivalents in applications such as the Jaguar Finder, I've turned off LaunchBar's “Hide Others” mapping and rely on those built into applications—making it painfully clear how few Cocoa applications have been updated. Luckily, there's a very quick and easy fix: the user key equivalents mechanism in Cocoa applications. User key equivalents are a very low-tech but effective mechanism which allows you to add key equivalents to menu items simply by associating the text of a menu item and your desired equivalent. Your changes even show up in the menus.

The easiest way to edit user key equivalents is with David Remahl's excellent ReKey application. To add a mapping for “Hide Others” to every Cocoa application, just execute the following:

defaults write NSGlobalDomain NSUserKeyEquivalents -dict-add 'Hide Others' '@~h'

All Cocoa applications you subsequently launch should obey the setting.

Zoe 0.2.6 was released today with a new contextual search feature, which allows you to limit your searches. So far I haven't been able to install it: I'm getting serialization errors when I try to start it.

From my referer log, I found someone browsing my site in Italian. Cool.

Hubzilla: “When he's not destroying your desk he's helping you with your FireWire connectivity problems.”

Jaguar's Terminal app offers significant improvements in user interface, capability and stability. I'm glad the emulation is now reasonably robust, and the source code has been mostly rewritten.

Some new features and fixes: Terminal now responds to telnet and ssh URLs. The bizarre way settings were replicated inconsistently between the inspector and Preferences window is resolved. It lets you split the window between active text and scrollback—something that I'd suggested years ago, and Chris eventually implemented in some early versions of the now-moribund next-generation MacIRC. (Actually, the MacIRC implementation was quite a bit more elegant, but I'm not complaining.) You can now drag text out of as well as into Terminal, though the drag feedback is horrendous. The extent of text selection on a dark background is no longer invisible. The I-beam still becomes close to invisible, however—Cocoa cursors fail to invert when they'd otherwise be hidden, no matter what you do to their masks. Carbon cursors continue to properly invert the same way they always did, so it's no OS X bug.

Terminal is still incredibly slow performing certain operations. Screen drawing during scrolling doesn't even remotely keep up with mouse or scroll-wheel movement on a G4, where rxvt in XDarwin and GLterm have no trouble. Selecting text which spans the split bar is horrendously laggy. Performance improvements should be forthcoming—and Apple should really put more engineering effort into Terminal given its wide use among Unix converts used to xterm, rxvt, and friends.

For months I've had code floating around to support Command-click URL launching in 10.1's Terminal, but I haven't distributed it to more than a few people because it's crash-prone in certain situations. An ICeCoffEE user sent me an email last week pointing out another new Jaguar Terminal feature, undocumented as best I can tell: Terminal lets you launch URLs with a command-double-click. This is useful, but it does a bad job: it doesn't properly strip delimiters such as trailing periods or enclosing parentheses, it doesn't handle email addresses or “slack” URLs such as www.domain.com, and responds to a nonstandard shortcut that happily leaves room for me to have ICeCoffEE intervene on a Command-click.

The rewritten Terminal is an opportunity for me to pick up where I left off on ICeCoffEE. I took a break from research tonight and did some poking around with F-Script Anywhere. It looks like I'll be able to access the contents of Jaguar Terminal windows easily (and without sporadically crashing, hopefully!) The TermStorage class has about every conceivable accessor I can think of—much better than the weird and flaky manipulation I needed to do to extract the contents of the buffer in older versions.

‹ Newer Posts  •  Older Posts ›