From [the same question asked on SO][1]:

To remap the <kbd>esc</kbd> key you have to copy

`/Applications/TextMate.app/Contents/Resources/KeyBindings.dict`

to

`~/Library/Application Support/TextMate/KeyBindings.dict`

and then edit it, preferably using TextMate :) as Property List Editor messes up the codes. 

Look for nextCompletion and previousCompletion and replace their values with whatever suits your needs best. 

For example, you could replace <kbd>\033</kbd> (code for <kbd>esc</kbd>) to <kbd>->|tab</kbd>.


  [1]: https://stackoverflow.com/questions/1144974/textmate-remap-escape-for-word-completion