OakChooser: Reselect first item when filter string is changed
Let bundle item chooser’s ranker remember user corrections
Key equivalent field no longer activate recording on return

This is to allow using the control in windows with a “default” button (which gets the return key).
Let key equivalent field pass unused key down events to super
Leverage the default implementation of bindings
Call recalculateKeyViewLoop after current event loop iteration
Add ‘drawAsHighlighted’ public table view property

This allows factoring out the decision of when to draw as highlighted.
Let OakChooser decide when to render table view as having focus
Update QuickLook generator to use the new bundle item index

This should improve startup time significantly, since it would previously have to re-index all the bundle items.
Checkin release notes
layout: Fix bol_as_eol for case where range length is 0

bol_as_eol was meant for non-empty ranges, but the only place where
empty ranges were attempted with bol_as_eol was for Zoom tracking,
and it seems like I did not re-test Zoom after making the bol_as_eol
commit.

Fixes textmate/bugs#4
Fix textmate/bugs#5

When setSelectionString is called during editing of text (like inserting
or deleting a character), it catches layout in a semi-consistent state
where horizontal position of individual characters cannot be determined.
Therefore during such events, we cannot pass the correct screen position
to the call to UAZoomChangeFocus.

So let's do the UAZoomChangeFocus call after this iteration of run loop.
This ensures everything in layout that had to update has updated when
calling UAZoomChangeFocus, thus enabling us to provide correct horizontal
screen position.
Optimize Zoom support a little bit

This makes Zoom support avoid doing all 2 conversions between UTF-8 to UTF-16,
and replaces call to rect_for_range with call to rect_at_index, which is
more efficient.

Note that this is a typical micro-optimization not resulting from any
actual performance measurement, but just from a desire to have a lean
code not doing redundant work.
VariablesPreference: Disable delete button when table is empty
VariablesPreferences: Abort editing before deleting a row

This prevents `tableView:objectValueForTableColumn:row:` from throwing an exception (index beyond bounds) when the user deletes the last row while it is being edited.
Support a "--warn" switch for gen_html.

Default is to suppress any warnings for unassociated GitHub profiles.
Adding some 2012 committers.
QuickLook: Handle thumbnail generation

Read at most 1 KiB or 50 lines of a file and render the attributed string in a bitmap context.

The theme is set to Mac Classic to ensure a white background for best look when the previews are used as icons in Finder.

The user’s default fixed width font in size 4 is used. With this font size only around 7 lines are shown, so we need to make it smaller, but we probably want to scale down the result to allow fractional line heights.

A lot of code is copy/pasted from the QuickLook preview generator.
QuickLook: Check for cancellation

Add a bit of redundant code but it's useless to continue doing stuff if the request is cancelled by the user anyway.
QuickLook: Abort preview when type can't be determined