Select Mail.app sender from iCal Invitations/Responses

November 27th, 2007

One thing that irks me about the iCal.app / Mail.app integration on OS X is that it chooses (based on some unknown criteria) without user input the sending address (and hence account) from which to email invitations and responses to invitations.

Since I have multiple calendars and multiple email accounts, it is often that I want to choose the specific account when sending an invitation or reply to an invitation. This tar file contains the AppleScript changes necessary to create a selection box prior to sending these emails. Once a sending address is selected and OK is clicked, Mail.app will proceed with sending the iCal invitation or reply from the account corresponding to the email address.

To use this, follow these instructions:

Quit iCal!

Backup iCal.app!

    mkdir ~/Desktop/LeopardiCalBackup
    sudo rsync -Eav --delete /Applications/iCal.app ~/Desktop/LeopardiCalBackup
    sudo hdiutil create -format UDRO -srcfolder ~/Desktop/LeopardiCalBackup -volname LeopardiCalBackup ~/Desktop/LeopardiCalBackup.dmg
    sudo rm -rf ~/Desktop/LeopardiCalBackup/

Copy the dmg file somewhere safe.

Extract the modified AppleScript files:

(assumes iCal.app is in /Applications and LeopardiCalSelectSender-20071127.tar is in ~/Desktop)

    cd /Applications
    tar xvf ~/Desktop/LeopardiCalSelectSender-20071127.tar

Run iCal.app, send an invitation and reply to one, test out the ability to select the sender for the Mail.app outgoing email.

new photography post-processing workflow

May 18th, 2007

One of the challenges with a photography post-processing workflow is not only does it need to be productive for me personally, but it also needs to be an orderly process such that I can pause my work and resume it later. Life’s distractions are many and the ability to leave off and pick up later is crucial for me.

In rough order, I do the following:

  1. Shoot the photos (of course).
  2. Store them in a hierarchical folder structure that fits my organization scheme.
  3. Create a new Adobe Lightroom Library specifically for the photo shoot.
  4. Create a collection (usually named Color4×6) within the library and drag all the “keepers” into the collection.
  5. Manipulate each keeper for exposure, tone, contrast/brightness, sharpness, etc.
  6. Crop for 4×6 (1.5:1 is my camera’s aspect ratio) sized prints.
  7. Make collections for each of the print sizes I intend (Color5×7, Color8×10).
  8. Select all in Color4×6 and choose Make Virtual Copies — this leaves the newly created virtual copies selected.
  9. Drag virtual copies (left selected by last command) to one of the other collections.
  10. Delete the virtual copies within the source collection.
  11. Select the destination collection and recrop all photos for the new aspect ratio.
  12. Repeat 8, 9, 10 for all other print sizes.
  13. Make collections for each of the print sizes I intend in B&W (B&W4×6, B&W5×7, B&W8×10).
  14. Select all in one of the Color collections and choose Make Virtual Copies.
  15. Drag virtual copies (left selected by last command) to the corresponding B&W collection.
  16. Delete the virtual copies within the source collection.
  17. Select the corresponding B&W collection, select all photos and Convert to Grayscale.
  18. Repeat 14, 15, 16, 17 for all of the other print sizes to be output in B&W.
  19. Output each of the collections to its own directory on the filesystem. I use TIFF 16bpp color, sRGB 300dpi, no maximum size constraints.
  20. In each of the color output directories, I run a script that either converts the image to JPEG at quality 90 and 8 bpp color or up-samples it to the correct resolution for the dpi desired (e.g. 1200×1800 for a 4×6) and converts to JPEG at quality 90 and 8bpp color.
  21. In each of the B&W output directories, I run a script that adds random film grain to the image with a hardlight screen operation. Subsequently I perform the same up-scale and/or convert to JPEG performed in step 20.
  22. For each of the final JPEG files, I use a script to identify the source NEF image (I shoot all RAW) and call negtags2jpg to migrate the EXIF data into the JPEG, as the ImageMagick command line utilities I use to make my manipulations do not properly migrate the tags from TIFF to JPEG.
  23. Create a web gallery for the color images using HtmlGallery against the Color4×6 output.
  24. Create a web gallery for the B&W images using HtmlGallery against the B&W4×6 output.

To wrap it all up I upload the final JPEG files to an online printing house and archive the JPEG and web gallery output along with the Adobe Lightroom Library, original NEF files and XMP sidecar files.

random b&w image grain

May 15th, 2007

When I convert images to B&W, I often add some artificial film grain to the image. When I do this by hand, I usually just grab a section of the grain source randomly and hardlight screen the original image with it. Tonight I needed to batch add grain to a number of B&W images and I didn’t want the grain to look consistent among them. After the jump is a perl script that selects a random source-image-sized selection of a grain source and hardlight screens the source image with it. This is done via imagemagick command line utils.

Read the rest of this entry »

Tech Triumph!

April 17th, 2007

Go VT.

Tech Tragedy

Digital Cameras and White Balance

April 14th, 2007

A friend was asking about white balance on digital cameras on their blog and I took a moment to respond. Here are some general thoughts on using white balance on digital cameras… Read the rest of this entry »

audiotag 0.16 with support for mp4/m4a

March 13th, 2007

I updated audiotag 0.15 with support for mp4/m4a. The original developer has included my changes and made a 0.16 release. The new release requires AtomicParsley for mp4/m4a tag manipulation to work properly. It is capable of manipulating tags on all m4a files, including those that contain ALAC. You can also obtain a copy of the release on goof.com.

Meta Man and Woman

February 13th, 2007

Here’s a neat painting spotted at a Mexican restaurant in Goldsboro, NC

Neat Painting

Migration to WordPress

January 2nd, 2007

collectivity is now hereby migrated to WordPress.

I didn’t try a newer version of Typo (4.03) before long before migrating.  Typo seems to be consuming way too much RAM and swap for the mix of uses my host performs.

Relatively Easy NAT for Parallels

October 23rd, 2006

Parallels for Mac, unlike VMWare, does not offer NAT networking for guest operating systems. There is a relatively easy way around this, though the way I’ve implemented it requires use of the command line…

Read the rest of this entry »

MythFrontend 0.20-fixes for OS X Universal

October 1st, 2006

For those of you who jumped the gun and requested a release-0-20 build, then subsequently upgraded your backends…

MythFrontend-MacOSXUniversal-0.20-fixes-20061001.dmg.bz2