01.20.09

Tools of the Trade

Posted in Camino, Life, Software at 12:37 am by

Ilya asked the other day in #camino what sort of tool we used when dealing with bizarre cvs merge conflicts. After explaining my TextWrangler hunk differences routine, it occurred to me that it might be interesting to mention the tools (and some of their tricks) that I use when working on Camino and Camino-related software.

  • TextWrangler (and edit) – BBEdit’s little brother, this text editor is my all-purpose tool. In addition to editing source files and creating HTML test cases, I use it for all manner of comparisons; I’m fond of the character-level granularity it will show (via selection highlights) in file comparisons, letting me account for whitespace changes or verify that a merge failed solely because of changed context—perhaps even changed whitespace in the context. :P

    Also handy are the multi-file find-and-replace abilities; I actually wrote all of the regexps for bug 394105 by running them through multi-file find-and-replace in TextWrangler and paging through the files to verify. In Terminal, TextWrangler is only a word away with edit. I find myself frequently piping a bunch of output to edit; if it’s not my most-frequently used command, it’s a close second to open.

    Before Coda (q.v.) and post-PageSpinner (which I adored in the Mac OS 8 and 9 era but which, sadly, has yet to make it to the UTF-8 world), TextWrangler was also where I did all of my HTML writing; now, however, I only use it for one-off test pages.

    Everybody swears by their text editor, but I’m not out to tell you mine is better than yours, and so forth. It does what I need it to do, it doesn’t get in my way, and it didn’t cost me a dime.

  • diffscrape – This is a little Cocoa command-line utility that Ian froodian Leue wrote for me (or at least after a conversation with me about better ways to handle files in a diff) a couple of years ago. diffscrape outputs all the files contained in a patch (diff), and I use it to ensure I’m not missing a file when committing or re-diffing to create a new patch. Once I became the low man on the check-in totem pole, it became more useful than I had initially envisioned. (Alas, edit always treats piped input as text, so opening files in a patch with diffscrape and TextWrangler is a little more convoluted than with some other Mac text editors, like Ian’s favorite, TextMate.)

  • CodaJon Hicks and Samuel Sidler developed the current Camino website in Coda, and as I’ve taken over more website duties, I’ve found Coda a joy to use. Before having received as much regexp knowledge from mento as I now have, I found the tokenized find-and-replace quite helpful, and for some tasks it’s still quicker and easier than writing a normal regexp. There are still some minor missing items, but Coda’s a far better way to work on websites than anything else I’ve used in the past decade-plus.

  • Script Editor – The language I consider myself most adept at is AppleScript, warts and all. I’m not an AppleScript superstar by any stretch of the imagination, but whenever I need a quick tool to help me accomplish some task, I pop into Script Editor and whip up an AppleScript (sometimes my AppleScript dabblings even become part of Camino).

  • Troubleshoot Camino – I wrote it myself (yes, in AppleScript), but it’s probably the tool I use more than any other when doing Camino work. Whether triaging bugs, testing patches, or just getting a copy of Camino running quickly without restoring my tabs, Troubleshoot Camino is always on the job. It has also become our de facto troubleshooting tool for end-users, since it provides a simple way for them to temporarily start with a fresh profile without touching their current profile in any way.

  • Mouseover DOM Inspector (MODI) – Someone in the Mozilla community discovered this little bookmarklet several years ago, and it has been in my toolbox ever since. Camino is not designed to be a browser for web developers (though we’re thrilled that many do use Camino in spite of that fact), but sometimes you do need to poke around in a page’s source or DOM to figure out what bizarre things are going on with the page.

    I employ a number of bookmarklets (many from Jesse Ruderman’s collection) to examine the subtleties of web pages, but MODI is the most useful general purpose bookmarklet I’ve found, and it’s a convenient way to perform my investigations. Beyond that, I can often get all the information I need for ad-blocking changes just from MODI, no manual poring through the source required. I’ve just learned of Firebug Lite, so I’ll be trying that out, but MODI has been my workhorse up to this point.

So there you go; if you’ve ever wondered what sort of applications and tools a QA/website/documentation/sometime-developer finds useful, you now have an answer (sample size of one). If you weren’t curious about that, maybe you’ve learned something new about one of these applications, perhaps even something that can improve your workflow or ease your life. If not, well, I tried. :-)

4 Comments »

  1. User Grav­atarkreeger said,

    01.20.09 at 3:04 am

    MacVIM:

    http://code.google.com/p/macvim/

  2. User Grav­atarPhilippe said,

    01.20.09 at 9:01 pm

    Pixie ! (part of Apple’s developer tools). Very useful to analyse stray pixels/lines in both webpages or chrome part of the browser.

  3. User Grav­atarSmokey said,

    01.21.09 at 12:49 am

    I share Philippe’s fondness for Pixie, though I don’t have opportunity to use it much (I did spend some quality time with it during the Cocoa native theme rewrite).

    I try to confine my relationship with vi-anything to :q, however. ;)

  4. User Grav­atarافكار و احلام » Diff/Patch Language Module for BBEdit and TextWrangler said,

    05.31.09 at 3:03 pm

    [...] mentioned before some of the many things I like about TextWrangler, the free younger brother to Bare Bones [...]

Atom feed for comments on this post · TrackBack URL

Leave a Comment